認知サービスを使用したAI対応アプリの作成
目次
認知サービスは、AIと機械学習を利用して、非構造化データからビジネスの問題を解決します。これは、通常の開発アルゴリズムでは不可能だったことです。認知サービスは、クラス最高の精度を誇る既知のテスト済みモデルを利用して構築します。一般的には文字、音声、画像解析があり、大量のデータセットを利用してモデルのトレーニングとテストを行えます。特定のオブジェクトやパターンを検出する画像認識などのサービスを可能にするために、特定のデータセットを用いてトレーニングを行うことも可能です。認知サービスは、以下のカテゴリーに分類できます。
- 視覚サービス: 画像や動画処理を担当
- 音声サービス: 音声認識、意図認識、聞き起こし、合成を担当
- 文字サービス: 内容や感情の解析を担当
- 知識サービス: 与えられたコンテンツからQ&Aを自動作成するなど、より複雑な内容解析を提供
視覚サービス
- Azureの視覚サービス
- Googleの視覚サービス
- IBMの視覚サービス
- AWS Rekognition
視覚サービスでは、画像処理アルゴリズムが写真や動画をスマートに認識、キャプション付け、インデックス付け、調整します。画像のコンテンツの理解と分類、画像内の各オブジェクトや顔の検出、画像に印刷された文字の判読(OCR)が可能です。このセクションでは、Microsoft、Google、IBM、AWSの視覚サービスを紹介し、OutSystemsでの利用方法を説明します。
Azureの視覚サービス
Microsoft Azureの視覚サービスは、以下を提供しています。
- 画像の分析: コンテンツを確実に識別・ラベリングして、画像内の視覚的コンテンツについての情報を返します。複数のオブジェクトや成人向けと思われるコンテンツを検出し、画像からロケーションを取得します。さらに、画像の種類や配色も特定します。
- 画像内の文字の認識(手書きおよび印刷): OCR(光学的文字認識)を利用して画像内の文字を検出し、認識された語句をマシンで読み取り可能な文字ストリームに変換します。
- 著名人およびランドマークの認識rks: ビジネス、政治、スポーツ、芸能分野の著名人や、世界中の自然物や人工物のランドマークを画像から検出します。
- サムネイルの生成: 画像に基づきサムネイルを作成し、最適なサイズ、形、スタイルとなるよう画像を修正します。スマートトリミングを適用すると、関心領域を維持しつつ、オリジナル画像とは異なる縦横比のサムネイルを生成できます。
- 顔の検証: 2つの顔が同一人物のものかどうかを確認し、同一である可能性に信頼性スコアを割り当てます。
- 顔の検出: 画像から人物の顔を探し出し、長方形で画像内の顔の位置を示すと同時に、年齢、感情、性別などのアトリビュートも表示します。
- 感情の認識: 表情を分析し、怒り、軽蔑、嫌悪、恐怖、幸福、無感情、寂しさ、驚きといった感情の確立を、信頼度スコアで返します。
- 画像認識のカスタムモデル: 特定のユースケース向けに、画像認識モデルをカスタム画像とカスタムタグでトレーニングします。
Microsoftとは戦略的パートナーシップを結んでいるため、OutSystemsのプラットフォームはAzureの知識サービスのコンポーネントすべてをサポートし、連携を実現しています。これにより、OutSystems IDEでOutSystemsのビジュアル言語を用いてこれらの機能を利用できます。
本視覚サービス用のForgeコンポーネントは、Azure Cognitive Services Connectorです。
Googleの視覚サービス
Google Cloud Visionは、以下のサービスを提供しています。
- テキストの抽出: OCRを使用して画像内の文字を検出し、自動的に言語を識別します。
- 画像内の文字の識別: 位置特定を利用して画像内のすべての文字オブジェクトのリストを作成し、文字が検出された領域を特定します。
- 画像内の特定のデータ型の取得: 指定した通常表記を用いて画像から文字を抽出し、メールや日付などに利用できます。
指定した通常表記を用いて画像から文字を抽出し、メールや日付などに利用できます。
本視覚サービス用のForgeコンポーネントは、Google Cloud Vision OCRです。
IBM Watsonの視覚サービス
IBMのWatson Visual Recognitionサービスは、以下のサービスを提供しています。
- 顔の検出: 画像内の顔を分析し、推定年齢、性別、著名人の場合は名前を特定します。
- 画像の認識: 画像内のオブジェクトをタグ付けして分類します。トレーニングによりカスタムクラスも使用できるようになります。
IBM Watsonの視覚サービス用のレビュー済みコンポーネントを利用することで、OutSystems IDEでOutSystemsのビジュアル言語を用いてこれらの機能を利用できます。
本視覚サービス用のForgeコンポーネントは、IBM Watson Servicesです。
このコンポーネントは、アップデートにより新たなWatson認証要件をサポートします。
AWS Rekognition
AWS Rekognitionは、以下のサービスを提供しています。
- 顔の認識: アプリケーションで顔のコレクションを作成します。こうしたコレクションを「検索」し、サンプル画像と一致するか確認することもできます。
- コレクションへの顔の追加: こうしたコレクションを「検索」し、サンプル画像と一致するか確認することもできます。
Amazon Rekognition Face Matching用のレビュー済みコンポーネントを利用することで、OutSystems IDEでOutSystemsのビジュアル言語を用いてこれらの機能を利用できます。
本視覚サービス用のForgeコンポーネントは、Amazon Rekognition Face Matchingです。
音声サービス
- Azureの音声サービス
- IBM Watsonの音声サービス
音声サービスは、発話された口語の文字への変換、文字の自然な音声への変換、声を使用した検証、アプリへの話者認識追加を、様々な言語や音声で実現します。
Azureの音声サービス
Azureの音声サービスは、以下のサービスを提供しています。
- 音声の聞き起こし: 音声をテキストに変換します。
- カスタム音声サービス: 特定のユースケース用に、カスタム音声分析で音声モデルをトレーニングします。
- 話者の検証: 話者が名乗った身元を声で検証し、アプリケーションでインテリジェントな検証ツールを利用できるようにします。
- 話者の特定: 話者の入力音声を、選択した話者のグループと比較することにより、不明な話者の身元を特定し、一致するものがあった場合はそれを返します。
- Text to speech: ほぼリアルタイムで文字を音声に変換し、再生します。アプリケーションがユーザーに自然に話せるようになり、アクセス性やユーザビリティが向上します。
Microsoftとは戦略的パートナーシップを結んでいるため、OutSystemsのプラットフォームはAzureの視覚サービスのコンポーネントすべてをサポートし、連携を実現しています。これにより、OutSystems IDEでOutSystemsのビジュアル言語を用いてこれらの機能を利用できます。
本音声サービス用のForgeコンポーネントは、Azure Cognitive Services Connectorです。
IBM Watsonの音声サービス
IBM Watson Speechで利用できるサービスは1つです。Text to speechサービスは、複数の言語やトーンで書かれた文字を、人間のものに近い音声に変換します。たとえば運転中に注意をそらさないよう音声で選択肢を提供するなど、様々な機能やアクティビティでコンテンツへのアクセス性を向上させます。
IBM Watsonの音声サービス用のレビュー済みコンポーネントを利用することで、OutSystems IDEでOutSystemsのビジュアル言語を用いてこれらの機能を利用できます。
本音声サービス用のForgeコンポーネントは、IBM Watson Servicesです。
文字サービス
- Azureの文字サービス
- IBMの文字サービス
文字サービスは、アプリやサービスが非構造テキストの意味を理解して意図を認識したり、人物、場所、イベントなどの情報をドキュメント、ニュース記事やブログ記事から抽出したりすることを可能にします。文字サービスは、コンセプト、エンティティ、センチメントなどのメタデータをコンテンツから抽出することもできます。
Azureの文字サービス
Azureの文字サービスでは、複数のサービスを利用できます。
- Sentiment Analysis: Uテキストのセンチメントをスコアで分析します。スコアが1に近いほど肯定的なセンチメントであり、0に近いほど否定的なセンチメントとなります。センチメントスコアは、分類技術を用いて生成されます。
- キーフレーズ抽出: 入力したテキストから、キーフレーズのリストを返します。
- 言語検出: 0から1までの数値スコアを使用して、検出された言語である可能性を示します。1は100%の信頼度を表します。サポート対象言語は120言語です。
- 名前つきエンティティ認識: 組織、人物、ロケーションなどの名前を検出します。
- 翻訳: E多言語サポートを必要とするWebサイト、ツールを始めとするソリューションなどを、アプリケーションに容易に取り込めるようにします。例としては、WebサイトのローカライゼーションやEコマース、カスタマーサポート、メッセージングアプリケーション、社内コミュニケーション、ソーシャルメディアのスケジューリングやインバウンドプラットフォームなどが挙げられます。
- スペルチェック: Bing Spell Search API v7を利用します。
Microsoftとは戦略的パートナーシップを結んでいるため、OutSystemsのプラットフォームはAzureの文字サービスのコンポーネントすべてをサポートし、連携を実現しています。これにより、OutSystems IDEでOutSystemsのビジュアル言語を用いてこれらの機能を利用できます。
本文字サービス用のForgeコンポーネントは、Azure Cognitive Services Connectorです。
IBM Watsonの文字サービス
IBM Watsonの文字サービスでは、以下のサービスを利用できます。
- 翻訳: テキストのソース言語を識別し、他の指定言語に翻訳します。カスタム翻訳モデルも利用できます。
- Text Analysis: テキスト、HTML、パブリックWebページのコンセプト、エモーション、キーワードなどを解析します。
- Personality Insights: 筆者が書いたテキストから、ニーズ、価値観、習慣などの人間的な特徴を導き出します。
- テキストトーン: テキストやHTMLの入力を分析し、感情、言語、社会性など、トーンに関する様々な特徴をとらえます。
IBM Watsonの文字サービス用のレビュー済みコンポーネントを利用することで、OutSystems IDEでOutSystemsのビジュアル言語を用いてこれらの機能を利用できます。
本文字サービス用のForgeコンポーネントは、IBM Watson Servicesです。
このコンポーネントは、アップデートにより新たなWatson認証要件をサポートします。
知識サービス
- Azureの知識サービス
現時点では、Azureのみが知識サービスを提供しています。このサービスでは、複雑なコンテンツ解析を音声および文字サービスと組み合わせて、ユーザーのニーズを把握するだけではなく、問題に対する正しいソリューションを探すことのできるチャットボットを作成します。
Azureの知識サービス
Azureの知識サービスであるQnA Generatorは、既存のコンテンツから質問と回答を抽出してQ&Aを作成します。これが、インテリジェントチャットボットの主要コンポーネントとなります。
Microsoftとは戦略的パートナーシップを結んでいるため、OutSystemsのプラットフォームはAzureの知識サービスのコンポーネントすべてをサポートし、連携を実現しています。これにより、OutSystems IDEでOutSystemsのビジュアル言語を用いてこれらの機能を利用できます。
本知識サービス用のForgeコンポーネントは、 Azure Cognitive Services Connectorです。