PyTorch + YOLOv8 まとめ

前回からの続き。PyTorch 色々いじってみたが、結局 Ubuntu 22.04.4 + CUDA 12.4 + pip の組み合わせのみ成功となった。以下は悪戦苦闘の記録です。

M3 Mac

pip で簡単インストール可能。PyTorch は MPS 指定しても動くようだが、YOLOv8 でトレーニングしようとすると counts.max() == -1 という謎エラーで落ちる。

M1 Mac

pip で簡単インストール可能。PyTorch は MPS 指定しても動くが、YOLOv8 でトレーニングしようとすると F.conv2d() 呼び出しで落ちる。

Windows WSL2 + CUDA

CUDA 12.1 にダウングレードし、pip で CUDA 版 PyTorch をインストールするも、Segmentation Fault で落ちた。でもよく見ると LD_LIBRARY_PATH に以前の torch パスが残っていたためだったので、これを消して再実行。F.conv2d() 呼び出しで落ちる。

Ubuntu 22.04.4 + CUDA

唯一上手く言った組み合わせ。CUDA は 12.4 をインストールしているが、PyTorch のホームページでの推奨とは異なり、pip インストールで丸く収まった。YOLOv8 のトレーニング機能も動作する。

ソースからコンパイルするとそもそも Python のクラスや函数が見えなくなるらしく、「そんな関数は_C共有ライブラリに定義されていません」と言う意味のエラーを吐いて止まってしまう。

ちなみに pip で提供されている PyTorch バイナリは Anaconda で作成している節がある。

投稿者について
みのしす

小さいときは科学者になろうとしたのに、その時にたまたま身に着けたプログラミングで未だに飯を食っているしがないおじさんです。(年齢的にはもうすぐおじいさん)

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です