Posted at

# ITエンジニアのための機械学習理論入門まとめ(第一章)

More than 3 years have passed since last update.


1.1 ビジネスにおけるデータサイエンスの役割


  • データサイエンティストの役割とは


    • データを解析することで得られる事実、ルールからビジネスに活かす

    • ただ事実やルールを得るまでが役割ではない


      • そこからどうやったらビジネスに活かせるのかを推測し提案するまでが役割


        • 抽象的にどうやるとかではなく、具体的にこの項目をどのくらいにしたほうが良いと提案する





    • データを見れるのは当たり前でそこからどのようにビジネスに活かせるかを的確に提案できないとデータサイエンティストではない



  • どうやってルールを推定するのか


    • 現在あるデータに対して無作為に推定すれば良いわけではない

    • 目的に対して有効である変数を正確に把握し、用いる必要がある


      • そのためにも推定する際は自分だけで完結するのではなく、いろいろな人にヒアリングをする必要がある


        • エンジニア、プロデューサー、営業、職種関わりなくヒアリング





    • 変数選択以外のアルゴリズム選択ももちろん考慮する必要がある


      • 要求される知識の幅が非常に広い

      • 上記したようにサービスに関するドメイン知識も必要


        • そのサービスの特異的な特徴は絶対に把握してある必要がある








1.2 機械学習の分類


  • アルゴリズムの分類


    • 分類方法は複数ある(アルゴリズムの中身?、得られるデータ)

    • 得られるデータ(もの)で分類すると


      • クラス分類

      • 回帰

      • クラスタリング





  • クラス分類


    • データが属する分類(クラス)が与えられているとき、データを入力するとそのデータがどのようなクラスになるかを判定する手法

    • 決定木やロジスティック回帰が分類される

    • クラスを判定することで、ユーザにどのような施策をとるべきかを決定する判断材料になる


      • そこの施策は別途求める必要ある?

      • そのクラスはどのような特徴があるから、~する必要あるよねー的な



    • ただクラスに分類するだけではなく、そのクラスに分類される確率を求められる


      • クラスA20%、クラスB80%のようにベクトルで表現





  • 回帰


    • 与えられたデータが従う関数を推定する、データを入力するとその説明変数に対応した関数値が求まる

    • 売上予測とかに使うのか?



  • クラスタリング


    • データに対してクラスの分類が与えられていないときに、学習によって各データのクラスターを作成する

    • 特徴ベクトルを見る際に使える


      • 大量のデータにクラスタリングを適用して、どんな傾向、特徴がありそうか発見


        • 類似するユーザをクラスタリングすることでどの変数が効いているのか








まとめ


  • データを100%説明できるクラス分類だったり、回帰は存在しない


    • その中で最善のものを見つけ、それをもとにビジネスに活かせる施策を提案する