はじめに
先々変わるかもしれませんので、2018/6月時点の情報です
各所で絶賛されているfast.aiのディープラーニング・コースの視聴を始めました。当該コースは2018年に刷新されまして、コース中で使用する教材やfastaiのフレームワークもPyTorchベースのものに変わっています。 教材のJupyter Notebookをそのまま動かすには正直、GPUが無いとつらいので私もコース中で推奨されたPaperspaceを使いましたが、自分の普段使いのノートPC(GPUなし)でも動かしたいな~と思って、やったら動いたので設定方法をメモしておきます。
- Thinkpad X230 (当然ながらGPUなし)
- Windows 7 (& 10でも確認)
- minicondaでPythonだけ使えるようにしておいた
程度の普通のPCです
設定方法
要は下記のfast.aiのforumの情報を参考に、一箇所だけ変更したら動きました。
Howto: installation on Windows
基本的にJeremy大先生の上記指示のとおりに操作すればいいのですが、上記はGPUがあることが前提なので①GPUが無い②Windowsであることの差分だけ変更します。
①のコメントはGPU無いので無視していいです
②Github上のリソースではGPUなし環境用にenvironment-cpu.ymlが提供されていますが、Windowsではそのままでは動きません。
以下のように-pytorch<0.4 の行を -pytorch-cpu<0.4に書き変えて保存します
あとはreadmeに従い
conda env update -f environment-cpu.yml
します
ご参考) 以下はPyTorchのHPですが、WindowsでGPUなしならpytorch-cpuを使ってね、ということなので、そう設定しただけです。
この変更を漏らしてもインストールは進みますが、最終的にNotebook実行時に以下のようなエラーになりました。
③はリソース一式がlinux環境を前提にリンクを貼っているので、それをWindows環境で貼りなおす作業です。書いてある通りに実施すればオーケーです。
いちおう私のWindows10環境での実行ログを下記に抜粋して掲載します

