Amazon Web Services ブログ

Category: Artificial Intelligence

Amazon Lex Conversation ログを使った、ユーザとのやり取りをモニタリングおよび改善

会話のインターフェースを提供する製品のオーナーにとって、それに対応する可視性やテレメトリーなしでユーザーエクスペリエンスを解釈し向上しようとするのは、目隠ししながら自動車を運転するのと同じだと言えるでしょう。ご使用になっているボットとユーザーの間のやり取りを理解することは重要です。やり取りの履歴に基づいて継続的な改善を行うことができます。こういった実用的な洞察は、ボットが行った会話をモニタリングすることで取得することが可能です。ユーザー入力のキャプチャーであれば、アプリケーションにカスタムロジックを書き加えることで実現できます。しかし、追加コードと関連するインフラストラクチャの構築や管理といった作業は、扱いが難しく作業時間も消費するものです。さらに、このカスタムロジックが、エンドユーザー側のレイテンシーを増加しないようにする必要もあります。 今回、Amazon Lex 用の Conversation logs の発表により、ボットとユーザー間のやり取りをネイティブに保存できるようになったことを、とても喜ばしく思います。これにより、テキスト入力は Amazon CloudWatch Logs に、音声入力 Amazon S3 にログ記録するよう定義できます。このログには、ユーザーからの入力とボットによる応答に加え、適用したインテントや取りこぼした発言に関する情報も記述されます。スロットの値としてキャプチャーされた機密データを保護するためには、スロットを難読化し、ログに対しその値をマスクすることもできます。 この会話ログは、定義済みのインテントにマップされていない発言を追跡するために利用できます。こういった取りこぼした発言により、ボットの設計を改善できるようになります。今回から、セッション全体の会話についてのトランスクリプションが利用可能になりました。会話の流れをより良く分析し、そのデザインを改善しながら、ユーザーエンゲージメントの向上をはかることができます。 今回の記事では、会話ログの有効化、機密を含むスロットの難読化、ボットに関する先進的なモニタリング機能のセットアップなどの方法を解説します。 ボットの構築 この記事では、自動車ローン向けボットをモデリングするために、次のような会話を使用します。 ユーザー: 自動車ローンの未払い残高を確認したいのですが。 エージェント: 承知しました、お客様のアカウント番号をお教えいただけますか? ユーザー: 12345678 です。 エージェント: 確認のため、SSN の最後の 4 桁をお伝えいただけますか? ユーザー: 1234 です。 エージェント: ご協力ありがとうございました。アカウント番号 12345678 の自動車ローンには、12,345 USD の残高があります。 ユーザー: どうもありがとう。 次のようなインテントを使い、AutoLoanBot (download) という名の Amazon Lex ボットを構築します。 ApplyLoan – 名前や SSN といった必要な情報を聞きだし、リクエストを新たに作成します。 PayInstallment – ユーザーのアカウント番号、ユーザーの […]

Read More

Amazon SageMaker Ground Truth を使って、セマンティックセグメンテーションのラベル付けを実行する際にオブジェクトを自動セグメント化する

