【Rで自然言語処理】Rからjuman++を動かし形態素解析の結果を受け取る on Windows10

いまから半年くらい前ですか。juman++をインストールしようとしてどうしてもうまくいかなかったのでした。
wanko-sato.hatenablog.com
が、ここ最近ふと思いついてあれこれ試してみた結果・・・

ついにうまくいきました!!!

といっても、実際にやっていることはかなり面倒なことなんですが。。。
いやいや、最初の設定が面倒なだけで、設定が済んだらあとは大したことないですよ、うん。

というわけで、実際にどんなことをしているのか、と、そこに至る設定の方法を書いていきます。

続きを読む

【Rで自然言語処理】単語の出現パターンをクラスタリングする。

前回、前々回とトピックモデルに関する話題を扱いました。
wanko-sato.hatenablog.com
wanko-sato.hatenablog.com
トピックモデルは嫌いじゃない、むしろ好きなんですが、結果の解釈が面倒なのと、やっぱり確率分布を使うため、結果にどこかふわっとした感じが残るあたり、どうにもモヤってしまうのです。もちろん、そういうのを織り込み済みであることを分かってもらえれば良いのですが、LDAはどうにも説明がややこしいところがございまして、簡便な方法で、細かい説明をしなくてもすぐにわかってもらえる指標ってないのかなぁ、とあれこれ考えているところでございます。
その中でも、最近思いついた中で個人的にヒットしているのが「単語の出現パターン」でございまして。今日はそのお話をしようと思います。

続きを読む

【Rで自然言語処理】トピックモデルによる文書分類結果の妥当性を検証する。

前回、トピックモデルのLDAを用いて文書を分類し、その結果をjavascriptで可視化する、ということをやりました。
wanko-sato.hatenablog.com
ただ、その結果が本当に妥当なのか、正直自信がありませんでした。一応は3Dプロットで、検索ワードと文書分類がほどほどかみ合っていることは確認しましたが、あまりにざっくりしすぎてきちんとした検証を行っていませんでした。
というわけで、前回使ったデータと結果をもとに、得られた結果が実際のところどんなものなのか、じっくり見ていきたいと思います。

続きを読む

【Rで自然言語処理】トピックモデルの階層構造をどうにか可視化したい。

もう7月ですね。
統計検定、終わっちゃいましたね。
結果云々を一切書いてないってことはお察しということで。
※というか、6月末だと思い込んでいて、余裕ぶっこいていたら申し込みすらすっかり忘れていた、というオチです。

はい、というわけで、今回はトピックモデルのお話です。
ふと思ったらトピックモデルを本来の用途で使った記事を書いたことがなかったなぁ、と。
wanko-sato.hatenablog.com
こんなのは書いたけれども、扱ったのは数字の集合だったわけで、さすがにこれで「トピックモデルやりました」とは言いづらいかなぁ、と。

続きを読む

【Rで機械学習】LSTM-RNNの予測結果を考察する。

前回、sinカーブを学習データとしたLSTM-RNNによる学習と予測の実験を行いました。

wanko-sato.hatenablog.com

その結果、比較的良好な予測結果が得られたわけなんですが、果たして本当にそれだけで満足して良いのだろうか?とふと疑問に思いました。というのも、そもそもLSTM-RNNの予測は学習されたモデルから確率分布を用いてサンプリングしてくるものなので、どうしても確率的な振る舞いが混入してきます。その確率的な振る舞いがどのようなものであるのか、きちんと把握した上でないと、予測結果の良しあしは判断できないのではないか、と考えたのです。

続きを読む

【Rで機械学習】LSTM-RNNを仮想数列で実験してみる。

前からなんとなく気になっていたLSTM-RNN。
LSTM-RNN(Long short-term memory Recurrent Neural Network)とは・・・なんて話をしだすときりがないので、以下のリンク先をみてください。

qiita.com

qiita.com

要は時系列データを学習するニューラルネットワークの一種なんだけれども、学習させるデータが長すぎたりするといろいろ問題が起こるので、「忘れる」という状態も組み込んだ学習モデルにしよう、というもの。リンク先にもあるように、近年、機械翻訳など、自然言語処理の分野で目覚ましい成果を挙げているそうで、テキストマイニングでごにょごにょやっている人間としてはいつか手をだしてみよう、と思っていたものです。
で、ようやく時間ができたのであれこれ試してみよう、と思い立ち、いつも参考にさせてもらっているこちらを見ながらあれこれ考えてみました。

tjo.hatenablog.com

ひとまず例示にあるような、文章を学習させるモデルを考えたのですが、すでに実験されているように、夏目漱石の上記の例でもなかなか良い予測ができず、自前で宮沢賢治の文章を用意してやってみたりしたのですが、それもいまいち。やっぱり大量に学習データがないとだめなのかなぁ、と考えていたところ、ふと、余計なことをひらめきました。

というわけで今日のお題です。

続きを読む

【Rで自然言語処理】Term-co-occurrence matrixから距離行列とグラフをつくる実験

前にこんな記事を書きました。

wanko-sato.hatenablog.com

構文解析の結果から語のつながりを抽出して意味あるいは概念のネットワークを構築しよう!というアイディアです。が、進んでいません。というのも。

KNPの結果の解析がめんどくさい。

というごくごくしょーもない理由だったりするわけです。
じゃあ、別の入り口はなかろうか?と考えていたときに、お気に入りパッケージ"text2vec"のTerm-co-occurance matrixが面白いことに使えそうな気がしてきたので、ちょっと実験してみた、という話です。

続きを読む