AWS を使用して機械学習ソリューションをビジネスに追加する方法

公開: 2020-05-13

機械学習は常に進化しており、大部分のデータを迅速かつ自動的に分析できるため、世界経済で大きな役割を果たしています。

機械学習テクノロジーをプログラマーにさらに近づけるために、Amazon は現在、AWS プラットフォームで 10 以上の機械学習および人工知能サービスを提供しています。 これらのサービスを使用すると、モデルの構築を簡単な方法で開始でき、ビジネスを次のレベルに引き上げることができます。

これらのサービスのほとんどは完全に管理されています。つまり、これらのツールは事前にトレーニングされたモデルを利用してデータを操作するため、それらを使用するために機械学習の経験は必要ありません。 ビジネス上の問題に応じて、コンピューター ビジョン、自然言語処理、レコメンデーション、予測などの分野で事前にトレーニングされた ML サービスから選択できます。 以下のグラフは、機械学習ソリューションのワークフローと、各段階で使用できる AWS ツールを示しています。

機械学習ソリューションを作成する段階

AWS を使用して機械学習をビジネスに適用する方法

最初に: データの収集

ML ソリューションを作成する上で最も重要な要素はデータです。 データには、構造化、半構造化、非構造化の 3 種類があります。

  • 構造化データの要素はアドレス指定可能で、リレーショナル データベースに格納できます。 このタイプのデータには、定義済みのスキーマがあります。 構造化データの例として、数値データと文字列 (テキスト) データを含むリレーショナル データベースがあります。
  • 半構造化データセットはリレーショナル データベースには存在しませんが、分析を容易にする事前定義された要素 (スキーマ) がいくつかあります。 半構造化データ ファイル タイプの例としては、XML、HTML、RDF、または JSON があります。
  • 非構造化データはその他すべてです。 このデータ型には定義済みの構造がなく、通常は一連のファイルとして保存されます。 最も一般的な非構造化データの例は、テキスト ドキュメント、写真、ビデオ、オーディオ ファイル、およびアプリケーション ログです。

データの読み込み – Kinesis とは?

AWS Kinesisサービスは、ウェブやモバイル アプリケーションなどのさまざまなソースから継続的に生成できるデータを取り込みます。 これは、ギガバイト単位のデータを非常に迅速にキャプチャできるリアルタイム データ ストリーミング サービスです。 Kinesisは次のツールを提供します。

  • Kinesis Video Streaming – デバイスから AWS にビデオをストリーミングするのに役立つツール
  • Kinesis Data Streaming – IT ログ、ウェブサイトのクリック、金融取引などのデータ収集に役立つツール
  • Kinesis Data Firehose – ストリーミングされたデータをデータストア (S3、Redshift など) または分析ツールにロードするツール
  • Kinesis Data Analytics – ストリーミングされたデータを SQL または Java でリアルタイムに処理するツール

データの読み込み – Glue とは?

データの読み込みに役立つ別の AWS サービスは、Apache Spark によって管理されるGlueです。 これは、分析に使用する前にデータを準備するために使用できる抽出、変換、読み込みツール (ETL) です。 Glue は、構造化データと半構造化データの両方で機能します。

Glue の要素は、データ カタログ、ETL エンジン、およびスケジューラです。 Glue データ カタログは、ツールの最も重要な部分です。 特定のデータに関するメタデータを保存し、データ ソースを調べてスキーマを検出するクローラーによって自動的に検出されます。

ETL エンジンは、非プログラミング ユーザー向けの ETL プロセスで使用する Python および Scala コードを生成できます。 また、ユーザーが提供するコードでデータを処理することもできます。 スケジューラーは、ジョブを監視し、タスクを実行し、いくつかのイベント (毎週月曜日の特定の時間、または別のタスクの完了または失敗など) に基づいてトリガーすることができます。

第二に、適切な機械学習ツールを選択する

必要なデータを収集したら、ML ソリューションの構築を開始できます。 AWS は、さまざまなタイプのデータを処理できる機械学習ツールをいくつか提供しています。

それでは、これらのツールのそれぞれを見て、ビジネスでの主な応用分野を紹介しましょう

SageMaker とは何ですか?

SageMakerは、機械学習の開発者やデータ サイエンティストに最も役立ちます。 このサービスは、最小限の労力で機械学習モデルをコンセプトから本番環境に移行するのに役立つ完全なソリューションです。 Amazon SageMaker には、データのラベル付け、モデルの構築、最適化、トレーニング、テスト、デプロイに役立つ豊富なツール セット (Ground Truth、Notebooks、Experiments、Debugger、Model Monitor、Neo) があります。

特定の問題に対して適切なアルゴリズムを手動で見つけるには、多くの場合、何時間ものトレーニングとテストが必要です。 SageMaker には AutoPilot オプションがあり、50 種類の事前トレーニング済み ML モデルを使用して、当面のケースに最適な ML モデルを自動的に見つけます。 開発者は、このソリューションを使用してベースライン モデルをすばやく見つけることができます。

パーソナライズとは?

Personalizeは、レコメンデーション システムの構築に役立つ機械学習サービスです。 Personalize は、アプリケーションからのアクティビティ ストリーム (クリック、ページ ビュー、購入など) を処理し、それらを使用してパーソナライズされた推奨事項を作成できます。 年齢や地理的な場所など、ユーザーに関する追加情報を使用することもできます。 アプリケーションでのレコメンデーション結果の表示は、短い API 呼び出しで簡素化できます。 Personalize の機械学習テクノロジーは、Amazon.com による長年の使用により改善されてきました。

