モンテカルロどうぶつしょうぎの試み5。

 本日の日記はコンピュータ将棋にモンテカルロ法を適用してみたという話である。ずいぶんと間が空いてしまったが、それだけ苦労したということである。第一回目の日記の内容から考えるとずいぶんと進歩した気がする。

 さて、コンピュータ囲碁の世界でモンテカルロ法(この日記では「モンテカルロ木探索」と区別せずにこう書く)が活躍しているが、コンピュータ将棋では依然としてminmax法の考え方で作られたソフトが活躍している。それがいいとか悪いとかという話とは無関係に、私はモンテカルロ法をコンピュータ将棋に適用しようとしている(この動機はあとで書く)。ただし、最初から81マスの本将棋に適用するのは大変なので、まずは12マスのどうぶつしょうぎで試している。実は前回はそこから25マスの5五将棋に挑戦してみたのだが、どうにもうまくいかないので再び12マスの将棋に戻った。なお、モンテカルロ法を将棋に適用しようと開発・研究している先輩たちはすでにたくさんおり、おそらく私のプログラムが最弱である。

 それから、この日記の末尾にプログラムを公開しているが、私のスタンスとしてはどうぶつしょうぎは木や紙で手で遊んでほしいと思っている(ボール紙で自作してもいいと思う)。もしパソコンで遊びたいという人は81-Dojoというサイトで対人戦ができるのでそこに行くことをお奨めする(どうぶつしょうぎのルールを作った女流棋士が秒読みの声を担当しているくらいなのでおそらく公認である)。

 ここから技術的な話になる。

 コンピュータ将棋を語る上でminmax法は避けて通れないので、遠回りではあるがそこから語る。まず、現在の局面があるとする。この局面に合法手(ルール上指せる手)がN個あったとすると次の局面はN通り存在することになる。図にすると次のようになる。

 この「次の局面」に対してさらに数通りの合法手が存在するのでその数だけ枝分かれし、さらに次の局面も同様に枝分かれする。図では仮に全ての枝分かれを2としているが、実際には様々な数の枝分かれがあり得る。こういう図を「木」という。

 ここで仮にこの深さ3の枝分かれで勝敗が決するとする。次の図のように勝敗が決するとしよう。この勝敗は一番上の「現在の局面」で手番を持っている方から見たものとした。

 この深さ3に至る一手は自分の手番なので、当然勝てるならば勝つ方を選ぶ。そうすると、深さ2の勝敗が決まる。

 深さ2に至る一手は相手の手番なので、当然負ける方(相手から見たら勝つ方)を選ぶ。こうして深さ1の勝敗が決まる。

 ここまで来るとどの次の一手を指せばいいのかも分かり、また「現在の局面」が勝ちなのか負けなのかも分かる。重要なことは、木の末端の勝敗が全て分かっていればその局面の勝ち負けと次に選ぶべき一手が分かるということである(厳密にいえば、末端の勝敗が「全て」分かっている必要はないのだがここではややこしいことは言わないことにする)。

 理想的には全ての末端の勝敗が分かれば必勝法(や必敗かどうか)が分かるのだが、コンピュータ将棋の場合は計算量の都合でそうはいかない。そこで、途中の深さまでで読みを打ち切ってそこでの局面の評価値(勝ちやすさみたいなもの。駒の損得とか囲いの堅さとか)を計算することになる。仮に次の図のように深さ3の評価値が分かったとする。

 先ほどは深さ2から深さ3に至る一手で勝ちがあれば勝ちとしたが、今度は評価値の大きい方の手を選ぶ(実際にはもっと多くの手から選ぶことになるがそのときには最大の手を選ぶ)。また深さ1から深さ2に至る一手では評価値の小さい方(最小)の手を選ぶ。すると、どの次の一手を選べばいいのかということが分かる。

 つまり、ある深さまでの評価値が信じるに足るものであれば、次に選ぶべき一手が分かる。この最大最小の計算方法が「minmax法」と呼ばれている。なお、全ての末端の評価値を計算する必要がないことが知られているが、そのあたりの説明はややこしいのでしない。この考え方に基づく実装法には本当に様々な実用的な工夫がたくさんあるのだが、ここでは説明する必要がないので説明しない。

 さて、ここからようやくモンテカルロ法である。ただし、どこまでが既知でどこからがオリジナルなのかは私自身も分かっていない。まず最も原始的なモンテカルロ法から語る。「現局面」と呼ばれるべきものが与えられたとして、そこから全くランダムに手を指していき、終局にたどり着かせる。図にするとこんなイメージになる。

 このどんどん手を指していって終局させることを「プレイアウト」という。そうして何回もプレイアウトを繰り返して結果的に最も勝率のよかった最初の一手を実際に指す手として選ぶ。

 この方法のいいところは、終局結果を指し手の評価の最も重要な要素として扱う点である。逆にいうとそこだけしか美点は思いつかず、欠点ばかりが目につくのであるが、やはり終局を考慮するのは重要なのではないかと思うのである。

 ところがこの方法だと問題が出る。minmax法のところで説明したような木だと、最初に右の指し手を選んでも左の指し手を選んでも勝率が5割になってしまうのである。

 同様に、仮に深さ3のところの勝率が与えられていたとして、最善手を指したときの勝率はminmax法と同じになるべきなのに、ランダムにプレイアウトさせるとそれとは違う勝率が出てきてしまう。

 この問題を考えるために、木から部分的に次の図の部分のみを取り出す。minmax法と同じ勝率がほしいので、ここでは(最大値がほしいとして)0.7が上に伝わってほしいことになる。そのためには上側の局面のところから常に最大の(0.7の)局面を選ぶようにすればよい。すると、下の0.7という勝率が上に伝わっていくことになる。つまり、ランダムに手を選ばずに、常にその局面のその時点での最大勝率の手を選んでいけば最適な勝率が得られる。なお、たどった全ての局面の勝率を保持していることを前提としている。

 ただし最大値のみを選ぶことにも問題がある。例えば、次の図のように0.6の勝率を持つ手ばかりを選んでしまって、0.7の勝率を本来なら持っている指し手を選ばなくなってしまうことがある。これを防ぐために一定の割合でランダムに指し手を選ぶことが必要になる。ただしランダムに選んだ場合には、その結果の勝敗を深さの浅いところには反映させないことにした。また、今回の実装ではランダムにせずに二番目に勝率の高い指し手を選ぶということにした。

 勝率の更新方法であるが、全ての指し手について分子分母を保持し、「勝ったら分子分母に同じ定数を足す」「負けたら分母のみに同じ定数を足す」という操作をしたのち、分子分母の両方を分母の値で割るということをしている。そうすると結局、分母の値を保持しなくてもよくなる(ややこしいことを書いているが要するに分母の値は保持していない)。また、こうしておくとプレイアウトの回数によらず常に勝敗結果が勝率に対して一定の影響を持つことになる。また、深い指し手ほど分子分母に足す定数を大きくし、木の浅い部分の変動を遅くした。

 ここまでが基本的な探索方法である。ここから先は勝率の初期値についての話になる。

 本当は勝率に初期値を与えたくなかったのだが、そうもいっていられないので初めてたどり着いた局面について局面に依存した勝率を計算することにした。指し手に依存した(実現確率のような感じの)勝率ではなく、あくまで局面評価による勝率を初期値とした。

 局面に初期値を与えるためには特徴量が必要である。特徴量はそれっぽければおよそなんでもよい。実際に試してみた最も簡単な特徴量は、盤面12マスに自分の駒(および敵の駒)の利いているマスがいくつあるかということを数えるというものだった。これだけのことでどうぶつしょうぎではそれっぽく動いてくれた(それっぽくどころではなくかなり有効であった)。特徴量が敵味方二つしかなく、それぞれ13種類しかとる値がないので、手作業で勝率の初期値を割り振ることができるのもよいところだった。

 この単純な特徴量でもよいのだが、将来の本将棋のことを考えるとそうもいっていられないので、複雑な特徴量を導入する。まず、12マスを筋ごとに分ける。4マス×3筋となる。この4マスについて利きの数を数える(0から4の値をとることになる)。さらに、玉がどの筋にいるかという情報(1から3の値をとる)を組み合わせる。これを敵味方の駒、敵味方の玉について計算する。さらに段についても同様に計算する。といったことをした。複雑なのでこういう分かりづらい説明しかしないが、簡単に言えば「部分的に利きの数を数えた」ということである。

 これくらいの特徴量なら手作業で勝率をつけられないこともないが、やはり将来の本将棋のことを考えて自動学習することにした。自動学習については様々なことを試してみたが、行き着いた先は「学習」というよりは「初歩的な統計」という感じのものである。

 まず局面をランダムに用意する。そしてその局面から今回書いたアルゴリズムで勝率を計算する。このランダム局面を表す特徴量にその計算した勝率を割り当てる。ただそれだけである。機械学習というほどのものではない。

 この学習法で最も注意すべきことは、ランダム局面の生成法である。駒得の度合、持ち駒の枚数、成りゴマの枚数など、人為的に決めなければならないパラメータが思ったよりも多い。人為的な要素を排除するために、初形の局面からランダム対局させて局面を生成してみたが、うまくいかなかった。今回用いた特徴量は部分を表すものであるが、学習に使う勝率は局面全体から求められるもののため、部分の有利不利と局面の優勢劣勢がなるべく一致しなければならないのである。ランダム対局の方では生データを見るかぎりではそのあたりがあまり一致していないように思えた。

 さて、上記のようなことをした結果、どれくらいの強さになったのかということを書こう。今回のアルゴリズムを後手、弱いminmax法(前回と同じベンチマーク)を先手とし、今回のアルゴリズムのプレイアウト回数を1000とした。その結果、720勝165敗115引き分け(勝負が80手を超えたら引き分けとした)となった。前回(2010年5月22日)の実験では同じ相手で10000プレイアウトで16勝81敗3分、100000プレイアウトで61勝35敗4分だったので、とても強くなったことが分かる。また、プレイアウト数が減ったので一手にかかる計算時間も短縮された。

 今回も実験に用いたプログラムをSkyDriveに置いておく。前回までとは異なり、しかるべき環境でコンパイルをすれば動くはずである(ただし、UIが貧弱であり操作性が悪いので遊ぶのには適していない)。なぜ前回までのようにプログラムの一部を削らないのかといえば、これまではライブログさんに遠慮していたのであるが、いろいろあったようなので遠慮しなくてもいいかなと思ったからである。というわけで、どうぶつしょうぎの現権利者のねこまどさんとピエコデザインさんと幻冬舎エデュケーションさんに迷惑をかけない程度に自由に使ってください。

 ところで、半年ほど前にとある女流棋士から「どうぶつと5五と本将棋で同じアルゴリズムを使うのは違和感がある」という内容のことを言われた。これはそのとおりであり、それぞれ似たようなルールであるものの大局観が異なる。また、本将棋であっても、居飛車振り飛車の将棋と相振り飛車の将棋では感覚が違う。このあたりすっきりとさせたいところではあるが、明解な答えは見つからない。特徴量を変えているからそれでいいのだと考えている人もいるかもしれないが、おそらくこの問題はもっと深い。本将棋も九路盤囲碁も、理論上は必勝法が存在していて盤の広さも同じであるが、それでは本質的に何が異なるのかと問われるとルールが全然違うように「感じる」ということしか言えなかったりする。そして、ルールが違うのはどうぶつしょうぎ本将棋も同じなのである。桂馬が横に飛ぶ変則将棋とどうぶつしょうぎとでは、どちらが本将棋に近いのか。そもそも「近い」という言葉に意味はあるのかという問題でもある。きっとこのあたりのことは明解な解答が得られずに歴史に埋もれていくのだろうと思う。その前に囲碁と将棋でコンピュータが名人よりも強くなるように思えるからである。

 ちょっとこのところコンピュータ将棋に時間をかけすぎていたので、また音声をがんばります。誰か5五将棋でこのアルゴリズムを試してくれたら嬉しいなあ。多分、問題が山積みでまともな将棋にならないだろうけど。

