こんにちは
今日から機械学習の勉強を始めようと思います。勉強したことを後から見返せるようにまとめたいと思います。
#機械学習とは
機械学習という言葉にはいくつかの定義があります。アーサー・サミュエルが1959年に一般紙に対するインタビューとして「明示的にプログラミングすることなく、コンピュータに学ぶ能力を与えようとする研究分野」と定義しました。また、トム・M・ミッチェルは、さらに厳格な定義として「コンピュータプログラムが、ある種のタスクTと評価尺度Pにおいて、経験Eから学習するとは、タスクTにおけるその性能をPによって評価した際に、経験Eによってそれが改善されている場合である」としました。
例えば、あなたが天気予報をしたいとします。このとき「ある種のタスクT」とは「天気を予測する」ということであり、「評価尺度P」とは「その天気予報がどれほど正確であったかを評価する基準」、「経験E」とは、実際の気象データとなるでしょう。
つまり、機械学習とは「ある課題を達成するための具体的な指示がなくても、推論やパターンを使ってコンピュータがその課題を解決してくれるアルゴリズム」であると言えるでしょう。
#教師あり学習
教師あり学習とは「正しい答え」があり、アルゴリズムにそのような答えを予測させるような学習のことを言います。教師あり学習には次の2種類があります。
###分類問題
ある情報が与えられた時に、それがAなのかBなのかCなのかを分類したい時があります。このような問題を「分類問題」といいます。まずは具体的に見ていきましょう。
例えば次の図はX君のテストの成績と、その次の日に学校に来たかどうかを表しています。
この時、X君が次の日学校に来るかどうかを前日のテストの点数を使って予想しようというものです。20点くらいであれば次の日にX君が来るとは考えづらく、逆に80点くらいであれば恐らく来るだろうと推測することが出来ます。
この図は次のように書くこともできます。
このように点数と降水量のように2つ以上のデータを用いることがあります。
このように線を引けば、次の日にX君が学校に来るかどうかを推測することが出来ます。ここでは2つの特徴を用いましたが、3つ、4つ・・・無限個の特徴量を使うことが出来ます。
このように分類問題は離散的な(とびとびな)問題を扱います。
###回帰問題
一方回帰問題は連続的な値を扱います。例えば家の値段です。次の図はY駅からその家までの距離と家の値段を調べたデータです。
このデータからある家の値段を推測する手段の一つに次のようなものがあります。
このように直線を引けば駅からの距離と家の値段のおおよその関係が分かります。あるいは、
このように2次関数で近似することもできます。このように、先程の分類問題とは違い連続的であるということが分かると思います。
ここまで、教師あり学習について見てきました。次は正解のデータを与えない教師なし学習についてみていきましょう。
#教師なし学習
教師あり学習は「正しい答え」がある学習の方法であると言いました。では、教師なし学習には「正しい答え」がないのか?というと、そうです。正しい答えは与えません。ではどのようなことをすることが出来るのでしょうか?主に次の2つがあります。
###クラスタリング
教師なし学習でできることの代表例に「クラスタリング」と呼ばれるものがあります。
このように何かの分布のデータが与えられたときに
このように分布が集中している所を判別することが出来ます。
###データセット変換(教師なし変換)
例えば、Y君の特徴を教えてーと誰かに聞いたときに、↓のように言われたとします。
こういった場合、あなたはたぶん「要はY君って賢くて仕事がデキル人なんだ」と思うでしょう。このように、多数の特徴量で構成されるデータをより少ないデータで表せるように要約することを「次元削減」といいます。この場合、「努力家」「物知り」「語学堪能」などのY君の特徴が、多数の特徴量で構成されるデータであり、「賢くて仕事がデキル人」が要約された後のデータを表すものです。この次元削減はデータセット変換の中の最も一般的な手法です。
ということで、今回は機械学習とはいったいどういったものなのか?という全体的な概念について書きました。