コンプリヘンドとは?

Comprehendは、機械学習を使用して非構造化テキスト データから貴重な洞察を抽出する自然言語処理 (NLP) サービスです。 このサービスは、感情分析、品詞抽出、およびトークン化を適用して、テキストの主要な特徴を検出します。 Comprehend は、特定のテキストがどの程度肯定的か否定的かを理解するのに役立ちます。

Comprehend には、特に医療業界向けの追加ツールである Amazon Comprehend Medical があります。 Amazon Comprehend Medical は、医療文書 (患者の医療記録、臨床メモなど) を分析し、投薬、用量、頻度に関する情報を抽出できます。 Comprehend はフル マネージド サービスです。

予報とは?

Forecastは、機械学習を使用して時系列予測モデルを構築します。 過去の時系列データを追加の変数 (予測に影響を与える可能性があると思われる) と組み合わせて、予測モデルを構築できます。 この Amazon ソリューションは、株価や顧客の製品需要などの値を予測するために適用されます。 Forecast はフル マネージド サービスでもあり、ビジネス ニーズに合わせて拡張できます。

レックスとは?

Lexは自動音声認識 (ASR) を使用して音声をテキストに変換し、自然言語理解 (NLU) を使用してテキストの意図を認識します。 このソリューションにより、ユーザーは会話ボットを構築できます。

たとえば、顧客の問い合わせに自動的に回答する手動の顧客サポートの代わりに Lex を使用できます。 Amazon Lex は、Amazon Alexa (Amazon の仮想アシスタント AI) と同じ深層学習技術を使用しています。

ポリーとは?

Pollyは、ディープ ラーニング アルゴリズムを使用してテキストをリアルな音声に変換するクラウド サービスです。 現在、日本語、中国語、韓国語、アラビア語を含む 29 の言語で 60 の男性と女性の声をサポートしています。 Polly は、時間、日付、単位、分数、および略語も処理できます。 このソリューションにより、ユーザーは話すことができるアプリケーションを作成できます。

Fraud Detector とは何ですか?

Fraud Detectorは、支払い詐欺や偽のアカウントなどの不正なオンライン活動を特定するのに役立つ AWS のサービスです。 このサービスは完全に管理されているため、数回クリックするだけで不正検出モデルを作成できます。

テクストラクトとは?

Textractは、スキャンした文書からデータを自動的に読み取ることができるサービスです。 Textract は数時間で数百万ページを処理でき、ドキュメント ワークフローの自動化に役立ちます。 このサービスは、ローン申請書や医療文書などのドキュメントを処理するのに役立ちます。

翻訳とは?

Translateは、言語から言語へのテキスト翻訳を実行できる AWS 機械学習サービスです。 ディープ ラーニング モデルを使用して、従来の統計アルゴリズムと比較して、より正確で自然な翻訳を提供します。 Translate は 54 の言語 (アフリカーンス語、ブルガリア語、エストニア語など) と 2,804 の言語ペアをサポートしています。

認識とは何ですか?

Rekognitionは、画像や動画からオブジェクト、人物、テキストを認識できるコンピューター ビジョン サービスです。 Rekognition は、顔を識別して比較し、分析して、口、鼻、目などの顔の特徴を識別できます。

Rekognition には、顔画像から幸福、悲しみ、驚きなどの感情を自動的に検出するモジュールがあります。 また、リアルタイムの画像と保存されている参照画像を比較することで、ユーザーの身元を確認するユーザーの顔認証を実行することもできます。

3 番目: 機械学習ソリューションのデプロイ

モデルをデプロイする最も広く使用されている方法は SageMaker Service で、次の 2 つの方法のいずれかで使用できます。

  • SageMaker Hosting Serviceを使用して HTTPS エンドポイントをセットアップします。 このソリューションでは、クライアント アプリケーションがリクエストを HTTPS エンドポイントに送信して、デプロイされたモデルから予測を取得します。 このソリューションを使用するには、Docker イメージを提供する必要があります。 複数のモデルをデプロイする必要がある場合は、マルチモデル エンドポイントを使用することもできます。
  • SageMaker Batch Transform を使用して、データセット全体の予測を取得するのに役立ちます。 バッチ変換を使用してモデルをデプロイするには、モデル、データセット、および予測を保存するための S3 バケットが必要です。

デプロイの代替手段は、 AWS IoT Greengrassを使用することです。 このサービスは、AWS をモノのインターネット (IoT) デバイスに拡張します。 このサービスを使用すると、デバイスはデータを収集、フィルタリング、処理でき、クラウド接続がなくても Lambda 関数、Docker コンテナーを実行し、ML モデルに基づいて予測を実行できます。 インターネットに接続すると、Greengrass はすべてのデータをクラウド サービスと同期します。

概要

ご覧のとおり、Amazon Web Service は、ビジネスに影響力のある機械学習ソリューションを作成するのに役立つ豊富なツール セットを提供します。 ML AWS ツールを使用すると、顔検出、チャットボット、音声認識、ソーシャル メディア コンテンツの感情分析などの新しい機能をアプリケーションに追加できます。 AWS は、新しいユースケースに基づいて新しい ML サービスを数か月ごとに追加するため、AI ソリューションを作成するための最も急速に成長しているプラ​​ットフォームの 1 つになっています。

Miquido で将来性のある機械学習ソリューションを開発しましょう!