まるっとワーク

データ分析・電子工作など気になることを残していきます

機械学習について(言葉の定義など、はじめの一歩)


機械学習について学習を始めたので、理解した内容についてまとめて説明していきたいと思います。

目次

機械学習とは?

コンピューターサイエンティストで有名な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つに分類される。
使うアルゴリズムが違うというよりは、解くべき問題(使用目的)が異なるという観点での分類

  解析目標のラベルが存在し、目標値とその他データとの相関関係の学習から、主に予想で使用される

  データ間の関係などの構造把握に使用される

  ゲームのスコアなどの目標値を最大化することを目的に、その仕組みを学習する為に使用される
※それぞれの代表モデル等は勉強を進めた後まとめていく

精度の高いモデル構築に向けて

より多くの種類・量のデータがあるほど、良い回答を導出できる。
ただし、ある程度目標値と関係あるデータが必要であり、目標値の説明に必要なデータ(変数)作成作業は特徴量エンジニアリングと言われるなど、機械学習において一番難しい。

AutoML(Automated Machine Learning)とは?

機械学習の機能を複数呼び出して使うことができるフレームワークであり、アルゴリズム固有値(ハイパーパラメータ)までも最適化対象となっている。
データの整形やエラー値の修正といった機械学習の前処理が自動化されたものや、ディスプレイツールを含んだものも存在する。
プログラムが得意でない方でも使うことができるという利点やデータサイエンティストの業務時間の削減に効果が期待できる。
対象データにどういったモデルが適しているのか、データ間の関係性の把握のためにAutoMLを使用するケースも多い。

代表的なAutoML

もっとも知名度が高いGoogleが開発したAutoML
文字列などのデータを自動的に整形する機能も有している。
cloud.google.com

Microsoftが開発したAutoML
docs.microsoft.com

IBMが開発したAutoML
www.ibm.com

まとめ

今回は導入ということで機械学習の概要やエンジニア向けの関連情報をまとめました。具体的なモデルについても勉強してまとめていきたいと思います。