渋谷駅前で働くデータサイエンティストのブログ

元祖「六本木で働くデータサイエンティスト」です / 道玄坂→銀座→東京→六本木→渋谷駅前

「実務者としてのデータサイエンティスト」になるということ

f:id:TJO:20211129153152p:plain
(Image by katielwhite91 from Pixabay)

先日のことですが、大変に面白い記事を読みました。

この記事では「データサイエンティスト職のインターンに応募してくる若いエンジニアや学生向け」の話題として語られていますが、全体として読むとそもそも論としての「学術・技術的な側面から見た場合のデータサイエンティスト」と「泥臭い現場で働く実務者としてのデータサイエンティスト」との違いについて良くまとめられた文章だ、という感想を持ちました。


ということで、この良記事に触発された形である上にこのブログでは既に散々語り尽くされてきた議論でもありますが、改めて僕なりの「両者の間の垣根を越えて真に活躍できる」「実務者としてのデータサイエンティスト」とはどうあるべきかについて、一通り書いてみようと思います。

データ分析の現場の泥臭さは、外から見るよりもしんどい


元記事でも色々書かれていますが、概してビジネス実務の現場でデータ分析を行う際には以下のようなchallengeに直面しがちなものです。

  • 前処理地獄(実務データの大半は未整理で汚くそのままでは分析できない)
  • 分析インフラ構築(データ量もデータの性質もまちまちな中で環境・インフラの構築が必要)
  • ビジネスの方向性へのalign(どれほど優れた分析ができてもビジネスに結びつかなければ無駄になる)

これらは語り尽くされた感のある話題ですが、今でもその重要性と困難さは生きているように見えます。特に受託系であればこの辺はcriticalを突破してvitalといっても差し支えないでしょう。この3つのchallengeをクリアできなければ、そもそもプロジェクト自体が潰れかねません。


前処理の話はもはや説明を要さないと思われます。元記事でも挙げられているような表記揺れやフォーマットの未統一あたりは序の口で、「どうあがいても解決できない欠損値」とか「全部セル結合ルールがバラバラのExcelファイルが大量に積み上げられている」みたいな難題も良く見かけますよね。インフラの構築はクラウドの進歩でGCP / AWS / Azureを使えば簡単にできるようになってきましたが、本番環境につなぐことを考えるとそれでもセキュリティやらスケーラビリティやらメンテナンス性やら神経を使うべきポイントは山ほどあります。そしてビジネスの方向性への合わせ方は、ぶっちゃけ学術・技術をただ学んでいただけでは身につかないものです。例えばですが、製造業におけるデータ分析が解くべき課題と広告・マーケティング業界におけるデータ分析が解くべき課題は、互いにまるで異なります。


f:id:TJO:20211129183157p:plain

お馴染み「機械学習の技術的負債」論文の図にも表れているように、優れた統計的学習モデル*1がプロジェクト全体の中に占める割合は、本当にちっぽけであることが多いのです。本質的には、この点をどれだけ理解そして受容して、統計的学習モデル「以外」の要素にも注意を向けて対処できるかが、実務の現場では問われることが多いということなのだと考えています。


ちなみに以前の記事でも指摘したように、一般に「純粋に精度第一」と思われがちな機械学習であっても、実務の現場では「精度よりも他に優先すべきものがある」ことが少なくないわけです。その意味では「理想的なモデル・アルゴリズムをあえて封印して現実に合わせたものを選ぶ」というシチュエーションにも対応できる必要があります。


というわけで、「ビジネス上の課題を解決する」ことがビジネス実務の現場では第一義であることを考えれば、統計分析や機械学習といったデータ分析の本丸「以外」のところ(即ち前処理・インフラ・ビジネスとのすり合わせ)の比重が高くなるのはある意味自明の理であり、必然的に「統計学機械学習そのものに秀でただけでは実務者としてのデータサイエンティストになるのは難しい」という議論に発展していくのだろうと考えています。



なお、同種の議論はこのブログでも以前から何度か展開していて、たどり着く結論も毎回大体同じです(笑)。ただ、その時々でデータ分析業界を取り巻く状況が異なることもあり、その「処方箋」の内容は後になればなるほど変わってくる気がしています。


理想を言えば、チームプレーで戦いたい


2012年頃であれば、データサイエンティストが1人で全てをまかなうというのが理想的とされていたように記憶しています。しかし「データサイエンティスト」の概念が人口に膾炙し、スキルレベルはともかくそういう肩書きの人なら割とあちこちの企業にいるのが普通になってきたという2021年現在であれば、また状況は異なるはずです。


個人的には、全てをデータサイエンティスト1人がこなすことには限界があると思っていて、例えばB2Bのデータ分析チームなら

  • リレーション担当(営業)
  • プランニング担当(マーケッター・プランナー)
  • データ整備担当(データアーキテクト・DBエンジニア)
  • 分析担当(データサイエンティスト・機械学習エンジニア)

というような役割分担が行われるのが理想だと考えています。理由は簡単で、やはりデータサイエンティスト(機械学習エンジニア)の強みは「分析そのもの」にあるべきで、その他の役割についてはそれぞれの専門家に担ってもらう「餅は餅屋」的なアプローチの方が効率的だと思うからです。


勿論、このような役割分担がきちんと出来るのは「ある程度大きな規模の企業で」「ある程度データ分析のリテラシーが高いところに」限られる、という側面はあると思います。その意味ではむしろこういう役割分担が出来るところの方が少ないという実態もありそうです。けれども、理想像として掲げておくことには意義があると思いますし、当初はデータサイエンティストが全てを受け持っていたとしてもいずれはチームを組んで役割分担するように移行する、という青写真を用意しておくことは重要だと考えます。


「データサイエンスでなければできないこと」をやる


この点も以前のブログ記事で論じたことがあります。


Excelで単純集計するようなデータ分析はあくまでも直感的な理解によるものであり、それは多くの変数間の複雑に絡み合った関係性を解き明かすには素朴過ぎます。上記で1番目にリンクした記事の例のように、ただの単純集計だけでは誤った結論に至ることもあり得ます。他方で、統計学機械学習による多変量モデルに基づくデータ分析は、ヒトの直感を超えて遥かに複雑な関係性を扱える上に、あまつさえより正確な予測を与えることすら出来ます。世の中のビジネス課題の中には、そのような方法論を用いた方がより合理的に解決できるものがあるということは覚えておいて損はないと思う次第です。

と書いた通りなんですが、裏を返せば「Excelで集計すれば済むような仕事『しかない』ところにデータサイエンスを持っていっても何の役にも立たない」わけです。


その意味では、前の節で書いたような「リレーションマネジメント」「プランニング」「データ整備」を組み合わせて、「後はここにデータサイエンス(統計学機械学習)さえあれば凄い成果が得られる」というところまでお膳立て出来ることこそが、実務者としてのデータサイエンティストに必要なスキルなんじゃないかと思うんですね。それが出来る人は「凄いデータサイエンティスト」と呼ばれ、出来ない人は「使えないデータサイエンティスト」呼ばわりされてしまう、という現実があるのかなと。


そう考えると、究極的にはそのような「本来チームプレーで役割分担しながらやるような規模の分析プロジェクトの全体像をマネジメントできる」「そしてそこにピンポイントで価値を与えられるようなデータサイエンス(統計学機械学習)を実践できる」ということが、実務者としてのデータサイエンティストに求められる要件なのかな、と考えています。

*1:検定や実験計画などの統計分析の諸要素もここに含むとする