機械学習モデルをトレーニングして推論タスクに適用する際、特に異なるコンピューティング環境(トレーニングはGPU、推論はCPU)を利用する場合に推論がうまくいかないことがよくありました(2クラス予測で0と1を交互に推論するなど)。 そのときにやってしまっていたこととその解決策を簡単にまとめます。 1. モデルのロードミス 推論エンドポイントをCPU(ml.m5.large)で構築したところ、GPU(g4dn.2xlarge)でトレーニングしたモデルが期待通りの推論結果を出力しませんでした。 ログを開いたら以下のWarningがでていました。 2024-04-25T05:47:04,365 [WARN ] W-9000-model_1.0-stderr MODEL_LOG - Some weights of the model checkpoint at /opt/ml/model/code/