戦略的データサイエンス入門(1)

第一章 はじめに

  • データ分析はビジネス上の予測を立てることである。
    • データ分析を行う企業とそうでない企業には統計的な優位な差が存在する。
      • 例として、ヲルマートや銀行の例を上げている。
    • データドリブンな意思決定
      • データサイエンス技術(エンジニアリング)とその上にあるデータサイエンス、そのうえにある意思決定
    • 意思決定の区分
      • データを使って何を明らかにすべきか判断するための意思決定(0→1に)
      • 大規模なOJなどにおける意思決定。少しでもやれば大きな影響(1→100に)
    • すべてのデータ分析が仮設検証するのではなく、有意義な発見を期待を期待してデータを調べることもある
      • 「データ処理」は「データ分析」の構成要素
  • 基本コンセプト
    • ビジネス問題を解決するためにデータを抽出する行為は、理論的かつ明確に分離されたプロセスに従って体系的処理が可能になる。
      • データ分析課題を構造的に捉えて、意思決定までのフレームワークを考える
        • 入念な分析に基づかない解決策を避ける。意思決定を支援する。
        • BIツールを使うor人の創造性を使う。っていう選択
    • 巨大なデータから、個々のデータが持つ有益な情報に到達できる。
    • データについて特定のパターンなどを発見できるが、まったく他のデータには適用されないかもしれない
    • データマイニングによるソリューションは、背景を知ることが最重要(ビジネス的な側面)
  • 補足として
    • どこまで厳密にするか
    • それは検討すべき項目か
    • その発見パターンはほんとうにOKか
    • 偶然でやったらどうなるか?
    • なにもしない自然の状態はどうなるか?
      • そういう考え方
  • ここでは、データサイエンスとデータエンジニアリングは区別
    • エンジニアリング;技術が大事。方法論ベース、即時性がある。10年経ったら多分変わる
    • サイエンス:原則が大事。ビジネス論がベース。幅広い領域(技術はもちろん)と思考が基盤。20年経っても変わらない。原則だから

