最近ハマっていること

1日一回継続コミット

はや9ヶ月連続コミットしている。

Rustのチュートリこなしたり、gremlin language(グラフデータベース向けのクエリ言語の一種)向けのquery builderを実装した。
それ以外にもAtCorderやLeetCodeの問題を解き続けた。

ほかには、先程NLPでおなじみのtf-idfを実装した。(この実装がさくっとできたので、嬉しくなり久々にこの記事を書いている)

tf-idf

文書の類似度を精度悪くてもさくっと評価したかったのでtf-idfと距離関数を実装した。
Pythonで実装したのだが、NumPyなどのサードパーティライブラリを使わず、Pure Pythonで実装を行った。

gist.github.com

tf-idfについてはWikipediaと、ブログ記事および書籍「情報検索の基礎」を読み参考にした。

より理解を含めるために書籍「統計的自然言語処理の基礎」のtf-idfや書籍「人工知能学大辞典」の文書要約、書籍「情報検索と言語処理」、書籍「情報検索アルゴリズム」、書籍「自然言語処理の基本と技術」を見直した。

以下の点が今回の発見だった。

  • 上述した文献の数式をすんなり理解でき、プログラムに落とし込めれた。例えば、TFやIDF。
  • 上述した文献の概念をおおよそ理解できた。例えば文書頻度などの統計数学。
  • 10年前に学んだ時に理解できなかったことが理解できたこと。

次のステップとしては、コサイン類似度を使った文書の類似度の判定や、せっかく多くのNLPの教材を持っているので、再キャッチアップすること。いまなら理解度が昔より上がっている。

ファイナンスの基礎

ベンチャーやスタートアップでのファイナンス知識が足りなかったので、読んだ。事業計画の作り方など。

ひとまず @tkihira さんの記事 スタートアップに転職する時に最低限知っておくべき株の話 を読んで書籍「起業のファイナンス」を購入し読んだ。