無料、独学で機械学習エンジニアになる！~機械学習が学べる無料サイト、書籍~

こんにちはkamikawaです
今回は無料で利用できる機械学習、データサイエンスに関するサイトや書籍をまとめました
私自身も機械学習プロジェクトに関わった経験があるのですが、ここに載せたサイトや資料を勉強に使っていました
機械学習エンジニアを目指す人必見です
入門者レベル〜応用・発展レベルまで幅広く載せていますレベルは個人の見解です。(あくまでも参考程度に)
日本語のものと英語のものを紹介します
海外の大学の講義もあるので英語の勉強にも使えます
海外でのキャリアを考えている方も必見です

## 対象読者

* 機械学習を学びたいけどお金をかけたくない人
* 独学で機械学習を身につけたい人
* 機械学習エンジニアになりたい人
* 発展的な機械学習を学びたい人

## 日本語

### Python
三重大学奥村教授の[サイト](https://oku.edu.mie-u.ac.jp/~okumura/python/)
機械学習、様々な分析、スクレイピング、データ可視化、地図データ、CV、統計など幅広い分野を扱っている
R編もある
書きかけもあるので今後の更新にも期待


キカガクの代表によるYouTube[チャンネル](https://www.youtube.com/channel/UC0xRMqPOyRNPTaL6BxhbCnQ)
Pythonの基本文法から、ライブラリの使い方、Webアプリ、自動化、OCRなどなど


[Paizaラーニング](https://paiza.jp/works/search_courses/2208)
Pythonの基本文法は無料で学習できる
機械学習は一部無料


### 機械学習エンジニアに必要な知識
MITの講義を日本語に翻訳している[リポジトリ](https://github.com/missing-semester-jp/missing-semester-jp.github.io/tree/master/_2020)
shell,vim,gitの使い方,セキュリティ,デバッグ、プロファイリングの使い方を紹介している

### CS(コンピューターサイエンス),DS(データサイエンス)

**初級者から応用・発展レベル**
スタンフォードの講義CS50を日本語訳した[コース](https://cs50.jp)
ASCII,Binary,Scratchから始まりC,配列、アルゴリズム、データ構造、Python,SQL,HTML,CSS,JavaScript,セキュリティー,Flask,人工知能まで幅広くCSを解説している講義
英語版はこちら（英語の教材の方でも載せています）[ハーバードの講義チャンネル](https://www.youtube.com/user/cs50tv)

**初級者〜応用・発展レベル**
東京大学の[サイト](http://www.mi.u-tokyo.ac.jp/consortium/e-learning.html)
AIの活用、データ分析の注意点、データ可視化、統計数理基礎、アルゴリズム、Python,R,時系列、テキスト、CV、データクレンジング、教師あり学習、教師なし学習

**中級者〜応用・発展レベル**
無料で読めるコンピュータ技術、プログラミング言語に関する本や資料をまとめた[リポジトリ](https://github.com/EbookFoundation/free-programming-books/blob/master/books/free-programming-books-ja.md)


### 機械学習・深層学習全般
**初級者~中級者レベル**
中学生から分かるAI数学という[サイト](https://ai999.careers/rabbit/eshikaku/math_index/)
YouTubeもある
活性化関数、条件付き対数尤度と最小二乗法、確率分布、損失関数などが学べる
数式をわかりやすく理解できる＆その手法の歴史も学べる
まだ、投稿されてないものもあるので今後に期待

**初級者~中級者レベル**
東大大学院の松尾研究室[コンテンツ](https://weblab.t.u-tokyo.ac.jp/deep-learning基礎講座演習コンテンツ-公開ページ/)
pythonの文法やライブラリの使い方、数学、深層学習の理論と実装が学べる
特に、numpy,pandas,matplotlibなどデータサイエンティストに必須なライブラリの使い方を学習できる
Jupyter Notebookがダウンロードでき、手を動かしながら学ぶことができる


**初級者~中級者レベル**
Preferred NetworksのChainerのチュートリアルとして公開されている[サイト](https://tutorials.chainer.org/ja/tutorial.html)
数学、python、機械学習、深層学習が学べる
数学的な背景を理解でき、深層学習の理論を深く理解できる

**初級者~中級者レベル**
株式会社キカガクの[サイト](https://free.kikagaku.ai)データサイエンス、機械学習の理論、CV,NLPまで理論と実装が紹介されている「Pytorch」と「TensorFlow」どちらも学べる
とてもわかりやすく、手を動かしながら学ぶことができる

**初級者~応用・発展レベル**
ベイズ統計と深層学習を中心とした「作って遊ぶ機械学習」[サイト](http://machine-learning.hatenablog.com)
ベイズ統計をしっかり学べる
他のサイトでは、中々身につかない知識が身に付くという点でおすすめ

**初級者~応用・発展レベル**
AVILEN AI Trend[サイト](https://ai-trend.jp/programming/#programming)
AI業界での流行からデータサイエンスの数学、統計的な理論、Python,R,C++が学べる
特に数学、統計の解説は充実している
高度な統計知識がつく＆Python、Rの知識もつく


### 数学

「ヨビノリ」の愛称で親しまれる「予備校のノリで学ぶ「大学の数学・物理」」[チャンネル](https://www.youtube.com/channel/UCqmWJJolqAgjIdLqK3zD1QQ)
機械学習のための数学を解説する動画もある
とてもわかりやすい

**初級者~中級者レベル**
線形代数をアニメーションで理解できる[サイト](https://t.co/9odrec5zr6?amp=1)
線形代数は機械学習の数学的背景を理解するのに重要である
難しい概念を視覚的に理解できるという点でおすすめ

### 統計
**中級者~応用・発展レベル**
Qiitaの日本国内のプロの統計学者が集まる株式会社の[記事グループ](https://qiita.com/organizations/nospare)
統計学に関して非常に高度な知見を得られる

**中級者~応用・発展レベル**
無料で読める、統計、機械学習のチュートリアル論文が載っている記事
[無料で読める統計学・機械学習周辺のチュートリアル論文や講義ノート10本](https://qiita.com/s-yonekura/items/3bbe4c769b4b8bbfcbc5)

**初級者~応用・発展レベル**
東工大水野研究室が公開している[学習・研究用テキスト](http://www.me.titech.ac.jp/~mizu_lab/text.html)
最適化、線形計画法、非線形計画法、内点法、数理計画法

**中級者~応用・発展レベル**
数理最適化に関する100のアルゴリズムが載っている[サイト](https://mikiokubo.github.io/opt100/)
Pythonを使って解説している

**初級者~応用・発展レベル**
[「ダメな統計学」の訳本](http://id.fnshr.info/wp-content/uploads/sites/2/2014/12/stat_done_wrong.pdf)
科学界における統計的な間違いが散見されることについて警鐘を鳴らし、正しい統計について書かれている


### NLP(自然言語処理)

**初級者~中級者レベル**
キカガクの代表によるYouTube[ビデオ](https://www.youtube.com/watch?v=gPV7SuZiVu4)
20本のノックと題して自然言語処理の基本をしっかり解説している
なお、このチャンネルは初心者にわかりやすくPythonを解説しているため他の動画も見ると面白い


**初級~応用・発展レベル**
長岡技術科学大学の自然言語処理研究室のYoutube[ビデオ](https://www.youtube.com/channel/UChwtfJp9l_thFbFDWXoGWEQ)
基礎理論、勉強会、文献紹介などのコンテンツがある

### 強化学習
**初級者~中級者レベル**
MATLABの[e-book](https://jp.mathworks.com/campaigns/offers/reinforcement-learning-with-matlab-ebook.html?s_eid=PSB_24165)強化学習を網羅的に解説した数少ない日本語資料
強化学習の用語の解説がわかりやすい
また、方策勾配、ベルマン方程式、Actor-Criticなどを紹介している

**初級者~応用・発展レベル**
東大松尾研究室の今井翔太氏が公開している[スライド](https://www.slideshare.net/ShotaImai3/rlssdeepreinforcementlearning)
発展的な話題も多い。分散型深層強化学習、内発的報酬、Alpha Zero,ゲームAI(OpenAI FiveのSurgery)など

**初級者~中級者レベル**
制御工学のまとめ[サイト](http://arduinopid.web.fc2.com)
制御工学チャンネルという[サイト](https://sites.google.com/view/control-engineering/)
強化学習から入ってロボティクスに行く人へおすすめ

### 計算論的神経科学
**発展・応用レベル**
計算論的神経科学をJuliaを使って解説する[サイト](https://compneuro-julia.github.io/index.html)
強化学習、運動制御、神経回路の学習則、シナプス伝達モデル、統計、生成モデル脳など高度な内容を幅広くカバー
JuliaのTipsもある
神経科学を学びたい人におすすめ(この内容を日本語で読めるのはかなりすごい)

### 最新情報の入手

xpaperchallenge学会の採択論文読破を目指すコミュニティの[サイト](http://xpaperchallenge.org)
CV,NLP,ロボティクスの分野がある

Preferred Networks（PFN）の[テックブログ](https://tech.preferred.jp/ja/)
CV,ロボティクスなどを中心とした内容
論文の解説やPFN事業に関する記事もある

[DeNAとMOTのサイト](https://docs.google.com/spreadsheets/d/e/2PACX-1vSKoGaPuRSNSQnvqg79tSjprPcYK5dt5KU_ozi3cMK69VV3NikBmAiSyXqrzlB1SMoYdk0M25MDwte3/pubhtml)
CVPR,ECCVの発表,BERT、カルマンフィルター,Kubernets,半教師あり、弱教師あり、Deepfake検出、Kaggleコンペ、自動運転など様々な話題がある

### ツール、研究のTipsなど

[研究効率化のTips](https://www.slideshare.net/cvpaperchallenge/cvpaperchallenge-tips-241914101)
実験管理、コマンドライン引数、yamlの作り方、W＆B(Weight & Bias)の使い方
W＆BのSlackとの連携(すごくおすすめ！！)についても触れている

深層学習の特許についての[ブログ](https://aru47.hatenablog.com/entry/2021/01/25/064749)
CV,NLP,学習方法系などの特許に触れている
研究者の方におすすめ




## 英語

### 機械学習エンジニアに必要な知識

**初級者~応用・発展レベル**
2021年、Data Scienceをするのに必須な知識、スキルをまとめた[サイト](https://opendatascience.com/top-10-data-science-skills-for-2021/)
GPUの使用、データの可視化、Python、SQL、GBM、データ変換、数学と統計、MLの倫理まで幅広い

**初級者~中級者レベル**
shell,vim,gitの使い方、セキュリティ,デバッグ、プロファイリングを紹介している[MITの講義](https://missing.csail.mit.edu/2020/)
資料+YouTubeの動画で解説している

### Python,Julia他
**初級者~中級者レベル**
[Exercism](https://exercism.io)
50のプログラミング言語を学べる。また、機械学習の基礎も学べる
Python,Julia,C系,Java,SQL,R,vim,Bash,Lua,Go,Scala,Swift,PHP,Kotlinなど


**初級者~中級者レベル**
[Python from the Very Beginning](https://coherentpdf.com/python/pythonfromtheverybeginning.html)という本
Pythonの基本文法が学べる


**初級者~中級者レベル**
[Juliaについて紹介するサイト](https://syl1.gitbook.io/julia-language-a-concise-tutorial/?ref=hackr.io)
入門的内容になっている

**初級者~応用・発展レベル**
[MITのJuliaチュートリアル](https://www.youtube.com/playlist?list=PLP8iPy9hna6Si2sjMkrPY-wt2mEouZgaZ)
YouTubeでJuliaを学ぶことができる


**初級者~応用・発展レベル**
データサイエンスや科学的な計算のためJulia実装を紹介する[サイト](https://ucidatascienceinitiative.github.io/IntroToJulia/)


### プロダクト開発に関する知識

**初級者~応用・発展レベル**
[スタンフォードの講義](https://stanford-cs329s.github.io/syllabus.html)
MLを用いたプロダクトに関する知識、データエンジニアリング、デプロイ、Pytorchなどが紹介されている
ノート、スライド、一部コードやビデオ

**初級者~中級者レベル**
[YouTubeのビデオ](https://www.youtube.com/watch?v=vcE9WGbi4QY&list=PL2UML_KCiC0UlY7iCQDSiGDMovaupqc83)機械学習の活用に関して例があげられている

**中級者~応用・発展レベル**
機械学習の応用事例をまとめた[リポジトリ](https://t.co/v1McggYA0N?amp=1)
Uber,Google,Netflix,Amazon,Facebook,Twitterなどの機械学習の応用に触れている
機械学習を使ったプロダクト開発の参考になる


### 機械学習・深層学習全般

**初級者~中級者レベル**
機械学習の基礎から深層学習の手法までを学べる[YouTube](https://www.youtube.com/playlist?app=desktop&list=PLZSO_6-bSqHQsDaBNtcFwMQuJw_djFnbd)
動画の時間が短く(15~20分程度)、比較的気軽に見られる

**初級者~中級者レベル**
[The Neural Network Zoo](https://www.asimovinstitute.org/neural-network-zoo/)
あらゆるニューラルネットワークのアルゴリズムが紹介されている。
図と文で紹介されておりイメージを掴みやすい
発表された年、元論文に飛べるリンクなどもあり講義資料やプレゼン資料に役立ちそう

**初級者~中級者レベル**
Python機械学習のライブラリsicikit learnの[公式サイト](https://scikit-learn.org/stable/)
機械学習に入門するときの決定版ライブラリとも呼べる
Deep Learning以外の手法を勉強できる(クラスタリング、次元削減、ランダムフォレスト、SVMなど)
機械学習の解説から実装までカバー

**初級者~中級者レベル**
[Kaggle](https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKEwjprvXrl5TvAhWFMN4KHQXsAykQFjAAegQIBhAD&url=https%3A%2F%2Fwww.kaggle.com%2F&usg=AOvVaw358aJVdRF5ENauJCrosrX1)
コンペもあるがpythonと機械学習、深層学習、データ可視化、Pandas,SQL、CV,NLP、強化学習、特徴量エンジニアリングなどを学べる無料コースもある


**初級者~応用・発展レベル**
海外の大学の講義の中から機械学習、深層学習に関するものを集めた[リポジトリ](https://t.co/7uFdDeO5eM?amp=1)
入門者用のもの数学、CV、RL、NLP、GNN、医療応用など分野、レベルともに幅広く学習できる

**初級者~応用・発展レベル**
[MITの講義サイト](http://introtodeeplearning.com)CV,RL、音楽生成などスライド、資料やコードがある深層学習を広範囲に解説している。YouTubeで[動画](https://t.co/zKgw6zLFio?amp=1)もある




**初級者~応用・発展レベル**
MIT Pressの[サイト](https://www.deeplearningbook.org/lecture_slides.html)
深層学習について学べる
Video,pdf,keynoteもある
Tensor Flowのチュートリアルもある

**初級者~応用・発展レベル**
ディープラーニングに関する[無料の本](https://d2l.ai)
CNN,RNN,NLP,Attention,CV,GAN,最適化手法、DLのための数学など

**初級者~応用・発展レベル**
[ニューヨーク大の講義](https://atcold.github.io/pytorch-Deep-Learning/)CV,RL,NLP,音声認識など深層学習に関して幅広くカバー
DL基礎からCNN,RNN、LSTM、GCN、Transformer、EBMs、GAN、Bayesian Neural Net、CV、NLP、自己教師あり学習、転移学習などかなりコアな手法にも触れている
Pytorchを使って実装している
発展的な内容を身につけたい人におすすめ

**初級者~応用・発展レベル**
[UCバークレーの講義](https://www.youtube.com/playlist?list=PL_iWQOsE6TfVmKkQHucjPAoRtIJYt8a5A)
ML基礎、エラー分析、最適化、バックプロゲーション、CNN、バッチ正規化、CV、RNN、Seq2Seq、Trandformer,NLP、模倣学習まで幅広い

**初級者~中級者レベル**
海外ではAIを学ぶ定番となっている「fastAI」[サイト](https://www.fast.ai)
基本やNLP,Pytorchと親和するライブラリ,データサイエンスの倫理など幅広く扱っている

**初級者~中級者レベル**
Probabilistic Machine Learningに関する[YouTube](https://www.youtube.com/playlist?list=PL05umP7R6ij1tHaOFY96m5uX3J21a6yNd)
不確実性の考慮、マルコフ連鎖モンテカルロ、グラフなど

**中級者~応用・発展レベル**
[Learning Theory from First Principles](https://www.di.ens.fr/~fbach/ltfp_book.pdf)という本
機械学習の理論について細かく解説をしている


**中級者~応用・発展レベル**
Kevin Murphy氏の著書「[Probabilistic Machine Learning: An Introduction](https://probml.github.io/pml-book/book1.html)」「Draft pdf」からドラフトをダウンロードできる


**初級者~中級者レベル**
機械学習用ライブラリ(sklearn,Pytorch,Tensorflow,Kerasなど)を使わずに機械学習の実装を解説した[サイト](https://t.co/liL7uttapg?amp=1)
リッジ回帰、ラッソ回帰、ランダムフォレスト、ニューラルネットまで(numpyを基本的に使っている)

**初級者~中級者レベル**
回帰の基礎や数学基礎、ニューラルネットの仕組みを数式と機械学習用ライブラリを使わない実装で解説している[サイト](https://ml-cheatsheet.readthedocs.io/en/latest/index.html)
理論を深く理解したい人におすすめ

**初級者~応用・発展レベル**
Amazonの社内教育に使われている[動画や資料](https://t.co/ZQFRjn9kl5?amp=1)
決定木、NLP,CV分野の解説やTabularの使い方まで

**中級者~応用・発展レベル**
Kaggle Grandmasterが執筆した機械学習の[本](https://t.co/eRKM6rVm5M?amp=1)
理論より実装重視



**中級者~応用・発展レベル**
数少ないJulia実装の「意思決定のためのアルゴリズム」[PDF](https://algorithmsbook.com)
ベイズ、RL、マルチエージェントなど

**初級者~応用・発展レベル**
無料で読めるebookをまとめた[リポジトリ](https://github.com/josephmisiti/awesome-machine-learning/blob/master/books.md)
ML,DL,NLP,確率、統計の分野に分かれている


**初級者~応用・発展レベル**
オンライン学習サイトCourseraのコース[サイト](https://ja.coursera.org/search?query=機械学習&)

**初級者~中級者レベル**
Machine Learning Mastery[サイト](https://machinelearningmastery.com)
機械学習全般の知識が得られる

### XAI

**初級者~応用・発展レベル**
[Interpretable Machine Learning ](https://christophm.github.io/interpretable-ml-book/)という本
様々なモデルの基本的な原理も紹介されている

### 統計

**初級者~応用・発展レベル**
[ハーバードの講義](https://www.youtube.com/playlist?list=PL2SOU6wwxB0uwwH80KTQ6ht66KWxbzTIo)
確率、統計について紹介している
誕生日問題、シンプソンのパラドックス、各種の分布、マルコフ連鎖、

**中級者~応用・発展レベル**
確率分布の説明と分布同士の関係性が載っている[サイト](http://www.math.wm.edu/~leemis/chart/UDR/UDR.html)
リンクで飛ぶとその分布の詳しい解説が読める
確率分布図鑑とも呼べるほど充実した情報量

**初級者~中級者レベル**
[Python Data Science Handbook](https://jakevdp.github.io/PythonDataScienceHandbook/)
OREILYの本
Numpy、Pandas、Matplotlib、 ML基礎について触れている

**初級者レベル**
p値についてシミュレーションで理解できる[サイト](https://rpsychologist.com/pvalue/)

### NLP(自然言語処理)
**初級者~応用・発展レベル**
自然言語処理の[スタンフォードの講義](http://web.stanford.edu/class/cs224n/)の講義資料が公開されている
スライド+資料+コード

**初級者~応用・発展レベル**
CMU[講義資料](https://t.co/L5bvHIR5bB?amp=1)と[ビデオ](https://t.co/kYc4wgLBb0?amp=1)
基礎から、RNN,Attentionなど

**初級者~応用・発展レベル**
DEEP-NLPという[サイト](https://ntunlpsg.github.io/ce7455_deep-nlp-20/)
自然言語処理の基礎からAdversarial NLP、自己教師あり学習、Transformer,強化学習のNLP応用にまで触れている
スライドを見ることができる

**初級者~応用・発展レベル**
自然言語処理に関する[スライド](https://github.com/jacobeisenstein/gt-nlp-class/blob/master/notes/eisenstein-nlp-notes.pdf)
基礎的な機械学習アルゴリズムから機械翻訳やテキスト生成まで


**中級者~応用・発展レベル**
TTIC(トヨタ工業大学シカゴ校)の[講義](https://ttic.uchicago.edu/~kgimpel/teaching/31210/lectures.html)
ベイズを使った手法などが紹介されている

**初級者~応用・発展レベル**
オックスフォード[講義資料](https://github.com/oxford-cs-deepnlp-2017/lectures)
テキスト分類、LSTM,GPU,音声認識、データセット、ツールキットなど

**発展・応用レベル**
Pre_trained_Language_modelのまとめ[リポジトリ](https://github.com/thunlp/PLMpapers)
pdfに加えてコードがあるものもある
モデルの分析などもある(BERTなど)
ファインチューニング、チュートリアルのようなものも紹介されている

**初級者~応用・発展レベル**
オライリーの「Natural Language Processing with Python」[本](https://www.researchgate.net/publication/220691633_Natural_Language_Processing_with_Python)

### LLM

**初級者~応用・発展レベル**
スタンフォード大学で2022年に開講されたCS324の[講義資料](https://stanford-cs324.github.io/winter2022/lectures/)
LLMとは何かという説明から、セキュリティ、法律上の課題、モデルリングとトレーニング、並列化など幅広い話題をカバーしている


**応用・発展レベル**
CMUで2023年に開講されたLLMに関する講義「Large Language Models Methods and Applications」の[講義スライド](https://2023.cmu-llms.org/calendar/)
現在の最先端のLLMに関する総観を扱う大学院レベルの講義



### 強化学習
**初級者~中級者レベル**
Sutton氏が書いた有名な[本](http://incompleteideas.net/book/the-book.html)
「Reinforcement Learning: An Introduction」
リンクから飛んで「Full Pdf」をクリック

**初級者~応用・発展レベル**
深層強化学習についての[論文](https://arxiv.org/abs/1811.12560)
機械学習から基本的なアルゴリズム、ベンチマーク、転移学習、脳科学との関係、将来の発展、フレームワークなど

**初級者~応用・発展レベル**
[UCバークレー](https://t.co/ggM0OA848W?amp=1)の講義
基礎から発展まで深層強化学習の幅広い知識が得られる
モデルフリー、モデルベース、オフライン学習、転移学習、メタ学習、逆強化学習


**初級者~応用・発展レベル**
OepnAI SpiningUp[サイト](https://spinningup.openai.com/en/latest/)
基本的な強化学習の概念から基本的なアルゴリズム、発展的なアルゴリズムを網羅している

**初級者~応用・発展レベル**
Deep Mindの講義[チャンネル](https://www.youtube.com/channel/UCP7jMXSY2xbc3KCAE0MHQ-A)
Deep Learningの講義もある
YouTubeで見ることのできる講義

#### ロボティクス

**中級者~応用・発展レベル**
[UCバークレーのロボティクス講義](https://people.eecs.berkeley.edu/~pabbeel/cs287-fa15/)
MDP,Policy Gradient,カルマンフィルター,POMDP,MAP,SLAM,EKF-SLAM,Graph-SLAMなど


**初級者~応用・発展レベル**
[スタンフォードのロボティクス講義](https://www.youtube.com/playlist?list=PL65CC0384A1798ADF)


**初級者~応用・発展レベル**
「Montreal Robotics」という講義[YouTube](https://www.youtube.com/channel/UCOouaBg4gHIlNvPkJn_8ooA)


### 深層教師なし学習
**初級者~応用・発展レベル**
[UCバークレーの講義](https://t.co/5c0HDIjLzw?amp=1)
GAN、言語モデル、弱教師あり学習、自己教師あり学習、強化学習
pdf,Google slide,YouTubeで学べる

### 自己教師あり学習

**中級者~応用・発展レベル**
DeepMindの自己教示あり学習（infoNCE）に関する[スライド](https://docs.google.com/presentation/d/e/2PACX-1vQT9UTWraCYr2H2qGiSUikwkGNqJ3CqC4efJMCT0_qnBxAnPKeWf9b5PXGTwepd_dp5ZRO8eh8r_y3A/pub?start=false&loop=false&delayms=60000&slide=id.gab03133346_0_9804)



### CV(コンピュータービジョン)

**初級者~応用・発展レベル**
PyImageSearch[サイト](https://www.pyimagesearch.com)
Computer Vision, Deep Learning, OpenCVをマスターできるサイト

**初級者~応用・発展レベル**
海外のトップ研究者によるCVの講義のまとめ[リポジトリ](https://github.com/kuzand/Computer-Vision-Video-Lectures)
信号処理、画像処理、ML、DL,人間の視覚と認知、コンピューターグラフィックス

### CS(コンピューターサイエンス)

**初級者~応用・発展レベル**
[Google Tech Dev Guide](https://techdevguide.withgoogle.com) 
CS入門、プログラミング基礎、データ構造とアルゴリズムなどに大別されていて基礎から勉強できる
どのように勉強していけば良いかなども書かれていて良い。
Java Script,Python,Java,Swift(iOS開発),ゲーム制作(Python)などのコースもある
比較的短い時間で学習できるものが多い(10~30分)


**初級者~応用・発展レベル**
機械学習、CSに関する海外の人気講義を1000個集めた[サイト](https://laconicml.com/computer-science-curriculum-youtube-videos)
YouTubeで見られる
Pythonの講座もある

**初級者~応用・発展レベル**
無料で見られる800以上のCSの講義がまとめられた[リポジトリ](https://github.com/Developer-Y/cs-video-courses)
基礎的なCS、データ構造とアルゴリズム、データベース、ソフトウェアエンジニアリング、人工知能、機械学習、コンピューターグラフィクス、量子コンピューター、ロボティクス、セキュリティー、数学、ネットワーク、プログラミング言語論など分野別にまとまっている
（別で紹介した講義と重複もあるが）
これだけでCSマスターできるのではないかというくらい網羅的

**初級者~応用・発展レベル**
[MITの講義チャンネル](https://www.youtube.com/user/MIT)
数学、CS、工学など
他にも人間学、社会学もある

**初級者~応用・発展レベル**
[ハーバードの講義チャンネル](https://www.youtube.com/user/cs50tv)
ASCII,Binary,Scratchから始まりC,配列、アルゴリズム、データ構造、Python,SQL,HTML,CSS,JavaScript,セキュリティー,Flask,人工知能まで幅広くCSを解説している講義
実際にコーディングしている映像や模型を使って説明している映像があり、わかりやすい


**初級者~応用・発展レベル**
CSの各分野の有名なアルゴリズムのPython実装が載っている[リポジトリ](https://t.co/379T4izBle?amp=1)
古典的なソートアルゴリズムから、ブロックチェーン、CV、データ構造、ファジー理論、量子アルゴリズム、グラフ理論まで

**初級者~応用・発展レベル**
150冊の無料で読める本を紹介する[サイト](https://github.com/dwelcaslu/machine-learning-books)

**初級者~応用・発展レベル**
300の統計学の概念が紹介されている[サイト](https://www.datasciencecentral.com/page/search?q=statistical+concepts+explained+simple+english+part)


### GNN(Graph Neural Networks)

**初級者~応用・発展レベル**
Machine learning with Graphsという[スタンフォードの講義](https://www.youtube.com/playlist?list=PLoROMvodv4rPLKxIpqhjhPgdQy7imNkDn)
20分程度なので気軽に見られる


**初級者~中級レベル**
2021年のGNN応用先を紹介する[サイト](https://medium.com/criteo-engineering/top-applications-of-graph-neural-networks-2021-c06ec82bfc18)

**中級レベル~応用・発展レベル**
GNNを学ぶ上で、読むべき論文をまとめた[リポジトリ](https://github.com/thunlp/GNNPapers)
GNNの基礎から、CV,RL,NLP,生成モデル、レコメンデーションなどへの応用に関するものもある

### チートシート
scikit-learnの[チートシート](https://scikit-learn.org/stable/tutorial/machine_learning_map/index.html)
データ数、データのタイプによってどの機械学習アルゴリズムを使えば良いか決定木で紹介されている
自分の状況に沿って決定木を辿れば、どのアルゴリズムを使えば良いか参考になる


MLやCSに関するチートシートがたくさん紹介されている[サイト](https://www.datasciencecentral.com/page/search?q=cheat+sheets)

MLやCSに関する20の[チートシート](https://www.datasciencecentral.com/profiles/blogs/20-cheat-sheets-python-ml-data-science)

データ間の距離の種類をまとめた[サイト](https://towardsdatascience.com/9-distance-measures-in-data-science-918109d069fa)
「ユークリッド距離」「マンハッタン距離」「コサイン」「ハミング」「ミンコフスキー」「ヘイバーシン」
各距離を用いる利点、欠点も載っている

チートシートではないが、機械学習のテスト手法についての[サーベイ論文](https://arxiv.org/abs/1906.10742)
テスト手法、テスト対象などの細かく紹介されている

### 最新情報の入手

[Paper with Code](https://paperswithcode.com/sota)
最新の機械学習論文が多くはコード付きで紹介されている

[arXiv](https://arxiv.org)
定番の論文プレプリントサイト
CS,CVのみならず、数学、統計、物理、電気・システム工学、経済など幅広い分野の論文が無料で読める


Two Minute Paperの[サイト](https://wandb.ai/site/papers)
[YouTube](https://www.youtube.com/channel/UCbfYPyITQ-7l4upoX8nvctg)
最新の論文を短く解説している



## 他にも
挑戦してみるといいもの

* [競プロ](https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKEwj7ztD_l5TvAhVNQd4KHWZ3CFcQFjAAegQIBhAD&url=https%3A%2F%2Fatcoder.jp%2F%3Flang%3Dja&usg=AOvVaw3X9-d3kTisT18ube_RPiGO)

競技プログラミングのこと
コーディング力、問題解決能力、アルゴリズムの知識が得られる

解説は[かつっぱ競プロ](https://www.youtube.com/channel/UCqqeYOh1gk_TJ16sxazWhUg)がわかりやすい
pythonかC++で解説している

* [Kaggle](https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKEwjprvXrl5TvAhWFMN4KHQXsAykQFjAAegQIBhAD&url=https%3A%2F%2Fwww.kaggle.com%2F&usg=AOvVaw358aJVdRF5ENauJCrosrX1)

データ分析コンペティション
実際に企業などが提供するデータを利用してデータ分析をする
賞金が出るものもある

## 使ってみるといいツール

**GPUが無料で使えるJupyter Notebook環境**「Google Colaboratory」
環境構築不要でGPUが無料で使えるというPython、機械学習を始めるならおすすめの環境
解説記事は[こちら](https://qiita.com/KamikawaTakato/items/30f86232a365e892c3bb)


## 最後に
今回はたくさんのサイトを紹介しました
全部見るのは厳しいかもしれませんが自分に合ったサイトを見つけて勉強して見るとうまく行くかもしれません！
なお、「こんなサイト見つけたぞ」などあればコメント欄にどんどん書いていただければ幸いです