WEB・IT業界で働く人々の人生を少し豊かにするメディア

CAREER HACK

データサイエンティストだけど質問ある?|マシューのデータサイエンスAtoZ Vol.3

2015-09-24

データサイエンティストだけど質問ある?|マシューのデータサイエンスAtoZ Vol.3

データサイエンティスト・マシューによる最終寄稿。今回は、データサイエンティストとして様々な経験・チャレンジを続けてきたマシューが、数々の質問にお応えしていきます。

データサイエンティストのスキルを徹底解剖!マシューのデータサイエンスAtoZ Vol.1
データサイエンティストになる方法、仕事内容、スキルとは?マシューのデータサイエンスAtoZ Vol.2

データサイエンスに関する質問に答えます!

Mathieu Dumoulin

こんにちは。今年の2月より、エン・ジャパン イノベーションラボのデータサイエンスチームマネージャーと不満買取センターのチーフデータサイエンティストを兼務してるマシューです。以前は、富士通カナダのイノベーションラボで4年以上データサイエンス領域で働いていた経験もあります。

さて、連載最終回となる今回は、この経験を活かしてデータサイエンスに関わる疑問へQ&A形式で回答していきたいと思います。

Q.1 なぜデータサイエンスに興味をもつようになったの?

最初に興味をもったのは、情報科学系の大学院で機械学習について学びはじめたときでした。機械学習やビックデータ処理(Apache Hadoop等)の最先端を学んでいくにつれ、仕事でもこの領域にどっぷり漬かって働いていきたいと考えるようになりました。

Q.2 データサイエンス、機械学習、データマイニングの位置付けは?

これらの単語は、同じ文脈で使用されることが多いですが、一般の方にとっては区別がわかりにくいかもしれません。

データサイエンスとは、機械学習、データマイニング、そして統計分析等の手法を利用して問題へ定量的にアプローチするという方法論のことで、その中には既存の様々な学問領域が含まれていると考えています。

一方、機械学習は既存のデータを用いてコンピュータを学習させ、新たなデータに対して答えを導き出す技術。そしてデータマイニングは 大まかに言うと、データの中から有用な情報を抽出する行為のことで、この中には各種統計や機械学習の技術もふくまれます。

Q.3 どうすれば優れたデータサイエンティストになれますか?

理想のデータサイエンティストはプログラミング、機械学習、統計、可視化、コミュニケーションとビジネス理解等の幅広い領域に精通したジェネラリストだと考えています。優れたデータサイエンティストになるには、常に新しい手法・技術を学び、最新の技術にキャッチアップしていく必要があるでしょう。目の前の問題に対し、最初に思いついた手段で満足することなく、より良い手段が無いか常に視点を広く持つという態度が大切です。

加えて、その他のエンジニアやビジネス領域を担当するメンバーと適切にコミュニケーションするスキルというのも、良いデータサイエンティストであるためには欠かせないものです。

Q.4 データサイエンスとは科学?それとも技術?

データサイエンスは、方法論としては科学であると言えます。仮説を構築し、データを分析することで実験を行い、仮説を検証するというデータサイエンスにおけるプロジェクトの進め方は科学そのものです。

しかし、データサイエンスには技術としての側面もあります。データサイエンスには数え切れないほどのツールや技術があり、様々な問題に対してそれぞれ適用可能です。実際に、適用する手法が適切でさえあれば、ちょっとした手間で問題が解決してしまうことすらあります。

あらゆる問題に対してどのような手段をとる選択肢があるのか、一つがうまく行かなかったら次に何を試すべきなのかを考えていくことが、データサイエンティストが創造性を発揮するポイントでもあります。

Q.5 データサイエンスにおけるベストプラクティスを教えて下さい。

①全てについて、ログを保存すること。
データについても、プログラムのコードについても、バージョン管理を行うべきです。

②データ分析プロジェクトの結果は、常に定量的に評価すること。
新しく作成したモデルがそれまでのものよりも優れているとして、それがどの程度優れているのかは数値で表現されなくてはいけません。新しいモデルが古いものよりも統計的に優位に良いことがわかれば理想的です。

p値を汎用することの危険性について理解しておくこと。そして、ABテストを適切に利用すること

④必ず生データを保存しておくこと。

