読者です 読者をやめる 読者になる 読者になる

どらちゃんのポッケ

R・統計・技術メモなど勉強ログ置き場

書籍"会社を変える分析の力"を読んで、機械学習とビジネスの関係性を考えてみた

会社を変える分析の力

この本です。大阪ガスでデータサイエンスをやらている河本薫さんの本。会社の先輩に勧められて読んだが、めっっっっちゃ良い本だった。会社でデータ分析に関わる全ての人に配っても良いぐらい良い本。

会社を変える分析の力 (講談社現代新書)

会社を変える分析の力 (講談社現代新書)

数式とか、データモデリングとかそういう話はあまり出てこないけれども、データ分析をやる意義・データ分析をする上での心構えなどが濃厚に書かれていて、素敵すぎる本。

あんちべさんのデータ解析の実務プロセス入門と合わせて読むと、データサイエンティスト・データ分析を仕事でやるときの心構えは理解出来るのではないかなと思います。

データ解析の実務プロセス入門

データ解析の実務プロセス入門

私のこの本のざっくりの内容・感じたことまとめ

  • 意思決定や次のアクションの示唆にならないデータ分析は、単なるデータ遊びで「面白いね」で終わるのでよくない
  • 分析手法よりも、「何のために分析するの?」が大事
  • 複雑な深い分析手法を知っていたほうがいいのは間違いないが、手法を知っていること=良いデータサイエンティストではない。Excelのピポッドテーブルや可視化するだけでも意思決定/ビジネスアクションに結びつくなら、それはデータサイエンティス。
  • とはいいつつも、あまりにデータ分析について無知だと誤った分析結果を出してしまう。誤った分析結果は、誤った判断をしてしまうので、誤った分析をしてはいけない/嘘はダメ絶対、基本的な知識は必要。
  • 身近にあるデータを分析することによって、身近にある課題を解決したいと考えることが、データサイエンティストの素質の1つ

最近の統計的因果推論/DeepLearningなど話題の手法を使って分析したいという手法ありきの分析をやってしまったり、目的もなくデータをこねくり回してしまい終わりのない分析作業をしてしまったり、そういうデータ分析での行ってしまいがちなことは良くないなと改めて思い知りました。自分もついつい、やりがちなので気をつけなければ。

ビジネス課題をデータモデリング課題に落とし込むってのが、データサイエンティストの醍醐味?

今回の会社を変える分析の力データ解析の実務プロセス入門を読んだり、仕事の中で感じるデータサイエンティストの流れって、個人的にはこんな感じなのでしょうか。

  1. ビジネス課題を見つけ
  2. ビジネス課題をデータモデリング課題に落とし込み
  3. データモデリング課題を解くためのデータを収集し(収集する仕組みをつくり)
  4. データを可視化し全体像を掴み
  5. データモデリングしていく
  6. 結果をわかりやすく提示し
  7. 実際のビジネスの意思決定に利用してもらう
  8. 意思決定を元に、次のビジネスアクションを実行する

この中で、1,2,7,8番目のプロセスが重要なのかなと思います。そして、個人的には、データサイエンティストの技量が一番問われる醍醐味の部分は、下に書いたような、手法/精度的な感覚・ビジネス的な感覚・組織を動す感覚の3つスキルが求められる1と2番目(特に2番目)のプロセスじゃないかなと思う。

  • データ取得可能性・手法選択・精度の3つの観点から、ビジネス課題を「勝ち目のあるデータモデリング課題」に落とし込むスキル
  • 手に入りそうなデータの分析によって、解決できそうなビジネス課題を見つけるスキル
  • 意思決定やビジネスアクションにつながるようなデータ分析を課題に設定にするスキル

こういったスキルはデータ分析の数をこなして精度のあたりを体感で学び、どのような手法でどんな課題解決できるのかを見たり、どのようなデータがあるのかを知るために様々なデータを日頃から触れていたり、身近なデータで何がわかって何が解決するのかを考えたりすることで養われているものかなと思う。

