いないち日記

大阪で Information Retrieval を勉強する大学生の日記。

2019/11/04-2019/11/10

Kent Beck の TDD の本を読む。テストを書いてから実装するというのは聞いていてけど、実装というのが実は (1) とにかくめちゃくちゃでもいいからテストを通す (2) それをリファクタリングする という2ステップに分かれていることは初めて知った。これは理想的には思えるけど、なかなか開発スピードが落ちそう。

皮膚科で足のイボの除去処置をしらもらう。ここ最近毎週のように病院に行っている気がする (と # にも言われた)。

2019/10/28-2019/12/03

最近日記が不定期になりすぎている。長い間続けているとどうも日記にも変化が欲しくなるようで、ありきたりの日常を書くのを知らず知らずのうちに避けてしまっているのかなぁ。それか忙しさにかこつけてサボっているだけか。

これだけ前のことになると頭の中からすっかり当時の記憶がなくなっていて、カレンダーを見たりしてなんとか思い出すんだけど、今ふと git log も見ればいいことに気づいた。ということで早速見てみると、commit message の情報量がなさ過ぎて何をやっているのか全然わからない。個人開発だとついないがしろになってしまう commit message も、ある種の日記と思えばちゃんとつけるかもしれない。

病院に行った。最近睡眠時無呼吸症候群ということを耳鼻科の先生に言われて、新大阪にある大病院を紹介してもらった。なんと結構これが重度らしく、いろいろ詳しく調べてもらう。とどうも扁桃腺が大きすぎてこれが気道をふさいでいるらしい。アメリカ行きもあって治せるものは急いで治したかったので、二つ返事で手術をしてもらうことに。

2019/10/21/2019/10/27

久しぶりに輪講の発表をした。Trust, but Verify なんかは重要なアイデアだと思う。あとは倫理的なことで、ここはざっと飛ばした。

自分が指揮をとって研究室の大掃除をした。ちょっと工夫を凝らして Github ベースで進めてみると、これが結構成功したのでメモっておく。

事前準備**

  • Github で大掃除用のリポジトリを作って、 Issues を使ってやるべきことをリストアップ。ここではダブりを気にせずにブレスト的にどんどん書き込んでもらう。
  • ある程度まとまったら、やるべき作業を (似ている作業をマージしながら) 絞っていく。同時に Assignee を利用して担当者を決定 (Assignee で決めると Issues のフィルタリングができて自分の仕事が一目で見られて便利)
  • 各 Issue にやるべきことを明確にした文を書く。ここでできるたけ明確にしておくことで本番のドタバタを回避。
  • 事前に購入が必要なものは "要備品" タグを付けて、事前に購入。

当日**

  • 各自 Assign されている業務を担当してもらう。それだけ!


たかが大掃除かもしれないけど、30人を一気に指揮するのは無理なのである程度自律的に動いてもらう必要があって、そういう意味では一大プロジェクトのような気もする。

2019/10/14-2019/10/20

ここ最近はプログラミングが楽しくなってきて全然提案手法に移れていない。。

Github に研究ノートを移す関係で過去の Evernote を回ることがあって、いろいろな復習ができた。去年に勉強した Autoencoder はこんなにいろいろあったっけというぐらいたくさんの亜種がメモられていた。

前はあまり気が進まなかった一人 pull-request, issue, branch も気持ちがわかってきた気がする。論理的な差分が目に見えやすいので、週ごとの作業をまとめたりもやりやすい。

2019/10/07-2019/10/17

タイトルがいつの間にか日曜区切りでなくなっていたので出直し。

人生のあらゆるメモを Github に集約させようと考え始めた。

まずは文献管理。1 bibtex = 1 file としてプレーンテキストで保存。メモは Issue。Issue ID を primary key にして、Issue <-> PDF (Dropbox) <-> bibtex の管理をする。するとなんと、論文もモダンに

> XXX et al (#3) introduces...

とかかけてしまう (TODO だけど)。これは便利で、Overlief の便利さ凌駕する。
これが楽しくて、週の大半はこれに費やした。

あとはメモ帳。今まで Evernote で書いていたが、Markdown やスレッドに対応している Github の方がより魅力的に見えた。

2019/09/30-2019/10/06

10月に入ったというのに一向に涼しくならない... と嘆いていると、$さんにもうすでに涼しいと言われる。太ってから体感温度が一気に上がってるせいだろうか、痩せないと..

重い腰を上げて WMD を実装してみた。PuPL というライブラリを使うと線形計画法が簡単に実装できて、コードも数行で済んだ。便利。

最先端 NLP に発表資料一覧が上がっていたのでざっと見てみる。実行委員の@さんにも誘われたことだし、スケジュールの問題が無ければ発表したかったなぁ。気になったのは % さんの Don't Settle for Average, Go for the Max: Fuzzy Sets and Max-Pooled Word Vectors. これは文の類似度を集合演算で測る方法。BoW でJaccard 係数みたいな集合演算を使う場合に (元が BoW なので) 各単語が意味的に独立してしまうという問題を解決するため、word embedding を使ってもっと fuzzy にしていくというストーリー。

2019/09/23-2019/09/29

 \mathbf{\mathrm{R}}^d に対する TF-iDF (あるいはそも smoothing) のようなものをぼんやり考えている。結局 word embedding はそのままだと密すぎて使えないので (# さんにもこの間のフィレンツェで false positive が多くでそうと言われていて、その通りになった)、やっぱりベースは BoW にしたいという思いがある。TF IDF もつまるところ単語の出現頻度を確率とみなしたエントロピーなので、近い概念を連続量かつ多次元に拡張できればいいんだけど...

Github の issue ベースで開発をしてみた。チケット管理ベースだと全タスクが一望できるのでいい。今までの失敗も踏まえて、できるだけスムーズにコーディングに移れるようにする (例えば asignee とか tag とかはつけない)。ソロプレイにはソロプレイなりの使い方があるはず。

研究室旅行で城崎温泉に行った。昭和の町並みが色濃く残っていて良い。