データサイエンティストのワタシナガタです。
データサイエンティストに興味を持っても、
「結局どんなスキルが必要なんだよ…」
「何を勉強すればデータサイエンティストに転職できるんや」
とか思ってませんか?
「データサイエンティスト スキル」とかで検索すると山ほど出てきて、どれが本当なのかわからなくなります。
僕自身、現役のデータサイエンティストです。そこで今回は実際の現場で実感している、データサイエンティストに必要なスキルを紹介していきます。
ここで必要な知識とは「プログラミング未経験の社会人がデータサイエンティストに転職」するときに身につけておいてもらいたい知識に限ります。
「課題解決能力」とか「コミュニケーションスキル」みたいな「それデータサイエンティストに限らんやんけ!」というものは省きます。
そのような具体的じゃないソフトスキルが知りたい人はこちらの記事がおすすめです。この記事と合わせて読むと、データサイエンティストに必要なスキルがより理解できると思います。

僕が紹介するのは、データサイエンティストの現場ですぐに活躍する、実用的な技術だけです。
ぜひ今後の勉強方針の参考にしてください。
データサイエンティストに必要なスキル①Python
正直これに関してはいまさら感がありますが、Pythonは必須です。
簡単な機械学習ができるレベルでいいので、Pythonは必ず身につけておきましょう。
一週間もあれば、データサイエンティストに必要なプログラミング知識は十分つくので、今のうちに勉強しておくことをおすすめします。
※最速でPythonを身につける方法はこちらの記事にまとめました。
統計に詳しい人にたまに「Rはいらないの?」とか聞かれますが、データサイエンスの研究をしていく上でRが必要になった経験は今のところないです。
RにできてPythonにできないことは今のところ無さそうですし、必要になったら学べばいいかなと思ってます。
データサイエンティストに必要なスキル②タッチタイピング
未経験からデータサイエンティストになる人の多くがタッチタイピングができません。
なぜデータサイエンティストにタッチタイピングが必要なのか。それは、プログラミングは1文字の打ち間違いが大きな時間ロスに繋がるから。
自分も、つい3日前に「:」を「;」とうち間違えたミスで30分くらい時間溶かしましたから。笑
タッチタイピングはコードを書く速さにも直結します。
僕もデータサイエンティストになってすぐにタッチタイピングの練習をしました。
僕がタッチタイピングの練習に使っていたのは下のサイトです。

このサイトでスコアAが出せるくらいになれればとりあえずOK。
僕は全然スコア出るようにならなかったのですが、キーボードをいいやつに変えたらめっちゃタッチタイピングできるようになりました。
僕が使ってるキーボードを含めた、僕のパソコン環境は【結論Mac】現役データサイエンティストのパソコンと開発環境を赤裸々に公開するにまとめました。参考にしてください。
データサイエンティストに必要なITスキル③Linux
Linuxというのは、いわゆるパソコンの黒い画面を操作するために必要なスキル。
熱心なデータサイエンティスト志望の人は、一生懸命Pythonとか機械学習の勉強はするんだけど、パソコン自体の操作ができない人が多いです。
データサイエンティストを目指す人達にありがちなのが、機械学習やPythonについてばかり勉強をしてしまって、より基礎のパソコン自体の知識が不足するという状況。
そもそも、どのようにパソコンが動いているのか?を知らないといろんなプログラミングの環境構築などでつまずきます。
せめてLinuxのコマンドラインの基本的な操作くらいは知ってないと、Pythonすらまともに使えません。
参考にしたいコードがコマンドプロンプトで実行する用で書かれていることはよくありますし、Pythonで吐かれるエラーの半分くらいが環境設定のせいです。
Linuxについて知らない人が簡単なエラー手詰まりになる場面を何人も見てました。
ある程度Pythonについて勉強したらLinuxにも手を出してみるといいです。
データサイエンティストとして必要な知識くらいなら、この本一冊で十分。
↓

Linux関連の本で、僕が唯一最後まで読んだ本です。というかこの本の知識しか知らないです。Linuxの基礎が過不足なくてちょうどいい。
データサイエンティストに必要なITスキル④AWS、GCP、Azureのいずれかクラウド
ディープラーニングをしようとすると、どうしてもGPUを使わないとできないときがあります。
GPUを搭載したマシンを使えばいいのですが、それだとノートパソコンでは学習を進められませんし、そもそもGPU自体が高価なくせに日々進化しているので、常に最新のものを手元に置いておこうとすると結構コストがかかります。
そこで活躍するのが、クラウドです。ディープラーニングをする時、データサイエンティストの多くは手元のマシンでは計算させません。
ほとんどが、GPUを搭載したレンタルサーバー上で計算させます。
クラウドにもいくつか選択肢があるのですが、僕はAWS(Amazon Web Service)が提供しているEC2(Elastic Compute Cloud)というサービスを利用しています。
他にもGoogleが提供してるGCPやマイクロソフト提供のAzureがある中で、AWSを選択しているかというと、
・おそらく今後も開発が進められてスキルが無駄にならない
この二点が大きいかなと思ってます。
現時点では、正直どのサービスを使っても大差はなさそうなんですが、今後のシェアを考えるとAmazonにベットしておくのが良さそうです。
東大でAWSの授業に使われていた資料が無料で閲覧できるので、一度これに沿って実践してみると、「AWSとは」なんなのかなんとなくわかると思います。→https://tomomano.gitlab.io/intro-aws/
GCPは開発速度が遅いですし、法的な面でネガティブな要素が少しあって企業ではあまり使われてないようです。
クラウド面のスキルを身に付けるなら、AWS関連のスキルを身につけると転職した後にスキルが無駄になる確率が低くなりますね。
ただ、個人的にGPCのほうが使いやすいので、趣味でクラウドを使うGCPを使っています。
将来の転職スキルを身に着けたいならAWS、とっととクラウドを使えるようになりたいならGCPって感じですかね。
データサイエンティストに必要なスキル⑤確率統計
未経験からデータサイエンティストに転職したい人に抜けがちなスキルの一つが、確率統計です。
確率統計を知らないとデータサイエンティストの仕事は成り立ちません。例えば、作成した機械学習モデルの性能を評価する時、統計の知識を知らないとトンチンカンな考察をしてしまいます。
特に統計は、現在の高校数学の範囲ではほとんど取り扱わないので、理系の人でも統計の基礎が曖昧になっている人が多いです。
本当に基礎だけでいいので、統計もやりましょう。
はじめて統計を学ぶのにおすすめな本はこちらです。
この本を含めたデータサイエンティスト志望が読むべき本はこちらの記事にまとめました。名著ばかりなのでお気に入りの本が見つかると思います。

データサイエンティストになるのは難しくない
いろんなところでもてはやされているデータサイエンティストですが、羽田感としては必要なITスキルはそこまで多くありません。これが文系でもデータサイエンティストになれると世間で言われる理由でしょうね。
特にもともと理系だったなら、他に必要とされる数学的知識に関しても問題なくクリアできるはずです。
データサイエンティストはかなり将来性がある職業、かつ他分野からでも割と容易に転職できるので、データサイエンティストへの転職はかなり賢い選択です。データサイエンティストへの転職なら「【オンライン推奨】現役データサイエンティストがデータサイエンティスト転職特化プログラミングスクール比較した【厳選3つ】」が役に立つでしょう。
僕がデータサイエンティストになるまでの手順は「【実録】未経験からデータサイエンティストになった勉強法」にまとめました。
