「[[.NET 開発基盤部会 Wiki>http://dotnetdevelopmentinfrastructure.osscons.jp]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -[[戻る>要素技術]] --言語処理 ---[[言語処理(AI)]] --[[音声処理]] --[[画像処理>画像処理とコンピュータビジョン]] *目次 [#y09f6244] #contents *概要 [#v56a31db] 言語処理 ≒ 自然言語処理 *詳細 [#b44dcc89] **難しさ [#v0431e0d] ***多義性 [#xa5cbd2c] ある言語表現が伝える意味は一通りではない。 ***同犠牲 [#j204e010] ある意味を伝える言語表現が一通りではない。 ***文脈依存性 [#ccb3d2f8] 言語表現の意味もコンテキスト次第 ***言外の意味 [#ub8598a8] -身体動作と同様に、実行的な効果を目的とする。 -時計をお持ちですか? ≒ 今何時? **アプローチ [#o6cbc594] ***理性主義 [#n13e6ec9] -人間の言語知識や言語運用能力を明示的に計算機に実装する。 -言語学・論理学などに基づいて知識をルール・手続き化する演繹的手法 -システム構成:パイプライン(伝統的NLP) --モジュール構成:[[形態素解析→構文解析→意味解析→文脈解析>#e5070d8f]] --問題点:各モジュールでのエラー伝播 ***経験主義 [#f9eb4c6b] -収集・観測できるデータに基づき入出力関係をモデル化する。 -統計学、機械学習に基づく帰納的・データ駆動的手法 -システム構成:エンド・ツー・エンド(現在の方式) --ブラックボックス、十分なデータがあれば学習可能 --問題点:個別の調整や説明ができない。 ***歴史 [#off32bbc] -[[経験主義>#f9eb4c6b]] -[[理性主義>#n13e6ec9]](1980 - -[[経験主義>#f9eb4c6b]](1990 - -[[経験主義>#f9eb4c6b]](2010 -、[[深層学習>言語処理(AI)]] **基礎技術 [#e5070d8f] ***形態素解析 [#r6ede8fb] -単語を切り出す。品詞を付ける。という作業。 -文法や、辞書と呼ばれる単語の品詞等の情報に基づき、~ 形態素(≒言語で意味を持つ最小単位)の列に分割し、~ それぞれの形態素の品詞等を判別する作業。 ***構文解析 [#y73167d6] -基本的にはプログラミング言語などの形式言語の場合と同様 -どこが主語で、どこが述語か?係り受け(言葉と言葉の関係性)を解析 -ただし、自然言語の構文には --多くの言語で曖昧さ --アドホックな変形が多いという複雑さ --意味を考えなければ構文が決定できない >など、独特の難しさがある。 ***意味解析 [#ac4d2ae3] 単語の意味という語彙の関連を見る -十分に上手く行えるシステムはまだ完成していない。 -「意味素」という意味の基本となる情報を持たせることにより、~ ある程度、意味解析ができる事が解っている。 ***文脈解析 [#bc38bbff] 複数の文の繋がりをチェックする -背景知識とか今のシチュエーションの関連性を見る -[[照応解析>#r9226283]]などを含む。 **日本語処理 [#w5a5a6ad] ***語義の曖昧性解消 [#tc9a61b4] -語義識別、語義判別、語義確定などともいう。 -文中のある単語に出会ったとき、その単語が、~ どの語義を表しているのかを判断する過程 ***照応解析 [#r9226283] -省略された名詞句(ゼロ代名詞)を補完する処理 -意味に踏み込まない処理には限界がある ***その他 [#w0056717] 単語と単語の分かれ目が解り難い。 **処理の例 [#y3bf95cb] ***形態素解析 [#xc2b9aae] -「くるまでまつ」の形態素解析 --「車で待つ」、「来るまで待つ」 --最適な組み合わせを判定 ***構文構造の曖昧性 [#q5381c51] -「あの長い髪の少女の父親」~ 髪の長いのは? --少女? --父親? -格文法~ 動詞を軸に、助詞で構文構造の意味の推定 --動詞:待つ ---が:主格 ---を:目的格 ---で:場所格 ---に:時間格 ***意味解析、文脈解析 [#d98de4ed] -「僕は鰻だ」 --形態素解析、構文解析はできる。 --意味解析、文脈解析が難しい。 ***意味の曖昧性 [#u8e58db9] -構造曖昧性~ canが助動詞の「can」か?缶の「can」か? He saw that gasoline can explode. -深層構造の曖昧性~ readyが「すでに」か?「今にも」か? The chickens are ready to eat. -意味論的曖昧性~ bankが土手なのか?銀行なのか? Stay away from bank. **N-gram [#ude56875] -任意の文字数で文章を分割する手法 --文章が与えられた時に一文字ずつ、あるいは一単語ずつずらしながらN個の文字列、 単語列を切り出す手法 --多言語に適用し易い、検索漏れを生じない。などの利点があるが、ノイズが大きいといった欠点もある。 -文脈を捉える素性として使われる。 -連続するn個の単語や文字のまとまり。 --nが1の場合 uni-gram(ユニグラム) --nが2の場合 bi-gram(バイグラム) --nが3の場合 tri-gram(トライグラム)