「機械学習システム設計ガイド」は、このNVIDIAガールの人気プロジェクトです

「機械学習システム設計ガイド」は、このNVIDIAガールの人気プロジェクトです

今年 8 月、スタンフォード大学を卒業し、現在 NVIDIA の人工知能アプリケーション チームに勤務する若い女性が、Twitter で上位 10 の高品質な無料機械学習コース リソースをリストし、それらをまとめて効率的な学習ルートを作成しました。このコース リソースは現在 8,000 件を超える「いいね!」を獲得しています。最近、彼女は読者に新たなメリットをもたらしました。今回はディープラーニング システムの設計チュートリアルです。
機械学習モデルをサービスや AI 機能を提供できるシステムに変換することは、最近注目を集めているトピックです。 Chip Huyen のディープラーニング システム設計チュートリアルは、8,000 語の記事で、幅広い注目を集めています。同社の Twitter アカウントには現在 5,000 件の「いいね!」があり、GitHub プロジェクトには 1 日で 1,000 件を超えるスターが付けられています。

チュートリアルのアドレス: https://github.com/chiphuyen/machine-learning-systems-design/blob/master/build/build1/consolidated.pdf

プロジェクトアドレス: https://github.com/chiphuyen/machine-learning-systems-design

理論から実践まで、8,000語のチュートリアルでMLシステム設計を説明します

チュートリアルは、導入、機械学習システムの設計、ケース指導、演習の 4 つの部分で構成されています。ケース指導と演習の部分には、それぞれ、実稼働環境における典型的なケース 10 件と、面接で遭遇する可能性のある質問 27 件が含まれています。

この本は主に方法論に基づいており、システムを構築するために必要な手順について読者が考えるのに役立つ対応するガイドラインを提供することに重点を置いています。

導入

最初の部分では、著者らは機械学習の研究と実稼働の主な違いを紹介しています。これらの違いは、パフォーマンス要件とコンピューティング要件という 2 つの側面に反映されます。

パフォーマンス要件に関しては、機械学習の研究者にとって、SOTA がすべてです。さまざまな複雑なテクノロジとその組み合わせを使用して 1% のパフォーマンス向上を追求しますが、この向上は実稼働環境には適用できない可能性があり、過度の複雑さのためにより多くのコンピューティング リソースを消費することになります。

コンピューティング要件の点では、現在普及している大規模モデルには高価なコンピューティング リソースが必要であるため、これらのモデルを本番環境に適用する場合、コミュニティはモデル圧縮や事前トレーニングなどのテクノロジを探求して、モデルをより小さく、より高速にする必要があります。運用中の開発者は、常に運用を念頭に置いて機械学習システムを設計する必要があります。

機械学習システムを設計するための4つのステップ

2 番目の部分は、機械学習システムの設計方法という、この本の中心的な内容です。著者は、この設計プロセスを、プロジェクトのセットアップ、データ パイプライン、モデリング (モデルの選択、トレーニング、デバッグ)、およびサービング (モデルのテスト、展開、保守) の 4 つのステップに分割しています。

著者らが提案するディープラーニングシステム構築プロセス。

プロジェクト設定は、プロジェクトを評価および設計する段階です。このセクションの目的は、ディープラーニングが解決する必要がある実際的な問題 (製品の重要性)、パフォーマンスの制限、プロジェクトの制限、評価方法、およびパーソナライゼーションを定義することです。プロジェクトの目標と実装方法を明確に定義することによってのみ、構築されたシステムが要件を満たし、実際の問題を解決できることを保証できます。

データはディープラーニングに最も欠かせない要素です。研究分野のほとんどのモデルには十分でバランスの取れたクリーンなデータセットがありますが、実稼働環境では必ずしもそうとは限りません。そのため、システム設計においては、信頼性が高く、十分な量のデータをどのように取得するかなど、データの問題も考慮する必要があります。同時に、プライバシー保護、データセキュリティ、データストレージ、データバランスなどの問題に対処し、実現可能なソリューションを提供する必要があります。

モデリング プロセスには、モデルの選択、トレーニング、デバッグ、評価という複数のステップが必要です。その中でも、ランダムベンチマーク、ヒューマンベンチマーク、ヒューリスティックベンチマークなど、モデルを選択する際には最も適切なベンチマークを見つけることを考慮する必要があります。使用するモデルは単純なものから複雑なものまで様々で、トレーニングプロセスは少量のデータから開始する必要があります。うまくいけば、モデルのサイズを拡大し、データバッチ入力のサイズを増やし、パラメータを調整する必要があります。モデルの推論パフォーマンスが低い場合は、データの問題なのか、仮定やモデル/データの適合が間違っているのか、ハイパーパラメータの選択が間違っているのかなどを検討する必要があります。

サービスフェーズでは、デザイナーは、受け取った入力に基づいてモデルが適切な結果を提供する方法、ユーザーがこれらの結果を受け取る方法、既存のモデルをより良く改善するためにフィードバックを取得する方法を検討する必要があります。同時に、モデルは静的ではなく、継続的なトレーニングが必要です。既存のデータからトレーニングして精度を高めることは、新しいラベルを使用してモデルをトレーニングすることとは異なります。前者は既存のモデルでトレーニングするだけで済みますが、後者は最初からトレーニングする必要があります。

10の典型的なケース

理論的な「机上の話」を避けるため、本書の第 3 部では、読者が理論を理解して実践を学べるよう、著者は 10 件のケース スタディを提供しています。

