10章モデルの保護手段の構築

データベースや分散システムを設計する場合、ソフトウェアエンジニアはフォールトトレランス、つまりコンポーネントの一部が故障してもシステムが動作し続ける能力について考慮します。ソフトウェアでは、システムの特定の部分に障害が起きるかどうかではなく、いつ障害が発生するかが問題なのです。MLにも同じ原則が適用できます。どれだけ優れたモデルであってもエラーは発生するため、そうしたエラーを適切に処理できるシステムを設計する必要があります。

この章では、エラーを防止または軽減するためのさまざまな方法を取り上げます。まず、受信および生成するデータの品質を検証し、この検証を利用してユーザに結果を表示する方法を決定します。次に、多くのユーザに効率的にサービスを提供できるように、モデリングパイプラインをより強固にする方法を説明します。その後、ユーザのフィードバックを活用し、モデルがどのように機能しているかを判断するためのオプションを見ていきます。この章の最後には、デプロイのベストプラクティスについてChris Moodyへインタビューを行います。

10.1 エラーにまつわるエンジニアリング

ここでは、MLパイプラインがエラーを起こす可能性の高い場合をいくつか取り上げましょう。注意深い読者は、これらの例が「6.2 配線のデバッグ:可視化とテスト」で見たデバッグのヒントに似ていることに気付くでしょう。実際、本番環境でユーザにモデルを公開するには、モデルのデバッグと同じような課題が発生します。

バグやエラーはどこにでも発生する可能性がありますが、特に3つの領域の検証が最も重要です。つまり、パイプラインへの入力、モデルの信頼性、そして生成される出力です。それぞれを順番に説明します。 ...

Get 機械学習による実用アプリケーション構築 ―事例を通じて学ぶ、設計から本番稼働までのプロセス now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.