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で送る

 - 技術系

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

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

  関連記事

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

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

Gitでプロジェクトごと別リポジトリにpush(コピー)する方法

様々なシーンで、 「リポジトリAのファイルをまるっとリポジトリBに持って行きたい …

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

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

知らないと大惨事に・・・DNSのSPFレコードにはincludeできる上限がある件(10回)

意外と情報がなく、知らずに馬鹿みたいにIncludeすると大変なことになるのでメ …

Route53とムームードメインを使って独自ドメイン取得したよ!

毎度、チャットです。 ブログが出来上がって「さあこれから更新だ」ってなって、 「 …

pythonで正規表現を使って文字列を検索してマッチした全てを出力する

プログラミングしていて、 とあるファイルや外部サイトのHTMLだとかを部っこ抜き …

【手順書】サーバでバックアップファイルを作るときのちょっとした工夫

毎度、僕です。 記事名の通りなのですが、 「あーこれ便利ー♪」 と感じたコマンド …

【エンジニア必見】vimでの入力補完の仕方

viでの入力補完について、あまり使われていないようなので、 一応記事に載せておき …

【Ansible】実行サーバから構築対象サーバにSSHするユーザの指定の仕方

いつも忘れてしまうのでメモ

【ansible】”ERROR! ‘unicode’ object has no attribute ‘xx’とかいうメッセージがでる

  最近仕事でansibleに触れてて久しぶりに開発っぽいことしてて生 …

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

Message

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