Pythonで基礎から機械学習まとめ

f:id:karaage:20190905002807p:plain:w640

はじめに

 「基礎から機械学習をちゃんと理解したいな」と思うことがあったので、学んだことを自分なりに整理してアウトプットしていきます。基本的には、自分の勉強のため(アウトプットが一番理解が深まると思っているので)ですが、私のような初学者のメモでも、同じような他の初学者の役に立つこともあるのではないかと期待しております。

 記事やコードは、修正のリクエストを受けやすいようにQiitaとGitHubをメインにアップしていきます。私自身は、専門家でなく機械学習エンジョイ勢の一個人ですので、不足している点、分かりにくい点、間違いなどあるかと思います。過ちは真摯に受け止めたいと思いますので、是非知見者の方にコメント、編集リクエスト、Pull Requestをしていただけたらと思います。

 現時点では、他のサイトに説明を丸投げしていたり、数式をきちんと記載できていないところ多々あるのですが、最終的には、この記事を見るだけで一通り理解できるようなものにしたいなと思っています。

 なお、対象としてはPythonの基礎、微分・積分の基礎、行列計算の基礎は理解しているという前提となっていますのでご了承下さい。

学習環境

 実際に手を動かしながら学習していきます(その方が楽しいので)。学習に使用するコードは、以下GitHubのリポジトリにアップしていきます。

 学習環境としては、「Google Colaboratory(Google Colab)」というGoogleの無料のPython実行環境を使って学習することを想定しています。Google Colabの使い方などに関しては、以下記事を参照下さい。

 Google Colabに、記事に出てくるコードをコピペしてもよいですし、上記記事の「GitHub上のJupyter NotebookファイルをGoogle Colaboratory上で実行」という項目を参考にすれば、GitHub上の私のリポジトリのJupyter NotebookをそのままGoogle Colabに読み込んで実行することも可能です(初心者には、こちらの方法がおすすめです)。

 その他の環境構築方法に関しては、以下記事を参照ください。

Pythonで機械学習をするための環境を雑にセットアップする方法(Jupyter notebook環境、ディープラーニング環境含む)on Mac/Linux - karaage. [からあげ]

DockerでのディープラーニングGPU学習環境構築方法 - Qiita

Pythonで基礎から機械学習シリーズ

 学習記事へのリンクです。随時追加していきます。

Pythonで基礎から機械学習 「単回帰分析」 - Qiita

Pythonで基礎から機械学習 「重回帰分析」 - Qiita

Pythonで基礎から機械学習 「ロジスティック回帰分析」 - Qiita

Pythonで基礎から機械学習 「勾配法」 - Qiita

機械学習関係の論文を読み書きするための数式・記号まとめ - Qiita

Pythonで基礎から機械学習 「ベイズ入門からPRMLへ」 - Qiita

機械学習関係の技術系記事

 ここからブログやQiitaに書いた機械学習関係の記事をまとめていきます。

まとめ

機械学習/ディープラーニング/Python関係の記事まとめ - Qiita

人工知能・機械学習・ディープラーニング関係の雑多なまとめ - karaage. [からあげ]

Python基礎

Pythonで最初に知っておきたかったことのまとめ【初心者向け】 - karaage. [からあげ]

画像処理

画像処理ライブラリによる画像ファイルのnumpy.ndarray変換の速度比較 - Qiita

画像処理100本ノックを「Google Colaboratory」で楽々学習 - Qiita

自然言語処理

BERTの日本語事前学習済みモデルをGoogle Colaboratoryで手軽に試す方法 - Qiita

言語処理100本ノック 2020を「Google Colaboratory」で楽々学習 - Qiita

ディープラーニング

「Object Detection API」で物体検出の自前データを学習する方法(TensorFlow 2.x版) - Qiita

TensorFlowの「Object Detection API」で物体検出の自前データを学習する方法 - Qiita

TensorFlowでの物体検出が超手軽にできる「Object Detection Tools」をTensorFlow 2.xに対応しました - Qiita

「convnet-drawer」を使ってGoogle Colaboratory上で手軽にニューラルネットワークの構造を描く方法 - Qiita

Kerasモデル(.h5)をTensorFlowモデル(.pb)に変換して使用する方法 - Qiita

PyTorchでデータ水増し(Data Augmentation)する方法 - Qiita

TensorFlowでGPU学習させるためにCUDA周りではまったときの対処法 - Qiita

エッジコンピューティング(Jetson Nano・Raspberry Pi)

Jetson Nano関係のTIPSまとめ - Qiita

Jetson NanoにJetPack 4.4を入れてTensorFlow・物体検出・姿勢推定・ROS2(Realsense)・ROS1動かしてみた - Qiita

Raspberry PiでPINTOさん謹製「TensorFlowLite-bin」を使ってお手軽に爆速エッジコンピューティング - Qiita

Jetson Nanoでディープラーニング - Qiita

データ分析

Python関係の「○○100本ノック」のまとめ - Qiita

Macでデータサイエンス100本ノックを動かす方法 - Qiita

新型コロナウイルス感染症(COVID-19)のオープンデータをGoogle Colaboratoryで手軽に可視化・分析する方法 - Qiita

チュートリアル

環境構築不要で直ぐに始められる機械学習チュートリアルをセットにした有料マガジン|からあげ(karaage0703)|note

手を動かしながら学べるディープラーニングの優良なチュートリアル - karaage. [からあげ]

参考書籍・リンク

 実際に私が学習に使用している書籍、ネット情報等です。

機械学習・ディープラーニング関係の初心者が独学するのにオススメの書籍 - karaage. [からあげ]

AI時代にこそ読みたい画像処理の本 - karaage. [からあげ]

連休中に「ディープラーニングの数学」と「身近な数学」と「Google Colaboratory(Python)」でじっくり数学を復習しました - karaage. [からあげ]

「scikit-learnとTensorFlowによる実践機械学習」を実践するためのPython環境構築|からあげ(karaage0703)|note

ネット情報(私以外の人の書いた記事)

理論関係の情報

深層学習の数理:カーネル法, スパース推定との接点

関連記事