実際にディープラーニングなどのAI学習向けに自作PCを組んだことのある経験から、なぜ自作PCの方が断然有利でメリットがあるのかについて解説していきます。
結論から言うと、自作PCのスキルがあると故障やボトルネックに柔軟に対応できるからメリットが大きいです。
目次
ディープラーニング向けPCの自作について
ディープラーニングなどのAI学習向けのPCの購入を検討しているが、
- 自作PCで組み立てようか。
- BTOパソコンでパーツカスタマイズして購入しようか。
というのを悩むと思います。
そこで実際に、AI学習向けの自作PCを組んだことある経験から、
自作PCが良いのか
BTOパソコンで購入するのが良いのか
解説していきます。
先に結論を言うと、自作PCの方が圧倒的にメリットが高いです。
自作PCとBTOパソコンの価格的には、同じくらいか自作PCの方が若干高いと思っています。
また、自作PCのパーツ選定や組み立てる時間などの労力を考えるとデメリットもありますが、これを我慢してもディープラーニングなどのAI向けPCの場合は、自作PCの方が良いと思っています。
正確に言うと、”自作PCできるだけの知識やパーツ交換できる技術“を持っていることが重要です。
後ほど、詳しく解説しますが、AI向けPC場合は、後々パーツを交換したり、グレードアップしたりすることが多々あるので、この時に備えて、パーツを交換できる技術を持っているとメリットが大きいですよ!という意味です。
そのため、購入する時は自作PCでなくても構わないと思っています。
BTOパソコンで購入して、ディープラーニングや他のAIのプログラムを組み、運用していく中で、不足している部分が出てくる場合があるので、その時は自作PCの経験を活かしてパーツを交換しましょうという話です。
とは言え、不足している場合が出てくるのは、結構規模が大きめのAIだったり、学習速度を求められる場合だったりするので、AIについて勉強がてらプログラムを組んでみようと考えている場合は、パーツを交換して性能を調整する必要も無いので、BTOパソコンでも大丈夫です。
これから初めて自作PCをするという方は、今後のパーツ交換のために、パーツの知識や技術を得る目的で、始めから自作PCをした方が良いと思っています。
しかし、既に自作PCの経験があって、パーツも難なく交換できるという方は、手間を省くためにBTOパソコンでサクッとカスタマイズして購入するというのもアリですね。
ディープラーニング向けPCの自作のメリットについて
では、ディープラーニングなどのAI向けを自作PCで組み立てるメリットは何なのかということについて解説していきます。
大きく分けると3つありまして、
- プログラムの規模に応じて柔軟にスペックをグレードアップできる。
- PCパーツの知識がある事によって、ボトルネックを発見しやすい。
- 故障時に素早く対応できる。
です。
プログラムの規模に応じて柔軟にスペックをグレードアップできる。
AIを学習させる場合、学習させるデータ件数とAIの規模(※)によって学習速度が全然異なってきます。
おそらく、規模を大きくすればするほど、指数関数的に処理しなければいけないことが増えるはずなので、学習速度に影響を及ぼします。
また、AIの学習部分だけでなく、学習のために必要なデータや学習結果の保存を行う処理も必要になってきます。
そのため、処理速度を高めるために、CPUやGPUを交換したり、データを保存すためのストレージを追加したりなど状況に応じて素早く対応することができます。
※ディープラーニングの場合は、インプットの数、隠れ層の数。遺伝的アルゴリズムの場合は、集団数や遺伝子の数。
PCパーツの知識がある事によって、ボトルネックを発見しやすい。
AIの学習速度を気にする場合は、CPU性能、GPU性能、メモリ容量、ストレージ容量と速度のすべてが重要になってきます。
規模が大きくなればなるほど、どこかの1ヵ所の性能不足のせいで、全体の学習速度が劇的に落ちる(=ボトルネック)ということが発生します。
そういう場合に、タスクマネージャーやパフォーマンスツールなどを用いて、ボトルネックを特定し、パーツを交換して対応する必要があります。
私の場合だと、遺伝的アルゴリズムを用いて学習していた際に、学習に用いるデータや結果データをMysqlというデータベースで管理していました。
しかし、データベースのデータ量が増えていくにつ入れて、学習に用いるデータを取得する際の時間が、徐々に長くなっていったことがあります。
プログラムで言うと、丁度データベースからデータを取得するコードで止まったかのようになり、取得するのに数十分かかるという具合です。
原因としては、HDDのデータ転送速度の遅さでした。
これに気づき、SSDにパーツ交換することで、データの取得部分が数秒~1,2分程度に短縮したことがあります。
このように、自作PCをすることによって、ある程度のパーツ知識が身に付くので、こういった動作が明らかに遅い場合に、どこがボトルネックとなっているのか発券することができます。
故障時に素早く対応できる。
AIの学習は、本格的に運用するとなれば、パソコンを何日、何週間と付けっぱなしで学習し続けるということが多いと思います。
通常のパソコンの用途とは違い、稼働時間が長くなりがちなので、それに伴ってパーツの劣化も激しくなります。
また、稼働時間が長いと言えばサーバーがありますが、サーバーとは違いAI学習の場合は、CPUやGPUに高い負荷を与え続けることになるので、そういう意味でも劣化は激しいかなと思っています。
こういった理由から、パーツが比較的故障しやすい環境なので、故障した場合に素早く対応できるように、パーツ交換はできるようにしておいた方が良いですね。
故障の度に、BTOメーカーに送って修理してもらうとなると時間がかかる上に、その間学習できないとなれば、結構な痛手だと思います。
以上の理由から、自作PCで組み立てしておいた方が、いざとなれば自分でパーツ交換できるのでメリットが大きいです。
まとめ:ディープラーニングなどのAI学習向けPCの場合は自作PCがおすすめ
ディープラーニングなどのAI学習向けPCは、BTOパソコンで購入するより、自作PCで組み立てた方がメリットが大きい理由について解説しました。
おさらいすると、次の3つですね。
- プログラムの規模に応じて柔軟にスペックをグレードアップできる。
- PCパーツの知識がある事によって、ボトルネックを発見しやすい。
- 故障時に素早く対応できる。
です。
とは言え、自作PCが良いといった理由は、主にパーツ交換するためなので、既に難なくパーツ交換できるという方は、安く済ませる、組み立ての手間やリスクを省くために、BTOパソコンでの購入でも問題なしですね。
ディープラーニング向けのBTOパソコンについては、ディープラーニングにおすすめなデスクトップパソコンを性能別に紹介で解説しているので、どれにしようか迷っている方は、是非チェックしてみて下さい。
また、最新のセール情報もまとめているので、こちらを上手く利用すれば、より安く購入できると思います。