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

ディープラーニングは習うより慣れろかも

 ファッションでディープラーニングをしているディープラーニング芸人からあげです。私は、特に専門家でも何でもないのですが、機械学習に興味もって、ディープラーニングに関することブログでアウトプットしているうちに「AIに関する本に名前がクレジットされたり」「AI解析のオンラインコンテスト#Aidemynoteで特別賞受賞したり」「ラズパイマガジンという商業誌にAI関係で記事を書いたり」「ディープラーニングおじさんの記事がバズったあげくITmediaで取り上げられたり」と多少なりとも価値を提供できるようになってきました。

 何の知識もバックグラウンドも、大した能力も無い自分が、どうやって知識を身につけることができたかというと、色々本も読んだのですが、実際に手を動かしてプログラムを組んで、実問題に対して試行錯誤した結果をブログにアウトプットし続けたことが大きいのかなと思います。

 家に積まれた本の1部が以下。あんまり良く無かった本や電子書籍がこの数倍あるので、合計は50冊くらいになるかも

 正直、未だに数式とかに関しては、さっぱり分からんちんなのですが、個人的にはディープラーニングは習うより慣れろが重要かなと感じています。まずは手を動かして、色々試して疑問に思ったところを本やネットの情報、論文などを読んで補完をするという進め方が一番自分にとっては効率がよかったかなと思っています。

ディープラーニングの学習に対する沢山のワナ

 手を動かすのが重要とは言いましたが、やっぱり実際に何かを作るのは大変です。ディープラーニングの学習には色々な罠があります。

  • セットアップが地獄で、環境設定ができた頃には力尽きている罠
  • TensorFlow、Keras、Chainer、PyTorchとたくさんフレームワークがあってどれが良いのかさっぱりわからない罠
  • 環境設定ができたところで、バージョンの違いでサンプルが動かない罠
  • 大量に本があって、どれが良いのかよく分からない罠。載っているプログラム動かし方が分からない罠
  • サンプルがクソつまらない&結果の意味が不明な罠(自分は、最初MNISTが文字認識のタスクということすら分かってなかった)
  • サンプルから先に一切進めない、何をしたら良いかわからない罠

 どれか一つでも心当たりのある人は多いのでは無いでしょうか?私は、全部のワナに引っかかって、ベルセルクの蝕でのガッツの如く、色々犠牲にしながら駆け抜けてきました(主に睡眠時間とお金)

ディープラーニングの学習を助ける優良なチュートリアルまとめ

 そんな罠をくぐり抜けるために、最近一番よいなと思うのが実践形式のチュートリアルです。説明を読みながら、手を動かすことで理解が深まります。特に最近の優良なチュートリアルは、環境構築不要で、すぐ学習できるような工夫もしてあるので、最短で結果が出せます。

 私はもの凄く遠回りをしてしまいましたが、これから最短で学習進めたい人や、学習に行き詰まった人、本に飽きてきた人はチュートリアルを試してみることをお勧めします。「人工知能は人類を滅ぼす」という本を読んで怯えていた人も、実際に自分で手を動かして最先端のAIモデルを育てて見ると「お、AI結構可愛いじゃん」とか「AIって超アホだな」等、今までと人工知能に対する見方が大きく変わるかもしれませんよ。

 そんな人工知能に対する見方が変わるかもしれない、優良チュートリアルを紹介していきます。有料なものも含まれています。タイトルの最後に、無料・有料と記載をつけているので参考にして下さい。

東京大学の松尾研究室が無料公開している「Deep Learning基礎講座演習コンテンツ」(無料)

deep-learning基礎講座演習コンテンツ

 「人工知能は人間を超えるか」で有名な東大の松尾先生が無料で公開している学習コンテンツです。

 無料ですし、内容はとても良いのですが、惜しむらくは環境設定や使い方が全く書かれていない点です。以下記事参考にしてみて下さい。

 上記記事でも難しいという方は、他の有料のチュートリアルを試して見ましょう。困ったらお金で解決するのが大人です!

Aidemy(一部無料)

 ディープラーニングを学習できるWebサービス、Aidemyさんです。学習環境まで提供されているので、本当に10秒で学習を開始できます。基本的に有料ですが、多くのセミナーなどに比較すると本当に格安ですし、一部は無料で学習できるので、無料のコースだけでも試してみる価値があると思います。

 べ、別に賞をもらったからステマしているわけじゃないですからね!

