2009年05月22日

作りたいソフトウェア

作りたいソフトウェアを思いついたので、概要をまとめておく。他にもやりたいことが溜まってるので後回しになりそうだけど、いつか手を付けたい。


■目標
全米が泣くようなブログを自動で書いてくれるソフトウェア。
メールを受信するといい感じに返信してくれるソフトウェア。

■名前
プロジェクト名を「Kotoko」と名づける。
女性のイラストと一緒に公開すれば人気が出るに違いない。

■やること1
言語の連想モデルを作る。
とりあえずニューラルなのとSVMを調べてみたけど、イマイチ。
手馴れたところでデータベース(SQLite)と、フルテキスト検索(Sennaとか?)を使うことになるだろうから、そこで実現できそうなモデルを作る。頭の中にあることを実現しようとすると、酷く冗長で、言葉だけで何ギガも使いそうな状態が想像される。「花」という1つの言葉をSELECTすると1MB分のデータが湧いて出てくるような。

■やること2
文章を蓄積する。
読み込ませる文章によって性格がズレそうなので、「Kotoko」という名前に合いそうな文章を読ませたい。確か青空文庫に斜陽がいたか。あとは上品な感じのブログ書いてる人を探して、全エントリー読ませたりする。
ということで、ブログのTOPから全エントリーを探査して本文のみをデータベース化する処理をさっさと作っておく。ついでに簡易な上品判定スクリプトも書いておく。

■やること3
日記を書いて、「Kotoko」に読み込ませて、それを言い換えるプログラムを作る。
「今日は二日酔いで会社に行った。昼過ぎまでけっこう辛かった」と書いたら、「今日、例のブログ書いてる人は二日酔いでふらふらしながら会社に行ったらしい。仕事に対して不誠実です。後で殴っておきます」と出力してくれる感じ。

■やること4
連想モデルと文章データベースを利用して、1つのテーマを広げて文章を書かせてみる。ワードサラダにならないように注意。