これらの事例を読んで、実稼働環境でのさまざまな展開要件と制約を克服する方法を学習してください。 Airbnb、Lyft、Uber、Netflix など、多くの企業が機械学習を使用して自社の製品や生産プロセスを改善した経験についてブログに投稿しています。インタビューが必要な友人は、これらのブログを頻繁に閲覧できます。このチュートリアルでは、次のような主な内容を紹介します。

1. 機械学習を使用して、Airbnb 上の住宅の価値を予測します。

リンク: https://medium.com/airbnb-engineering/using-machine-learning-to-predict-value-of-homes-on-airbnb-9272d3d4739d

2. 機械学習を使用して Netflix のストリーミング品質を向上します。

リンク: https://medium.com/netflix-techblog/using-machine-learning-to-improve-streaming-quality-at-netflix-9651263ef09f

3. Booking.com の 150 の成功した機械学習モデル: そこから学んだ 6 つの教訓。

リンク: https://blog.acolyer.org/2019/10/07/150-successful-machine-learning-models/

4. Chicisimo は、女性ユーザーがゼロから 400 万人にまで成長したファッション アプリです。

垂直機械学習アプローチでファッションアプリのユーザー数を 0 から 400 万人に増やした方法

5. 機械学習を使用して Airbnb の検索エクスペリエンスを向上させる。

リンク: https://medium.com/airbnb-engineering/machine-learning-powered-search-ranking-of-airbnb-experiences-110b4b1a0789

6. Lyft の不正防止機械学習システム。

リンク: https://eng.lyft.com/from-shallow-to-deep-learning-in-fraud-9dafcbcef743

7. Instacart 配送サービスにおけるルート最適化。

リンク: https://tech.instacart.com/space-time-and-groceries-a315925acf3a

8. Uber のビッグデータ プラットフォーム: 100 ペタバイト以上、分単位のレイテンシ。

リンク: https://eng.uber.com/uber-big-data-platform/

9. コンピューター ビジョンとディープラーニングを活用して、最新の OCR パイプラインを作成します。

リンク: https://blogs.dropbox.com/tech/2017/04/creating-a-modern-ocr-pipeline-using-computer-vision-and-deep-learning/

10. Uber の Michelangelo 機械学習プラットフォームを使用して機械学習を拡張します。

リンク: https://eng.uber.com/scaling-michelangelo/

27の練習

最後に、27 個の練習問題があります。演習の答えは、『機械学習インタビュー』という本に記載されています。

回答を投稿したい学生は、https://github.com/chiphuyen/machine-learning-systems-design/tree/master/answers にアクセスしてください。

さらに、著者は、ここで述べられている問題のいくつかは曖昧であるという事実に注意を喚起しています。面接中にこのような質問を受けた場合は、面接官に問題を明確に説明し、範囲を絞り込むように指導する必要があります。

<<:  ビッグデータ、クラウドコンピューティング、人工知能が統合され、セキュリティ分野に応用されている

>>:  人工知能と5G: 新たなデータの世界へ

ブログ    
ブログ    
ブログ    

推薦する

米連邦取引委員会は、ChatGPTによるデータ漏洩と回答の捏造を含むOpenAIに対する徹底的な調査を開始した。

ワシントンポスト紙によると、7月13日、米国連邦取引委員会(FTC)はサンフランシスコに拠点を置くO...

...

データセットと DataLoader を使用して PyTorch でデータをカスタマイズする

大規模なデータセットを扱う場合、データ全体を一度にメモリにロードすることが非常に困難になることがあり...

AIチップ分野におけるNvidiaの優位性により、スタートアップ企業の資金調達は困難になっており、資金調達取引件数は80%減少した。

9月12日、複数の投資家は、NVIDIAがすでに人工知能(AI)チップ製造の分野で優位に立っており...

顔認識を行うときになぜ服を着なければならないのですか?

人工知能の応用として、顔認識技術は私たちの生活のあらゆる側面に浸透しています。本人認証には顔認識が必...

3,000以上のデータから200を選択する方が実際にはより効果的であり、MiniGPT-4は同じ構成のモデルよりも優れている。

GPT-4 は、詳細かつ正確な画像の説明を生成する強力で並外れた能力を実証しており、言語と視覚処理...

3分レビュー! 2021年1月の自動運転分野における重要な進展の概要

2021年に入ってから、自動運転分野の開発は着実に進展しており、今年1月には自動運転関連のさまざまな...

最初の生成 AI 安全ガイダンス文書がここにあります。理解できましたか?

10月11日、国家情報セキュリティ標準化技術委員会の公式サイトで「生成型人工知能サービスの基本セキ...

Goの暗号化と復号化アルゴリズムの概要

[[343693]]序文実際の開発では、暗号化と復号化が広く使用されています。一般的に使用される暗号...

エンジニアリングだけではありません!人間の認知バイアスが原因の AI 研究における 12 の盲点

[[255272]]ビッグデータダイジェスト制作編集者: ゴウ・シャオバイ、チャン・チウユエ、アイリ...

...

アルゴリズムだけでは不十分:AIの次のブレークスルーにはハードウェアの再検討が必要

この記事は公開アカウント「Reading Core Technique」(ID: AI_Discov...

1 つの記事で機械学習を理解する: 基本概念、5 つの主要な流派、9 つの一般的なアルゴリズム

1. 機械学習の概要 1. 機械学習とは何ですか?機械は大量のデータを分析して学習します。たとえば...