データサイエンティストへの道

# はじめに
私は、 首都圏の理系大学に通う大学4年生です。
ありがたいことに早いうちにデータ系のエンジニア職の内定をいただけました。
大学の研究室では、プログラミング言語のPythonを軸に機械学習を勉強しています。
でも、covitショックで大学の研究室にはいけなくなり、独自に勉強せねばならぬ...!
しかも、自分の実力が会社に入ってから通用するのか？勉強しなきゃ...!!!
となった僕が、今まで独学で勉強してきた物を紹介&リストアップ

# Step1 : Pythonを理解しようぜ 
機械学習やAIを勉強していくに当たって、Pythonの基本的な文法がわからんぞってなると行き詰まってしまいました。
そのため、僕が使ったPythonの勉強サイトは、こいつらです。Python以外の言語を勉強するのにも使える！

## EntryNo.1 : [Progate](https://prog-8.com/)
言わずと知れた、プログラミング学習サイト。
スライドと環境構築不要のエディター付きの学習サイトになっている。
解説がスライドなので、音楽を聴きながら勉強することができるのが個人的なGoodポイント。
とくにGoodなのは、後述するPaizaラーニングにもあるが、環境構築不要のエディターがあることが、初心者に優しい。
こいつだけで、結構な基礎を勉強することができる。
実際に他の言語とかも勉強することもできるし、まじで便利。

おすすめ度:★★★☆☆
URL : https://prog-8.com/

## EntryNo.2  : [Paizaラーニング](https://paiza.jp/works)
Paizaラーニングは、動画と環境構築不要のエディター付きの学習サイト。
前述のProgateと違うのが、スライドではなく動画であること。
しっかりと動画で、動いているところが見れるからしっかりと自分で手を動かしながらコードを構築することができるのがGood。

また、Paizaの運営会社「paiza株式会社」は、HR（人材系）の事業をやっていることから、自分が勉強したプログラミング知識で就職活動をすることができるのがとてもよかった。
(自分もここで就職を決めることができた。)

動画で基礎を勉強することができ、職にまでつなげることができるところがとてもよかった。
学習教材の内容も独自の内容なので、飽きずにやることができる。
progate同様こいつだけで、結構な基礎を勉強することができる。
実際に他の言語とかも勉強することもできるし、まじで便利。

おすすめ度：★★★★☆
URL : https://paiza.jp/works

## EntryNo.3 : [ドットインストール](https://dotinstall.com/)
ドットインストールは、動画のみの学習サイト。
前述した二つのサイトに比べ、環境構築が必要な点がネックになっているからあまり使わなかった。

ただ、強みとして前述した二つのサイトに比べて、カバーしている領域の広さがとても広い。
マイナーながら統計学をやっていれば一度は目にする「R」の講座があったり、「VBA」や「GAS」、「Docker」などの知ってたら地味に便利になる物の学習ができたり、最近では前述した二つにも増えてきたが、「AWS」の講座があったりとほんとに幅が広い。

おすすめ度：★★☆☆☆
URL : https://dotinstall.com/
</details>

## Step1まとめ
ここまで紹介してきたサイトのPythonの基礎を勉強することができれば、この後に記載する学習サイトでも特に苦労せずに以降できると思います。
全部やらずとも、一つだけ自分に合うと思うサイトを使えばいいと思います。
何をやれば良いかわからない人は、個人的にPaizaを使えば良いのではないかなと思っています。
就職にも繋がるって良くない？笑

# Step 2  機械学習・AIってなんだ？
Pythonの基礎がわかったところで、ここから機械学習について勉強をしました。
ここら辺から、僕はサイト以外にも本などを使って勉強をし始めました。

## EntryNo.1 : [キカガク](https://www.kikagaku.ai/)
キャッチコピーが
> 最先端を、最短距離で身につける。初学者から始められる学習サイト

基礎的なところから、しっかり勉強することができるサイト。
機械学習初心者から、中級者に上がるまでをサポートしてくれるようなサイト。

大きく分けて、「自然言語」「画像処理」「ディープラーニング」 などの基礎的なところを**無料で**勉強することができるサイト。

`tensorflow`や`pytorch`のどちらかで勉強するコースが整っているが、基本的に自分の環境が整っている人向けという印象。
ただ、環境構築についてもチュートリアルで説明があるので、敷居は低め！
Google ColaboratoryというGoogle様が提供しているとても素晴らしいエディターでも一応勉強することはできる。

