湖底概念++

2009/12/13

[][] vadplus_x64 公開 (http://labs.lpm11.net/wiki/index.php?vadplus_x64) 18:53  vadplus_x64 公開 (http://labs.lpm11.net/wiki/index.php?vadplus_x64)を含むブックマーク  vadplus_x64 公開 (http://labs.lpm11.net/wiki/index.php?vadplus_x64)のブックマークコメント

 再生している音がそのまま渡される「ステレオミキサー」 (別名「再生リダイレクト」とか「Wave出力ミックス」等) が Vista に全然無いのですが、なんと typewriter 様がそれを実現するドライバ vadplus を作りました: http://kram.dip.jp/#vadplus

 しかし、残念ながら 64bit 対応していないのでコンパイルしてみました。説明及びダウンロードはこちらからどうぞ

★ ミラー

2009/08/02

[][][][] Rails+MySQL @ Windows で migration がうまくいかない件 21:01  Rails+MySQL @ Windows で migration がうまくいかない件を含むブックマーク  Rails+MySQL @ Windows で migration がうまくいかない件のブックマークコメント

 libmysql.dll が無いと怒られたから入れてあげたところ、今度は↓のようなエラーが帰ってきてうまくいかなかった場合。

> rake db:migrate --trace
(in 〜/どこか)
** Invoke db:migrate (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute db:migrate
** Invoke db:schema:dump (first_time)
** Invoke environment
** Execute db:schema:dump
rake aborted!
Mysql::Error: Commands out of sync; you can't run this command now: SHOW TABLES
〜/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/connection_adapters/abstract_adapter.rb:212:in `log'
〜/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/connection_adapters/mysql_adapter.rb:320:in `execute'
〜/Ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/connection_adapters/mysql_adapter.rb:436:in `tables'
...

 libmysql.dll は MySQL 5.0 付属のものだとちゃんと動くようです。5.1 だと↑のようになりました。

2009/05/13

[][][] 「ボッコちゃん」を実装する (1) 23:24  「ボッコちゃん」を実装する (1)を含むブックマーク  「ボッコちゃん」を実装する (1)のブックマークコメント

 「ボッコちゃん」とは星新一のショートショートに出てくるロボットの名称で、作品のタイトルにもなっている。しかしロボットとは言っても反応は「簡単な受け答えができるだけ」である。

「きれいな服だね」
「きれいな服でしょ」
「何が好きなんだい」
「何が好きかしら」
「ジンフィーズ飲むかい」
「ジンフィーズ飲むわ」

 この反応が人工無脳そっくりなので、衝動的に作ってみようと考えてみた。

★ 実態

 実際にやってみた (似非ボッコちゃん: 今回実装を試みたプログラム)。

客の発話似非ボッコちゃんの発話ボッコちゃんの発話
名前はボッコちゃんボッコちゃん
としはまだ若いのよまだ若いのよ
いくつなんだいまだ若いのよまだ若いのよ
だからさ……-まだ若いのよ
きれいな服だねきれいな服でしょきれいな服でしょ
なにが好きなんだいなにが好きかしらなにが好きかしら
ジンフィーズ飲むかいジンフィーズ飲むわジンフィーズ飲むわ

★ ボッコちゃんの動作

 基本的には以下の様な仕組みになっているようである。

この「簡単な受け答え」というのが非常に上手くできている。

  1. 5W1Hの質問に対しては、相手の台詞を繰り返しはぐらかす。
  2. Yes/Noの質問に対しては、全てYesで答える。
  3. 質問ではない台詞に対しては、ただ繰り返す。

たとえば、こんな感じだ。

  1. 「お客のなかで、だれが好きだい」→「だれが好きかしら」
  2. 「ジンフィーズ飲むかい」→「ジンフィーズ飲むわ」
  3. 「もう来られないんだ」→「もう来られないの」
我田引水:ボッコちゃん 星新一 - livedoor Blog(ブログ)

なお、答えられない場合は「マスター (開発者) に知らせる」と言う機能がある。

以上の情報を元にボッコちゃんの実装を試みた。環境は Ruby形態素解析には Mecab*1 を利用した。また、品詞の活用が必要となる際には茶筅*2の cforms.cha を利用した (続く)。