長岡技術科学大学 B3 三上侑城3年勉強会 2015年2月5日機械学習とその手法自然言語処理研究室1
View Slide
機械学習とは?機械に学習させ、人間の代わりに作業をやってもらう。答えが決まっている問題を解くことを目的としている。2
なぜ機械に学習させるか人間にも解き方がわからないものは、その問題を解くプログラムを書くことは困難。機械学習のアプローチとして・学習用のデータを大量に用意・データから学習するプログラムを作成・認識の部分をコンピュータに任せる3
二値分類機械学習において、最も基本的なタスク。入力に対して2つの値のどちらかを出力する問題。このようなプログラムを「識別器」、または「分類器」と言う。4
二値分類での学習データ先ほどの「識別器」「分類器」のプログラムを「classify」という関数とする。入力xと出力yの組の教師データを用意。例:(x1,y1) , (x2,y2)xiに対してclassifyが返した結果とyiが一致する回数を増やすことが目標5
データをベクトルに変換入力となるデータをベクトルデータにする方法として、「bag of words」と呼ばれる手法が有る。この方法では、文章を単語に区切って含まれる単語の数を数え、それぞれの単語に対応する次元に単語の出現回数を設定する。6
bag of words「This is a pen」という文章においてベクトルに変換すると、「This」「is」「a」「pen」に対応するベクトルの次元は「3」「4」「9」「2」であったとした時、2,3,4,9の次元だけ1であり、他の次元は全て0になります。7次元 回数1 02 13 14 15 06 07 08 09 110 0n x
bag of words単純な方法ではあるが、多くの処理はこの方法で上手くいく。単語に対応する次元を単語IDと呼ぶ。変換後のベクトルの次元は最も大きな単語IDと等しくなるため、ベクトルは数万~数十万次元となる。8
線形識別器各ベクトルに重みをつけることで、その文章を識別することができる。式は x・ω と表され、内積となる。(x:入力ベクトル ω:重みベクトル)このような判別器を線形識別器と呼ぶ。9
線形識別器のメカニズム例として「スパムメール判別」を考える。メールの内容をxとして、「無料」や「限定」といったワードの重みωを大きくする。↓内積がある一定以上の値になったらスパムメールと判断する。10
パーセプトロン線形識別器として有名であるものに、「パーセプトロン」というものがある。学習方法として全てのデータに対し、・うまく識別できているか試す。・識別出来ない場合は、ωにyxを足す。11
パーセプトロン 例例として、「今だけ限定無料」というスパムメールの学習データを用意する。ここでは内積の値が「3」以上になったらスパムメールだと判断する。12x(入力) ω(学習前) y(内積) ω(学習後) y(内積)今だけ 1 11→+yx24限定 1 0 1無料 1 0 1
パーセプトロンパーセプトロンのメリット・実装が簡単・処理が簡単パーセプトロンのデメリット・他の手法に比べて制度が劣ることが多い13
SVMSVM(サポートベクターマシン)はパーセプトロンと同じく線形識別器の一つ高精度な分類がおこなえ、ノイズ耐性に強く安定しているため、現在でもよく使われている。14
SVMにおける学習の目標SVMでは学習方法のやり方自体は定義しない。その代わりに目的関数という関数が与えられ、この関数の値を最小化することを最適化といい、これが学習の目的となる。15
SVMの目的関数目的関数はパラメータとデータを引数にとって実数を返す関数。パラメータを変化させると目的関数の値が変わるため、SVMの場合にはそれを最小化することが目的となる。16
次回次回の発表ではSVMの続き、詳細を発表します。17
ご視聴ありがとうございました参考文献日本語入力を支える技術著:徳永拓之 技術評論社 2012年3月18