以下の要件を満たしたシステムあるいは独自に検討したシステムを実装して、最終提出期限までに口頭試問を受けること。
システムはロボットあるいはCGエージェントなどシステム側から音声以外の動作を伴ったものが望ましい.
利用するプログラミング言語は問わない。外部モジュール等を利用する場合は出展を明らかにすること。
岡山市内をバスで移動する人をターゲットにしたバス時刻の音声情報検索システムを構築する.
このシステムはユーザから得られた情報に基づいて、乗るべきバス停とその発車時刻を利用者に伝えてくれる.
システムは何らかの動きによって何らかの情報やシステム状態をユーザに提示することができると便利なシステムになると考えられる.
情報検索を行うためのスロットとしては、以下の4つのスロットが考えられる。
出発地
目的地
曜日(平日 or 休日・祝日)
出発時間
システムの必須要件は、
「スロットに応じて応答文を生成する機能を備えていること」と
「平日に岡大西門から岡山駅西口まで移動するためのバス時刻案内の検索を行う(少なくとも検索を行う宣言は可能にする)」とする。
応答内容などは任意に実装して構わない。例えば、以下のような制約を含んでいてもよい
・曜日の指定は、平日に限定する(スロットは用意しておいてあらかじめ埋めておく、など)
・出発時間の指定は、細かくても30分単位に限定する(例えば、「19時半」などの指定方法)
・認識だけできるが時刻データが無いバス停があっても良い(ただし、適切な応答発話は返すべきである)
・システム応答がテキスト表示のみ
参考:岡電のバス停別時刻表 http://www.okayama-kido.co.jp/bus/jikoku_busstop.html
平日,岡大西門 → 岡山駅西口 (2016-10-13調べ)
7:19 7:40 7:49
8:03 8:23 8:36 8:50
9:10 9:27 9:43
10:00 10:16 10:35 10:56
11:17 11:38 11:59
12:19 12:40
13:00 13:25 13:50
14:15 14:40
15:05 15:25 15:47
16:10 16:30 16:42 16:50
17:02 17:07 17:19 17:25 17:42 17:47
18:12 18:35 18:56
19:18 19:40
20:05
これらのスロットを埋めるための認識文法を設計し、受理できる文章の例をいくつか列挙せよ。
また、その際に工夫した点があれば述べよ。
ヒントとして、言語的な制約にこだわらない方が実装は容易である。
例えば、認識辞書には必要な単語(あるいは句)に対してスロットを埋めるための意味タグをつけると良いだろう。
BUSSTOP [岡大東門@バス停/岡大東門] o k a d a i h i g a sh i m o N
BUSSTOP [岡大西門@バス停/岡大西門] o k a d a i n i sh i m o N
BUSSTOP [最寄りのバス停@バス停/岡大東門] m o y o r i n o b a s u t e i
:
などの単語辞書を登録することで、容易に意味解析が可能になる。
また、「○○から」「××まで」などの認識が可能になっていれば、出発地と目的地を同時に入力させることも可能になるだろう。
前項で作成した認識文法を利用して、任意の開発言語を用いてスロットフィリングによる音声対話システムを実装し、その対話例をいくつか列挙せよ。
また、その際に工夫した点があれば述べよ。
可能ならマイクからのリアルタイム音声入力が行えるようにする方が望ましいが、
事前に音声を収録しておいて、そのファイル名をコマンドライン等から与える形式にしても良い。
ただし、与えるファイルは対話システムの応答に適切なファイルを与えるべきである。
(つまり、認識が100%うまくいく前提で対話システムに発話して(=音声ファイルを与えて)はいけない。)
口頭試問の時間は、あらかじめメール等でアポイントメントをとること(特に講義の時間外の場合)。
口頭試問はシステムが動かせる部屋で実際の動作を行いながらデモを行うこと。履修者の研究室などでも構わない。
また、共著者全員が試問に出席し、各自の担当範囲を説明すること。
独自のシステムを作成しても構わないが、「音声をスイッチのように使っただけのシステム」は認めない。例えば、じゃんけんのかけ声を声で認識するだけのシステム、などである。