NLP

プリキュアとセーラームーンはどちらの方がサザエさんに近いのか?

この記事ではこんなことを書くよ テキストマイニング的に次元削減とプロットする話 t-SNEとかいうイケてる名前のアルゴリズム プリキュアとセーラームーンはどっちの方がいいか はじめに 計算機分野に所属する人たちは時々、本当に間抜けなことを真面目に取…

SPARQLで人類の知にアクセスしよう

NLP

やりたいこと DBpediaにアクセスして、人類の英知を我が物にしたい。 どうやって解決するか? SPARQLをマスターする。 DBpediaはRDFモデル(正確にはOWL)で記述されているデータである。 データの実体はXMLで記述されるが、データを効率良く取得するには、ク…

Dockerで処理をまとめておく

やりたいこと 処理をまとめて簡単に動かせるようにしておきたい。 環境設定とか毎回するの面倒なので、コマンド一発で動かせるくらいにしておきたい。 解決策 Docker使う。 ソースコードを動かせる状態にしておいて、Dockerの仮想環境の中で稼働させる。 そ…

文書分類タスクでよく利用されるfeature selection

"Bias Analysis in Text Classification for Highly Skewed Data"(Lei and Huan)を読んでいて、「文書分類タスクでよく使われるfeature selectionは4つある。Information GainとChi-squared testとOdds ratioとBi-Normal Separationだ」みたいなことが書い…

MacでKH coderを動かす

やりたいこと MacでKH coderを利用可能な状態にしたい MacはOS X Yosemite 解決法 Macをやめる もう少し噛み砕いて言うと、Windowsの仮想マシンを立ち上げて、Windows内でKH coderを利用する やるべきこと 1 Virtual Boxを利用できる状態にする 特に詳しい説…

早く、簡単に共起語ペアの頻度を数える

やりたいこと 共起語ペアのカウントを取りたい。 単に基礎集計をやりたいだけなので、matrixを作る必要はない。 解決策 タプルで共起語ペアを作って、カウントする 手順は 共起語のタプルを作って、リストに放り込んでいく collection::Counter.most_common(…

MeCabの制約付き解析モードを利用する

MeCabの制約付き解析モードを利用する やりたいこと 標準の辞書だけだと、どうしても不要な単語まで分割してしまう。 かといって、辞書ファイルの内容をいじるのは割と手間がかかる作業だ。 そこで、「制約つき解析モード」を利用することにした。工藤さんに…

nltkでタプルのbigramカウントをする

やりたいこと (word, POS)のタプルの状態でbi-gramのカウントを取りたい 解決法 nltkで普通にできた。 import nltk list_input = [('I', 'Noun'), ('feel', 'Verb'), ('happy', 'Adj'), ('You', 'Noun'), ('feel', 'Verb'), ('happy', 'Adj')] corpus = nltk…

Witten-Bell smoothingのおぼえ書き

NLP

witten-bell smoothingを実装することがあったのだが、「えっ、何するんだっけ?」となってしまったので、忘れないうちに書いておく。 そもそもスムージングとは? 確率的言語モデルを使うときに役に立つ便利道具。 もっともベーシックな言語モデルは学習コ…