Amazon SageMaker Ground Truth は、機械学習 (ML) 用の高精度なトレーニングデータセットをすばやく構築できるよう支援します。Ground Truth で、サードパーティおよび独自のラベル付けを行う人間の作業者に簡単にアクセスでき、一般的なラベル付けタスク用のビルトインのワークフローとインターフェースも提供できるようになります。さらに、Ground Truth では自動データラベル付けを使用して、ラベル付けのコストが最大 70% 削減します。自動データラベル付けとは、人間がラベルを付けたデータから Ground Truth をトレーニングし、サービスが独自にデータにラベルを付けることを学習するものです。 セマンティックセグメンテーションとは、画像内の個々のピクセルにクラスラベルを割り当てるなどのコンピュータービジョン ML の手法です。たとえば、移動中の車両が撮像した動画フレームで、クラスラベルに車両、歩行者、道路、信号機、建物、背景を含めることが可能です。画像内のさまざまなオブジェクトの位置を高い精度で理解することができるため、自律走行車やロボットの知覚システムの構築によく使用されます。セマンティックセグメンテーション用の ML モデルを構築するには、まずピクセルレベルで大量のデータにラベルを付ける必要があります。しかし、このラベル付けプロセスが複雑で、熟練したラベル付けの作業者とかなりの時間を要します。画像を正確にラベリングするのに最大 2 時間もかかる場合もあります。 Ground Truth ではセマンティックセグメンテーションのラベリングユーザーインターフェイスに自動セグメント機能を追加し、ラベル付けスループットと精度を向上し、かつ作業者の疲労を軽減することを目指しました。自動セグメント化ツールでは、最小限の入力だけで画像内の関心対象の領域に自動的にラベルを付けることができるため、タスクが簡素化します。これで、自動セグメントからの結果出力を受け入れる、元に戻す、または修正することができます。次のスクリーンショットは、ツールバーの自動セグメント化機能部分を強調し、画像内の犬をオブジェクトとしてキャプションしたことを示しています。この犬に割り当てられたラベルは Bubbles です。 この新機能で、セマンティックセグメンテーションタスクの作業が最大 10 倍早くなります。多角形をきっちり描画したり、ブラシツールを使って画像内のオブジェクトをキャプションする必要はなく、オブジェクトの最上部、最下部、左端、右端の 4 つの部分を描画するだけです。Ground Truth はこれら 4 つのポイントを入力すると、Deep Extreme Cut (DEXTR) アルゴリズムを使用して、オブジェクトの周りにぴったりとフィットするマスクを生成します。次のデモは、このツールでより複雑なラベル付けタスクのスループットを高速化する方法をご紹介しています。 まとめ この投稿では、セマンティックセグメンテーションと呼ばれるコンピュータービジョン ML の手法の目的と複雑さについてご紹介しました。自動セグメント化機能を使えば、作業者による最小限の入力で画像の関心領域のセグメンテーションを自動化でき、セマンティックセグメンテーションのラベリングタスクが高速化します。 いつものように、AWS では皆さんのフィードバックをお待ちしています。コメント欄よりご意見やご質問をお送りください。 著者について Krzysztof Chalupka は Amazon ML Solutions Lab […]

Read More

Amazon Sumerian および Amazon Lex を使用して AR/AI 車両マニュアルを作成する

自動車メーカーは、新しいコントロール、インターフェイス、インテリジェンスを車両に継続的に追加しています。これらの機能の使用方法を詳しく説明したマニュアルを公開していますが、これらのハンドブックは扱いにくいものです。それら数種類の言語の何百ものページで構成されているため、特定の機能に関する関連情報を検索することは困難です。紙ベースのマニュアルをビデオまたはモバイルアプリに置き換えようとしても、エクスペリエンスは向上していません。その結果、すべての所有者が自動車メーカーが提供するイノベーションすべてを知って利用できるわけではありません。 この投稿では、Amazon Sumerian およびその他の AWS のサービスを使用して、インタラクティブな自動マニュアルを作成する方法について説明します。このソリューションは、拡張現実、AI chatbot、および AWS IoT を通じて提供されるコネクテッドカーデータを使用します。これは包括的な段階的なチュートリアルではありませんが、論理コンポーネントの概要を提供します。 AWS のサービス このブログ投稿では、次の 6 つのサービスを使用しています。 Amazon Sumerianは、特別なプログラミングや3Dグラフィックの専門知識を必要とせずに、仮想現実 (VR)、拡張現実 (AR)、および 3D アプリケーションをすばやく簡単に作成および実行できます。作成された 3D シーンはワンクリックで公開し、Web、VR ヘッドセット、モバイルアプリケーションで配布できます。この投稿では、Sumerian を使用して、車両の内部と外部 (オプション) の両方の 3D モデルをレンダリングし、アニメーション化します。 Amazon Lex は、音声とテキストを使用して任意のアプリケーションに会話形式のインターフェースを構築するためのサービスです。Amazon Lex は、Amazon Alexaを強化するためのテクノロジーと同じテクノロジーを活用しています。Amazon Lex は、Alexaの パワーをすべての開発者が利用できるようにすることで、深層学習テクノロジーを普及させます。この投稿では、Amazon Lex を使用して音声コマンドを認識し、所有者から問い合わせられている機能を特定します。 Amazon Polly は、このテキスト読み上げサービスは、人の声のように聞こえる音声を合成するために、高度な深層学習テクノロジーを使用します。Amazon Polly を使用すると、まったく新しいカテゴリの音声対応製品を話し、構築するアプリケーションを作成できます。Amazon Polly は、さまざまな言語で多数の音声をサポートし、さまざまな国でアプリケーションを使用できるようにします。この投稿では、Amazon Polly を使用して Amazon Lex の回答をリアルな音声に発声しています。 Amazon DynamoDB は、任意の規模で […]

