自然言語処理2011 平成24年1月16日(月) 東京工科大学コンピュータサイエンス学部 亀田弘之 言語処理システムを本当に実現するためには 何が必要なのか? 2 NLPシステム実現には 何が必要なのか? 1. 2. 3. 4. 5. 6. 言語データ 言語理論 言語処理理論 各種ツール 設計論 アプリケーションシステム 3 1.言語データ はじめに言語データありき。 4 言語データ 種類と特性 計算機可読 音声データ 乳幼児音声、講演データ、対話データ など テキストデータ ( machine-readable)なデータ Shakespeare全集、朝日新聞全文データ など 動画像形式のデータもあり 大規模 多言語 など 5 言語データ 【参考となるサイト】 言語情報処理ポータル http://nlp.kuee.kyoto-u.ac.jp/NLP_Portal/ 6 言語データ 例の紹介(NO.1) Web中のテキスト サイトの各ページ Blogのテキスト (Youtubeなどの動画中の音声) など 青空文庫 Project Gutenberg Oxford Text Archive (OTA) Linguistic Data Consortium (LDC) 新聞記事データ など多数のものがあり Burnard Lou 7 Mark Liberman 言語データ 例の紹介(NO.2) IPAL辞書 EDR辞書 など 横井敏夫 研究目的であるならば、必要に応じて出版社等に直接 交渉する方法もあり。 (例:広辞苑、徒然草、朝日新聞記事データ など) 8 青空文庫 サイト http://www.aozora.gr.jp/ 利用可能なテキスト 著作権切れのテキスト 共有することを許諾されたテキスト データ形式 XHTML, テキストtxt, エキスパンドブック形式ebk (文字コード:Shift JIS) ビューア(viewer) いろいろなものが提供されている http://www.sky.sannet.ne.jp/at-sushi/aozora/viewer.html (「青空文庫 ビューア」でも検索のこと) 9 青空文庫 参考文献 インターネット図書館 青空文庫 野口英司編著, ISBN4-89984-072-1 (はる書房) 10 練習 1. 2. 3. 4. 5. 6. 青空文庫の中から芥川龍之介の作品「蜘蛛の糸」を 探してみなさい。 ビューアをダウンロードして、作品を表示してみなさい。 青空文庫に自分が貢献できることがないか考えて見な さい。 青空文庫の利点・欠点について考察せよ。 清少納言の作品がないのはなぜか? 理由を考えよ。 ビューアを自作しなさい。 表示機能の高度化 文字読み上げ機能の追加 など 11 PROJECT GUTENBERG 諸外国のデータが公開されている。 一度サイト内を渉猟してみること。 12 練習 1. 2. 3. Lewis Carroll の作品を探してみなさい。 音声データを再生してみなさい。 Project Gutenberg の意義を考えなさい。 社会的意義 NLP研究の立場からの意義 13 まず、処理対象であるデータを よく観ることが大切。 14 NLPシステム実現には 何が必要なのか? 1. 言語データ(計算機可読な) 2. 3. 4. 5. 6. 処理対象をよく知る 言語理論 言語処理理論 各種ツール 設計論 アプリケーションシステム 15 2.言語理論 (入門部分はすでにやりましたよね!) 文法とは 規範文法 vs 記述文法 形式文法 Chomsky の文法理論 生成文法(句構造文法、文脈依存文法、文脈自由文法、正規文法) 変形文法、Xバー理論 など 結合価理論 モンタギュー文法 など 個々の未解決問題:以下のものの定義は? 単語、品詞、統語構造、意味、意図、文脈 など 16 NLPシステム実現には 何が必要なのか? 1. 言語データ(計算機可読な) 2. 言語理論 3. 4. 5. 6. 処理対象をよく知る 言語記述の枠組みを探る 言語処理理論 各種ツール 設計論 アプリケーションシステム 17 3.言語処理理論 (これもすでにやりました) 形態素解析 統語解析(構文解析) 意味解析 意図解析 文脈解析 18 言語処理理論の基礎部分 Chomskyのオートマトン理論 有限状態オートマトン ⇔ ブッシュダウンオートマトン 正規言語 ⇔ 文脈自由言語 など この理論が多くの局面で使われているが、個別の処理 方法も ad hoc ながらも考案されている。その代表が 確率を利用するものである。 言語の確率モデル HMM (Hidden Markov Model) など (NLPにおいて確率は避けて通れない。) <参考図書> D. Jurafsky & J. H. Martin, Speech and Language Processing, Prentice Hall(2000). Chapter 7. 鹿野 他, 音声認識システム, オーム社(2001). 第2章と第3章 19 言語処理に使われるプログラミング言語 Lisp Prolog Perl Ruby Python C C++ Java など 20 言語処理の基礎理論を深く知りたい人に Pierre M. Nugues, An Introduction to Language Processing with Perl and Prolog, Springer(2006). (理論、実装、応用の概要について書かれており、英語、 フランス語、ドイツ語に対しても言及されている。) これを読めば専門家になれる!かも 21 NLPシステム実現には 何が必要なのか? 1. 言語データ(計算機可読な) 2. 言語理論 3. 5. 6. 言語記述の枠組みを探る 言語処理理論 4. 処理対象をよく知る 広範囲にわたる知識が必要 各種ツール 設計論 アプリケーションシステム 22 4.各種ツール (補講1月17日(火)4限のときにお話します。) 23 言語処理の流れ 1. 2. 3. 4. 5. 6. 7. 文字認識 形態素解析 統語解析(構文解析) 意味解析 文脈解析 (未知語獲得) (統語規則獲得) など 24 形態素解析ツール ・タガー Juman 茶筅 Kobako/J Brill’s Tagger GoTagger (Brill’s Tagger を改良したもの) WordFreak 25 デモ GoTagger Kobako/J (茶筅とJumanはWebを見てください。) OpenNLP 26 構文解析システム Knp (京都大学) Sax Bump 自作のプログラム 27 NLPシステム実現には 何が必要なのか? 1. 言語データ(計算機可読な) 2. 言語理論 3. 6. 広範囲にわたる知識が必要 各種ツール 5. 言語記述の枠組みを探る 言語処理理論 4. 処理対象をよく知る 多種多様だが不完全 設計論 アプリケーションシステム 28 5.設計論 1. 2. 3. 理論的枠組みの決定 モデルの構築 (定式化・システム的解明) システム構築 ① ② ③ ④ ⑤ 4. システムの有効性・妥当性の評価 5. 仕様の決定 外部設計 内部設計 コーディング 検証 アプリケーションへの組み込み など 理論・モデルの改良・高度化 29 新たな設計論の必要性 理論の解明 モデル化 プログラミング言語の開発 設計パラダイム(設計手法) オブジェクト指向型言語:Java, C++ 関数型言語:Lisp, Haskell, ML 手続き型言語:C, Pascal 論理型言語:Prolog (CSとしてもっと深く考えなければいけない!) 30 6.アプリケーションシステム 仮名漢字変換システム 文章要約システム 検索システム データマイニング(テキストマイニング)システム 機械翻訳システム 音声対話システム 道案内 フライト案内 音声によるPC操作補助 誤字脱字検出システム 人工無能 など 31 Web mining Web2.0, Web3.0, Web4.0 32 参考URL(SEMANTIC WEB) http://videolectures.net/iswc07_pell_nlpsw/ http://www.w3.org/TR/rdf-primer/ 33 NLPシステム実現には 何が必要なのか? 1. 言語データ(計算機可読な) 2. 言語理論 3. 多種多様だが不完全 設計論 6. 広範囲にわたる知識が必要 各種ツール 5. 言語記述の枠組みを探る 言語処理理論 4. 処理対象をよく知る 新たな設計手法・パラダイムへ? アプリケーションシステム 徐々に実用化? 34 7.そしてさらに何が必要か? 脳神経科学 認知科学 心理学(認知心理学・発達心理学・社会心理学) 教育学 社会学 言語学 コミュニケーション学 組織行動論学 論理学 数学 コンピュータサイエンス など 35 準備は以上で終わりです。 これからが研究の始まりです。 36
© Copyright 2024 ExpyDoc