編集部からのお知らせ
特集PDF1「導入期に入るマイクロサービス」
特集PDF2「DXレポート」
今日からできる機械学習

機械学習プロジェクトの始め方--人材と体制における3つの役割 - (page 2)

田中耕太郎

2017-07-10 07:00

理論的な検討を担当するメンバーの役割

 技術的な企画や検討の段階では、アルゴリズムの決定や具体的な処理のための設計が必要です。そのため、統計理論や機械学習に関する学術的な知識、分析系の開発スキルに強みを持つメンバーが求められます。

 この段階を担当するメンバーは、活用するデータの分析やアルゴリズムの選定、開発を主に担い、アイデアを実験するためのプロトタイプ作成などにも関わります。

 アルゴリズムが複雑であればあるほど、専門的な知見を持っていない人が正しく実装することは難しいため、この段階を担当するメンバーには自分のアイデアを実験できるだけの技術力が求められます。そのため、この段階で活躍する人を「機械学習エンジニア」と呼ぶこともあります。

サービスやプロダクトへの実装を担当するメンバーの役割

 採用するアルゴリズムやデータの適切な処理方法などを確立し、プロトタイプも動作して良い成果が出せそうだというめどが立つと、いよいよ実際のサービスやプロダクトに組み込んでリリースする段階へ移ります。

 「機械学習を実行するプログラム(モデル)」はサービスやプロダクトの本体部分とは切り離して実装し、独立性を高く保つように設計します。ここでは、この「機械学習を実行するプログラム(モデル)」とのデータのやりとりを担当する部分を「機械学習API(Application Programming Interface)」と呼ぶことにします。

 「機械学習API」で、機械学習を実効するプログラム(モデル)」と「既存システム(既に稼働しているサービスやプロダクト)」を連携させ、仕組みを作るエンジニアが必要です。このフェーズでは、サーバサイドのスキルを持ったエンジニアが活躍します。


既存システムとの連携(簡略図)

 事業を伸ばすための機械学習プロジェクトでは、このようにビジネスサイドのプロ、データ分析やモデリングのプロ、開発サイドのプロが混在するプロジェクトチームを組成し、お互いがプロフェッショナリズムを発揮して相互補完できる体制が理想的です。

 以上、典型的な3つの役割について説明しました。もちろん、プロジェクトは千差万別なので他の役割を担うメンバーが必要になるかもしれません。また、横断的な対応が求められるメンバーが出てくる可能性も十分にあります。

ZDNet Japan 記事を毎朝メールでまとめ読み(登録無料)

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNet Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]