タグ・4本
MLOps
LightGBMの推論高速化—ONNXが単発も一括も最速、treeliteは使い方で順位が逆転
LightGBMのpredictを1行ずつ呼ぶ処理は、変換なしでnumpyのまま一括で渡すだけで13.7倍になりました。1件ずつではLightGBMより4.7倍速いtreeliteが18,000件の一括では0.45倍に落ち、ONNXは両方で最速。Apple M1上の合成データ1件での実測です。
scikit-learnモデルのバージョン互換性—pickle・joblib・skops・ONNXの予測差を実測
scikit-learn 1.5.2で保存した2モデルを1.9.0で読み込むと、pickle・joblib・skopsは予測確率が完全に一致しました。ONNXだけは警告なしで1,000件中2件の判定が反転し、その差はバージョン違いではなく変換と推論の経路で生じていました。
本番の機械学習モデルを運用する人向けに、panderaとは何か、DataFrameSchemaの基本的な使い方、推論前に検出できる入力異常と検出できない変化を実測結果から解説します。
データリーク5パターンで交差検証はどれだけ甘くなるか—分割前SMOTEは+0.24、前処理の順序ミスは差を確認できず
機械学習のデータリーク5パターンを合成データに作り込み、交差検証のスコアがリークなしの評価用データよりどれだけ高く出るかをLightGBMで実測しました。この強度設定では分割前SMOTEが+0.24、よく警告される標準化・欠損補完の順序ミスでは差を確認できませんでした。盛れ幅はパターンごとの設定に依存し、危険度の順位ではありません。手元で試せる実装例つきです。