Microsoft Windows [Version 10.0.15063]
(c) 2017 Microsoft Corporation. All rights reserved.
C:\>python -V
Python 3.6.5 :: Anaconda, Inc.
C:\>conda -V
conda 4.5.1
c:\>git clone https://github.com/fastai/fastai.git
Cloning into 'fastai'...
remote: Counting objects: 5239, done.
remote: Total 5239 (delta 0), reused 0 (delta 0), pack-reused 5238R
Receiving objects: 100% (5239/5239), 191.36 MiB | 359.00 KiB/s, done.
Resolving deltas: 100% (3306/3306), done.
Checking out files: 100% (239/239), done.
c:\>cd fastai
c:\fastai>dir
ドライブ C のボリューム ラベルがありません。
ボリューム シリアル番号は B86F-D378 です
c:\fastai のディレクトリ
2018/05/25 15:29 <DIR> .
2018/05/25 15:29 <DIR> ..
2018/05/25 15:29 1,485 .gitignore
2018/05/25 15:29 1,770 .travis.yml
2018/05/25 15:29 3,293 CODE-OF-CONDUCT.md
2018/05/25 15:29 <DIR> courses
2018/05/25 15:29 <DIR> docs
2018/05/25 15:29 1,308 environment-cpu.yml
2018/05/25 15:29 1,323 environment.yml
2018/05/25 15:29 <DIR> fastai
2018/05/25 15:29 9,204 LICENSE
2018/05/25 15:29 34 MANIFEST
2018/05/25 15:29 134 MANIFEST.in
2018/05/25 15:29 38 pytest.ini
2018/05/25 15:29 3,523 README.md
2018/05/25 15:29 1,105 requirements.txt
2018/05/25 15:29 42 setup.cfg
2018/05/25 15:29 1,591 setup.py
2018/05/25 15:29 <DIR> tests
2018/05/25 15:29 <DIR> tutorials
13 個のファイル 24,850 バイト
7 個のディレクトリ 93,059,665,920 バイトの空き領域
c:\fastai>
========================================
コメント:environment-cpu.ymlの変更を行いました
========================================
c:\fastai>conda env update -f environment-cpu.yml
Solving environment: done
==> WARNING: A newer version of conda exists. <==
current version: 4.5.1
latest version: 4.5.4
Please update conda by running
$ conda update -n base conda
Downloading and Extracting Packages
vs2015_runtime 14.0.25420##################################################################
#################################### | 100%
=================
途中省略
=================
python 3.6.5################################################################################################################### | 100%
Preparing transaction: done
Verifying transaction: done
Executing transaction: /
|
/ Enabling: jupyter_nbextensions_con
- Writing config:'C':\Users\aa051466\AppData\Local\conda\conda\envs\fastai-cpu\etc\jupyter
- Validating...
jupyter_nbextensions_configurator 0.4.0 ok
Enabling notebook nbextension nbextensions_configurator/config_menu/main...
Enabling tree nbextension nbextensions_configurator/tree_tab/main...
=================
途中省略
=================
Successfully installed MechanicalSoup-0.8.0 PrettyTable-0.7.2 beautifulsoup4-4.6.0 chardet-3.0.4 cliff-2.8.1 cmd2-0.8.5 configparser-3.5.0 cssselect-1.0.3 feather-format-0.4.0 graphviz-0.8.3 idna-2.6 isoweek-1.3.3 kaggle-cli-0.12.13 lxml-4.0.0 mizani-0.4.6 opencv-python-3.4.1.15 palettable-3.1.1 pandas-summary-0.0.41 pbr-4.0.3 plotnine-0.3.0 progressbar2-3.34.3 pyarrow-0.9.0 pyperclip-1.6.1 python-utils-2.3.0 requests-2.18.4 scikit-learn-0.19.1 sklearn-pandas-1.6.0 stevedore-1.28.0 torchtext-0.2.3 torchvision-0.2.1 urllib3-1.22
#
# To activate this environment, use:
# > activate fastai-cpu
#
# To deactivate an active environment, use:
# > deactivate
#
# * for power-users using bash, you must source
#
c:\fastai>activate fastai-cpu
(fastai-cpu) c:\fastai>jupyter nbextension enable --py widgetsnbextension --sys-prefix
Enabling notebook extension jupyter-js-widgets/extension...
- Validating: ok
(fastai-cpu) c:\fastai>cd courses\dl1
(fastai-cpu) c:\fastai\courses\dl1>type fastai
../../fastai
(fastai-cpu) c:\fastai\courses\dl1>del fastai
(fastai-cpu) c:\fastai\courses\dl1>mklink /d fastai ..\..\fastai
fastai <<===>> ..\..\fastai のシンボリック リンクが作成されました
(fastai-cpu) c:\fastai\courses\dl1>cd ../..
(fastai-cpu) c:\fastai>
その他
上記でWindowsPCでもfastaiの教材やNotebookが動くようになりますが
1). Lesson1で画像判定に使うdogscats.zipは犬と猫のトレーニング用画像が各11,500件ずつあり、これをそのままPCでトレーニングするとえらく時間がかかりますしメモリも喰います。そこで、各1000件位に減らしたら10分くらいで終わるようになりました。もちろん「動けばいい」ってものではありませんが、1000件でもそれなりのaccuracyになるようでしたので、「PCで軽く試すだけなら、減らしたらいいかも」とお伝えしておきます。
2). 以下を見るとディープラーニングだけではなくマシンラーニングのコースもEarly Accessとして視聴できます。こちらなどはGPUなしのPCでも十分に動くんじゃないかと思います。(少なくともLesson1のRandom ForestのNotebookは動きました)
Another treat! Early access to Intro To Machine Learning videos
3). ネットを見るとfast.aiのコースの講義ノートを色々な方が公開されていますが、(英語ですが) Medium上でHiromi Suenagaさんが公開してくれている一連の講義ノートが詳しくてお勧めです。(各回2時間の講義を延々視聴していると頭の中が混乱してくるので、講義ノートが役立ちます)
- Deep LearingのLesson1のノートはこちら
良いノートをありがとうございます。勉強になってます! >Hiromi Suenagaさん
以上です