神経科学者と学ぶ深層学習超入門を羊土社から出版いたしました。
本書は、基生研で働く神経科学者である渡辺の目線から執筆した深層学習の入門書です。おそらくはここまで神経細胞を出発点にした入門書はレアだとおもいます。その意味では、渡辺の思想書の側面もあります。
それでも本書は入門書です。数式やプログラムに慣れない方に配慮しつつ、文章では伝えきれない部分には、手描きイラストを多数掲載し、理解しやすさを心がけました。
神経科学者と学ぶ深層学習超入門を羊土社から出版いたしました。
本書は、基生研で働く神経科学者である渡辺の目線から執筆した深層学習の入門書です。おそらくはここまで神経細胞を出発点にした入門書はレアだとおもいます。その意味では、渡辺の思想書の側面もあります。
それでも本書は入門書です。数式やプログラムに慣れない方に配慮しつつ、文章では伝えきれない部分には、手描きイラストを多数掲載し、理解しやすさを心がけました。
"""
よく受ける質問をまとめておきます。この記事は順次更新します。
"""
Q1:深層学習はGoogle Colabじゃダメですか?
A1:ダメじゃないです。
共同研究者との共有が簡単に出来るので、Google Colabですべてが出来れば、再現性という意味では理想的です。が、学習をガンガンやりだす、あるいは遺伝子データや動画データなどの巨大なデータを扱い出すと、無理筋になる状況が出てきますので、その時点が分岐点です。逆に、場合によってはGoogle Colabではローカルよりも大きなメモリー空間を確保できることがあります。これはGoogle Colabのメリットです。教育用のプラットホームとしてもたいへん優れています。
"""
Q2:深層学習をローカルサーバーでやるか、クラウドサーバーでやるか?
A2:どちらでもいいです。が、クラウドでやるにしても一つくらいはローカルサーバーはあったほうがいいので、第一選択としてローカルサーバー、それ以上の処理はクラウドサーバー。また最近ではGUI完備のAIツールもでてきているので、その場合、ローカルサーバーはあったほうが随分操作が楽になります。AWSやGoogleなどのクラウドサーバーは高額ですが、公立の研究者であれば、大学や研究所が共同利用のために用意しているスパコンは格安で使えることがあります。また逆に潤沢な研究資金があるならば、自分でニューラルネットワークをあれこれ触らなくてもノーコードのクラウドサービスもいっぱいあります。
"""
Q3:深層学習はWindowsじゃダメですか?
A3:ダメじゃないです。ただ、深層学習のコードの大半はLinux(多くの場合はUbuntu)で開発されていますので、Windowsで動かないコードがあります(経験談)。例えば、DeepLabCutのようなメジャーコードですら一発起動とはいかないことがありました。とういわけで、Linuxが第一選択になります。あえてWindowsを第一選択にするとすれば、SONY Neural Network Console(非推奨)をメインで使いたいときです。
最近のWindowsはWSL2というバーチャル空間にUbuntuを内挿しており、これは「完全なUbuntu」を謳っておりまり、このWSL2を深層学習に利用する手があります。純粋なLinuxと比べれば、それなりのクセがありますが、Windows側からもファイルにアクセスできますし、Linux側からもWindowsのファイルにアクセスできますのでとても便利です。また、ハードウエアのセッティングはWindowsがやってくれますので超楽ちんです。ゲーミングPCを買ってきたらすぐに深層学習ができます。生粋のUbuntuよりは計算処理スピードの面で劣っておりますし(当社比で半分程度)メモリーもWindowsから恵んでいただく状態なのは大問題ですが、これもそのうち多少は改善されるでしょうし、今後、windowsは選択肢としてはありかもです。ただ私は非推奨です。
"""
Q4:深層学習はMacじゃダメですか?
A4:いまのところダメです。優れたコードエディターとしては使えますが、Macだけで深層学習をやることはできません。理由はNvidiaのGPUが使えないからです(いまのところ)。NvidiaのGPUで計算しても数十時間の学習はざらにありますので、それが使えない環境は、選択肢から外れます。ただ、どのみちローカルGPUも、SSH接続や、リモートデスクトップで使いますので、手元のマシンは慣れたOSがいいので、手元のインターフェースとしてMacはいい選択でしょう。ただし!LLMの推論用としてはUnified Memoryは圧倒的な性能を発揮するようです。ローカルLLMを組みたい方は選択肢として大いにありです。最近のNvidiaのSparkもその流れです。
"""
Q5:GPUワークステーションは値段が高いのですが、必要でしょうか?
A5:市販のゲーミングPCで十分です。というか、速度だけで言えば、ゲーミングPCのほうが速いことが多いです(経験談)。GPUメモリーのエラーチェック機構は深層学習には必要ありません。選ぶ基準はGPUメモリーの大きさを優先させてください。次は電源の大きさ、メインメモリーの大きさ(GPUメモリーの倍くらい欲しい)、熱処理(とても大事。最悪扇風機の出番)、筐体の大きさ(できるだけ大きいほうがいい)、拡張性の高さなどです。
もうひとつ言うと、GPUワークステーションは拡張性は高く、しかも使われているパーツの耐久性は抜群なのですが、メモリーやファンなど、ワークステーション専用のパーツを使っていることが多く、これらのパーツは手に入りにくく、しかも高価です。
ゲーミングPCのGPUで対応しきれなくなったらクラウドPCのレンタルという選択が良いと思います。現状のゲーミングPCのGPUメモリーが24Gbが最大(2023年3月現在)ですので、このメモリーを超えるような処理が必須になってきた時、クラウドPCの40Gb、80Gb(あるいはそれ以上のモンスター)の出番となります。
"""
Q6:コードエディターは何がいい?
A6:好きなものをお使いください。ちまたではVS Codeが大人気です。迷ったらVS Codeです。みんなが使っているので安心感が違います。私は使っていません笑。
===
Q7:
A7:
===
DeepLabCutとDeepEthogramは、動物の行動解析に人気です。
http://www.mackenziemathislab.org/deeplabcut
https://elifesciences.org/articles/63377
DeepLabCutは、座標トラッキング、
DeepEthogramは、行動パターンの分類を定量化するのに役に立ちます。
いずれもpip install で一発導入できますが、互いに異なる環境に依存していますのでanacondaなどの仮想環境にインストールします(2025年時点でanacondaは非推奨。ライセンスが大きく変わりました。venvなど他の環境がいいでしょう)。また現状(2023年2月)では、cuda12には対応しておりませんので、cuda11.xの環境にしておきます。既にcuda12環境にあるときは、
sudo apt-get -y install cuda-11-7
sudo unlink /usr/local/cuda
sudo ln -s /usr/local/cuda-11.7 /usr/local/cuda
のようにして、cuda11.xに切り替えます。
DeepLabCutは、
https://github.com/DeepLabCut/DeepLabCut
ここを参照し、
conda create --name dlc python=3.8
conda activate dlc
pip install 'deeplabcut[gui,tf]'
でインストール、
python3 -m deeplabcut
で起動です。
DeepEthogramは、
https://github.com/jbohnslav/deepethogram/blob/master/docs/installation.md
ここを参照し、
conda create --name deg python=3.7
conda activate deg
conda install -c conda-forge pyside2==5.13.2
Install pytorch
pip install deepethogram
でインストール、
python3 -m deepethogram
で起動です。
「いま」の定義:2025年12月 以前GPUのセットアップ(CUDA)について書いたのが、2023年1月だったので、 https://doraemonkokoro.blogspot.com/2021/09/ubuntu-20041lts-cuda-rtx-a6000.html 3...