二次元テレビと穴。

 三十年ほど前、我が家には一瞬だけ白黒テレビがあった。私に物心がつく前のことなのであまりよく憶えてはいない。ほどなくしてカラーテレビに買い換えられ、それ以降我が家にはカラーテレビがあるのだが、そういえばなぜテレビには視覚的にリアリティがあるのだろうか。

 我々人類は一般的な見解としては三次元の空間に生きている。物理学の世界には理解しがたい次元がいろいろとあるようだが、一般的には三次元である。我々は三次元空間の街を歩き、三次元空間の人々と会話をする。にもかかわらず、テレビは二次元である。二次元テレビには充分なリアリティがある。コメディの世界に「昔テレビの中には小人が入っていると思われていた」という定番の笑い話があるほどにはリアリティがある。液晶ではなくブラウン管だったので小人が入る余地があったといえばあった。

 なぜ一つ次元の低い映像に我々はリアリティを感じるのか。いろいろと仮説は考えられるが、もしかしたら我々は普段三次元空間にいるときも二次元の映像としか認識していないんじゃないかなと思った。奥行きの認識もできるものの、奥行きに関してはかなり鈍感なのではなかろうか。

 ということを書こうとしてから半年くらい経ってしまった。そうしたら三次元のゲーム機が出てきたりしてやっぱり書くのをやめようかと思ったりもしたが、とあるきっかけがあって書くことにした。

 この奥行きの話は、以前ここに書いた穴の話に関連してくる。「穴という概念は不思議だ」という話である。穴には様々な形があるのに全て穴と表現されるのである。穴には典型例が見つからないにもかかわらず穴という概念が存在するのである。「穴と境界」という哲学の本まで出ているほどである。ドーナッツのように突き抜けている穴もあれば、アリの巣のように突き抜けていない穴もある。どちらも穴である。なぜ様々な形状のあの空間が全て穴と呼ばれているのか。

 そういう疑問を抱えつつ、「院展」という日本画の絵画展を見に出かけたところ見事なトンネルの絵があった。ここにも穴があったかと思って嬉しくなり、ちょうどその絵の絵葉書が売られていたので買った。松本高明さんの「水路」という絵である。今もその絵葉書を壁に飾っている。

 この絵を見ていて、そういえば穴というのはイラストとして書こうとするとどうしても円に近くなるということに思い至った。穴というのは本質的には円なんじゃないかと思った。穴の本質は三次元形状にあるのではなく、二次元の断面図にあるのではないかと思った。断面図というか、二次元の外見である。

 そうは思っても、三次元のものを二次元に圧縮してしまっていいものかどうか悩んだ。悩みつつ川本真琴さんのDVDを見ていてそのDVDが二次元映像であることに気づき、人間というのは奥行きに鈍感なのではないかと思ったのである。奥行きに鈍感であるのなら穴の典型例を円だと捉えても許される気がする。穴は多様なのではなく、断面は円なのだ。

 なんら検証はしていない話ではあるが、もしも奥行きに鈍感であることが正常であるとしたら、私が飛んできたボールをキャッチすることが苦手であることに理屈をつけることができるので嬉しい。あと、院展で同い年の従兄が外務大臣賞を受賞したので記念にこの話を書いた。

