• TOP
  • ブログ
  • R&D部部長が語る、ホットリンクにおける「データサイエンティスト定義と求められるスキル」の話

ホットリンク 公式ブログ

データから見えてくる注目のトピックスをとりあげます。

テック

R&D部部長が語る、ホットリンクにおける「データサイエンティスト定義と求められるスキル」の話

R&D部部長のです。今日は、当社におけるデータサイエンティストの定義と求められるべきスキルセットについて話したいと思います。 

概要

  • 下図のように当社における「データ分析を活用したSaasを開発する場合のデータサイエンティストの定義」を作りました。
  • 既存の3つの定義から、良い部分を拝借しました。
  • 各社ごとに、自社にあったデータサイエンティストを定義しておくのが重要ではないか?
 
【図】ホットリンクにおける「データ分析を活用したSaasを開発する場合のデータサイエンティストの定義」
 

はじめに

当社は、「データとAIで意思決定をサポートする」を事業ミッションとして掲げており、特に去年から人工知能技術(※)に長じた人材、言い方を変えればデータサイエンティストの採用と育成に力を入れてきました。しかし、特に社内で「データサイエンティストとは何か」の定義などを作ることもなく、当社に必要な人材のスキルを列挙し、そちらを募集要項に書くことで満足していました。
そんな中で、某強面の役員から、ある日

「そもそもうちのデータサイエンティストの定義ってどうなってるんだ?(言外の圧力:まさかないなんてことはないだろうな)」

という有言のプレッシャーを受けるという事態に陥り、「優秀な人を採用するにも社内のエンジニアをスキルアップを図るにも、明確なデータサイエンティストの定義は必要である」ということに去年の後半になってから気づきました。

そんなわけで、当社においてデータサイエンティストに期待される役割を定義し、わかりやすい形でデータサイエンティストの定義を作成しましたので、今日のブログではそちらをご紹介したいと思います。
※ここでの「人工知能技術」とは「機械学習・統計学をはじめとするデータ分析技術の総称」くらいの、いわゆる弱いAIとお考え下さい。

 

データサイエンティストの定義に関する既存資料の調査

さて、書くにあたりまずは既存の3つの定義・整理方法を参考にしました。

①データサイエンティストの定義・スキルセット・スキルレベル(データサイエンティスト協会)
②そろそろデータサイエンティストの定義とスキルセットについて本気で考えてみる
③データサイエンティストもしくは機械学習エンジニアになるためのスキル要件とは(2017年夏版)

いずれの定義・整理方法も、かなりよく出来ています。一方、当社に当てはめるとすっきりとしない箇所がいくつもあります。例えば、リサーチャーとエンジニアの役割が明確に分かれている当社では、データサイエンティスト協会の定義におけるデータサイエンス力がリサーチャー、データエンジニア力がエンジニアのスキルに対応していると実態とよくマッチします。しかし、実際にはデータサイエンス力すべてとデータデータエンジニア力の一部が当社のリサーチャーに属するスキルとなっており、当社の現状にフィットしません。また、当社の場合、Saas開発が最終的な製品となるため、R/matlab/SPSSといったデータ分析言語のみを扱う部門もありません。
そこで、既存の定義・整理方法の優れている点をピックアップし、それらを参考として、当社としてのデータサイエンティストの定義を作成しました。
 

①データサイエンティスト協会による定義・スキルセット・スキルレベル(データサイエンティスト協会)
データサイエンティスト協会が整理したデータサイエンティストに定義に関する文書では、データサイエンティストを、下記のように定義しています。

「データサイエンティストとは、データサイエンス力、データエンジニアリング力をベースにデータから価値を創出し、ビジネス課題に答えを出すプロフェッショナル」

さらに、必要な能力を下記のような3種類に分けた後、それぞれの能力について4つの段階を定義しています。
(各スキルごとのレベルごとに必要な能力は省略)

データサイエンティストに求められるスキルセット
1.ビジネス力(business problem solving):課題背景を理解した上で、ビジネス課題を整理し、解決する力
2.データサイエンス力(data science):情報処理、人工知能、統計学などの情報科学系の知恵を理解し、使う力
3.データエンジニアリング力(data engineering):データサイエンスを意味のある形に使えるようにし、実装、運用できるようにする力

データサイエンティストのスキルレベル
1.業界を代表するレベル :Senior Data Scientist
2.棟梁レベル :(full) Data Scientist
3.独り立ちレベル :Associate Data Scientist
4.見習いレベル :Assistant Data Scientist

こちらの整理方法の「3つのスキルにわける」「スキルごとにレベルを設定する」という分け方は、内容を理解する上でも、達成すべき目標を立てる上でも、わかりやすい整理方法だと感じて、参考にしました。
【参考】プレスリリース「データサイエンティスト協会、データサイエンティストのミッション、スキルセット、定義、スキルレベルを発表」より

そろそろデータサイエンティストの定義とスキルセットについて本気で考えてみる
こちらはメルカリ所属のエンジニアの方によるQiitaの記事です。
この記事ではデータサイエンティストをデータサイエンティストを「分析のプロセスのバリューチェーンにおけるマルチリンガル(多言語話者)翻訳者」と定義した上で、各分析のプロセスにおけるスキルを「読み」と「書き」に分けて整理しています。


 
このデータ分析は多言語話者という比喩、「読み」「書き」という分類は、わかりやすく明快な観点なので、こちらも参考にしたいと思います。
 

