"機械学習","信号解析","ディープラーニング"の勉強

HELLO CYBERNETICS

深層学習、機械学習、強化学習、信号処理、制御工学などをテーマに扱っていきます

統計学の考え方を抑えて機械学習との関連と相違を整理

 

 

f:id:s0sem0y:20170323035242p:plain

 

 統計学の考え方

 

統計学とは

統計学(とうけいがく、: statistics: Statistik)とは、統計に関する研究を行う学問である。

統計学は、経験的に得られたバラツキのあるデータから、応用数学の手法を用いて数値上の性質や規則性あるいは不規則性を見いだす。統計的手法は、実験計画、データの要約や解釈を行う上での根拠を提供する学問であり、幅広い分野で応用されている。

 (wikipedia)

 

端的に述べると、データから規則を見出し、説明や予測に使うための学問と言えます。この学問体系を作るために様々な言葉と考え方が出てきます。これらをまずは確認していきたいと思います。(今回の話は厳密な数学の中の統計学ってよりは、応用の統計解析の話と思います)

 

言葉と概念の整理

分布

ある事象が現れる位置と度合いを表すものです。統計学では「度合い」の総和は1であり、現れる割合を表現していることになります。

以下は正規分布と呼ばれるものであり、特によく現れる代表的な分布です。

f:id:s0sem0y:20170323040050p:plain

(Weblio)

 この分布を見ると、xという変数は0である場合多いということになり、0を中心にその度合いが次第に減少しています(図では分かりづらいですが、正規分布は無限遠まで続きます)。

 

数式上、分布と呼ばれるものはいくらでも創りだすことができます。しかし、実際の世の中において現れる分布は限られています。

 

代表的な分布の性質を予め抑えておくことで、「対象のデータがどの分布に従っていそうかを考える→その分布の性質からデータについて論じる」という流れを作ることができます。

 

推定

手元にデータがある場合に、そのデータがどのような(既に調べられている)分布に似ており、どのような形をしているかを調べるのが推定です。

 

具体的には正規分布は山の形をしており、山の頂上になる位置(平均)と山の広がり具合(分散)の2つのパラメータが決まれば形状が定まります。「データがある分布に従うであろうとき、その分布を定めるパラメータを計算する」というのが推定の役割です。

 

f:id:s0sem0y:20170323041247p:plain

(さまざまな確率分布 probability distributions - 数理的思考 - 中川雅央 【知と情報の科学】 より抜粋)リンク先に様々な分布がまとめられています。

 

推定は、あるパラメータがこれぐらいの値だろうということしか言えず、確実とは言えません。例えば「平均は8.6」と推定により得られても、あくまで予想であるということです。

 

「平均は8.6」という値を算出するのが点推定と呼ばれる方法です。しかし、それが確実でない以上、「推定値が●●の確率で××の範囲に入る」と言ったほうが合理的にも感じられます。このように「95%の確率で、平均は8.4〜8.8」だと算出するのが区間推定と言います。

 

推定を行うための方法はかなり確立されていますが、当然、ある分布に従うと考えた場合の「ある分布」が全く見当違いであるならば、推定(パラメータの計算)をしても実りある知見は得られないことに注意しましょう。

 

 

検定

検定では、データに対する仮定がそもそも成り立つのかを判断しようという試みです。

 

推定との違いを強調すると、推定では「データにある分布を仮定し、その分布のパラメータを計算する」が、検定では「ある分布のパラメータの仮定を先に置き、その仮定が正しいかどうかをデータを用いて判断する」と言えます。

 

しかし、検定における仮定というのは上記で述べたようにパラメータに関するものだけではありません。例えば、ある畑Aで取れるキャベツの大きさの分布が予めわかっている時、「八百屋さんで買った1つのキャベツの産地が畑Aである」という仮定の正しさを判断するという使い方もあります。

 

検定は、分布に何らかの仮定を置き、その仮定の正しさを判断する手法ということになります。

 

更に、データがある分布に従うとしたときに、その分布のパラメータを計算するのが推定でしたが、「データが(本当に)ある分布に従うか否かを判断する」という検定を行うこともできます(コロモゴロフ・スミノルフ検定)。

 

おそらく機械学習では検定という概念はさほど出てこないでしょう(当然、機械学習のモデルの正しさを測る指標はたくさんあるが、統計学ほどその手法を厳密に体系立ててはいないと感じます)。

 

機械学習と統計学

f:id:s0sem0y:20170323050108p:plain

機械学習とは

機械学習(きかいがくしゅう、: machine learning)とは、人工知能における研究課題の一つで、人間が自然に行っている学習能力と同様の機能をコンピュータで実現しようとする技術・手法のことである。

(wikipedia) 

機械学習は本来非常に意味の幅が広い言葉です。

