機械学習用PCの概要
この記事では、2022年7月現在の機械学習用に自作PCを組む際のパーツの選び方について、私の意見を述べます。
注)私見のため、一般に良いとされているものとは異なる場合があると思います。
近年、機械学習の手法が一般化され、かつ無料で利用できるため、自宅で誰でも機械学習を実行できるようになりました。
機械学習用PCとは
機械学習中に実行される計算のうち大部分は積和演算であり、大量の積和演算を効率よく実行するには、CPUよりもGPUが向いていて、機械学習用PCとはこのGPUを搭載したPCということになります。
CPUはさまざまなプログラムを実行できますが、GPUはそうではなく、単純な計算を大量に実行することに特化したハードウェアです。
通常、GPUは光の反射や透過などの影響を計算して実写に近い見た目の画面表示を行うために使われますが、機械学習における大量の積和演算でもこのGPUが力を発揮します。
Google社が提供している無料のクラウド環境Google Colabを利用すれば、制限※はあるもののGPUを利用した機械学習を誰でもかんたんに実行できます。
Google Colabの課金版Pro/Pro+もあり、メモリやディスクの容量が増えたり、制限時間が24時間に増える、GPUも高性能なものを利用できるなどメリットもありますが、無制限になる訳ではありません。
そうなると、やはり自前のPCで実行したくなりますよね。
自前のPCで効率良く機械学習を実行するにはグラフィックボード(GPUが載った部品、以降グラボ)を搭載したPCが必要になります。
デスクトップ or ノート
デスクトップかノートかについてですが、私はデスクトップをおすすめします。
既製品のデスクトップとノートを比べた場合、同程度の性能のデスクトップとノートを比べると、デスクトップの方が安いと思います。
ノートPCに搭載されるグラボは、デスクトップ用のグラボと同じ名称(例えばRTX3060)であってもデスクトップ用より性能は低くなります。
放熱やスペースの関係で性能に差が出てしまうのでしょう。
ノートは場所を取らないという利点がありますが、大きなデメリットとして、時が経ってグラボが時代遅れになった際にグラボ交換は基本的にできず買い替えになり、この時点で出費が多くなります。
デスクトップだとグラボを新しいものに変えることができるのがメリットだと思います。
グラボ以外にもメモリを増設したり、ディスクを増強したりといった拡張性があることが、デスクトップの大きなメリットと感じます。
そして、この記事で私が提案したいのは、既製品のデスクトップPCを購入するのではなく、自作PCを組んでみませんか?ということになります。
自作で組むと、全て新品のパーツを使った場合でも、既製品よりおおむね数万円は安上がりになると思います。
もちろん、安上がりにするためには価格.comなどで、安く購入できるパーツを探す努力は必要です。
自作PCには組み上げる楽しさがあり、組み立てに使うのはほぼプラスドライバーのみなので、プラモデルよりかんたんです。
自作PCの心配点
自作PCを組む際、相性問題や作業ミスなどでうまく動かないことがあります。
動かず悩んだのち解決して動いたときのよろこびなど、既製品購入では味わえない醍醐味がありますが、心配になる方もいらっしゃいますよね。
不安な場合は、全て新品パーツでそろえるのが良いと思います。
理由は、新品を買うと、うまく動かない場合にサポートしてもらえたり、故障したときに(自責であっても)無料で修理してくれる場合があるためです。
私の経験を書きますと、新品のマザーボードに中古ケース付属のDVDドライブをつないだら電源が入らなくなってしまい、テスターで調べるとマザーボードのCPU補助電源系の電源とグランドがショートしていた、ということがありました。
中古のDVDドライブが壊れていて、その影響でマザーボードが壊れてしまったんです。(涙)
購入元のサポートに問い合わせたら、無償で修理してくれました。(旭エレクトロニクス様に感謝!)
こういうことがあるため、最初は新品のパーツを使用することをおすすめします。
新品を使えば、私のように素性のわからないパーツで正常なパーツを壊してしまうリクスも低減できます。
うまく動かない場合の対応に時間を取られるくらいなら、多少高くても安心がほしいという方は、既製品のデスクトップPCを買うのが良いと思います。
こちらも新品を購入すれば、問題が生じたときにサポートを受けられると思います。
ここまで読んで頂き、デスクトップPCの自作に興味を持たれた方は、以降を読み進めてください。
パーツ選び
グラフィックボード(グラボ)
機械学習の効率にもっとも影響するパーツはグラボです。
グラボの2大メーカーはNVIDIAとAMDですが、機械学習向けとなると、ドライバやソフトウェア環境が整えられているNVIDIAのグラボを選択することになります。
グラボは性能の違いで価格に大きな開きがあります。
グラボの性能比較結果は、検索するとすぐに見つかります。
グラボの処理性能に影響する着目すべき主な指標は、「メモリ容量」と「メモリ帯域幅」になります。
メモリ容量は、グラボに搭載されたメモリ容量のことで、基本的に大きいほど良いです。
メモリ帯域幅は上記メモリの通信速度を表したもので、こちらも大きい方が高性能になります。
価格は数万から数十万まであり、上を見るときりがないですが、お財布と相談して決めることになります。
機械学習用として選択するならRTX3060、予算が許すならさらに上のものも視野に入れるといった感じが良いと思います。
MSI GeForce RTX 3060 GAMING X 12G
RTX3060は高価で手が出ないという方は、RTX1660 SuperかRTX1660Tiが良いと思います。
MSI GeForce GTX 1660 SUPER AERO ITX OC
これより下のグラボは処理性能が低いことと、今後Tensorflowなどの機械学習用ソフトウェア環境がサポートされなくなる恐れがあり、おすすめしません。
CPU
2022年6月現在最新のIntel第12世代のCPUは、消費電力を抑えつつ処理速度が向上したため、これを選択するのが良いと思います。
CPUで着目すべき主な指標は、コア/スレッド数とクロック周波数です。
機械学習をする目的であればCore i5(6コア12スレッド)もしくはCore i3(4コア8スレッド)でも良いと思います。
Core i7やi9は、i5の倍以上の価格帯になってきますが、機械学習の効率はさほど変わらないと思います。
第11世代などの旧世代Intel CPUも新品で購入するなら最新のCPUと同じくらいの価格のため、やはり最新が良いと思います。
Core i5 12400はかなりコスパが良く、性能も十分と感じます。
12500や12600など百の位が大きいものは、クロック周波数が高くなるなど性能が上がりますので、予算が許す方は視野に入れると良いでしょう。
Intel CPUを選ぶ際の注意点として、型式にFがついているもの(例:Core i5 12400F)は、F無しより安いのですが、CPU内臓のグラフィックチップが無いため、マザーボードのHDMIポートから映像出力できません。
グラボを取り付けて、グラボのHDMIポートやディスプレイポートから映像出力します。
元々グラボを付けるつもりだから、特に問題ないと思われるかもしれませんが、うまく動かない場合の問題点の切り分けをする際、グラボを外した状態でもBIOS画面が確認できることはメリットになりますので、特に自作PC初心者の方にはF無しをおすすめします。
メモリ
CPU用の一時的な記憶領域となるパーツです。
まず着目すべきは、DDR4やDDR5といった規格です。
将来性を取るならDDR5も良いかもしれませんが、私はもう少し成熟してからにしたいと考えるため、今はDDR4で良いと思います。
DDR4やDDR5などの規格により端子形状が異なるため、異なる規格のメモリはメモリスロットに刺さりません。
容量は16GB以上が良いと思いますが、ほとんどのCPUがデュアルチャネルに対応していることから1枚の16GBメモリにするのではなく、8GBメモリを2枚にすることで1.5倍程度通信が速くなるようです。
そしてメモリの指標でやっかいなものが2つあります。
1つ目はメモリ帯域幅で、PC4-25600などのように記載されているものです。
PC4はDDR4を表すもので、25600の部分は単位MB/sで表される通信速度であり、数値が大きい方が高速になります。
基本的にはPC4-25600くらいを選べば十分でしょう。
DDR4-3200 PC4-25600 CT2K8G4DFRA32A
ここで紛らわしいのが、もう1つの指標であるメモリクロック周波数で、DDR4-3200などと記載されています。
こちらの3200という数値は、メモリのクロック周波数が3200MHzということです。
マザーボードによって、このメモリクロック周波数の最大値が異なりますので、マザーボードが対応している周波数以下のメモリを選択する必要があります。
他の注意点として、SO-DIMMと表記されているメモリはノートPC用の小型タイプで、デスクトップ用は単にDIMMやUDIMMと表記されていますので、間違えないようにしてください。
また、Registerdやサーバー用と記載のあるものはデスクトップPC用メモリとは異なりますので、こちらも選択しないようにしましょう。
SSD
SSDもメモリと同様に記憶装置ですが、メモリは一時的で電源を落とすと内容が消えてしまうのに対し、SSDは電源OFF後も記憶を保持し、容量も数百GBのようにメモリより大容量です。
SSDの容量としては、予算が許すなら1TBあると余裕のある運用ができると思います。
現在主流なのはM.2と呼ばれるタイプで、マザーボード上に差し込み口があり、そこにSSD端子を差し込む方式のものになります。
SATAケーブルでつなぐタイプのものは通信速度が遅いので、OSをインストールするメインの記憶領域としては不向きです。
M.2の中にもさらに種類があって、大きくはmSATAとNVMeの2つに分けられ、mSATAは古いタイプのため、通信速度が速いNVMeを使うことになります。
そして、NVMeにもPCIe 3.0とPCIe 4.0があります。
新品のマザーボードを買うと基本的にPCIe 4.0になると思いますので、PCIe 4.0のM.2 SSDを選ぶと良いでしょう。
PCIe 4.0とはPCI-Express Gen 4.0の省略形です。
そして、同じPCIe 4.0でも読み書きの速度に違いがあり、これが価格差につながります。
できれば、読み込み6600MB/s、書き込み5000MB/sといったスペックのものが、数年経っても快適に使えることが予想され、無難とは思いますが、ここは機械学習性能への影響は小さいため、予算に合わせて選択することで良いと思います。
読み書きの速度で、シーケンシャルとランダムアクセスの両方記載がある場合、基本的にはランダムアクセスを重視した方が通常は快適になると思います。
シーケンシャルの数値が大きいと、サイズの大きなファイルの読み書きが速く、ランダムアクセスの数値が大きいと、さまざまなファイルの読み書きが速いことになります。
マザーボード
ここまで、おすすめのパーツを紹介してきたため、これらを使用できるマザーボードを選択することになります。
マザーボードはCPU世代によってソケットタイプで分類され、第12世代のIntel CPUを使用する場合、ソケットタイプはLGA1700になります。
同じソケットタイプLGA1700の中にH610, B660, H670, Z690という異なるチップセットが存在します。
基本的に右のものほど高性能で、オーバークロックに対応しているなどの付加価値がありますが、通常使用において基本的な部分は同等なので、H610やB660でも問題ないです。
売れ筋がB660なので、価格も控えめなものが見つかります。
マザーボードのサイズにはATX > Micro-ATX > Mini-ITXがあり、右のものほど小さくなります。
拡張性については、右に行くほど低くなりますが、上記のようにCPU、グラボ、メモリ、SSDの構成で使う分には、Mini-ITXでも全く問題ありません。
使用するケースに合うものにすると良いでしょう。
Mini-ITXは、部品の集積度が高いためか、ATXやMicro-ATXより高価になる傾向があります。
ケース
ケースは見た目に影響するので、こだわりたい人も多いでしょう。
しかし、見た目だけで選ぶと、空気の流れが悪く十分な性能が出ないなど、思わぬ落とし穴があります。
小さなケースは内部も狭く、配線の取り回しや組み立て工程の難易度も高めです。
ケースには対応するマザーボードのサイズ(ATX, Micro-ATX, Mini-ITX)が決まっていますので、マザーボードに合うものを選ぶ必要があります。
はじめての自作PCの場合、少なくともMicro-ATXが入るような、ある程度スペースに余裕のあるケースをおすすめします。
その方がメンテナンスもしやすいです。
小さなケースは組み上げた達成感を味わえるのですが、組み上げ後にメモリや周辺機器を増設するのに電源やグラボを外す必要が生じるなど、こういった作業がおっくうになります。(^^;
電源
電源の主要なタイプは2つあり、ATX電源とSFX電源になります。
ATXが通常用でSFXは省スペース用になります。
使用するケースによって、どちらのタイプに対応しているかが決まっています。
電源供給能力はワット(W)数で表現され、たいてい製品名にもワット数が入ります。
ワット数の選び方として、一般にシステムの消費電力の2倍程度が良いとされています。
しかしながら、メモリやSSDなど消費電力表記がない場合もありますので、主な電力消費源であるCPUとグラボの消費電力を確認し、それら合計の2倍強程度を選ぶと良いでしょう。
電源の安定性や電力変換効率をランク付けする80PLUSという標準規格があります。
この規格のランクにはSTANDARD, BRONZE, SILVER, GOLD, PLUTINUM, TITANIUMがあり、右に行くほど性能が良く(安定供給かつ発熱が小さい)、高価になります。
電源の性能差は短期間では表れにくいのですが、部品の寿命にも効いてくると考えられ、特に高価なグラボを壊したくないという思いから、私はできるだけGOLD以上を選ぶようにしています。
電源を選ぶ際に見落としがちな注意点としてケーブルの種類と本数があります。
メインの24ピンケーブルはどんな電源にも付いているので問題ありませんが、CPU補助電源8(4+4)ピンはワット数が小さめの電源だと1つしかない場合があります。
特にハイエンドのマザーボードの場合、CPU補助電源が8(4+4)ピンに加えて、さらに4ピン分必要になる場合があり、これに対応できるかを確認しておく必要があります。
あとはグラボですが、これも特にハイエンドのグラボはPCIe補助電源8(6+2)ピンを2つ使用するものがあり、これに対応できるか確認しておく必要があります。
その他パーツ
WiFiはマザーボードに付いているものもありますが、無い場合はM.2形式もしくはUSBで接続する無線LAN子機を使います。
私はUSBタイプを使用しています。
ゲームに使用する場合は、可能であれば有線LANを使用した方が良いと思います。
その他、SSDやHDD、光学ドライブ、カードリーダー等の増設はSATAケーブルとSATA電源を使用して行えます。
マザーボードによってはM.2 SSDを2つ以上付けることができるものもあります。
まとめ
機械学習用自作PCのパーツ選びについて私見を述べました。
2022年7月現在のおすすめ構成と注意点を書きました。
自作PCの組み上げにおいて、トラブルはよく起こりますが、ネットで対策を検索すると見つかる場合が多いです。
すべて新品で構成することで、トラブル発生のリスクを下げられ、購入店からのサポートにも期待できます。
おすすめ構成下表をにまとめました。(すべてAmazonの例)
型式 | 参考価格(円) | |
CPU | Intel Core i5 12400 | 29,480 |
グラボ | MSI GeForce RTX 3060 GAMING X 12G | 58,113 |
メモリ | DDR4-3200 PC4-25600 CT2K8G4DFRA32A | 6,980 |
SSD | Crucial P5 Plus 1TB SSD | 15,300 |
マザーボード | MSI PRO B660M-E DDR4 | 13,433 |
ケース | Thermaltake Versa H17 | 2,882 |
電源 | Corsair RM750 | 10,955 |
合計 | 137,143 |
激安ばかり選んだ訳ではなく、そこそこ将来性も見据えた構成で、しかもすべてAmazonで13万円台です。
価格.comで調べればもっとお得なものが見つかるはずです。
キーボード、マウス、ディスプレイなどは含めていないので、これらをお持ちでない方は追加で数万円程度かかるかもしれません。
この記事を読んだ方が、自作PCに興味を持ち挑戦してみようと思って頂けたらうれしく思います。
参考文献
- 歴代Intel Coreの対応チップセット一覧表を作らせていただきました。(https://subcash.info/intel-chipset-list/)
- Akiba PC Hotline!(https://akiba-pc.watch.impress.co.jp/docs/sp/1231939.html)
- M.2 SSDの速度比較・選び方(https://note.cman.jp/hdd/m2_ssd/)
- モノテクアーカイブス(https://www.dospara.co.jp/monotech/monolabo/4950.html)