【機械学習】機械学習についての定義【Coursera】-その1-

2019年7月6日

Courseraで受講している機械学習について、勉強したことをアウトプットしていこうと思います。
あくまでも自分用となるので、もっと詳しく知りたい人は是非受講してみてください。

機械学習の定義

コンピュータ・プログラムは、ある課題 T について、 ある性能基準 P に基づき、もし T についての性能が基準 P で測定して、経験 E と共に改善している場合に、 経験 E から学習したと言うことが出来る。
チェッカーゲームの例でいきますと、経験 E は 数万回もプログラムにゲームを自己を相手にプレイさせた経験となります。 課題 T は、チェッカーのプレイです。そして性能基準 P は、 新たな対戦者に対して次のチェッカーのゲームで 勝つ確率でしょう。

課題Tというのを探し出し、機械学習で改善を行う。
課題Tを探し出すこと、それに対してどの様に機械学習を適用するか。
これは難しいことです。

機械学習の知識だけを持っていてもそもそもその知識をどうやって応用するのかがわからない。
今後はそのようなことを意識して学習しなければならないですね。

教師あり学習と教師なし学習

教師あり学習

もっとも一般的な機械学習の形であり、提供された課題に対して正確な回答がある場合のことを指します。
回帰問題や分類問題などが教師あり学習に含まれます。
以下の例を見てください。

あなたは会社を経営していて、2つの問題のそれぞれに対処するための学習アルゴリズムを開発したいです。

1:あなたは同一の商品を大量に持っています。今後3か月間にこれらの商品がいくつ販売されるのかを予測します。

2:ソフトウェアを使って個々の顧客アカウントを調べ、アカウントごとにそれがハッキングまたは侵害されているかどうかを判断します。これらを分類として扱うべきか、回帰問題として扱うべきですか。

これは1が回帰問題、2が分類問題となります。
回帰問題は、連続するデータの予測を行うときなどに使います。
分類問題はデータをそれぞれカテゴリに分類するときなどに使います。

教師なし学習

教師なし学習は教師あり学習と違い、与えられるデータセットに教師データはなく、全て同じデータセットとなっています。

例えば、腫瘍がある患者のデータセットがあるとして、その腫瘍が陰性か陽性かを判断したい場合、データセット内に陰性、陽性の判定が含まれていればそれは教師あり学習です。
教師なし学習にはこれがありません。
そのため、そのデータセットに特徴を探し出し、分類でクラスターを作る。それが教師なし学習です。

最後に

今回は以上になります。
やはり、課題Tに対してどのような方法で解決するのかと言うのは大いなる問題な気がします。
回帰問題、分類問題、教師なし学習・・・どれを使ったらより良いのか。
これを今回は勉強しました。
今後はそれらをもう少し深く理解するための講義がつづくようです。

まだコードなどは書いていないですが、やはりとても興味深く、モチベーションも下がることなくやっていける気がします(錯覚)。

今後はPythonではなく推奨されているOctaveを利用してプログラミングしていくことになりそうですね。

ではまた。