データサイエンティストもしくは機械学習エンジニアになるためのスキル要件とは(2017年夏版)

こちらはデータ分析界隈で知らない人はモグリと言われる六本木に勤務されているTJOさんのブログ記事です。
こちらの記事ではデータ分析にまつわる職業を、

・統計分析メインの「データサイエンティスト」
・機械学習システム実装メインの「機械学習エンジニア」

の2つに分類した上で、それぞれに必要なスキルを具体的に列挙しています。統計分析と機械学習システム実装という主たる業務上役割の違いから、それぞれを異なる職業として定義し、それぞれについて達成すべきレベルを具体的に列挙しています。

この記事のように、そもそも業務上役割が違うものは異なる職業として定義してしまう、というのは、誤解を生みにくい合理的な整理方法だと思いましたので、こちらも参考にしました。

 

当社におけるデータサイエンティストの定義

前提
当社の主たるビジネスは、「Saasシステムを開発すること」になります。なので、今回整理したデータサイエンティストの定義は「Saasシステムを開発する」ことを目的としたものになります。また、2017年10月時点の技術的な環境を前提としたものになります。
 
スキルセットとそのスキルレベル
当社でのデータ分析に関わる役割をコンサルタント、リサーチャ、エンジニアの3つに分類し、
それぞれに必要なスキルをビジネススキル、リサーチスキル、エンジニアリングスキルと名付けました。
また、各スキル達成段階を6段階に分けました。見やすいように各達成段階を1文で表した表が簡易表記、厳密に定義するために各達成段階を詳細に記述した表が詳細表記となります。なお、それぞれのスキルセットの1番下のスキルは「読むスキル」、それより上のスキルは「書くスキル」となっています。さらにそれらのスキルレベルの達成度合いによって、4タイプのデータサイエンティストを定義しました。
このデータサイエンティストの定義を1枚で表現すると下記のような図になります。
 

【図】データサイエンティストの定義
 

スキルセット
・ビジネススキル:課題背景を理解した上で、ビジネス課題を整理し、解決する力
・リサーチスキル:機械学習、統計学などの情報科学系の知恵を理解し、使う力
・エンジニアリングスキル:サービス・システムを実装し、運用する力

スキルセット(簡易表記)
 

スキルセット(詳細表記)


 

当社において、現在~将来的に必要とされる職業

先に定義した3つのスキルセットのうち2つ以上にまたがったスキルを持つものをデータサイエンティストとして定義します。その上で、それぞれの得意分野によって4つのタイプの職業を定義しました。

フルスタックデータサイエンティスト
3つのスキルセットを高いレベルで保有し、一人でビジネス要件の定義、用いる手法の選定・適用・評価、システムの実装までできるプロフェッショナル(※※)
※※こんな人はレアポケモンくらい見つからないよ


 
ビジネス系データサイエンティスト(ビジネスデータアナリスト)
ビジネス・経営に関する幅広い知識を有しており、顧客のビジネスを理解し、課題を抽出した上で、リサーチャにデータ分析を依頼し、その分析結果に基づいてソリューションが提案できるプロフェッショナル

 
リサーチ系データサイエンティスト(Machine Learningエンジニア)
統計/機械学習の知識に熟達し、顧客課題を解決する機能を実現するために適切な手法の選定・デモレベルでの実装および妥当な評価を行うことができるプロフェッショナル

 エンジニア系データサイエンティスト(リサーチプログラマ)
システムの実装・開発の豊富な経験を持ち、顧客課題を解決する機能を実現するために必要な環境・計算資源を選定し、サービス要件を充足するように実装できるプロフェッショナル

 
 

おわりに

今回、役員の鶴の一声ビジネス上の必要性から、データサイエンティストの定義を作ってみました。
既存の資料を調査する上で気づいたのは、世間で言われるデータサイエンティストの定義が多様すぎる・曖昧すぎるのは皆さんが指摘する通りなのですが、そもそも「自社のビジネス・組織の現状にフィットする定義」を社外に求めることが間違っていたのだと気づかされました。
残念ながら、どんなに適切にかつ汎用的に定義されていても自社にフィットする定義を見つけることは難しいと思います。それよりは、既存の資料を参考にしつつ、自社にとっての「データサイエンティスト」を定義していくことが、自社の求める人材やそれに期待する役割を明確にする上で重要なのではないかと思います。(※※※)
※※※まあ、データサイエンティストに限らない話なのではありますが。
 

余談

なお、この話題は年明け早いうちにブログにしようと思いつつ、うだうだしているうちに、TJOさんの「データサイエンティスト&機械学習(人工知能)エンジニアのスキル要件と、過熱する人工知能ブームが生み出す狂騒曲と(2018年2月版)という記事がバズってしまい、「乗り遅れたから、書くのやめるかー」と思いましたが、むしろ「乗るしかないこのビッグウェーブに」と思い直したのと、TJOさんからも書いてみてはいかがですか的なお言葉もいただきましたので、書くこととしました。