⑤学習を止めないこと。
最先端の領域で仕事をし続けるには、自分が使用する手法が時代遅れになっているなどということがあってはなりません。

Q.6 最先端の技術を学ぶために、どんな本を読んでいますか?

ちょうど今は、以下のような本を読んでいるところです。

▼Data Mining Concepts and Techniques 3rd Edition by Han, Kamber and Pei
Linked Data, Structured Data on the Web by Wood, Zaidman and Ruth(邦題:Linked Data: Webをグローバルなデータ空間にする仕組み)
▼Big Data, Principles and best practices of scalable real-time systems by Marz and Warren.

Q.7 書籍以外のカンファレンスやワークショップ等は?

もちろん、書籍以外でも最先端の知識を取り入れることが可能です。私は今年は以下に参加/参加予定です。

▼第一線の研究者を招いて行われたディープラーニングについての社外の勉強会
▼言語処理学会 年次大会…この学会は毎年行われていて、次回2016年度は東北大学で実施されます。
WebDB Forum 2015(参加予定)
▼その他、Hadoop、Sparkなどビックデータに関するカンファレンスにも幾つか出席。

Q.8 データサイエンティストとして最近取り組んでいるプログラミング技術は?

最近は、Elastic SearchをPythonから利用する方法を試しています。その他には、Pig Latin という言語と、PigスクリプトをAWS EMRクラスター上で動作させる方法を勉強しています。

Q.9 データサイエンス関連で利用しているWebサイトはありますか?

FiveThirtyEight, Reddit Machine Learning Subreddit, Quora (Machine learning, data analysis, data mining, etc.), Cross Validated, KDNuggets などを利用しています。

Q.10 データサイエンス領域で最も優れている企業はどこだと思いますか?

Google, Facebook そして Amazonです。

GoogleはMapReduceをはじめとして、様々な最先端の技術を発表しつづけています。 そしてFacebook とAmazonはデータサイエンスを競争力の源泉として優れたビジネスを築き上げました。これらの企業が自社のビジネスのために開発してきた技術が、ここ数年のデータサイエンス業界を発展させてきたことは事実ですし、今後もこの流れはしばらく継続すると考えています。

Q.11 おすすめのプログラミング言語はありますか?

データサイエンスで利用するには、Pythonが最も汎用的に利用しやすい言語でしょう。特に計算科学の用途に利用する場合、numpy/scipy, pandasやscikit-learnをはじめとしたライブラリのおかげで他の言語に見劣りすることはないでしょう。I

Q.12 既存の分析パッケージを用いるのではなく、自分でプログラミングするべきなのはどんなとき?

分析のためのソフトウェア・パッケージは、特定の問題に特化して作成されている傾向があります。そのため、自分が相手にしているデータに対してパッケージが利用できるようにするために、Pythonのような汎用言語のプログラミングが必要になるケースはあります。

また、スタートアップ企業や私たちイノベーションラボのような出来たばかりのデータサイエンス組織の場合にも、データサイエンスを適用すべきデータが各種にわたるために、自分でプログラミングしてデータの違いを吸収する必要があることが多々あります。反面、より成熟した企業・組織においてはプログラミングをしなくても分析パッケージをそのまま用いるだけで足りる場面が多いでしょう。

Q.13 実際に、分析や計算科学を用いて成功したプロジェクトの例を教えて下さい。また、成功をどう測定しましたか?

【Case-1】
私が富士通カナダに居た際、Apache Hadoopを用いて政府の求人情報を分析・予測し最適な求人をレコメンドするシステムを構築しました。レコメンドの結果はprecision and recall(適合率と再現率) という指標を用いて計測し、高い精度で適切な求人情報が表示されていることを確かめました。

【Cace-2】
不満買取センターのプロジェクトでは、投稿されたユーザの不満の価値を自動で査定し、不満の買取可否・金額を自動化するというプロジェクトを行いました。クラス分類と、回帰を組み合わせたモデルを用いて高い精度を実現し、成果についてはAUC という指標を用いて正しく分類が出来たかを測定しています。


いかがでしたか?この連載では、「データサイエンティスト」「データサイエンス」をテーマにそのスキルや仕事内容、求められる背景をお伝えしてきました。本稿を通じて、少しでもデータサイエンスに関する理解を読者の方に深めってもらえることができれば幸いです。それではまた!



CAREER HACK をフォロー

タグ一覧