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

はじめに

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

 記事やコードは、修正のリクエストを受けやすいように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学習環境構築方法 #Docker - Qiita

ゲーミングPCのローカルディープラーニング環境セットアップ

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

 学習記事へのリンクです。

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

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

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

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

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

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

書籍の宣伝「からあげ先生のとにかく楽しいAI自作教室」

 AIの初心者向け本「からあげ先生のとにかく楽しいAI自作教室」を執筆しました。Google Colaboratoryを使って、実際に動かしながらAIを学べる本になっています。

 文系でAI素人の私の妻も、実践できて理解を深められるような、初学者向けの内容になっています。以下に紹介記事を書いていますので、興味ある方は是非ごらんください。

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

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

まとめ

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

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

Python基礎

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

Python初心者からステップアップするために読んでいる本 - karaage. [からあげ]

画像処理

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

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

自然言語処理

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

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

ディープラーニング

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

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

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

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

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

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

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

PINTO model zooの歩き方 ~ Tour of PINTO model zoo ~

Unityを強化学習の学習環境として使う方法

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

Jetson Nano関係のTIPSまとめ #DeepLearning - Qiita

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

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

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

データ分析

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

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

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

Python/pandas/matplotlibを使ってcsvファイルを読み込んで素敵なグラフを描く方法(Mac/Raspberry Pi) - karaage. [からあげ]

データをインタラクティブに可視化する方法 #Python - Qiita

チュートリアル

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

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

評価指標

機械学習(ML/AI)プロジェクト事例

機械学習の評価指標覚え書き

参考書籍・リンク

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

PyTorch入門書の決定版!「最短コースでわかる PyTorch &深層学習プログラミング」 - karaage. [からあげ]

「Pythonで儲かるAIをつくる」はビジネス向けの超実践的な機械学習本でした - karaage. [からあげ]

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

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

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

「生成Deep Learning」は久しぶりにワクワクするAI関係の本だった - karaage. [からあげ]

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

ネット情報

理論関係の情報

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

リテラシーレベルeラーニング教材・講義動画配信 | 数理・データサイエンス・AI教育強化拠点コンソーシアム

高等学校における「情報II」のためのデータサイエンス・データ解析入門

機械学習帳

Lecture Videos | Introduction to Computational Thinking and Data Science | Electrical Engineering and Computer Science | MIT OpenCourseWare

Pythonで理解するディープラーニング入門 - Speaker Deck

イラストで学ぶ人工知能概論

Deep Learning Drizzle

統計解析特論-2016 | Courses

GitHub - HiroshiHamada/KA2: KA2(花京院と青葉2)『その問題,やっぱり数理モデルが解決します』の資料です

GitHub - aws-samples/aws-ml-enablement-workshop: 組織横断的にチームを組成し、機械学習による成長サイクルを実現する計画を立てるワークショップ

講義資料 – 九州大学 数理・データサイエンス教育研究センター

Understanding Deep Learning

人工知能・深層学習を学ぶためのロードマップ | 東京大学松尾研究室 - Matsuo Lab

統計学の講義資料(2022年度) | Logics of Blue

本当にわかりやすいAI入門 - Speaker Deck

<体験型>学習ブログ by zero to one – zero to one

中学生でもわかる深層学習 - Speaker Deck

Python基礎

Pythonプログラミング入門(東京大学)

プログラミング演習 Python 2021(京都大学)

プログラミング演習 Python 2021(コラム編)(京都大学)

機械学習帳(東京工業大学)

「Python ゼロからはじめるプログラミング」サポートページ

Think Python:コンピュータサイエンティストのように考えてみよう(日本語訳)

Think Python(原著)

Webで無料で読める!Python入門教材リスト(2022/04 #stapy Python始めるガイドトークプレビュー) - nikkie-ftnextの日記

千葉大学講義

研究のためのPython開発環境

Python応用

10 Python Interview Questions for Senior Developers | by Yang Zhou | TechToFreedom | Medium

Python3 ライブラリブック

[2023年最新版:rye対応]Python案件で汎用的に使えるモダンなプロジェクトテンプレート

AI総合演習

Python による日本語自然言語処理

2024年のPythonプログラミング - Uzabase for Engineers

便利ツール

GitHub - dair-ai/ml-visuals: 🎨 ML Visuals contains figures and templates which you can reuse and customize to improve your scientific writing.

ML Visuhttps://docs.google.com/presentation/u/0/?authuser=0&usp=slides_webals - Google スライド

GitHub - cvpaperchallenge/Ascender: Accelerator of Scientific Development and Research. A project template developed by XCCV group of cvpaper.challenge.

GitHub - ManimCommunity/manim: A community-maintained Python framework for creating mathematical animations.

エッジコンピューティング

ONNXモデルのチューニングテクニック (基礎編) | AI tech studio

関連記事

変更履歴

  • 2023/01/16 リンク追記
  • 2022/08/30 リンク追記
  • 2021/12/19 リンクを追記
  • 2020/12/20 AI本の執筆に関して追記
  • 2020/12/04 アップデート