信頼性の高い機械学習 ―SRE原則を活用したMLOps
by Cathy Chen, Niall Richard Murphy, Kranti Parisa, D. Sculley, Todd Underwood, 井伊 篤彦, 張 凡, 樋口 千洋
11章障害対応
この世界では、良いデータやシステムであっても、時には不具合が起きてしまいます。ディスクの故障、ファイルの破損、マシンの故障、ネットワークのダウンなどです。APIコールがエラーを返して、データを取得できなくなったり、データが微妙に変化したりします。以前は正確で代表的なモデルであったものが、そうでなくなることもあります。私たちの周りの世界が変化することもあります。以前は起こらなかったこと、あるいはほとんど起こらなかったことが当たり前になることもあります。
本書の大部分は、このような事態を未然に防ぐMLシステムを構築すること、あるいは、このような事態が発生した場合、その状況を正しく認識し、それを軽減することについて書かれています。具体的には本章では、MLシステムに緊急で不具合が起こったときに、どのように対応するかについて述べます。システムがダウンしたり、その他の問題が発生したときに、チームがどのように対処するかについては既にご存じかもしれません。これは、障害管理として知られており、多くのコンピュータシステムに共通する障害を管理するためのベストプラクティスが存在します†1。
[†1] 一般的な障害管理について詳しく知りたい場合は、『SRE サイトリライアビリティエンジニアリング』や「PagerDuty incident response handbook」(https://response.pagerduty.com)をご覧ください。
本書では、これらの一般的に適用可能なプラクティスをカバーしますが、私たちの焦点は、MLシステムの機能停止をどのように管理するか、特に、機能停止とその管理が他の分散コンピューティングシステムの機能停止とどのように異なるかです。
覚えておくべき主な点は、MLシステムには、障害の解決が非ML運用システムの障害とは大きく異なる可能性があるという特性があることです。この文脈で最も重要な特性は、現実世界の状況やユーザーの行動との強いつながりです。これは、モデル化しようとしているMLシステム、世界、またはユーザーの行動の間に断絶がある場合に、直感的ではない影響が発生する可能性があることを意味します。これについては後ほど詳しく説明しますが、ここで理解しておくべき重要なことは、ML障害のトラブルシューティングには、財務、サプライヤーとベンダーの管理、広報、法務などを含む、標準的な運用障害よりもはるかに多くの組織が関与する可能性があるということです。ML障害の解決は、必ずしもエンジニアリングだけで行うものではありません。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access