テストに出ないからこそ重要な数学の心得。

 本日の日記は本の紹介である。「数学ガール 乱択アルゴリズム」という本である。

 小説仕立ての数学の本であり、この乱択アルゴリズムはシリーズの四冊目であるようである。私は前の三冊は読んでいないのでなんともいえないが、この本は素晴らしかった。

 数学の本といえば、定理があって証明があって終わり、というイメージだろうと思う。つまり一般的には数学の本は定理の紹介である。でも、この本は定理の紹介ではなく、「数学の得意な人というのは知らない数式を見たときにどう理解するのか」「思っていることを数式にしたいときにはどうするのか」ということを紹介しているのである。

 要するにこの本は、基本的な数式の「読み書き」の本である。

 かなり前にこのブログでも、数学の授業は式変形に終始していてつまらなかったということを書いた。数学の面白いところは(実学的には)現実世界をどう数式で表すかということと、数式から意味をどう読みとるかというところにあるのに、それを学校では教えないという不満を書いた。この本は見事にその不満を解消してくれた。

 この本を読んでもすぐには学校のテストの成績が上がるわけではないが、「テストに出ないからこそ憶えておくように」というフレーズがぴったりくる一冊である。読んでから三年後くらいに差が出る。

 十章からなり徐々に難しくなっていくが、最初の方を読むだけでも意味のある本である。途中で挫折しても構わないという気持ちで読んでほしい。

