ML チームの編成

ML プロジェクトに必要なのは、幅広いスキル、専門知識、 責任について学びましたこれは最も一般的な 一般的な ML チームに見られるロールです。

ロール 知識とスキル 主な成果物
ML プロダクト マネージャー ML プロダクト マネージャーは、ML の強みと専門知識を ML 開発プロセスについて学びましたビジネス上の問題と足並みを揃える ML チーム、エンドユーザー、 関係者などに注意を向けます。 プロダクト ビジョンの作成、ユースケースの定義、 プロジェクトの計画と優先順位付けを行います。 プロダクト要件ドキュメント(PRD)。
エンジニアリング マネージャー エンジニアリング マネージャーは、ビジネス目標の達成に向けて チームの優先事項を達成しています。ML と同様 ML ソリューションをビジネス上の問題に 結び付けることです チームメンバーに明確な期待値を設定し、 パフォーマンス評価の実施、キャリア開発と 専門能力開発のためのテクノロジーです 設計ドキュメント、プロジェクト計画、パフォーマンス評価
データ サイエンティスト データ サイエンティストは、定量的分析と統計的分析を使用して データから導き出したインサイトと価値を 生み出しますこれらは本番環境で モデルの解釈可能性に関する支援が含まれます。 ビジネス上の疑問に答えるレポートとデータの可視化 統計的分析によって導き出されます。
ML エンジニア ML エンジニアは、ML モデルの設計、構築、本番環境への導入、管理を行います。 ML を深く理解し、優秀なソフトウェア エンジニアである ベスト プラクティスを学びました。 ビジネスに十分な品質でデプロイされるモデル あります。
データ エンジニア データ エンジニアは、データの保存、集約、 大量のデータを処理する場合です。インフラストラクチャを開発し、 元データを収集して変換するための 有用な形式について学びました。データエンジニアは データを管理する責任があります。 必要なモニタリングとツールを備えた、完全に運用化されたデータ パイプライン モニタリングできます。
デベロッパー運用(DevOps)エンジニア DevOps エンジニアは、開発、デプロイ、スケーリング、モニタリングを行う ML モデルのサービングインフラです Google Cloud 上でのサービス提供、モニタリング、テスト、アラートを、 制御できます。

成功する ML プロジェクトには、各役割をうまく割り当てたチームがある 表現されます。小規模なチームでは 個人がタスクに対処し 責任共有について学びました。

チーム手法を確立する

ML では役割、ツール、フレームワークが大きく異なるため 共通プラクティスを確立することが重要であり、 プロセスドキュメントが 用意されていますたとえば、あるエンジニアが モデルのトレーニングを開始するには 適切なデータさえあれば十分だと考えます より責任のあるエンジニアが、データセットが匿名化されていることを そのメタデータと来歴を文書化します。エンジニアが プロセスと設計パターンの一般的な定義が、 チームのスピードが上がります

プロセスに関するドキュメント

プロセス ドキュメントでは、チームのツール、インフラストラクチャ、プロセスを定義する必要があります。 見ていきましょう優れたプロセス ドキュメントは新規と現行の方向性をすり合わせるのに役立つ できます。次のような質問に答える必要があります。

  • モデルのデータはどのように生成されますか。
  • データを調査、検証、可視化する方法
  • トレーニング データの入力特徴やラベルをどのように変更するか。
  • データの生成、トレーニング、評価のパイプラインをどのようにカスタマイズするか
  • 入力の変化に対応するためにモデル アーキテクチャを変更する方法 どうすればよいでしょうか。
  • テストサンプルの入手方法
  • モデルの品質を判断するために、どのような指標を使用しますか?
  • モデルを本番環境でリリースするにはどうすればよいか?
  • モデルに問題があるかどうかを知るにはどうすればよいでしょうか。
  • モデルが依存しているアップストリーム システム
  • SQL の保守と再利用を可能にするには
で確認できます。

その他の質問

モデル
  • 同じプロジェクト内で異なるデータセットでモデルをトレーニングできるか どうすればよいでしょうか

  • 新しいテスト データセットをパイプラインに追加するにはどうすればよいですか?

