2015年03月16日

データサイエンティストってなに? どうやったらなれるの?

本日取り上げる記事はこちら。

What is a Data Scientist and How Do I Become One?
(データサイエンティストってなに? どうやったらなれるの?)

巷ではデータサイエンティスト(笑)などと揶揄されることもある、若干バズワード気味な扱いをされることもある本ワードですが、職種としては確かに存在しており、求人欄の募集職種にもよく掲載されています。

先日取り上げた「機械学習エンジニアとデータサイエンティストの違いは?」でも、Quoraの求人欄にData Scientistと記述されていましたね。

記事中でデータサイエンティストはこんな風に定義されています。

Similar to a business/data analyst, data scientists combines knowledge of computer science and applications, modelling, statistics, analytics and math to uncover insights in data.

ビジネスデータアナリストの技能に加えて、データサイエンティストはコンピュータ・サイエンスの知識、アプリケーション、モデリング、統計、分析、そしてデータを解析して知見を得る数学的素養が必要になります。

ということで、データサイエンティストは従来のデータ分析の仕事に加えて、コンピュータを使って解析、モデリングできる知識とスキルが必要ということになります。

データサイエンティストの人はよくRPythonなどのプログラミング言語を使ってますね。MatlabSASのような有償の分析ソフトを駆使している人もいます。

で、この技能を使って具体的に何をするか。例えば最適な投資先を選択するとか、ネットショッピングでそのユーザが買いそうな商品をレコメンドするとか、領域は多種多様です。

この手の話に興味がある方はヤバイ統計学という本がオススメです。アメリカで統計が使われたことによって起きた変化を実例ベースで取り上げた本です。技術面には寄らず読み物的な内容になっているのでさらっと読めます。

下記はデータサイエンティストに必要なスキルセットを可視化した画像だそうです。

data-scientist-skills-network.jpg

なにやらいろいろ並んでますね。大きなところでは下記あたりが挙がっています。

  • Machine Learning(機械学習)
  • Statistics(統計)
  • Data Mining(データマイニング)
  • Algorithm(アルゴリズム)
  • Big Data(ビッグデータ)
  • Data Analysis(データ分析)
  • Statistical Modeling(統計モデリング)
  • Programming(プログラミング)
  • Computer Science(コンピュータサイエンス)
  • Predictive Modeling(予想モデル)
  • Artifical Intelligence(人工知能)
  • Pattern Recognition(パターン認識)
  • Natural Language Processing(自然言語解析)
  • Time Seriese Analysis(時系列データ分析)
  • Data Visualization(データ可視化)

また、プログラミングに関する技能では、下記が挙げられています。

  • Python
  • R
  • Matlab
  • SAS
  • C
  • C++
  • Java
  • JavaScript
  • Perl
  • LaTeX
  • Linux
  • MySQL
  • Hadoop
  • MapReduce
  • Hive
  • Distributed Systems(分散システム)

こんなにたくさんの技能を全部身につけている人なんていうのはもちろんいないので(Tresure DataとかPFIの中の人ならもしかしたらいるのかもしれませんが)、これらの技能のうち使える部分を活かして解析していくといった仕事になります。

例えばPythonかRを使ってデータを整形しつつ特徴や傾向、相関などを調べて、それらをビジネスに役立てる為の施策を提案して、可視化しつつ説明するといった流れはよくありますね。

記事内ではデータサイエンティストになる為の基礎知識が書かれている資料や書籍が列挙されています。

Code AcademyのPython講義とか、無料のアルゴリズム講義とか。

データサイエンティストはプログラミングスキル学問的な知識の双方を持ち合わせている必要があるので、一般的なプログラマと比べると給料も高めになっているようです。

this new breed of data analyst earns an average salary of $95,000-$118,000

この新種のデータアナリストたちは、平均で9万5千〜11万8千ドルのサラリーを得ている

仮に10万ドルとすると、今は1ドルが約120円なので年収1200万円。けっこうなお値段ですね。

うまく最適なモデルを見つけ出してビジネスに貢献できれば、例えば1つのモデルで売上が30%アップしたなんて話はざらにあるので、そうした成果が出れば上記の年収が破格に見えることでしょう。

もちろん、担当するデータサイエンティストの腕前によっては、派手に空振りする(解析したデータを根拠に施策を打ってみたけどうまくいかない)こともけっこうありますが。

擬似相関(パッと見は関連がありそうだけど実はない要素)に騙されたとか、解析したデータの素性が良くなくて実際のビジネスには活かせなかったとかはよくある話です。

私はしょっちゅう空振りしているので、その辺りの体験には事欠かないぜ。

posted by newsit at 07:00| data_analysis