3月21日に予定されていた講演で羽生善治三冠に訊いてみたかったこと。

 来たる3月21日に電気通信大学に於いてコンピュータ将棋に関する学会(一般公開)が開かれることになっていたが、地震のために中止となった。その学会では羽生善治三冠の講演と質疑応答もあった。

 質問は聴講参加希望を送るときに同時に集められており、私も質問を書いた。私の質問が採用される予定だったかどうかは知らないが、せっかくなので羽生三冠に訊いてみたかったことを本日の日記では書こうと思う。

 現在、アマチュアの将棋指しの中でも特に級位者や初心者は、自分の棋譜をコンピュータに解析させることが多くなってきている。先手と後手のどちらが優勢だったか、どの手がよくてどの手が悪かったか、悪かったとしたらどんな手を指せばよかったのか、といったことをソフトは教えてくれるらしい。私はソフトを持っていないので詳しいことは分からないが、ウェブ上の解析結果をちらちらと見る限りではそれっぽい解析結果である。

 また、プロ同士の対局の形勢判断をリアルタイムで計算してくれるツイッタアカウントなどもあり、アマチュアが徐々にソフトに対して信頼を寄せつつあることが分かる。

 そんな中で、どこまでソフトは人間らしいのかということを知りたくておよそ次のような質問を書いてみた(保存はしていないので記憶を元に書き起こしている)。

