• Showing Page History #87376

コーパスに時間情報を埋め込む

ここではChaKiの拡張機能として、時間情報(発話データに含まれる、語単位での開始時刻・終了時刻・継続時間)を管理する機能について 説明します。

まず、Mecab/Cabocha形式から通常のコーパスを作成します。この段階ではまだ時間情報は含まれていません(カラムはnullになっています。)

次に、作成したコーパスに対して、語レベルで1:1に対応している時間情報のTSV(Tab Separated Values)ファイルを用意します。 このTSVファイルは、現在下記の形式にのみ対応しています。

コーパスに出現する語と同一順で1行1語に対応し、各行はTabで分割された複数のカラムから成っているものとします。

カラム1~10使用しません。(値は任意。)
カラム11表層形(表層が埋め込み先コーパスの表層と一致しない場合、処理を中断します。)
カラム12~20使用しません。(値は任意。)
カラム21語の発話開始時刻 start_time
カラム22語の発話終了時刻 end_time(継続時間durationは、duration=end_time - start_time で計算します。)

このファイルを、ChaKiのインストールフォルダに存在する "Timings.exe" コマンドに入力することにより、コーパスに時間情報を埋め込みます。 Timingsは、コマンドラインから実行するツールで、使用法は以下の通りです。

Usage: Timings [Options] <InputFile> <Output>
Options (default):
  [-e=<encoding>] Input Encoding (SHIFT_JIS)
  [-C] Do not pause on exit (false)
InputFile - TSV File
Output    - .db file for SQLite / .def file for Others

以下に実行例を示します。

144.png