Graham Neubig - ソフトウェア

研究をしているうちに、色々なソフトウェアを開発しました。ここで一部(ほとんど?)を公開しています。

DyNet

DyNetは自然言語処理などの応用に適している動的ニューラルネットワークの効率的な実装を簡単にするツールキットです。仕組みに興味があれば、ツールキットに関する技術資料や、DyNetに入っている自動ミニバッチ化に関する論文などをご覧下さい

京都テキスト解析ツールキット(KyTea)

KyTeaは単語分割が必要な言語(日本語や中国語)のための一般的なテキスト解析ツールキットです。 日本語と中国語の単語分割読み推定、日本語の品詞推定のモデルを公開しており、データを作成すれば他のタグ付与のタスクで利用することができます。 KyTeaの最大の利点は、部分的にアノテーションされたデータからモデルを学習できることです。 つまり、タグ付与を行う際、難しいところだけにタグを付与し、簡単なところに時間を費やさなくても良いです。 その有効性を読み推定単語分割品詞推定などのタスクで確認しています。

Travatar

Travatarは構文情報を用いる機械翻訳(いわゆる「tree-to-string」翻訳)のためのツールキットです。日英・英日のような並べ替えの多い言語対に対して特に効果的です。 ACL 2013で発表するデモペーパーで実験などを詳しく説明しています。

Lamtram

lamtramはニューラルネットワークを使った言語モデルと翻訳モデルのためのツールキットです。 様々なプロジェクトで使っており、特に2015年のWorkshop on Asian Translationで首位となったシステムで利用しています。

lader

laderは機械翻訳の並べ替えを改善させるツールであり、教師なし識別構文解析器でもあります。 EMNLP 2012で発表された論文では、日英と英日翻訳でフレーズベースと階層的フレーズベース翻訳より高い精度を実現することが分かりました。

pialign

pialignはMosesデコーダなどのフレーズベース統計的機械翻訳のためのフレーズアライメントツールです。 Inversion Transduction Grammarsに基づくモデルを利用し、階層的モデルを導入することで、ヒューリスティクスを一切利用せずにフレーズテーブルを学習することができます。 実験で、pialignは通常の手法に比べて簡潔のモデルを学習しながら同等の精度を実現できた。

latticelm

latticelmは、ノンパラメトリックベイズ法に基づくPitman-Yor言語モデルを利用した教師なし単語分割言語モデル学習のツールです。 持橋等の単語分割法を拡張し、ラティス入力から言語モデルが学習できるようにしました。 latticelmを利用して、連続音声から言語モデルが学習できることを確認しました。

京都有限状態トランスデューサデコーダ(Kyfd)

Kyfdは重み付き有限状態トランスデューサ(WFST)で表現されたモデルのためのデコーダです。 設定が柔軟なので、様々なテキスト処理のタスクで利用することができます。 また、WFSTの形式に直さないで、普通のテキストデータを入力にすることもできます。 話し言葉の整形(InterSpeech09ICASSP10)やOCR誤り訂正、言い換えなどの研究で利用されています。

京都言語モデルツールキット(Kylm)

KylmはJavaの簡単な言語モデルツールキットで、n-gramモデルの様々な平滑化手法を実装しています。 特徴として、文字n-gramモデルに基づく未知語モデルの簡単な構築などがあります。 また、WFST形式でモデルを出力することができて、KyfdやOpenFstなどのWFSTに基づくシステムで利用することができます。

その他のプログラム・スクリプト