データサイエンティストと人材育成(第一弾)

こんにちは
最近かなり暑くなってきましたね。
今回は、人材育成について記載いたします。
自分の後輩に対してデータサイエンスの育成を行うことがあります。
また、他部署の方にも分析ノウハウをレクチャーすることもあると思います。
今回はデータサイエンスの育成で何を何をするのかを記載いたいます。
データサイエンティストには3スキル(ビジネススキル、データエンジニアスキル、データサイエンススキル)が必要になっていきます。
そのスキル各々を築き上げていくために、どのようなことを学んでいくのか記載していきます。

育成内容

育成するメンバーの現状のスキルを傾聴します。
数学の学習してきた内容や、プログラミングの経験、今まで課題に対してKPIや仮説検証の経験について傾聴します。
育成する際には1番時間をかけるところです。
各々の所有しているスキル、必要なスキル、今後のビジョンを含め傾聴をして話してもらいます。
聴いた内容を元に各スキルで学んでもらうことを決めていきます。

データサイエンススキルでの育成内容

まずは数学から学ばせています。
具体的には確率統計や線形代数、微分積分をメインで理解を深めてもらってます。
これらの分野を学ぶ理由は下記のとおりです。

  • アルゴリズムの手順を理解する

  • プログラムで数式をかくことができる

  • 論文を読む際に理解を深める

  • 上司に数式を含めた解析手順を説明する

  • システム化した際にボトルネックになる箇所の理解

機械学習モデルなどに関しては、ブラックボックスな箇所も多いと認識されてしまうことも多いです。
しかし、理解を深めるためにも数式を理解しておくのも重要です。

データエンジニアリングスキル

データベースの練習
データベースに用いるSQL文も必要ですが、データベースの設計や運用についても学んでもらいます。
まずはRDB(リレーショナルデータベース)を中心に環境構築からデータの保存、運用などをローカル環境で練習してもらいます。テーブル作成などもした後に、自らの環境でSQL文を作成、実行してテーブルから必要とする情報を取得することをします。
運用に関しては、バックアップやセキュリティを含め1通り学んでもらうようにしています。
データベースに関することについては別の記事として新たに記載しようと考えています。

プログラミングの練習
プログラミングを今まで行ってきた人もいますが、チームでプログラミングを行うことや、動けばいいというプログラムから運用まで利便性が高いプログラムを作成できるようにしてもらいます。
基本的にはPythonを中心に行いますが、本人が得意なアルゴリズムを聞いてプログラミング言語を選ぶこともあります。
例えば、画像系や処理速度を早く行いたい際にはC++やGo言語をPythonの次に学んでもらうこともあったりします。
メンバーによっては、バックエンドでデータ関連の処理を学びたいからPHPを学びたいというメンバーもいると思います。
その際には、学んだ後のビジョンを認識合わせします。
例えば、PHPを学びLaravelを使えるようになった後には、データ解析プラットフォームをLaravelで構築できるようにする。
PHPやGo言語を用いたAPI処理を学び、Pythonとの連携を行うアプリケーションを作成する。などです。

ビジネススキルでの育成内容

データの理解や課題の定義について学んでもらいます。
ロジカルシンキングやMEMCなども必要です。
データの理解に関しては、自分たちが携わっているプロジェクトのドメイン知識を理解してもらいます。そのあとは課題の定義を設定していきます。
その課題を決めていくのは非常に重要で、目的が手段になっていないかなど話し合っていきます。
課題によって教師あり学習をするのか、教師なし学習をするのかなど変わってくるため、ともに学んでいきます。



この記事が気に入ったらサポートをしてみませんか?