棋譜(ただし考慮時間は含まない)だけを見て、対局者が人間であるかソフトであるかということは分かるものでしょうか。また、分かるとしたら、どのあたりからそう判断するのでしょうか。

 正直なところ私は、先日のトップ女流棋士とコンピュータ将棋(あから)の公開対局を見て、コンピュータ将棋にコンピュータらしさを感じることができなかった。何手か人間なら指さないような際どい手もあったと言われているが、それを「これは渡辺明竜王がすでに勝ちを読みきった手なんですよ」などと解説されたら信じてしまいそうである。

 トッププロの目から見て、コンピュータ将棋はまだまだコンピュータらしいのか、それとも人間の指し手に近づいているのか、私は非常に気になっている。

 私は心のどこかで、ソフトに形勢判断をさせるのはまだ無理なんじゃないかと思っていたり、ソフトが疑問手だと指摘しても反論したかったりしているのである。それから、プロ棋士女流棋士のほうが大局観に優れているというのは心の底から思っている。

 また、どのあたりから判断するかというのも興味がある。人間とソフトはどこが違うのかという問いである。これに関してはソフトの開発者が考えていなかった回答をするのではないかという気がする。一流の指し手しか持っていない視点がありそうである。

 果たして、一般公開の講演が予定どおりおこなわれていたら、羽生先生はなんと答えただろうか。

 聴講参加を希望した者の勝手なお願いとしては、できることならUstreamあたりで羽生三冠と伊藤先生に対談のようなかたちで講演していただきたいと思っている。

小説関連のイベント。

 音声とも将棋ともそのほかの学術的なこととも何ら関係がなく、つまりこのブログとは関係がないイベントですが、告知してほしいと頼まれたので告知です。

 世の中には小説家とか編集者とかそういう人たちがいるわけですが、そういう人たちのディスカッションを聞いたり交流をしたりする会が開かれるようです。私もよく分かっていません。

半分の月がのぼる空」という作品の著者である橋本紡さんが深く関わっているようですが、詳しい情報はよく分かりません。

三月十二日の午後、場所は東京駅付近

とのことです。

 詳しくは、橋本さんのブログ橋本さんのウェブサイトをご覧ください。これから徐々に情報が増えていくことでしょう。

追記(2月22日):
このイベントに関する専用ページが設けられたようです。いろいろと詳しいことが載っています。

追記(3月12日):
地震のため、中止になった模様です。

