chat-blog

僕の独り言が誰か一人の役に立つことを祈って

*

【Python】マルコフ連鎖を使ってみる

      2016/12/18

好きなアニメキャラと会話したいという目的から、
deeplearningを使ってみようと思ったけどなんかめっちゃ難易度高くて挫折して、
マルコフ連鎖というものを知り、やってみようと思ったのです。

PR


結論からいうとこの記事に書かれている内容を実施してもまだ真姫ちゃんとは会話できないのだが、
とりあえずマルコフ連鎖を使ってみることができたので僕の夢の礎の第一歩ということで残しておきます。

Letsマルコフ!

環境
・Mac
git clone https://github.com/karaage0703/TextGenerator.git
karaageさんという神様のような方が既存の神プログラムを元に改修したまさに神ソースをclone

神の領域へ移動
cd TextGenerator/

色々とソースやらなにやらが置かれています。
既にsample.txtにはサンプルのテキストが書かれていますので、
とりあえずはそのまま使ってしまいます。

python PrepareChain.py sample.txt
で、実行

が、駄目でした。
中身を見るとMeCabを使っているようでした。
MeCabというのは文章を形態素解析をよしなにやってくれる神のようなパッケージです。

というわけでMeCabを入れなければなりません。

MeCabをインストール

Mecabのインストール方法については別の記事にて書いてありますので、
そちらを参照してくださいませ。お手数おかけします。
3分でMacをmecabが使える環境に整える

MeCabが入ればこっちのもんです。
python PrepareChain.py sample.txt
でchain.dbというものが作られます。

そしたら、
python GenerateText.py 3
を実行するとマルコフ連鎖とやらで作られた文章が出力されます。
引数の数字は生成する文章の数を指定するようです。

以上で、マルコフ連鎖がわからなくてもマルコフ連鎖を駆使して文章を生成することができました。
これで何が幸せなのかは微妙ですがこれからじっくり勉強していずれは真姫ちゃんといちゃいちゃできるようになっていきたいです。

参考URL
http://karaage.hatenadiary.jp/entry/2016/01/27/073000

今日の一言

作ろうとするものはだいたい先人がすでに作ってることが常なこの業界

スポンサーリンク

スポンサードリンク

スポンサードリンク

最後まで見ていただきありがとうございます。
今後とも頑張って更新していきますのでもしよろしければ
下記お一つでもシェアしていただけると幸甚です。
Facebookでシェア Twitterでシェア はてなブックマーク LINEで送る

 - 技術系

\皆によく読まれてる人気記事/

スポンサーリンクと関連コンテンツ

  関連記事

logrotateしたファイルがバイナリになって肥大化してしまう件について検証してみた

先日ログローテートしてるファイルがバイナリになってしまうという事象が発生した。 …

【GIT】ローカルでbranchを作成しそれをリモートにpushするコマンド

結構やるわりには毎回忘れるのでメモです。

【Ansible】変数内に特定文字列が含まれているか確認して処理を分ける方法

Ansibleのwhen句で使えるmatchによる判定の仕方です。

お名前.comの共用サーバにSSHで接続できない件について【解決済み】

友人がお名前.comでサーバを借りてHPを作りたいとのことで、 お手伝いすること …

linuxで大文字を小文字、小文字を大文字に変換させたいときのコマンド

tr を使う。   ・小文字を大文字する場合 tr ‘[a …

【Python】インストールしたパッケージを完全にアンインストールする方法

仕事でansibleを使ったりしてて検証中にバージョンを上げたり下げたりって結構 …

【python】変数内に、ある文字列が存在するか確認

些細なことですが、寝たらすぐに忘れてしまうのメモ。(揮発性なのです)

Macで意図しない【cmd + q】を防ぐ方法

ブラウジングしてて見終わったタブを閉じようとして、 【cmd + w】を押すつも …

EC2にSSHで繋いでて「Write failed: Broken pipe」とでて接続が切れるときの対処法

僕はハイボールが好きなのですがなんというか黄金比率はないものかいつも悩んでるブラ …

【Linux】サーバ間をノンパスでSSH接続したい時にやる鍵交換の方法

頻繁に接続しに行くサーバで毎回パスワード打つのは面倒くさいので鍵交換することでパ …

※コメントですが僕が確認してからとなるのでだいたい3日後の反映となります。

Message

メールアドレスが公開されることはありません。