データサイエンスではなく、機械学習の場合、プロセスはどうなるんだろう?

機械学習の場合、プロセスをデータサイエンスと比較して、そのプロセスを考えてみたいと思う。 異論反論はあると思いますが、私の機械学習屋さんとデータサイエンティストの違いは以下の通りだと思っています。

  • データサイエンティスト:統計モデリングに代表されるように、モデリングをすることに主軸。現象を数式で表現することがゴール的なイメージ。
  • 機械学習屋さん:損失関数を定義し、最適化問題を解くことに主軸。現象に対応するための最適な関数を見つけることがゴール的なイメージ。

データサイエンティストの場合、現象を数式で表現(モデリング)することによって、現象の理を追い求めることで、現象の予測・分類ができるようになる。機械学習屋さんの場合、現象の裏の理にはあまり興味がなく、現象の予測・分類をするための最適な関数を見つけ、現象の予測・分類していくという個人的なイメージを持っているので、この前提で以降は話を進めていきます。

機械学習の場合、ビジネスでの機械学習導入のパターンは、おおきく2つにわかれるのでは?

機械学習といっても、画像認識から協調フィルタリングまで、多種多用なものがあるので、機械学習と一括りにしてしまうと無理があるかもしれないけれど、機械学習導入のパターンは、おおきく2つにわかれるのではと個人的には思っています。

  1. 処理に組み込んで、自動的に改善することを望むケース
  2. データサイエンスと同じように意思決定に働きかける(判断のサポート)

1の処理に組み込んで、自動的に改善することを望むケースは、機械学習によってビジネス課題を直接的に、解決するようなケース。例えばECサイト協調フィルタリングで、レコメンドをして購買率を高くするという場合など。 その場合、機械学習でできる範囲とできない範囲の見極めができればOKで、「機械学習入れたら、裏の詳細はブラックボックスだけど、売上があがった」ということも許されるような世界。

2のデータサイエンスと同じように意思決定に働きかける(判断のサポート)のケースは、機械学習によって直接的にビジネス課題を解決するのではなく、間接的に解決するようなケース。例えば、画像認識でレントゲン画像から病気を発見するような機械学習の利用では、人間の医者が行う最終診断の判断のサポートをする場合など。 その場合、「なぜ機械学習から、この結果が算出されたのか」「結果の精度はどれくらいなのか」など、人が判断しやすいような情報をなるべく多くいれたほうがいいというもの。

機械学習における心構えは?データサイエンスと比較をして

会社を変える分析の力で語られていたデータサイエンスとの比較で考えると、ビジネス課題を解決することを意識するとか、機械学習のモデルや評価を間違ってはいけないとか、でてきたモデリングに責任をもつなど、基本的な部分ではデータサイエンスと機械学習で同じではあると思います。

その上で、上記の2つのパターンを考えてみると、1のケースでは意思決定には使われることはないので、課題設定の検討やデータが足りているのかを考慮しながら、ただただ最適化問題を解いていくというエンジニアリングに近いものがあるのではないかなと思います。課題も売り上げをn%向上させる・クリック率をn%あげる等、割と明確な基準で組織の態度変容をさせるというケースが場合が多いかな?という印象で、機械学習とエンジニアリングを地道に頑張る比率がおおいかなと思います。

逆に2のケースでは、データサイエンティスと同じように、意思決定や次のアクションを後押しする、コンサルティングに近いものがあるのではないかと思うので、データサイエンスを同じような心構えが必要になって来ると思います。

さいごに

ビジネス課題を意識すること ビジネス課題からデータサイエンス課題・機械学習課題に落とし込む

データサイエンティスにおいては、会社を変える分析の力データ解析の実務プロセス入門といった名著があるが、機械学習についてはビジネス導入をするにあたっての心構え的な本が出ていないような気がするので(私の観測範囲問題??)、どなたか書いてくれないかなぁとか思ったり。