おすすめ度：★★★★☆
URL : https://www.kikagaku.ai/

##  EntryNo.2 : [AI academy](https://aiacademy.jp)
ゴール別にカリキュラムを設定してくれるので、便利。
「AWS」「GCP」や「R」などの機械学習を扱う上で便利なその他ツールの解説などがドキュメント形式である便利なサイト。
Pythonの基本的な文法から立ち戻って勉強することができるが、基礎を勉強するならStep1のサイトの方がわかりやすかったなとか思ったり。
「画像認識」「動画認識」などの分野を勉強することができ、学べる幅が広い。ただ、深いところまで勉強するには、課金しなければいけないのだが、月額1000円ほどで勉強ができるので結構良いのではとか思って私は課金してます。

環境構築についてもこのサイトにチュートリアルがあるので、しっかり自分のPCに環境を作ることもできる！

おすすめ度：★★★★☆
URL : https://aiacademy.jp/

## EntryNo.3 : [aidemy](https://aidemy.net/)
僕はまだあまり使いこなしていないが、AI・機械学習を勉強することができるサイト。
コース別に技能を習得することができるみたい。
あまり使ってないので、コメントは程々にしておきます。

おすすめ度 : 未知数
URL : https://aidemy.net/

## EntryNo.4 : [Signate Gym](https://quest.signate.jp/gyms#tellus_trainer)
Step4に記載しているSignateからのメールであることに気づいた学習サイト
衛星データの基礎知識や衛星データ分析を実践的に学ぶ講座「TellusTrainer」を 6月末（予定）まで無償公開している。  
このデータは、信号データなどを含んでいるデータになっているため、なかなか学習がし難い領域を勉強することができそう。

## 書籍編
書籍で購入したいという方もたくさんいると思います。
僕が購入している書物をいくつか紹介します。

