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

 - 技術系

  関連記事

ルビィちゃん
RubygemsをLinuxサーバにソースから3分でインストールする方法

railsアプリが動く環境を構築する上でrubyとrubygemsをインストール …

git
【GIT】既存のプロジェクトをコピーする方法

ansibleでテンプレートとなるplaybookファイル用意してて、 サービス …

git
【GIT】Masterブランチをcloneして別ブランチをローカルで作ってpushする

ふとMasterをcloneしてきて動作検証してる中で書き換えたりしちゃって、 …

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

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

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

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

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

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

20100222031417-64-197_thumbnail
WordPressで投稿した記事がなかなか反映されなくて震えた

タイトルの通りなんですけど、 困るというより不安になりますね。 なんとか解決にい …

img_0
ブログをgoogleとbingにインデックスさせた(申請した)

ブログを立ち合げたわけだしせっかくなので、 検索エンジンに引っかかるようにしたい …

502_01
またもこのブログ(word press)で「bad gateway 502エラー」がでました。

今日は19:30頃には会社をでて(僕の会社は10時出社の19時定時)、 早めに家 …

profile
【Linux】ソートして重複行を削除してそのままファイルを上書きさせる方法

微妙に悩んだのでメモメモ PR [crayon-588022b477b63226 …

Message

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

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">