第二章 ビジネスにおけるデータサイエンスを用いた解決策

  • データマイニング
    • データサイエンスで重要なことは、分析対象を対処可能な問題に陥れること。
      • 対処可能な問題には限りはないが、データサイエンスの手法には限りがある。それらをわきまえておく必要がある。
        • 分類問題:発生しないかを予測。クラスは互いに排他的である必要がある。その線引にスコアリングや確率推定は重要
        • 回帰問題:どの程度を予測。分類問題とは根本的な違いがある。
        • 類似性発見:ある群に対し、新しいものが似ているか?。ピカチュウ軍団にライチュウを突っ込んで似ているっていうやつ。その群の中で共通している部分を見つけるとは違う。
        • クラスタリング:特定の分類基準を用いず、類似性の発見を用いて、境界線を発見する(グルーピングする)
        • 共起グルーピング:その群の中で共通している部分を見つける。ピカチュウ軍団で個々は違うけど、みんな共通して発電できるとか
        • プロファイリング:個(1集団)に対して、典型的な振る舞い/部分を見つける。一般的に複雑な表現になりがち。逆手にとり異常検知などでの応用。
        • リンク予測:繋がりとその繋がりの強さを見つける。ピカチュウは電気タイプで、水タイプとのつながりをみつける。レコメンドに活用
        • データ削減:本質的に重複したデータを消すこと。データの説明能力が上がり、簡単かつ本質に近い形になる。情報の欠落に注意する。
        • 因果モデリング:施策Aの結果が良かった原因が、そもそも被検体がたまたま施策Aに対して高評価だった。というような、他の何かに影響を及ぼす出来事や行為を推定。一般的なA/Bテストは観測データから因果関係を導けるが大掛かり。結論に導く際に、どこまで仮定を排除してもOKか判定することが重要。
    • 教師あり・なし
      • これらの技術的な話は割愛
      • 教師ありは、
        • セグメントではないので教師なしよりも有益であることが多い。
        • ただし、その分予測に必要なデータを揃える必要がある。
      • 教師なし or 教師あり
        • 明確な基準があるかどうかで判断。
        • 特にビジネス的には、予測対象は明確である必要があるから、たとえ予測対象が離散的であっても、定量的な予測が求められる。
        • 特に教師ありの場合は、目的変数が(そういう意味で)非常にキーになる。
        •  
    • データマイニングプロセス
      • このプロセスは一度で出来るものではなく、PDCAのように回していかないといけない。
        • ビジネスの理解、
          • そもそも分析するにあたって、課題の把握は必要。
          • 分析者は事前知識と課題の把握をした上で、どのような問題へと陥れるをASAP早期に実施する
          • 次に成果までのシナリオを考える。フレームワークとして非常に重要。
          •  
        • データの理解
          • 対象のビジネス問題と提示されたデータに隠された構造を理解する。
            • データの取得と解析にかかる費用は適切か
              • 特別な労力やコスト、PJを立てて収集…
            • 解決への取り組み方法の検討
              • 不正検知:悪いことをしている人も「正規」の利用者であるから、「悪い」ことを示す目的変数は存在しない。
              • →教師あり学習の適用は無意味。
        • データの準備
          • モデルに適用するために加工が重要
            • 前処理には分析者の教養と業務知識と想像力
          • ただ、リーク(未来を用いて予測する)といったことに気をつける。
        • 性能評価
          • 評価はステークホルダーが最も気にするポイントであり、定性的定量的に物事を捉える必要がある。
            • ステークホルダーは、モデルが業務改善に有効的かどうか、逆に壊滅的な被害をもたらす可能性はあるのかを見ている。
            • 特に不正検知系は誤検知が非常に大きなリスクになるので、評価はすごく厳しくする必要がある。
          • ビジネスへの運用とその後の運用を考え、わかりやすいモデルにする
            • ビジネスにおいてデータ分析は意思決定の支援に過ぎない
            • 複雑なモデルは評価に困る。特に現実に近いモデルにすることがデータサイエンスでは求められる。
            • そもそも理解がされにくいモデルでは困る。
          • 出力は入力に強く依存し、出力が分析以前に上位のファクターで更新される危険
            • 構造変化からそのものの変化、評価点の変化
        • 適用
          • 自動で組み込む理由は大きく2点
            • 不正検知などはデータ分析者の対応スピードを超える
            • 手動管理がめんどくさい。モデリング数が多い。
          • 以上から、運用はできるだけ簡単なシステムになっていることが重要である。
          • データサイエンスの領域の考える点とエンジニア領域で考える点は違う。
            • 考える力と書くちからの違い
            • 一人で兼ね備えるのも、チームで兼ね備えるのもいい。
          • 分析から実際の実務へデータサイエンティストが作ったモデルではなく、エンジニアが作ったモデル。データサイエンティストはこの場では、助言役として切り離されるべき。
              • データサイエンスエンジニアという組み合わせた職業。
          • データマイニングプロセスを実施することで、新規ビシネス・業務改善が見込めるが、失敗前提なので、戻れるポイントを作ることが重要である。
        • データサイエンスチームを管理すること
          • データ分析:研究開発 vs ソフトウェア開発:製品開発
            • そもそものゴールが異なるので、SWのように管理は管理はできない。DAはアプローチと戦略を伴う、反復アプローチ。
            • DAは正確性。SWは速さ。評価基準にもバグやコード数について、DAよりもSWのほうが重要視される
              • Ex. DAにおいて、少額投資で早期納品の結果、ずさんな結果を生んで、ビジネスに与える影響とは?って考えたら?
          • 将来的にDAの仮説検証能力+SWの迅速な高速な実装能力 で複雑な仮説検証のためのプロトタイプ実装を迅速に行う事ができると素晴らしい
          •  
      • 取り巻く技術など
        • 統計学
          • 要約統計量は、課題に対して適切に選択されるべき。
            • 平均でも分散大きければ、中央値のほうが良いなど
          • 仮説検定を通して、偶然性の回避
            • 信頼区間を判断して検証
        • クエリ
          • データ取得プロセス。複雑なクエリもモデルやパターンを定義するものではない。
            • 確かめる方法として用いる。データマイニングを補完する役目を負う
          • OLAP:オンライン分析処理は巨大なデータを視覚的に操作できるが、自動的なパターン抽出やモデリングは不可能。データマイニングツールと組み合わせるなどする・
        • データウェアハウス
          • 分析要件に基づいて、横断的にデータを収集し、関連するデータを結合し、アドホックな分析を行う(演繹的)
          • データレイク
            • 生のデータを大量に収集し、整理などして何らかの結果を得る。(帰納的)
        • 回帰分析
          • ビジネス的には、特定のデータで特定のパターンを見つけ出すよりも、幅広く使えそうな回答を得ることが重要
            • 未知に強い形を作る
            • 現象を説明するモデリングと予測のためのモデリングは手法は同じだが着地点が違う。
              • 現象を説明するモデリングがすべて予測に有効かどうかは定かではない。
        • MLとデータマイニング
          • KDDの分野では非常に曖昧になっている
      • ビジネスに焦点を当てる
        • 収益性の高い顧客はだれか
          • そもそも導けるか
        • 収益性の高いor低いは明確な差があるのか
          • 有意な差がないと意味がない
        • 導かれる理想な顧客は一体誰?具体的な特徴は?
          • かんたんなモデル設計
        • 新顧客は収益が見込めるか?その顧客をとりこめるか?
          • 未知データに対応できるか?
    • こういった基本原理に沿うことが、データマイニングのプロジェクトの設計では重要である。