Python機械学習プログラミングを読んで
こんばんは、supercell です。
今回は、Python機械学習プログラミングを読んでみてのまとめです。(要望がありました)
[第2版]Python 機械学習プログラミング 達人データサイエンティストによる理論と実践 (impress top gear)
- 作者: Sebastian Raschka,Vahid Mirjalili,福島真太朗,株式会社クイープ
- 出版社/メーカー: インプレス
- 発売日: 2018/03/16
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (2件) を見る
まずは1章を簡潔にまとめていきます。
3つの機械学習
・教師あり学習
・教師なし学習
・強化学習
があります。
教師あり学習について
この学習の目的は、トレーニングデータからモデルを学習し、未知のデータも予測できるようにすることです。
データが離散値(スパムメールか否か、など)の場合、データを分類することになります。離散値はラベルを持ち、このラベルを予測していきます。
データが連続値の場合は、回帰と呼ばれます。複数の予測変数と応答変数の変数の関係を探っていきます。
具体的には、平均二乗誤差です。これは、変数の差を2乗した値を平均して、その値が最小となるように重みを求める手法です。
強化学習について
この学習では、環境とやりとりをして改善していく学習です。このシステムをエージェントと呼びます。エージェントが行動を起こすと、環境からエージェントへと報酬が送られます。その報酬に応じてエージェントが行動を改善していきます。一般的には、報酬が最大になることが目標とされています。
教師なし学習について
この学習では、不明なデータ構造をグループ化します。
その手法はクラスタリングと呼ばれます。グループ間では相違が大きく異なるようになっています。
具体例として、マーケティング担当者が売るものを選定するとします。その時、教師なし学習によって顧客のニーズに合わせて顧客をグループ化することができます。
以上が3つの機械学習です。
個人の感想としては、強化学習が面白そうです。環境に適応していくのは人間っぽい(?)ですし。
具体的な実装はまだですが、非常に楽しみです。