$yuzu->log();

技術ネタなど。

【MeCab】マルコフ連鎖テキストを吐き出すPHPライブラリを作った。

yuzurus.hatenablog.jp

前回MeCabのインストール方法をご紹介しました。 そのMeCabを使ったマルコフ連鎖テキストを吐き出すPHPライブラリを作成しました。 Packagistにも公開したので簡単にインストール出来るようになっています。

インストール

  1. MeCabのインストール
  2. ComposerをインストールしていなかったらComposerをインストール
$ composer require 'yuzuru-s/markovchain:dev-master'

これで準備は完了です。

使い方

require_once 'vendor/autoload.php';
$mc = new YuzuruS\Markovchain\Markovchain();

$text = '繁栄を築き上げた人類は、突如出現した“天敵”「巨人」により滅亡の淵に立たされた。生き残った人類は、「ウォール・マリア」、「ウォール・ローゼ」、「ウォール・シーナ」という巨大な三重の城壁の内側に生活圏を確保することで、辛うじてその命脈を保っていた。城壁による平和を得てから約100年後。いつしか人類は巨人の脅威を忘れ、平和な日々の生活に埋没していた。';

$markovText = $mc->makeMarkovText($text);

echo $text."\n";
echo '↓'."\n";
echo $markovText."\n";

結果

繁栄を築き上げた人類は、突如出現した“天敵”「巨人」により滅亡の淵に立たされた。生き残った人類は、「ウォール・マリア」、「ウォール・ローゼ」、「ウォール・シーナ」という巨大な三重の城壁の内側に生活圏を確保することで、辛うじてその命脈を保っていた。城壁による平和を得てから約100年後。いつしか人類は巨人の脅威を忘れ、平和な日々の生活に埋没していた。

繁栄を築き上げた。いつしか人類は、突如出現した。生き残った人類は、辛うじてその命脈を得ていた“天敵”「ウォール・シーナ」、平和な日々の城壁による平和を忘れ、「ウォール・マリア」、「ウォール・シーナ」、辛うじてその命脈を確保することで、突如出現した“天敵”「ウォール・シーナ」、「巨人の脅威を保ってから約100年後。城壁による平和な三重の城壁による平和を忘れ、辛うじてその命脈を保ってから約100年後。

まとめ

マルコフ連鎖は所謂「人工無能」に使われているようですね。

とりあえず自分で使うために適当に作ったのでまだ汎用的に作ってないです。 時間があったらもう少し汎用的になるように修正します。