PFNのエンジニアさんが公開しているチュートリアル(無料)

 今をトキメク日本のAIベンチャー「PFN」のエンジニアさんが公開しているチュートリアルです。以前上記の記事でローカルPCでのセットアップ方法と使い方含めて紹介しました。使用しているディープラーニングのフレームワークはPFN開発のChainerとなります。Chainer使いの方はもちろん、他のフレームワークにも共通するディープラーニングの学習に関する丁寧な解説があるので、Chainer使わない人でもとても参考になると思います。

 最新の以下のチュートリアルでは、「Google Colabratory」というGoogle提供の無料クラウドサービス上でチュートリアルを動かす方法も記載されています。

 ただ、全体的にある程度分かっている人向けの解説なので、初学者には難しいところもあるかもしれません。と思いきや、PFNさんがChainerのチュートリアルの決定版とも言える内容を以下サイトで公開して下さっています。

 Pythonの基礎から始まり、機械学習の基礎、機械学習関連のPythonの主要ライブラリ(Numpy, Matplotlib等)の使い方。ディープラーニング(Chainer)の基礎から画像認識の応用まで。まだ、応用に関しては作成中のようですが、非常に今後が期待できる内容です。大学生を対象にしているようですが、基礎から学びたい社会人にも参考になると思います。

Kaggleのチュートリアル(有料)

 カレーちゃんさんが有料noteで公開している機械学習コンペKaggleのチュートリアルです。Kaggleはかなりガチな人が多い印象なので、私はとても足を踏み入れられないのですが、ガチ勢になりたい方は是非!

 Kaggle自体は無料なので、とりあえず無料でKaggleしたい人は以下記事参照下さい

秒速Deep Learning(有料)

 ディープラーニングの解説からはじまり、勉強方法とつまづきポイント、さらには「Google Colaboratory」を使用してチュートリアルで手を学習しながら学ぶ方法まで幅広く盛り込まれている優良な電子書籍です。先ほど紹介した、東大の松尾研のチュートリアルをGoogle Colaboratoryで動かす方法も丁寧に解説されています。作者の方は、専門家ではなく独学で学習進めたということで、初学者に近い視点で書かれており、非常に分かりやすいです。同じ独学者として、内容に共感するところも多かったです。

 理論から実践までバランス良く、多くの市販書に比べて全く遜色ないコストパフォーマンス(というか多くのものを凌駕している)と思います。絶対買いですね。

 以下のQiita記事が無料で公開されていますが、これを更に10倍以上濃密にした内容になっています。お金出してかうべき内容と思います。

fast.ai (無料)

 無料でディープラーニングを学べる海外の教材です。使用しているフレームワーク(fastai)はPyTorchベースのようです。動画とJupyter Notebook形式のチュートリアルで学習できるようです。

 英語で相当のボリュームがあり、かなりハードル高いのですが、hiromisさんという方が、講義をまとめた資料をGitHubにアップしてくださっています。めちゃ有用です!

 また、秒速Deep Learningの作者tomo-makesさんが、fast.aiのGitHubのJupyter Notebookをforkして日本語訳してくださっており、こちらも非常に助けになりそうです。

 これらの情報は、tomo-makesさんのツイートで知りました。感謝です。

 まだこちらは取り組めていませんが、PyTorchにも少し興味があったので、気になるところだけでも試してみようかと思っています。

まとめ

 ディープラーニングの優良なオススメチュートリアルを紹介しました。手を動かすのが一番ってディープラーニングおじさんも言っていたので、しっかり身に付けたい人は、チュートリアルが近道じゃないかなと思います。本記事を参考に是非色々ためしてみてください。

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

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

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

その他の優良なリンク

 紹介しきれなかった優良な情報へのリンクです。別の機会に紹介したいと思います。

GitHub - ageron/handson-ml2: A series of Jupyter notebooks that walk you through the fundamentals of Machine Learning and Deep Learning in Python using Scikit-Learn, Keras and TensorFlow 2.

https://github.com/yoyoyo-yo/DeepLearningMugenKnock

GitHub - nagaoka-ai-innovationhub/basics-of-image-recognition-with-cnn

GitHub - tugstugi/dl-colab-notebooks: Try out deep learning models online on Google Colab

The latest in Machine Learning | Papers With Code

Dive into Deep Learning — Dive into Deep Learning 1.0.0-beta0 documentation

PyTorchチュートリアル(日本語翻訳版)

GitHub - kuzand/Computer-Vision-Video-Lectures: A curated list of free, high-quality, university-level courses with video lectures related to the field of Computer Vision.

[2009.05673] Applications of Deep Neural Networks with Keras

【Deep Learning研修(発展)】少データ・少ラベル学習 - YouTube

ホワイトペーパー | AI総合研究所 NABLAS

Releases · d2l-ai/d2l-en · GitHub

DEEP LEARNING · Deep Learning

GitHub - suhara/cis6930-fall2021: Course materials for Fall 2021 "CIS6930 Topics in Computing for Data Science" at New College of Florida

機械学習エンジニアに爆速でなるための教材集 - Qiita

【2023年版】機械学習の日本語無料学習教材まとめ - Qiita

関連記事

変更履歴

  • 2020/12/20 AI書籍の執筆に関して追記
  • 2020/06/19 関連記事追記
  • 2020/02/24 リンク追記
  • 2020/01/24 優良なリンクを追記
  • 2019/11/20 関連記事・参考リンク追記
  • 2019/04/10 PFNさんのChainerチュートリアルに関して追記
  • 2019/01/28 fast.aiに関して追記