Read More

Amazon SageMaker Processing – 完全マネージド型のデータ処理とモデル評価

本日、フルマネージドインフラストラクチャで前処理、後処理、およびモデル評価のワークロードを簡単に実行できる、Amazon SageMaker の新機能、Amazon SageMaker Processing をリリースいたしました。 高精度な機械学習 (ML) モデルをトレーニングするにはさまざまな手順を踏む必要がありますが、中でもデータセットの前処理が最も重要となるでしょう。たとえば: 使用中の ML アルゴリズムに合う入力形式にデータセットを変換する、 既存の特徴をより表現力のある表現 (one-hot エンコーディングカテゴリ別特徴など) に変換する、 数値特徴を再スケーリングまたは正規化する、 高レベル特徴量エンジニアリングを行う (例: 住所を GPS 座標に置き換える)、 自然言語処理アプリケーションのテキストをクリーニングし、トークン分割する、 などなど! これらのタスクは、(とても大変な) データセットに対する特注スクリプトの実行と、後でトレーニングジョブで使用する処理済みバージョンの保存を伴います。ご想像のとおり、それらを手動で実行したり、オートメーションツールを構築およびスケールしたりする必要があることを考えると、ML チームは気が重くなります。後処理ジョブ (フィルタリングや照合など) やモデル評価ジョブ (さまざまなテストセットに対するモデルのスコアリング) についても同じことが言えます。 この問題を解決するために、私たちは Amazon SageMaker Processing を構築しました。それでは、詳細を説明しましょう。 Amazon SageMaker Processing のご紹介 Amazon SageMaker Processing には、データサイエンティストと ML エンジニアが Amazon SageMaker で前処理、後処理、およびモデル評価ワークロードを簡単に実行できる新式の Python SDK が導入されています。 この SDK では […]

Read More

Deep Graph Library が Amazon SageMaker で利用可能に

