新しくKaggle用のマシンを調達しました(2020年ver)
皆さんこんにちは
tereka114です。本日はKaggle Advent Calendar24日目の記事です。
今回はKaggle用マシンで購入したものとパーツ選びの基準をご紹介します。
Kaggle用マシン
Kaggle用マシンがなぜ必要か
Kaggleをするためにはノートパソコン一台でも十分です。
しかし、勝つには、最近の巨大データ、画像、NLPコンペの増加に伴いハイスペックPCが必要になってきました。
特に画像やNLPでは、CNN、BERTと呼ばれるニューラルネットワークの手法がソリューションを締めており、
普通の特徴量抽出の手法では勝てなくなってきています。
そのため、それなりの人たちの多くはGPUがあるマシンを持っていることが多くなりました。
クラウドがあるのではないか?といった疑問を持たれた方もいると思いますが、
はっきりいってオンプレ運用より高くなるので緊急時以外おすすめしません。
どのような要件のマシンが必要か
高性能なCPU、メモリ、GPUです。といっても元も子もないので、
どのようなところに影響するのかはパーツの選定の箇所で説明します。
パーツの選定
ここでは実際に組み上げたPCのパーツの紹介をしつつ、選定基準を記載していきます。
基本方針
CPU、GPU、メモリは良いものを選定するのは基本です。
しかし、意外に見落としがちなのはマザボと電源です。
この2パーツはとにかく、故障したときに原因がわかりにくいもので相当曲者です。
ここで失敗すると精神衛生が悲惨です。
各々のパーツ
CPU
lightgbmとテーブル加工の処理、画像の前処理で利用します。
画像処理のあるあるですが、良いGPUだけを準備してもCPUがボトルネックになれば高速化されないので、GPUに合わせてCPUも良くする必要があります。
可能な限りスペックをよくしたいなーと思っていたので、次のCPUを選択しました。
10コア20スレッドです。
INTEL CPU BX8070110900K Core i9-10900K プロセッサー 3.7GHz 20MB キャッシュ 10コア 日本正規流通商品
- 発売日: 2020/05/20
- メディア: Personal Computers
メモリ
Kaggleでメモリが必要になるケースは概ね2パタンです。
- 巨大なテーブルデータの場合、ほとんどのデータをメモリに載せる必要があるので
- 高速化のためのキャッシュ、画像コンペだとすれば画像を読む、加工、廃棄をすることになりますが、廃棄せずメモリに持てると性能が向上します。
CORSAIR DDR4 デスクトップPC用 メモリモジュール VENGEANCE LPX Series ブラック 16GB×2枚キット CMK32GX4M2A2666C16
- 発売日: 2015/08/20
- メディア: Personal Computers
GPU
RTX3090です。私が参加するコンペの多くは画像、もしくは、ニューラルネットワークが
勝つソリューションが多いので、ここは譲れないところでした。
MSI GeForce RTX 3090 GAMING X TRIO 24G グラフィックスボード VD7347
- 発売日: 2020/09/24
- メディア: Personal Computers
GPUの選定ですが、基本は性能とメモリです。
Kaggle界ではメモリの方が重要視されている気がします。
巨大モデルである程度のBatchsizeを担保しながら動かさないといけないので、11GBでは足りなくなってきていると感じています(MixedPrecisionも使っていますが厳しい)
そのため、24GBある3090を首を長くしてお待ちしていました。
ちなみに、普通の機械学習の勉強とかであれば、ColaboratoryにもGPUあるので、そういったところにGPUはおまかせするのも一つの手だと思います。
SSD
あまり考えずに選定していますが、最近のデータセットの規模から2TBは最低あっても良いと思います。
少ないとストレスなので、可能であれば大きめのものを買うと良いでしょう。
電源
先程簡単に説明しましたが、電源とマザボは最重要パーツの一つです。
というのも、電源とマザボが故障すると原因の調査が難しいものの一つで、問題が起こると、
一度総解体する必要も出てくるぐらい厄介なパーツです。
電源において重要なポイントとしては消費電力のギリギリのW数の電源を購入するのはいけません。
電源自体が劣化すると出力も下がり、運用していて落ちるようになります。
後々の平穏のためにも決してケチってはいけません。
そのため、200-300Wほどは余裕を持っておくことをおすすめします。
Silver Stone 日本正規代理店 80 PLUS Gold 1650WフルモジュラーATX電源 / SST-DA1650-G
- 発売日: 2020/09/28
- メディア: Personal Computers
マザーボード
電源の箇所で紹介しましたが、最重要パーツの一つです。
可能な限り高めのもの(1万超え-3万程度)のものを購入するようにしています。
私のマザボ購入時のチェックはCPUの型番に対応しているか(これ対応していないと購入し直しです)。
メモリのスロットが何枚あるか、PCI-Eのスロットはどの程度あるかは確認しています。
私はよくASUSのものを購入しています。電源がついているかどうかなどわかりやすいので、気に入っています。
ASUS INTEL Z490 搭載 LGA1200 対応 ROG STRIX Z490-E GAMING 【 ATX 】
- 発売日: 2020/05/21
- メディア: Personal Computers
PCケース
タワー、ミドルタワーそしてフルタワーの種類があります。
GPU指す場合はフルタワーのものをおすすめです。でかいので余裕があります。
Corsair Graphite 780T Black version E-ATX規格対応 プレミアムフルタワーPCケース CS5319 CC-9011063-WW
- 発売日: 2015/08/18
- メディア: Personal Computers
最後に
Kaggleを真面目にやりたいと思っている人は購入されることをおすすめします。
多分完成品を購入するよりも自作の方が安いです。