Cognitive Services と機械学習

Cognitive Services は、一般的な問題を解決する機械学習機能を備えています。たとえば、テキストで感情 (センチメント) を分析したり、画像を分析して物や顔を認識したりすることができます。 これらのサービスを使用するために、機械学習やデータ サイエンスに関する特別な知識は必要ありません。

Cognitive Services はサービスの集合であり、それぞれが異なる一般化予測機能をサポートします。 適切なサービスを見つけやすくするために、サービスは複数のカテゴリに分類されています。

サービス カテゴリ 目的
Decision 情報に基づく、効率的な意思決定のためのレコメンデーションを提示するアプリを構築します。
Language お使いのアプリが、構築済みスクリプトで自然言語を処理し、センチメントを評価し、ユーザーの求めるものを認識する方法を学習できるようにします。
Search お使いのアプリに Bing Search API を組み込み、1 つの API 呼び出しで何十億もの Web ページ、画像、動画、ニュースをくまなく調べる機能を実装します。
Speech 音声をテキストに変換し、テキストを自然な音声に変換します。 ある言語を別の言語に翻訳し、話者の認証と認識を可能にします。
Vision 写真、動画、デジタル インク コンテンツの認識、識別、キャプションの追加、インデックスの作成、モデレートを行います。

Cognitive Services は次の場合に使用します。

  • 一般化されたソリューションを使用できる。
  • プログラミング REST API または SDK からソリューションにアクセスする。

次の場合は他の機械学習ソリューションを使用してください。

  • アルゴリズムを選んで、特殊なデータをトレーニングする必要がある。

機械学習とは

機械学習は、データとアルゴリズムを組み合わせて特定のニーズを解決するという概念です。 データとアルゴリズムがトレーニングされると、別のデータで再利用できるモデルが出力されます。 トレーニングされたモデルから、新しいデータに基づいた分析情報を得ることができます。

機械学習システムを構築するプロセスでは、機械学習やデータ サイエンスの知識がある程度必要になります。

機械学習は、Azure Machine Learning (AML) の製品とサービスを通じて提供されます。

Cognitive Services とは

Cognitive Services は、機械学習ソリューションのコンポーネントであるデータ、アルゴリズム、トレーニング済みモデルの一部または全部を提供します。 これらのサービスは、データに関する一般的な知識が前提になりますが、機械学習やデータ サイエンスの経験は不要です。 これらのサービスでは REST API と言語ベースの SDK の両方を提供しています。 そのため、これらのサービスを使用するにはプログラミング言語の知識が必要です。

Cognitive Services と Azure Machine Learning (AML) の類似点

実現方法はそれぞれのオファリングで異なりますが、どちらも人工知能 (AI) を業務の強化に応用するという最終目標があります。

一般に、対象ユーザーは異なります。

  • Cognitive Services は機械学習の経験がない開発者を対象としています。
  • Azure Machine Learning はデータ サイエンティスト向けに特化されています。

Cognitive Services と機械学習の違い

Cognitive Services では、ユーザーに対してトレーニング済みのモデルが提供されます。 これはデータとアルゴリズムを統合したもので、REST API や SDK から利用できます。 シナリオによっては、このサービスを数分で実装できます。 Cognitive Services は、テキスト内のキー フレーズや画像内の項目識別といった一般的な問題を解決します。

機械学習は、通常、適切に実装するために長時間を要するプロセスです。 Cognitive Services と同等の機能を実現するために、この時間を費やしてデータの収集、クリーニング、変換、アルゴリズムの選択、モデルのトレーニング、およびデプロイが行われます。 機械学習では、きわめて特殊な問題や具体的な問題を解決することが可能です。 機械学習の問題では、データ サイエンスの専門知識だけでなく、検討中の問題の特定の主題とデータについて理解する必要があります。

保有するデータの種類

サービスの集合である Cognitive Services は、トレーニングされたモデルにカスタム データが不要な場合、一部必要である場合、または全部必要である場合があります。

追加のトレーニング データが不要

完全にトレーニングされたモデルを提供するサービスは、"不透明のボックス" として扱われます。 その仕組みやトレーニングに使用されたデータを知る必要はありません。 完全にトレーニングされたモデルに自分のデータを取り込むことで予測が得られます。

トレーニング データが一部または全部必要

一部のサービスでは、自分のデータを取り込んでからモデルをトレーニングすることができます。 これにより、サービスのデータとアルゴリズムに自分のデータを加えてモデルを拡張できます。 出力はニーズに合ったものとなります。 自分のデータを取り込むときに、サービスに固有の方法でデータにタグを付ける必要がある場合があります。 たとえば、花を識別するようにモデルをトレーニングする場合は、花の画像のカタログを、各画像における花の位置と共に提供してモデルをトレーニングできます。

あるサービスは、独自のデータを強化するためにユーザーにデータの提供を "許可" します。 あるサービスは、ユーザーにデータの提供を "要求" します。

リアルタイムまたはほぼリアルタイムのデータが必要

サービスによっては、効果的なモデルを構築するために、リアルタイムまたはほぼリアルタイムのデータが必要になることがあります。 こうしたサービスでは大量のモデル データが処理されます。

データ モデルに関するサービスの要件

次のデータは、各サービスが許可または要求するデータの種類でサービスを分類したものです。

Cognitive Service トレーニング データが不要 ユーザーがトレーニング データを一部または全部提供 リアルタイムまたはほぼリアルタイムでデータを収集
Anomaly Detector x x x
Bing Search x
Computer Vision x
Content Moderator x x
Custom Vision x
Face x x
Ink Recognizer x x
Language Understanding (LUIS) x
Personalizer ○* ○* x
QnA Maker x
Speaker Recognizer x
Speech のテキスト読み上げ (TTS) x x
Speech の音声テキスト変換 (STT) x x
音声翻訳 x
言語サービス x
Translator x
Translator - Custom Translator x

*Personalizer は、(リアルタイムで動作するため) サービスが収集したトレーニング データだけでユーザーのポリシーとデータを評価します。 Personalizer の事前トレーニングやバッチ トレーニングには、大量の履歴データセットが必要ありません。

Cognitive Services を使用できる場所

このサービスは、REST API または SDK 呼び出しを行うことができるアプリケーションで使用されます。 たとえば、Web サイト、ボット、仮想現実や複合現実、デスクトップ アプリケーション、モバイル アプリケーションなどです。

Azure Cognitive Search は独立したクラウド検索サービスであり、必要に応じて Cognitive Services を使用して、イメージと自然言語の処理をインデックス作成ワークロードに追加します。 Cognitive Services は、個々の API をラップする組み込みのスキルを通じて Azure Cognitive Search で公開されます。 チュートリアルには無料のリソースを使用できますが、ボリュームが大きい場合は課金対象のリソースを作成して接続するようにしてください。

Cognitive Services の用途

各サービスからユーザーのデータに関する情報が提供されます。 サービスを組み合わせて複数のソリューションを連結できます。たとえば、音声 (オーディオ) をテキストに変換し、そのテキストを多数の言語に翻訳し、翻訳された言語でナレッジベースから回答を得ることができます。 Cognitive Services は、インテリジェントなソリューションを独自に作成するために使用できるほか、従来の機械学習プロジェクトと組み合わせてモデルを補完したり、開発プロセスを高速化したりすることもできます。

他の機械学習ツールにモデルをエクスポートできる Cognitive Services:

Cognitive Service モデル情報
Custom Vision Tensorflow for Android、CoreML for iOS11、ONNX for Windows ML に対してエクスポート

詳細情報

次のステップ