本日ここに、グラフニューラルネットワークを簡単に実装できるよう構築されたオープンソースライブラリ、Deep Graph Library が、Amazon SageMaker で利用可能になったことをお知らせします。 近年、自由形式のテキスト、画像、動画など、複雑なデータから詳細なパターンを抜き出すことができる、驚異的な性能の深層学習が世界に旋風を巻き起こしています。しかし、多くのデータセットはこれらのカテゴリーに当てはまらないため、グラフの方がわかりやすく表すことができます。 畳み込みニューラルネットワークや再帰型ニューラルネットワークのような、従来のニューラルネットワークのアーキテクチャは、そのようなデータセットに適していないことは直感的にも感じられ、新しいアプローチが必要となります。 グラフニューラルネットワークの初歩 グラフニューラルネットワーク (GNN) は、今日の機械学習におけるもっとも画期的な発展事項です。手始めに、これらの参考資料をご覧になるとよいでしょう。 GNN は、以下のような予測モデルのトレーニングに使用されています。 ソーシャルネットワーク。関連する利用者同士のつながりをグラフ化 推奨システム。顧客とアイテムの間のやり取りをグラフ化 化学分析。原子や結合をグラフ化して化合物のモデルを作成 サイバーセキュリティ。発信元と発信先の IP アドレスの接続状況をグラフ化で説明 その他多数のモデル ほとんどの場合、これらのデータセットは非常に大きく、部分的なラベル付けしかできません。ある個人から既知の不正を行う者への接続状況を分析することで、その個人が不正を行っている可能性を予測する、不正行為検出シナリオを考えてみましょう。この問題は、グラフノードの一部のみがラベル付けされる (「不正」か「正当」)、半教師あり学習タスクとして定義できます。これは大きなデータセットを手作業のラベル付けにより構築し、「線形化」して従来の機械学習アルゴリズムに適用するよりも良いソリューションになるはずです。 これらの問題に対処するためには、分野の専門知識 (小売、財務、化学など)、コンピューターサイエンスの知識 (Python、深層学習、オープンソースツール)、インフラストラクチャの知識 (トレーニング、デプロイ、モデルのスケーリング) が必要です。これらのスキルをすべてマスターしている人はごくわずかです。それが Deep Graph Library や Amazon SageMaker のようなツールが必要とされる理由です。 Deep Graph Library の紹介 2018 年 12 月に Github で初めてリリースされた Deep Graph Library (DGL) は Python のオープンソースライブラリーで、研究者や科学者がデータセットの GNN を迅速に構築、トレーニング、評価するのに役立ちます。 DGL は、PyTorch […]

Read More

【開催報告】第10回Amazon SageMaker 事例祭り