で確認できます。 トレーニング
  • 手作りのサンプルでモデルの予測を確認するにはどうすればよいですか?

  • モデルで生成されたサンプルを見つけ、検証し、可視化するには どこまでミスを犯しますか?

  • 特定の要因に最も影響している特徴を、どのように判断すればよいですか? どうすればよいでしょうか。

  • どの機能が特に大きな影響を与えるのかを把握するには どうすればよいでしょうか。

  • 選択したデータセットまたはモデルでモデルの予測を計算またはプロットする方法 サンプル?

  • 特定の期間でのモデルの予測の標準指標を どうすればよいでしょうか。

  • カスタム指標を開発および計算する方法

  • 自分のモデルと他のモデルをオフラインで比較するにはどうすればよいですか?

  • 複数のモデル評価のメタ分析を 1 つのインスタンスで実行できるか どうなるでしょうか。

  • 現在のモデルと 10 か月前のモデルを比較することはできますか?

で確認できます。 製品化、モニタリング、メンテナンス
  • 私は良いモデルを作ったと思います。本番環境でリリースするにはどうすればよいですか?

  • 新しいモデルが本番環境で正しく実行されていることを確認するにはどうすればよいですか?

  • 時間の経過に伴うモデル評価の履歴を取得できますか?

  • モデルに問題がある場合、どのように知ることができますか?

  • モデルについて言及しているページ/バグが割り当てられた。 どうすればよいですか?

で確認できます。 パイプライン
  • データの生成/トレーニング/評価をどのようにカスタマイズできるか どうすればよいでしょうか。

  • まったく新しいパイプラインを、いつ、どのように作成すればよいですか?

で確認できます。 SQL
  • データを生成する SQL が必要です。どこに配置すればよいですか?

で確認できます。 インフラストラクチャ
  • モデルのサービングの仕組み図はありますか?

  • モデルがどのアップストリーム システムに依存しているか 把握していますか?

で確認できます。 コミュニケーション
  • わかりません。どこに、どのように連絡すればよいですか?

留意点

「ML のベスト プラクティス」とは会社、チーム、プロジェクトによって できます。対象 たとえば、一部のチームメンバーは試験運用版の Colab を R で働きたいと思う人もいます。新しいテクノロジーに情熱を注ぐ人も 他の担当者は、モニタリングが最重要であると考えており、 別の誰かが特徴量の運用化のおすすめの方法を知っていますが Scala を使いたいとします全員が「正しい」独自の視点で考えることが うまくいけば、ミックスは強力なものになるでしょう。そうでなければ、混乱する可能性があります。

チームが事前に使用するツール、プロセス、インフラストラクチャを確立する コードの記述がプロジェクトの失敗と 前四半期にリリースすることに成功しています

パフォーマンスの評価

ML に固有のあいまいさと不確実性により、部下を持つマネージャーは、 期待を明確化し、早期に成果物を定義します。

期待値や成果物を決定する際は、それがどうなるかを考慮する プロジェクトやアプローチがうまくいかなかった場合に評価される。つまり、 チームメンバーのパフォーマンスが、 評価します。たとえば、チームメンバーが 調査を実施し、最終的にはうまくいかないソリューションを調査しました。この中にも 高品質なコード、詳細なドキュメントの作成、 評価に積極的に貢献する必要があります。

理解度をチェックする

プロセス ドキュメントが優れたものである主な理由は何ですか。 共通の実践方法を確立していますか?
プロジェクトのベロシティを向上させる。
正解です。プロセスに関する適切なドキュメントを用意し、 混乱が減り、開発プロセスが合理化されます
会社全体でベスト プラクティスを確立します。
ML の開発はプロジェクトによって異なるため、 チームがそれぞれ独自のベスト プラクティスを確立し、 ベロシティを上げる必要があります
チーム内のすべてのエンジニアが同じレベルの専門知識を持つことを確認する。
ML チームは通常、さまざまなスキルと技術を備えたエンジニアを 知識です。プロセス ドキュメントはエンジニアがベスト プラクティスをすり合わせるのに役立つ ベロシティを上げる必要があります