はじめに
データサイエンティストを含めたAI人材の需要増加が見込まれ、「2022年にまでに世界で1.2億人のAI人材の教育が必要(※1)」や「AI人材不足 2030年までに12万4000人(※2)」などと言われています。そこで、社会要請に応える事、自身の市場価値を高める為にオンラインコースのDataCampによる学習を試みました。クチコミ検索をしたところの受講判断に必要な情報が少ないと感じた為、Data Campの「Data Scientist with Python」のコース内容を共有し、ご自身が受講するかの判断材料にしていただきたいです!!
(※1) https://japan.zdnet.com/article/35142455/
(※2) http://www.news24.jp/sp/articles/2019/06/10/07448945.html
目次
- 本記事のメッセージ
- Data Campとは
- Data Scientist with Pythonの内容紹介
- コースの良い点/注意点
- 個人所管
1. 本記事のメッセージ
本記事はData Camp 「Data Scientist with Python」の受講における判断材料を提供することです。
まずはその要点を述べます。以降の章では、下記の内容における詳細です。
◾️金額
-$25/月(約2700円)又は250$/年(約2万7千円)
◾️所用時間
- 100時間 (私は毎日1時間進めて2ヶ月半かかりました)
◾️コース内容
- 基礎文法
- データ前処理
- データ可視化
- 統計的考察
- 機械学習
◾️長所と注意点
- 長所:「能動的」かつ「体系的」な学習により、データサイエンティストとしての必須スキルを習得可能
- 注意点:「講義や資料が全て英語であること」「機械学習の理論的な説明が不足していること」
◾️どんな人にオススメか
「データ分析の初心者で、仕事で使えるレベルに持って行きたい人」
2. Data Campとは
Data Campはサブスクリプション制のデータ分析に特化したオンライン学習プラットフォームで、世界のトップデータサイエンティストによる307(2019年10月時点)のコースを受講可能です。$25/月(約2700円)か250$/年(約2万7千円)で全てのコースが受講可能で、順次新しいコースが追加されていきます。1つのコースの所要時間は、講義と演習を合わせて、概ね4-5時間です。Data Campでは「プログラミング基礎」、データの読込/成型/可視化と言った「データ操作」、「確率/統計」「機械学習」といったトピックを中心に展開しています。それに加え、Linuxコマンド、Git、condaなどのデータサイエンティストでなくても有益な環境構築もカバーしています。さらに、プログラミング言語はPythonだけでくRやSQLも扱っています。
その他たくさんの内容を扱っているので、ぜひご自身で内容をご覧になってください!
↓Data CampのURL
https://www.datacamp.com/courses
3. Data Scientist with Pythonの内容紹介
Data Campの「Data Scientist with Python」は、データサイエンティスト必須のスキルを習得することを目的として、全307コースの中から26個のコースを厳選したプログラムです。Pythonをおける「基礎文法」「データ読込/クリーニング」「データ可視化」「統計的考察」「機械学習」を扱っています。所要時間は全部で100時間と根気が必要なボリュームです。(ちなみに私は毎日1時間ずつ進めて2ヶ月半くらいかかりました)
「基礎文法」では配列、関数定義、Numpy、ループ、ラムダ式などの本当に初歩的な文法を学習します。このパートはPythonを扱ったことがある人には不要ですが、「Data Scientist with Python」の修了書を取得するためには終わらせる必要があります。
「データ読込/クリーニング」ではデータ分析で頻繁に用いられるPandasを中心に、様々な形式のファイルの「読込」、「解析」、「結合」、「成型」、「補完」の操作を習得できます。個人的にはここだけでもData Campに課金する価値があると感じています。受講前はPandasの用途と言えば、CSVを読み込み、欠測値を埋め、Numpy配列に変換する程度でした。しかし、(当然ですが)Pandasにはもっと便利な機能があり、有効に活用することでデータ分析の生産性を大いに高められます。例えば、特定列の値をグループ分けしユーザ定義の処理を施したり、複数のデータを結合したり、時系列データに対して週ごとや月ごとに値を集計したりなどなど。こういった処理は「Pandasならできるんだろうなー」と思いつつも、やり方がよくわからずに放置してました。しかし、実際のデータを教材に、1から順を追って学ぶことでしっかりと理解して応用できるようになります。
「データ可視化」ではデータの特徴を探る可視化手法を学ぶことができます。ここでも実際のデータを用いて可視化手法をレクチャーしてくれるので、散布図やヒストグラムの描画方法、使いどころと解釈の仕方まで学ぶことができます。ライブラリは有名なmatplotlib, seabornに加え、動的グラフの描画が可能なBokehを扱います。Bokehをはとても有益なツールです。Bokehはデータから、ズームや表示範囲の変更、ツールチップの表示など「動貸せるグラフ」を作成できます。言葉じゃ表現しきれないので、公式ホームページにあるサンプルをご覧になってください!この「データ可視化」はデータを語るために絶対必要なスキルであり、Bokehを使いこなせれば頭一つ出た存在になれると信じています!個人的には、ズームや表示範囲を変更しがちな、時系列データの描画に特に有益だと思っています。
以下のBokehの公式ドキュメントからサンプルグラフをみてください!
https://docs.bokeh.org/en/latest/
「統計的考察」では実際のデータを用いて、Exploratory Data Analysis (発見的データ探索)の手法を学びます。ここで再三言われるのは「まずはデータを理解しろ」ということです。機械学習を使って予測モデルを構築したい気持ちはわかりますが、まずは与えられたデータを正確に捉えなくては良いモデルは立てられません。「統計的考察」ではデータを可視化し、(平均、相関係数などの)指標値を計算してデータを探索した後に、与えられたデータの分布が統計的な優位差があるかをbootstrap法を用いた仮説検定で確かめます。
「機械学習」ではデータサイエンスで頻繁に利用される、scikit-learnとKerasから機械学習モデルの構築と性能評価の手法を学びます。正直、終盤にくるこのパートが「一番楽しいです」。ここでも実際のデータを用いて、Pipe lineを用いたデータ処理の仕組化、モデルのハイパーパラメータのチューニング、予測性能の評価という、機械学習の一連の流れを学ぶことができます。ここは本当に楽しいのでスラスラできます!しかし、機械学習のアルゴリズムへの理論的な説明はあまりなく、ライブラリの使い方に焦点を当てています。従って、まずは特定アルゴリズムを使えるようにすることを入り口に、詳細は書籍やネットで調べて理解を深めるのが良いかと思います!
4. コースの良い点/注意点
「Data Scientist with Python」の良い点は、実データ通した演習形式から「能動的」かつ「体系的」な学習を行うことで、データサイエンティストとしての必須スキルを習得可能なことです。私の体感では、どのトピックも講義時間5%、演習時間95%でした。自分で考えて手を動かしながら進めていくので、知識の定着は深く早くできたと感じています。また、DataCampが学習内容をピックアップしてくれているので、必須スキルを確実に網羅することができます。この体系的な学びにより、仕事上のデータ分析課題に対してどのように手を付けるかの道筋がかなり明確にわかるようになりました。さらに、DataCampへの課金期間中は講義資料と演習をいつでも参照できるので、内容を忘れても振り返りができます!これ非常に役に立っています!
一方で注意点は、「講義や資料が全て英語であること」「機械学習の理論的な説明が不足していること」です。私は英語に関しては仕事上で使うので、それなりに対応できました。私の個人的な感覚では、TOIEC700点程度あれば十分かと思います。もし、英語が理解できるか不安な方は、ぜひ、Data Campの無料講義を受講してみてください( https://www.datacamp.com/courses )。 また、機械学習のパートでは、データ前処理からScikit-learnやKerasを適用する一連の流れを扱いますが、使用するアルゴリズムの理論的説明はあまりありません。例えばRandomForestの使い方は教えてくれるが、その計算の中身の解説はされないと言った風です。従って、アルゴリズムの詳細はDataCampで期待せずに、別の媒体で学習するしかないと思います。超有名な本ですが、個人的にオススメの本を以下に掲載しておきます!
◾️オススメ書籍
- scikit-learnとTensorFlowによる実践機械学習: https://www.oreilly.co.jp/books/9784873118345/
- ゼロから作るDeep Learning : https://www.oreilly.co.jp/books/9784873117584/
- ゼロから作るDeep Learning2: https://www.oreilly.co.jp/books/9784873118369/
5. 個人所管
Data Campの「Data Scientist with Python」は「データ分析を始めたばかりで、仕事で使えるレベルに持って行きたい人」に向いていると思っています。データ分析をかじったことのある人の多くは、やりたいことのプログラムをネット検索していると思います。ネット情報は課題に対するとりあえずの解法は見つかるかと思いますが、自身の戦法の選択肢が増やせません。そこで、Data Campにおいて、すぐ使かわないがスマートな記述を学ぶことで、自身が課題に直面した際に多くの選択肢を持って取り組むことができます。例えば、グラフ描画に関して、以前はmatplotlibしか使い方を知らなかったところ、Data Campの講義を受講することで、pandasで直接可視化する方法や、Bokehで動的なグラフを作成する方法を学び、臨機応変に対応ができるようになりました。一方で全くプログラミングを行ったことがない人や、全くデータ分析を行ったことがない人には少し厳しいと感じています。Python基礎は初心者には難しく、経験者には易しいです。また、Pandas、numpyを扱ったことがない人にとっては講義を理解する以前に困難にぶち当たると思います。しかし、サブスクリプション制の素晴らしいところで、途中で一回解約しプログラミングやデータ分析の基礎をみっちり積んでから、再度課金を初めていくのはいいのかなと感じています!
最後に富士通で「年齢を問わず専門性の高い人材に年収数千万円を支払う(※3)」という記事があるように、個人のスキルに依存して企業から報酬を得られやすい時代に向かっています。私は年収数千万円を目指します!みなさんも一緒に目指しませんか?その入り口として、DataCampはとてもオススメです!
(※3)jiji.com/jc/article?k=2019080801123&g=eco