- [Python実践データ分析100本ノック](https://www.amazon.co.jp/dp/B07ZSGSN9S/ref=dp-kindle-redirect?_encoding=UTF8&btkr=1)
結構しっかりと勉強することができる。
データの配布もあり、分析をJupyterで行うことができるのがポイント高め。

- [前処理大全](https://www.amazon.co.jp/%E5%89%8D%E5%87%A6%E7%90%86%E5%A4%A7%E5%85%A8%EF%BC%BB%E3%83%87%E3%83%BC%E3%82%BF%E5%88%86%E6%9E%90%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AESQL-R-Python%E5%AE%9F%E8%B7%B5%E3%83%86%E3%82%AF%E3%83%8B%E3%83%83%E3%82%AF%EF%BC%BD-%E6%9C%AC%E6%A9%8B-%E6%99%BA%E5%85%89-ebook/dp/B07C3JFK3V/ref=sr_1_1?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=123IGGN8GQD6P&dchild=1&keywords=%E5%89%8D%E5%87%A6%E7%90%86%E5%A4%A7%E5%85%A8&qid=1590070450&sprefix=%E5%89%8D%E5%87%A6%E7%90%86%2Caps%2C335&sr=8-1)
どちらかというとStep3であると便利な本。
辞書的な運用がメインになるけど、あると便利。

- [Kaggleで勝つデータ分析の技術](https://www.amazon.co.jp/Kaggle%E3%81%A7%E5%8B%9D%E3%81%A4%E3%83%87%E3%83%BC%E3%82%BF%E5%88%86%E6%9E%90%E3%81%AE%E6%8A%80%E8%A1%93-%E9%96%80%E8%84%87-%E5%A4%A7%E8%BC%94-ebook/dp/B07YTDBC3Z/ref=sr_1_1?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&dchild=1&keywords=Kaggle&qid=1590070510&sr=8-1)
Step3で紹介しているKaggleで使えるスキルについて書いてある本。
この本が出版されたときにKaggle上で日本のKagglerのスコアが異常に伸び、日本のKagglerが不正を疑われたとか噂がある本。
機械学習を志すなら、持っておいて損ないと思う一冊。

- [AI白書](https://www.amazon.co.jp/%EF%BC%A1%EF%BC%A9%E7%99%BD%E6%9B%B8-%EF%BC%92%EF%BC%90%EF%BC%92%EF%BC%90-%E5%8D%98%E8%A1%8C%E6%9C%AC-%E7%8B%AC%E7%AB%8B%E8%A1%8C%E6%94%BF%E6%B3%95%E4%BA%BA%E6%83%85%E5%A0%B1%E5%87%A6%E7%90%86%E6%8E%A8%E9%80%B2%E6%A9%9F%E6%A7%8B-AI%E7%99%BD%E6%9B%B8%E7%B7%A8%E9%9B%86%E5%A7%94%E5%93%A1%E4%BC%9A-ebook/dp/B085RKWNPB/ref=sr_1_1?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&dchild=1&keywords=AI%E7%99%BD%E6%9B%B8&qid=1590070678&sr=8-1)
いるかいらないかでいうと微妙だけど、AI市場の動向はわかる。

- [高校数学でわかるディープラーニングのしくみ](https://www.amazon.co.jp/%E9%AB%98%E6%A0%A1%E6%95%B0%E5%AD%A6%E3%81%A7%E3%82%8F%E3%81%8B%E3%82%8B%E3%83%87%E3%82%A3%E3%83%BC%E3%83%97%E3%83%A9%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0%E3%81%AE%E3%81%97%E3%81%8F%E3%81%BF-%E6%B6%8C%E4%BA%95%E8%B2%9E%E7%BE%8E-ebook/dp/B084WRMJG1/ref=sr_1_1?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=1P1PUVLC3JQZ&dchild=1&keywords=%E9%AB%98%E6%A0%A1%E6%95%B0%E5%AD%A6%E3%81%A7%E3%82%8F%E3%81%8B%E3%82%8B%E3%83%87%E3%82%A3%E3%83%BC%E3%83%97%E3%83%A9%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0%E3%81%AE%E3%81%97%E3%81%8F%E3%81%BF&qid=1590070723&sprefix=%E9%AB%98%E6%A0%A1%E6%95%B0%E5%AD%A6%E3%81%A7%2Caps%2C210&sr=8-1)

- [深層学習教科書 ディープラーニング G検定（ジェネラリスト） 公式テキスト](https://www.amazon.co.jp/%E6%B7%B1%E5%B1%A4%E5%AD%A6%E7%BF%92%E6%95%99%E7%A7%91%E6%9B%B8-%E3%83%87%E3%82%A3%E3%83%BC%E3%83%97%E3%83%A9%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0-G%E6%A4%9C%E5%AE%9A%EF%BC%88%E3%82%B8%E3%82%A7%E3%83%8D%E3%83%A9%E3%83%AA%E3%82%B9%E3%83%88%EF%BC%89-%E5%85%AC%E5%BC%8F%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88-%E6%B5%85%E5%B7%9D-ebook/dp/B07H2ZR6M2/ref=sr_1_1?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&dchild=1&keywords=G%E6%A4%9C%E5%AE%9A&qid=1590070775&sr=8-1)
- [統計学が最強の学問である　数学編](https://www.amazon.co.jp/%E7%B5%B1%E8%A8%88%E5%AD%A6%E3%81%8C%E6%9C%80%E5%BC%B7%E3%81%AE%E5%AD%A6%E5%95%8F%E3%81%A7%E3%81%82%E3%82%8B%EF%BC%BB%E6%95%B0%E5%AD%A6%E7%B7%A8%EF%BC%BD%E2%80%95%E2%80%95%E3%83%87%E3%83%BC%E3%82%BF%E5%88%86%E6%9E%90%E3%81%A8%E6%A9%9F%E6%A2%B0%E5%AD%A6%E7%BF%92%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AE%E6%96%B0%E3%81%97%E3%81%84%E6%95%99%E7%A7%91%E6%9B%B8-%E8%A5%BF%E5%86%85%E5%95%93-ebook/dp/B077SCQGQ3/ref=sr_1_1?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=2O1JM1LKWXNLL&dchild=1&keywords=%E7%B5%B1%E8%A8%88%E5%AD%A6%E3%81%8C%E6%9C%80%E5%BC%B7%E3%81%AE%E5%AD%A6%E5%95%8F%E3%81%A7%E3%81%82%E3%82%8B+%E6%95%B0%E5%AD%A6%E7%B7%A8&qid=1590070852&sprefix=%E7%B5%B1%E8%A8%88%E5%AD%A6%E3%81%8C%2Caps%2C210&sr=8-1)


## 番外編
### [中学数学からはじめるAI(人工知能)のための数学入門](https://youtu.be/7A05OamqCyc)
Youtuberの予備校のノリで学ぶ「大学の数学・物理」（通称：ヨビノリ）が、Aidemyとコラボした動画。
AIや機械学習のうらで動いている数学を解説してくれている動画になっており、しばらく数学とはご無沙汰だなと感じているそこのあなた！是非見てみると良いですよ！

ヨビノリさんのYouTubeチャンネルは[こちら](https://www.youtube.com/channel/UCqmWJJolqAgjIdLqK3zD1QQ/featured)

他の動画でも数学などを取り扱っているので、是非見てみてください。

### [言語処理100本ノック](https://nlp100.github.io/ja/)
言語処理にフォーカスをした物
東北大学の乾・岡崎研究室（当時）（現在は乾・鈴木研究室）の新人研修の一つであるプログラミング基礎勉強会で使われてきた物。

Qiita上に答えのようなものが、いくつかあるので自分で勉強していくこともできると思います。

URL : https://nlp100.github.io/ja/
### importについて詳しく知りたい...
[まにゃpy@Python解説の猫](https://twitter.com/uuyr112?s=20)さんのツイートのなかにあった良く分かるimportの話。
今まで、呪文のように唱えていた`import`や`from 〇〇 import ××`についてシックリくる形で解説されています。

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">Pythonのパッケージやモジュールをimportする方法は<br><br>import モジュール名<br>from パッケージ名 import モジュール名<br>import パッケージ名.モジュール名<br>from モジュール名 imoport 関数名<br>import モジュール名 as 〇〇<br><br>などがあります。これらの違いを詳しく解説しました。<a href="https://t.co/qgqaKs27t9">https://t.co/qgqaKs27t9</a></p>&mdash; まにゃpy@Python解説の猫 (@uuyr112) <a href="https://twitter.com/uuyr112/status/1262259224903421952?ref_src=twsrc%5Etfw">May 18, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

URL : https://twitter.com/uuyr112/status/1262259224903421952?s=20



# Step3 : 実際に分析してみよう！
ここまできたあなたは、きっと自分が成し遂げたいことを実現する能力を身につけていると思います。
ここから先の分析の勉強をするにあたって、方法としては大きく分けて、２つあると思います。

1. コンペに参加する。
2. 自分でデータを集める。
## コンペへの参加
敷居が低いものとしては、コンペに参加することをあげることができます。
コンペとして有名なのは、
- [Kaggle](https://www.kaggle.com/)
- [Quevico AI Competitions](https://quevico.com/ja)
- [Signate](https://signate.jp/)

などがあると思います。

### [Kaggle](https://www.kaggle.com/)
世界中のデータサイエンティストがしのぎを削るコンペ
最先端のアルゴリズムなどを使っている人もいるため、Kernelというコードを読んでいるだけでもとてもとても勉強になる。
ただ、データサイエンスの領域になると文化的側面やコンペ対象に深い知識がないと難しい。
そういった面で、外国発のコンペということもあって、難しいように感じる。

Step2までとは違って、ほんとに難しい。
これをやるといきなり100点を目指さずに、不完全でも良いからアウトプットをしていくことの大切さを知る。
Kaggleチュートリアルは、いろんな方が出しているので、それをやっていくことで力を伸ばせるのでは？と思っています。

みなさんお馴染みのメルカリについてのコンペもあり、ここから僕は入りました。
[メルカリチュートリアル](https://www.codexa.net/kaggle-mercari-price-suggestionchallenge/)

他に有名ところだとタイタニック号などもありますので、様々なチュートリアルを経てコンペにチャレンジしてみると良いかもしれないです。

### [Quevico AI Competitions](https://quevico.com/ja)
最近できたコンペ。
Instagramの広告で出てきた。

コンペ数が少ないが、しっかりとstep2で勉強したことが生かせそうなコンペになってる。
言語が日本語なのも、嬉しいポイント

###[Signate](https://signate.jp/)
日本発のデータサイエンスコンペ。
言語が日本語で、コビットチャレンジなどもあって、日本のデータサイエンスの中心地になればなと思っている。
人のkarnelが見れないのが少し残念

(追記 5月22日)
### [Numerai](https://numer.ai/)
[機械学習による株価予測　はじめようNumerai](https://qiita.com/blog_UKI/items/fb401725288e58c92bd6)から引用しました。
全て英語のコンペになっています。

###[Prob-space](https://prob.space/)
とある知り合いに教えてもらったコンペサイト。

###[NISHIKA](https://www.nishika.com/)

## 自分でデータを集める。
自分でデータを集めるとなったら、やれることは無限大です。
ただ、追加で取得しなければいけない技術として、スクレイピングの技術が必要になります。

スクレイピングは、様々なサイトで勉強できますが、[AI academy](https://aiacademy.jp)である程度勉強できるので、一度こちらで勉強してみるのも良いかもしれないです。

### 個人的に使っているデータ収集の方法
#### [Twitter developer](https://developer.twitter.com/en)
Twitter APIを取得することができる開発者アカウントの申請をすることができる。
意外とできることが多くて、可能性がすごく大きい。


### オープンソースのデータセットが手に入るサイト
自分でいつか使おうと思ってストックしているサイトです。

[FineReport](https://www.finereport.com/jp/)さんが公開している[データ分析に必要なオープンデータ20選](https://www.finereport.com/jp/analysis/datasource/)から抜粋したものです。

- [日本本統計局](http://www.stat.go.jp/)
- [YouTubeデータセット](https://research.google.com/youtube8m/index.html)
- [Google Trend Search](https://trends.google.com/trends/?geo=US)

## 番外編
### 市場調査系レポート
変数選択などのアイディアを得ることができそうなレポートを提供してくれるサイト。
自分でいつか使おうと思ってストックです。

#### [博報堂生活総合研究所](https://seikatsusoken.jp/)
博報堂が、収集したデータがレポート形式で、アップロードされているサイト。

#### [マクロミル](https://www.macromill.com/contact/ja/reports.php)
市場調査事例や分析事例がレポート形式でみることができるサイト

#### [DODA](https://doda.jp/guide/kyujin_bairitsu/)
就職状況のレポートをみることができる。

# 最後に
今まで勉強したサイトなどをリスト化しました。
これで、慌てて記憶の底からなんだったけなーと思わなくてすみそうです。笑
COVITショックがあり、GWあたりから無料で学べるツールサイトが多くなってきて、とても勉強のやりがいがある一方で、自分が目指している業界の競争率が高くなりそうで、焦っています。

今後は動画解析などの技術を身につけて、TikTokの分析とかしてみたいなと思っています。
[TikTokのAPI](https://developers.tiktok.com/)があるみたいなので、チャレンジしたいと思っています。

最後にここまで長い間読んでくださった方ありがとうございます。

# 参考文献
## 紹介サイトまとめ
- [Progate](https://prog-8.com/)様
- [Paizaラーニング](https://paiza.jp/works)様
- [ドットインストール](https://dotinstall.com/)様
- [キカガク](https://www.kikagaku.ai/)様
- [AI academy](https://aiacademy.jp)様
- [aidemy](https://aidemy.net/)様
- [Youtuberの予備校のノリで学ぶ「大学の数学・物理」](https://www.youtube.com/channel/UCqmWJJolqAgjIdLqK3zD1QQ/featured)様
- 乾・鈴木研究室様
- [Kaggle](https://www.kaggle.com/)様
- [Quevico AI Competitions](https://quevico.com/ja)様
- [Signate](https://signate.jp/)様
- [まにゃpy@Python解説の猫](https://twitter.com/uuyr112?s=20)様
- [FineReport](https://www.finereport.com/jp/)様
- [Twitter developer](https://developer.twitter.com/en)様
- [日本本統計局](http://www.stat.go.jp/)様
- [YouTubeデータセット](https://research.google.com/youtube8m/index.html)様
- [Google Trend Search](https://trends.google.com/trends/?geo=US)様
- [博報堂生活総合研究所](https://seikatsusoken.jp/)様
- [マクロミル](https://www.macromill.com/contact/ja/reports.php)様
- [DODA](https://doda.jp/guide/kyujin_bairitsu/)様

良質なコンテンツの提供ありがとうございます。
掲載してはいけない内容などありましたら、削除します。