「べ」と「で」と「げ」の違い・その4。

 本日の日記は音声の話である。ようやく一歩研究が前進したかしていないかというところである。分野としては、計算音声学ということになるのだと思う。文系の音声学について工学的にアプローチしてみたということである。

 私は今、/p/と/t/と/k/がどのように違うのかという謎にとり組んでいる(ここ三年間くらいずっととり組んでいる課題である)。広くいわれているのは第二フォルマントの周波数の時間変化で見分けがつくというものだが、「第二フォルマントの周波数の時間変化」そのものが探せない音声があったり、フォルマントを様々に変化させて音声を合成してもうまく/p/,/t/,/k/に聞こえなかったりしていたので(ほかの研究者からもちらほらそういう声が聞こえる)、おそらく広くいわれているこの仮説にはどこかに穴があるのだろうと思っている。そして、自分で地味に見分け方を探してみようとしている。

 研究のアプローチとしては、とにかく/p/,/t/,/k/を再現しようというところから始めている。そして今回ようやく/pi/,/ti/,/ki/が再現できたのではないかということで、ここに記録を書いている。母音が/i/の場合に限るのであるが、それでも大きな一歩である。

 問題をもう一度定義する。/i/の音声を信号処理的に加工して/pi/,/ti/,/ki/を作るのが目標である。なお、調音位置だけを問題としているので、/bi/,/di/,/gi/になってしまっても構わないものとする。

 以下、作り方と同時に、作った音声を60代男性と60代女性に聴いてもらった感想も記す。被験者数が少ないのでもっと多くの人に聴いてもらいたかったところであるが、個人でできるのはこのあたりまでである。この日記の末尾からリンクしたサンプル音声には私の声しか含まれておらず、聴いてもらった音声も主に私の声であるが、研究過程では「重点領域研究「音声言語」・試験研究「音声DB」連続音声データベース*1」というデータベースを使わせていただいた。データベースを提供してくださった国立情報学研究所音声資源コンソーシアムの方々に感謝します。

 まず、元となる/i/のスペクトログラムはこれである。これを加工する。なお、サンプリング周波数は16kHzであり、このスペクトログラムの縦軸(周波数)の最大値は8kHzである。横軸(時刻)は0.3秒程度である。赤が最も振幅が大きく、青が最も振幅が小さい。


図1 /i/

 /ki/への加工法であるが、とてもシンプルである。以下のスペクトログラムのように、第二フォルマント付近に狭い帯域の雑音を作る(黒い矢印で示した部分)。これだけで、およそ「き」に聞こえる。いろいろと自分の耳で聴いてみた感じでは、狭さが重要であり、どれくらいの周波数の高さに雑音があるかということはさほど重要ではないようである。ただし、第二フォルマントよりも低い周波数帯域では、「き」に聞こえなかった。


図2 /ki/っぽく加工

 被験者二名の/ki/に対する感想であるが、どうやらこれから示す/pi/や/ti/よりも明瞭度は相対的に高かったようである。

 次に、/pi/への加工法であるが、少々厄介である。最も肝心なのは、以下のスペクトログラムに示す黒色で囲った部分を低い周波数にずらすという操作である。これだけでかなり/pi/っぽくなってくれる。/pi/には聞こえなくとも唇付近で調音された音っぽくはなってくれる。次に、青で囲った部分に雑音を付与する。これで破裂音っぽくなる。実はこの二つの操作で私の声以外の音声サンプルでは/pi/っぽくなってくれたのであるが、どうやら私の声は特殊らしく、緑で囲った部分の振幅をゼロにしないと/pi/には聞こえてくれなかった。


図3 /pi/っぽく加工

 この/pi/の操作であるが、従来からいわれている「第二フォルマントの周波数の時間変化」の知見とおよそ一致している。

 被験者二名の感想であるが、/pi/については意見が割れた。男性被験者は明瞭度が低いと感じたそうだが、女性被験者にははっきりと/pi/に聞こえたようである。このあたりで、被験者数の重要さが分かる。

 最後に、/ti/への加工法であるが、実はこれはよく分かっていない。なぜかというと/i/を加工すると大抵どう加工しても/ti/っぽくなってしまうからである。これでは/ti/の生成法が分からない。今回は最もシンプルな方法として、下の図のスペクトログラムの緑で囲った部分の振幅を一様にして位相をランダムにするという方法をとった。


