世界が終わってしまうのが許せなかった。
と言ってみたところで何ができるわけでもない。 そういうわけで少しでも心のモヤモヤを晴らしたくて、デモに参加をしてみたりした。 新世界容認派の右翼の罵声を浴びたりしながら。 当たり前だけど、何も変わらなかった。 それどころか、世界がもうすぐ終わるというのに警察は呑気に自分の仕事をしていて、モヤモヤはますます積もった。
せめての抵抗と思って、家に籠もって、世界が終わるのに気づかないフリをしようと、オンラインゲームに興じてその時を迎えた。 ゲームの向こうの人たちはどうしてたのかしら。 やっぱり気づかないフリをしてゲームに夢中になっていたのかしら。
好奇心に負けて、テレビを付けてみた。 テレ東ではニュースがやっていて、淡々と、新しい世界を迎えたことを伝えた。
北海道にまで行けば桜の満開をまだ見られるらしい。 しかしながら北海道までの旅費は捻出できそうにないので、中央線を乗り継ぎ乗り継ぎ、長野で妥協した。 今年の春はまだまだ寒く、理屈は分からないけれど、寒いと桜が散りにくいからまだキレイな桜が見られるんだよ、と同席したお爺さんが気安く教えてくれた。 どうして寒いと散りにくいんですか? と私が聞くと、お爺さんは、そんな難しいことはわからんね、と機嫌を悪くした。
これがこの世界での最初の思い出。
fastText は word vector の学習が教師アリでもナシでも出来るし, アリだと文書分類までがサブコマンドとしてサポートされているし, そして名前の通り本当にすべてが fast なので便利. ところで sentence vector をどうやって得てるのか知らなかった. ドキュメントにはたぶん書いてないけど, source code だとただの平均であることがわかった. ただし教師アリで学習したときは本当にただの平均であるが, ナシの場合は正規化してから平均しているようだ.
\[s = ( w_1,w_2, \ldots, w_N )\]
教師アリのときは \[\frac{1}{N} \sum_i w_i\]
ナシのときは \[\frac{1}{N} \sum_i \frac{w_i}{\|w_i\|}\] ただし \(\|w_i\|=0\) なる単語は先に取り除いておく (\(N\) も減らしておく).
また \(s\) の長さがゼロのときは (ナシのときはノルムが非ゼロのものだけ見て) 0ベクトルとする.
正規化をするかしないかの処理や, ノルムが非ゼロかどうかチェックするなどの差異はどこから来たのだろうか.