本研究では,単語同士にツリー構造の関連を持たせる.これは検索システムなどで 利用されている,シソーラスをベースにしたものであり,ワードツリーと定義する.
語彙データベースはワードツリーによって構成され,システムはあらかじめこれを読 み込んでおく.
ワードツリーはツリー構造で記述されているため,単語同士の上下の関連を利用し た変換候補の探査が可能である.例えば,現在の話題が食べ物であった場合,食べ物 に関係した単語を優先的に変換することが可能となる.これにより,現在の周囲状況 に対応した予測変換を実現する.
ワードツリーに登録された単語は予測変換で用いられる.各単語は活性化状態と定 義する内部状態を持ち,活性化状態はシステムが観測した周囲情報によって変化す る.活性化状態から単語の優先度の値が計算され,この値から変換の優先順位決定さ れる.
システムが検出する情報と,単語ごとに設定されている条件が一致したとき,単語 は活性化し,活性化状態となる.この条件を活性化条件と定義する.条件一致の判定 を行うタイミングは,システムが音声・物体認識により,情報を検出したときである.
現在時刻を条件とする場合は数分ごとに条件一致の判定を行う.
3.3.2. 優先度の変動
単語が活性化した時点では優先度の値は最大となり,活性化状態終了後からの経過 時間に応じて優先度は減少する.優先度は式3-1に示すようなガウシアン関数をモデ ルにした変動をする.P,t,σはそれぞれ優先度の最大値,時間経過,減衰率を表す.
priority=Pexp
∣
2σ−t2∣
… (3-1)優先度は時間情報・物体認識・音声認識を利用するそれぞれの場合で変動の仕様が 異なる.時間情報で活性化する単語の場合,ピークの時間を中心として優先度が変化 する.優先度の概形を図3-2(a)に示す.物体認識で活性化する場合,対応する物体が 認識されている間で優先度が最大となり,画像から物体が外れるなどして認識されな くなってからの時間経過で優先度が減少する.物体認識の優先度の概形を図3-2(b)に 示す.音声認識で活性化する場合は,対応する音声が認識された時点で優先度が最大 となり,優先度は経過時間で減少する.概形を図3-2(c)に示す.優先度が減衰して設 定した閾値以下になったとき,単語は非活性状態となり,優先度は0に設定される.
非活性状態から活性化した場合,優先度の最大値は規定値の1.0となる.しかし,
単語が活性化状態で再び活性化した場合,優先度の最大値MAXは,現在の優先度の 10分の1を,規定値の1.0に加算した値となる.この動作によって,短い時間内に複 数回の活性化を繰り返した単語は,より高い優先度の値を持ち,優先順位も高くなる.
時 間 優 先 度
P
during the recognition優 先 度 の ピ ー ク 時 間
時 間 優 先 度
物 体 認 識 中 P
(a) 時間情報 (b) 物体認識
時間 優 先 度
音 声 認 識 を し た 時 点 P
(c) 音声認識
3.3.3. ツリー構造と話題の深さ
ある単語が活性化したとき,その単語を基準として上層にある単語と下層にある単 語をすべて活性化させる.これは,話題の深さを考慮するための動作である.例えば,
「食物」が最上層にあるワードツリーを想定する.このワードツリーには「果物」,「野 菜」などが下層に含まれており,「果物」にはさらに「りんご」や「オレンジ」など が含まれている.
このワードツリーに含まれる「果物」は,以下に示す条件のいずれかが満たされた 場合に,活性化するように設定する.
「果物」という単語を使用者が視線入力する.
音声認識結果として「果物」を取得する.
これらの条件が満たされたとき,話題の中心は「果物を食べること」や「果物の種 類について」であると想定できる.このとき,視線入力利用者が続けて入力する単語 は,果物の種類である「りんご」や「オレンジ」である可能性が高い .「果物」が活 性化したときに同時に「りんご」や「オレンジ」が活性化するため,これらの単語を 優先して予測変換することが可能である.このワードツリーと「果物」が活性化条件 を満たした際の様子を図3-4に示す.活性化した単語は赤枠で囲って表す.
図3-3のように活性化した場合は,「野菜」以下の下層の単語は活性化されず,
予測変換には考慮されない.しかし,話題の深さが「食物」まで上った場合は ,「野 菜」も活性化される.活性化条件を満たした単語より上層の単語も活性化する動作か ら,話題が上ることにも対応できる.よって ,「果物」の話題から「食物」を入力す ることも容易となる.
果 物
ぶ ど う オ レ ン ジ り ん ご
食 物
野 菜
図3-33-33-33-3 ワードツリー活性化の例
3.3.4. データベース形式
ワードツリーを登録する語彙データベースは,階層構造の表現に優れるXML書式 によって記述している.
単語はword要素で記述する.name属性では単語名を設定し,pron属性では単語の 読みを設定する.ただし,読みは平仮名で記述する.ワードツリーでの下層にあたる 単語や,単語が持つ条件と関連語は下階層に含むように記述する.
活性化条件はtrigger要素で記述する.type属性では認識の種類を指定する.物体認 識を用いる場合はimg,音声認識を用いる場合はsnd,時間情報を用いる場合はtime を記述する.認識の内容はobjで指定する.例えば,"りんご"を音声認識することを 条件としたい場合は,type="snd",obj="りんご"と記述する.活性化条件は複数設定可 能である.
各単語の関連語は,synonym要素で指定する.name属性では設定する関連語の名 称を記述する.word要素と同様に,pron属性で単語の読みを設定する.単語が活性 化されたとき,同義語も同じ優先度で予測変換される.同義語は複数設定可能である.
ワードツリーの記述例を図3-4に示す.
<?xml version="1.0" encoding="Shift-JIS"?>
<wordtree>
<word name="食物" pron="しょくもつ">
<synonym name="食べ物" pron="たべもの"></synonym>
<trigger type="snd" key="食べる"></trigger>
<word name="果物" pron="くだもの">
<synonym name="果実" pron="かじつ"></synonym>
<word name="りんご" pron="りんご">
<trigger type="img" key="りんご"></trigger>
<word name="ふじ" pron="ふじ"></word>
<word name="旭" pron="あさひ""></word>
</word>
<word name="オレンジ" pron="おれんじ"></word>
<word name="バナナ" pron="ばなな"></word>
</word>
<word name="野菜" pron="やさい">
<word name="玉ねぎ" pron="たまねぎ"></word>
<word name="ジャガイモ" pron="じゃがいも">
<word name="男爵" pron="だんしゃく"></word>
</word>
<word name="オクラ" pron="おくら"></word>
</word>
</word>
<word name="動物" pron="どうぶつ">
<word name="犬" pron="いぬ"> </word>
<word name="猫" pron="ねこ"></word>
<word name="鼠" pron="ねずみ">
<synonym name="ネズミ" pron="ねずみ"></synonym>
</word>
</word>
</wordtree>
図3-43-43-43-4 ワードツリーXMLXMLXMLXML記述の例
3.3.5. 理論値評価
図3-6に示す二つのツリーを仮定する.1)ツリー活性化がない2)「果物」のツリー のみ活性化した場合,3)「果物」と「野菜」両方のツリーが活性化した場合のそれぞ れで,を予測変換するまでの候補選択回数を比較する.辞書には「お」から始まる他 の語も登録する.登録単語数は10,25,50の三通りとする.また,単語ツリーによる優 先度の変化がない単語は五十音昇順で順位づけされるものとする.
果物
オレンジ バナナ
りんご たまねぎ ジャガイモ オクラ
野菜
図3-53-53-53-5 理論値評価で用いるワードツリー
図3-7横軸に単語数,縦軸に"オレンジ"の順位を示す.ツリーが活性化しない場合 は,登録単語数が増加するほど順位は悪くなる.しかし,「果物」のツリーが活性化 する場合は順位が一位となる.ただし,両方のツリーが活性化した場合は,「オクラ」
が先に候補として出現する.このため順位は二位となる.
図3-53-53-53-5 理論値評価の結果
3.3.6. データベース編集ソフトウェア
ワードツリーデータベースを編集するためのソフトウェアを作成した.開発言語は
C++であり,Windows環境で動作するGUIアプリケーションである.
入出力の機能として,XML形式で記述されたワードツリーデータベースを入力し,
XML形式のファイルで出力する機能を実装した.さらに,国立国語研究所にて公開 されている,データベース版分類語彙表の形式のCSVファイルを入力し,ワードツ リーデータベースとして使用することが可能である.分類語彙表のレコード総数は
101,070件となっており,各レコードは,レコードID番号/見出し番号/レコード種
別/類/部門/中項目/分類項目の8項目で構成されている[25].
入力したデータベースは,語彙の追加・削除・名称の編集,活性化条件の編集,読 みの編集が可能となっている.ワードツリーデータベースを入力した状態のアプリケ ーションのインタフェースを図3-7に示す.
図3-73-73-73-7 ワードツリー編集アプリケーション