目次
機械学習とは?
コンピューターサイエンティストで有名なRobert Elias Schapire氏は以下の通り述べている。
studies how to automatically learn automatically learn to make accurate
predictions predictions based on past observations
(Introduction to Machine Learning)
"過去の観察に基づいた正確な予想を自動的に行うこと"といった感じで、人が行う学習行為をPC上で表現するというニュアンスが入っている。
また、機械学習では主体はデータであり、データ内の関係を把握して、その法則(ルール)やアルゴリズムを学習するといったことに使われる。
物理法則や人間が考えたルールから答えを導くといった、ルール主体の考え方ではないことがポイント
機械学習の手法
色々なサイトでも書かれているが、以下の通り3つに分類される。
使うアルゴリズムが違うというよりは、解くべき問題(使用目的)が異なるという観点での分類
- 教師あり学習(回帰/分類) [Supervised Learning]
解析目標のラベルが存在し、目標値とその他データとの相関関係の学習から、主に予想で使用される
- 教師なし学習 [Unsupervised Learning]
データ間の関係などの構造把握に使用される
ゲームのスコアなどの目標値を最大化することを目的に、その仕組みを学習する為に使用される
※それぞれの代表モデル等は勉強を進めた後まとめていく
精度の高いモデル構築に向けて
より多くの種類・量のデータがあるほど、良い回答を導出できる。
ただし、ある程度目標値と関係あるデータが必要であり、目標値の説明に必要なデータ(変数)作成作業は特徴量エンジニアリングと言われるなど、機械学習において一番難しい。
AutoML(Automated Machine Learning)とは?
機械学習の機能を複数呼び出して使うことができるフレームワークであり、アルゴリズムの固有値(ハイパーパラメータ)までも最適化対象となっている。
データの整形やエラー値の修正といった機械学習の前処理が自動化されたものや、ディスプレイツールを含んだものも存在する。
プログラムが得意でない方でも使うことができるという利点やデータサイエンティストの業務時間の削減に効果が期待できる。
対象データにどういったモデルが適しているのか、データ間の関係性の把握のためにAutoMLを使用するケースも多い。
代表的なAutoML
- AutoML Table(Google)
もっとも知名度が高いGoogleが開発したAutoML
文字列などのデータを自動的に整形する機能も有している。
cloud.google.com
- Automated ML(Microsoft)
Microsoftが開発したAutoML
docs.microsoft.com
- AutoAI(IBM)
IBMが開発したAutoML
www.ibm.com
まとめ
今回は導入ということで機械学習の概要やエンジニア向けの関連情報をまとめました。具体的なモデルについても勉強してまとめていきたいと思います。