アマゾン ウェブ サービス ジャパン株式会社 パートナーソリューションアーキテクトの小田桐です。 AWS Japan 目黒オフィスでは「Amazon SageMaker 事例祭り」(Twitter: #sagemaker_fes) を定期的に開催しています。2019年11月28日に開催された 第10回 Aazon SageMaker 事例祭り では、AWS Japan のソリューションアーキテクトによるサービスの最新情報や技術情報と、Amazon SageMaker をご利用いただいているお客様をゲストスピーカーにお招きし、実際に導入頂いたお客様による「体験談」をお話し頂きました。

Read More

Amazon SageMaker Operators for Kubernetes のご紹介

AWS より、Amazon SageMaker Operators for Kubernetes をご紹介いたします。この新機能を使用すると、開発者およびデータサイエンティストは、Amazon SageMaker における 機械学習 (ML) モデルのトレーニング、チューニング、デプロイを、Kubernetes を介して簡単に行うことができます。Kubernetes クラスターに Amazon SageMaker Operators をインストールすると、Kubernetes API や “kubectl” といったコマンドラインの Kubernetes ツールをネイティブに使用して Amazon SageMaker ジョブを作成することが可能です。 多くの AWS のお客様が、Amazon Elastic Kubernetes Service (EKS) といったマネージドサービスがよく使用されるコンテナ化アプリケーションをデプロイおよび管理するために、オープンソースの汎用コンテナオーケストレーションシステムである Kubernetes を使用しています。これにより、データサイエンティストおよび開発者は、反復可能な ML パイプラインのセットアップ、トレーニングや推論のワークロードに対する制御能力の向上などが可能です。しかし ML ワークロードをサポートするには、カスタムコードの記述による基盤となる ML インフラストラクチャの最適化、高可用性と高信頼性の確保、データサイエンスに対する生産性向上ツールの提供、しかるべきセキュリティ要件および規制要件への準拠が依然必要です。例えば、Kubernetes ユーザーがトレーニングや推論に GPU を使用する際、Kubernetes による GPU ワークロードのスケジューリングとスケーリングの設定を変更して、使用率、スループット、可用性を向上させる必要が出てくるケースが多々あります。また、Kubernetes ユーザーはトレーニング済みモデルを本番環境にデプロイして推論を実行する際に、複数のアベイラビリティーゾーンに存在する Auto Scaling クラスターのセットアップおよび最適化に余計な時間を取られてしまいます。 Amazon SageMaker […]

Read More

Amazon SageMaker Processing – フルマネージドなデータ加工とモデル評価

2019年12月3日 Amazon SageMaker の新しい機能であり、データの前処理や後処理、モデルの評価といったワークロードをフルマネージドなインフラストラクチャの上で簡単に実行する機能である、Amazon SageMaker Processing を発表できることを嬉しく思います。 精度の高い機械学習(ML)モデルを学習するためには、多くの異なるステップを必要としますが、以下のようなデータの前処理より重要なものはないでしょう。 機械学習アルゴリズムが活用できる入力フォーマットへデータセットを変換 カテゴリカル特徴量のOne-Hot エンコーディングのような、既存の特徴量をさらに表現力の高い特徴量へ変換 数値型特徴量のリスケールや平準化 住所をGPSの座標に置き換えるような、高レベルな特徴量の作成 自然言語処理を適用するための文章のクリーニングやトークン化 これらのタスクは、データセットに応じて異なるスクリプトを実行することになり、そして、後で学習の際に使われるための加工済データを保存します。あなたが想像する通り、機械学習チームにとって、これらを手作業で行ったり、自動化ツールを構築してスケールさせることは魅力的なな計画とは言えません。同様のことが後処理ジョブ(フィルタリングや照合など)やモデル評価ジョブ(異なるテスト用データセットに対するスコアリング)にも言えるかも知れません。 これらの課題を解決するために、 Amazon SageMaker Proscessing が開発されました。より詳細をご紹介させて下さい。 Amazon SageMaker Processing の紹介 Amazon SageMaker Processing はデータサイエンティストと機械学習エンジニアが前処理、後処理、モデル評価といったワークロードを Amazon SageMaker 上で簡単に行うための新しい Python SDK を導入します。 この SDK はデータセットの変換のために使われるおそらく最も人気のあるライブラリである scikit-learn 向けの SageMaker の組み込みコンテナを使います。 必要に応じて、特定の Docker イメージに制限されることなく、独自の Docker イメージをお使い頂くことが出来ます。これにより、最大限の柔軟性を提供し、SageMaker Processing や Amazon ECS や Amazon Elastic Kubernetes Servicesなどの AWS […]

Read More

Amazon SageMaker Debugger – 機械学習モデルのデバッガ

2019年12月3日、機械学習(ML)学習時に起こる複雑な問題を自動的に識別する Amazon SageMaker の新しい機能、Amazon SageMaker Debugger を発表できて非常にうれしく思います。 機械学習モデルの構築と学習は、サイエンスと工芸の融合です(魔術と言う人もいます)。データセットの収集から準備、さまざまなアルゴリズムの実験、最適なトレーニングパラメーター(恐ろしいハイパーパラメーター)の探索まで、機械学習を実行する人は高性能のモデルを提供するために多くのハードルをクリアする必要があります。これがまさに、機械学習ワークフローを簡素化し高速化する、モジュール式のフルマネージドサービス Amazon SageMaker を構築する理由なのです。

Read More

Amazon SageMaker Studio: 機械学習のための初の統合開発環境

2019年12月3日、Amazon SageMaker Studioという機械学習のための初の統合開発環境(IDE)を提供できることを非常に嬉しく思います。 2017年に Amazon SageMaker がリリースされてからしばらく経ち、このサービスをご利用いただいているお客様の数は増加しています。機械学習開発ワークフローには反復的なプロセスが必要ですが、機械学習ツールが成熟していないために開発者は大変な思いをしてきました。従来のソフトウェア開発時に開発者が当たり前に使用する多くのツール(デバッガ、プロジェクトマネジメントツール、コラボレーション機能、モニタリングツールなど)は、まだ機械学習用には存在していないのです。

Read More