図4 /ti/っぽく加工

 この/ti/に対しても被験者二名の意見が割れた。男性被験者は明瞭度が高いと評価した。女性被験者は聞き方によっては/pi/にも聞こえると評価した。

 以上で音声加工方法の本論は終わりである。以下、余談などである。

 今回は身近にいた六十代の男女を被験者としたが、聴覚の世界では六十代を高齢者として扱うことがある。大雑把な高齢者の特徴として、母音の聞き取りに不自由はないが、子音の聞き取りが苦手であることが多いということが挙げられているらしい。今回そんな初期高齢者でも意図どおりに子音が聞き取れたということで、手法は悪くないのではないかと思っている(前回はまるで聞き取ってもらえなかった)。

 また、被験者は音声を聞くのを嫌がるのでほとんど私の声しか聞かせていないのだが、私は様々な人の声で研究を進めた。その中には「桃音モモ」に使われている声もあった。そして、最も加工しづらかったのが「桃音モモ」の声だった(上記の方法でも私にすら子音がそれっぽく聞こえない)。理由は分からない。なお、次に加工しづらかったのは私の声だった(ほかの六名程度で成功したかに思えた手法がいつも私の声で通用しなかった)。

 それから、前回に同様の試みをしたときには、研究遂行者である私にしかそれっぽく子音が聞こえなかったという事態に陥った。自分の作った音に慣れてしまったからである。この研究は慣れとの戦いである。今回ももしかしたら、私と二名の被験者にしかそれっぽく子音が聞こえていないという事態に陥っている可能性もある(二名の被験者には前回も協力をしてもらったため)。これが最も怖いところである。

 最後に、母音/o/に関しても/po/,/to/,/ko/を作ってみたのだが、先に被験者となってくれた男性被験者が、「(子音が聞こえず)/o/としか聞こえない」と言っていたため、今回は/i/のみの日記とした。一応、配布するスクリプトと音声サンプルには/o/のものも同梱した。

 いつもと同様に今回もスクリプトとサンプル音声をSkyDriveに置いておく。自由に使ってもらって構わない。改変・二次配布も許可する。スペクトログラムの画像も同梱している。

 私はこれから一ヶ月ほど耳を休めるが、もし続きを研究したい人がいるなら、自由に続きを研究して自由に発表してください。

*1:板橋秀一「文部省「重点領域研究」による音声データベース」日本音響学会誌,48巻,12号,pp. 894-898 (1992)

勝手には進歩しない科学。

 さて、今年もどうでもいい話から始まる。

 少し前のことになるが、旧くからの友人とコンピュータ将棋の話になった。友人がそれほど詳しくない類の話である。私が「頑張って作っているんだけどなかなか上手くいかないんだよねえ」と言うと、友人は何かに気づいたように「そうなんだよねえ。コンピュータを強くしている人がいるんだよねえ。でも、なんだかコンピュータは勝手に強くなるイメージがあるんだよねえ」と言った。

 友人のその感覚はおそらく普通のものであり、世の中の多くの人にとって「科学は進歩する」ものであり、「科学を進歩させている誰かの存在」を感じることはほとんどないのだろう。その友人は私の日記をずっと見ている人であり、私が日々科学(技術)を進歩させようと努力していることを知っているはずなのだが、それでもイメージとしては、「科学は勝手に進歩する」なのである。

 似たようなことは他のあらゆる職業(特に抽象的なもの)にもいえる。例えば、「雇用が減っている」と言われているが、おそらく雇用者にとっては「雇用を創出しづらくなっている」が実感だろうと思う。また、「山手線は二分間隔で電車が来てすごい」ではなく、「山手線従事者はすごい」である。

 何か便利なことや不便なことがあるとき、そこにはそれに携わっている人がいるはずなのだが、なぜかそれらの事実は忘れられ、結果の現象だけが語られる。携わっている人の存在が尊重されれば、きっとあたたかい社会になるんじゃないかと思うのだが、世の中は逆の方向に向かっているように感じる。

 科学がひとりでに進歩することはないし、電車がひとりでに走ることもないし、魚がひとりでにちくわになることもない。目の前に法隆寺があったなら、そこにはやはり宮大工がいたはずなのである。でも、ものやサービスばかりが目に入り、たとえ現実的にそれらに尽力した人がいたとしても、その人たちの存在は慎重に隠されているのだった。クールだといえばクールだし、冷たいといえば冷たい。