近年の応用の立場からすると、新規のデータに対する予測を行えるように、手元のデータから規則性を学習する技術を機械学習だと言えるでしょう。

 

人間は本来論理的に物事を考え、新しい事柄に対する判断を行えます。一方で論理的な説明を省いて、たくさんの経験から規則性を学び、新しいことに対処するということもできます。現在の機械学習は主に後者の能力を実現することに用いられています。

 

統計学との関連と相違

機械学習は統計学との関連が強いと言われています。実際には機械学習は幅の広い言葉であるため、統計学とは関係のない技術分野も含んではいますが、近年活躍している手法の多くは関連があると見ていいと思われます。

 

統計学と機械学習の相違

例えばフィッシャーの線形判別などは、分類問題において機械学習の応用の場でよく用いられています。実際にはSVMなどの他の分類器との比較で用いられることが多く、フィッシャーの線形判別自体はもともと統計学で得られた手法です。

 

s0sem0y.hatenablog.com

 

たいてい、SVMとフィッシャーの線形判別を比較する場合は、その予測性能について議論するのであって、モデルのパラメータがどうであるかなどの話はほとんどありません。 学習の正しさという面においては、予測が正しかったか否かをデータを見て判断するのであって、統計の検定のようなモデルそのものを検討するような考えは薄いように思います。

 

統計学はモデル(分布自体やパラメータ)について言及するために各手法を取り揃えている印象で、機械学習は予測結果を良くするために各手法を取り揃えているという印象です。

 

推定と学習

結果的に、学習が推定であった

データに何らかの分布を仮定し、その分布のパラメータを学習することで、未知のデータに対する予測に使うということも機械学習では行われており、この場合、統計学でのパラメータの推定が学習という作業に置き換わっています。

 

ただし、機械学習は「未知のデータを予測すること」に重点が置かれているため、適当なモデルの学習が何らかの統計パラメータの推定という作業と同じだったということが後から報告されることも多々あります。

 

統計的なモデルに寄せる

あるいは、機械学習の出力が確率になるようにモデルを設計し、(どんな形なのかよくわからないけども)何らかの分布を近似しているということにして話を進めることもあります。そのモデル自体がどれくらい正しいのかについての言及は大抵ありません(予測性能が良いかが判断基準)。

 

例えば分類問題におけるニューラルネットの出力は、データがあるクラスに属する確率となるように設計されています。(分類のニューラルネットはデータに対するクラスの事後分布を近似)

s0sem0y.hatenablog.com

 

学習の手法

また機械学習では仮定するモデルが汚い形をしているケースもあるため(というよりほとんど)、学習のアルゴリズムそのものも含めて検討する必要があります。学習は何らかの最適化問題に帰着する場合が多く、最適化問題の解法が学習だと言うこともできそうです。

 

例えばニューラルネットならば概して学習の手法は勾配法がメインであり、複雑な合成関数の微分が誤差逆伝搬法という革新的な方法により可能となりました。モデル自体は脳の神経を模倣したもので、もともと統計という概念はほとんど無いものになっています。(今でこそ生成モデルとしてニューラルネットによる分布の近似が行われていますが。)

 

s0sem0y.hatenablog.com

s0sem0y.hatenablog.com

 

 

 

個人的な考え

いろいろ意見はあるかと思いますが、個人的な考えでは統計学と機械学習は被る部分は多いのですが、同列に語るものではないように思います。例えば「微分」と「積分」は同列ですが、ベクトル解析と線形代数は同列ではない感じです(余計にわかりづらいのか)。

 

アメフトとラグビーは同列ですが、マラソンとトライアスロンは同列ではない感じでしょうか。

「要するに異種の似た何か」というよりは、「一方の技能をよく使う何か」という印象です。トライアスロンくらい「水泳、自転車、長距離」と分かれていれば、「マラソンの能力を使う何か」と言えますが、機械学習になるといろいろ混ざりすぎて分けわからんという感じでしょうか。

 

実際には計算の複雑さや最適化数学、統計の知識などが(はっきり分かれず)ゴチャゴチャに混ざっている状態で、「データから規則を見つけて、予測する」のが機械学習という感じです(機械学習の役割や目的が統計学に酷似)。しかし、結果的に統計学や最適化数学が必要となっているだけの話で、他の方法があれば機械学習はそれでも良いと言うでしょう(例えば論理だけでデータから予測ができるのであればそれでも良いとなる)。

 

統計の一応用分野というと流石に乱暴ですが、統計の一部が応用されている分野くらいの解釈が良いような気もします。もちろん、機械学習の手法が数理的に解明された結果、統計学と一緒だったって日が来るかもしれませんが(情報幾何学がこの問題に取り組んでいる?)。

 

 

 

 

 

s0sem0y.hatenablog.com

s0sem0y.hatenablog.com