2014年01月13日
Slickをちょこちょこ使う
今週末はどの記述がどういうクエリを投げているのか確かめたりしてみた。
ScalaのORM「Slick」でいろんなSQLを投げてみる
http://www.mwsoft.jp/programming/scala/slick_query.html
続きを読む
2014年01月12日
日記的なもの
年末年始から、休まず勉強している。
うまくいっているのは、仕事を変えたお陰だと思う。自分が底辺にいることを実感できる良い職場にいるので。
多少まともに使えるエンジニアというのは、どこへ行っても下にも置かない扱いをされるもので、私の場合、そうした場所にいるとプログラマとしての目標を高く維持することが難しくなる。そうならないでいられるというのは、とてもありがたいことだと思う。
「好きな職場」は他にもたくさんあったけど、「良い職場」という点では、これまでに行った中でも1番かもしれない。
続きを読む
2014年01月11日
Slickのelementsメソッドがfetchすることを確認する
Slickで取ったSQLの結果はたいていlistかfirstOptionで取っていたのだけど、大きめの結果を取る場合はfetchした方が良いよなという事で、elementsを使ってみる。
確認のため、1000万件の結果を取得させてみて、listと比べてメモリ消費量が少ないことを確認する。 続きを読む
2014年01月02日
LuceneとWikipediaのデータを使ったクラスタリング
1日で作れるWikipediaとLuceneを使った簡易な文書カテゴリ判定機能
http://www.mwsoft.jp/programming/nlp/wikipedia_categorizer.html
Wikipediaのカテゴリと類似文書検索を使った簡単なものだけど、下手なクラスタリングよりは精度が出る。
Luceneを使ったカテゴリ分類というのはけっこうあって、たとえばCarrot2のようなLuceneのインデックスからクラスタリングを実行するソフトがあったり、Mahoutのクラスタリングの素材として利用している例もけっこう見られる。
TF/IDFで単語ごとの重みを出せるとか、出現頻度の低いTermを削れるとか、英単語の活用が揃えられるとか、動詞の基本形を揃えられるとか(あ、今回のコードではやってないや。後でやろう)、カタカナの長音の有無を揃えられるとか(これもやってないな)、Luceneは日本語のNLPツールとして非常に優秀だと思う。