Amazon Web Services ブログ

Category: Artificial Intelligence

Amazon SageMaker での全体的な TensorFlow 2 ワークフローの作成

深層学習プロジェクトの全体的なライフサイクルを管理することには課題が伴います。特に、複数の別々なツールやサービスを使用する場合はそれが顕著です。たとえば、データの前処理、トレーニングと推論用コードのプロトタイピング、フルスケールでのモデルトレーニングとチューニング、モデルのデプロイ、そしてそれらすべてを稼働環境向けにオーケストレーションするためのワークフローの自動化などには、それぞれ異なるツールが使われるでしょう。ツールの入れ替えで手間がかかると、プロジェクトが遅延しコストは増大しがちです。今回のブログ記事では、Amazon SageMaker を使い、深層学習プロジェクトの全体的なライフサイクルを効率的に管理する方法をご紹介します。ここでは、サンプルコードのフレームワークとして TensorFlow 2 を使いますが、解説しているコンセプトは、他のフレームワークにも基本的に適用可能です。 また記事内では、関連したサンプルノートブックを取り上げていますが、これも、1 時間以内に実行が可能なものであり、解説しているすべての機能をお試しいただくことができます。詳細については、GitHub リポジトリをご参照ください。 Amazon SageMaker ワークフローの概要 TensorFlow 2 あるいは他のフレームワークを使用するデータサイエンスプロジェクトでは、データセットの取得、調査、前処理が、必ず作業の出発点となります。Amazon SageMaker ワークフローについて言えば、データの調査は一般的にノートブック内で行われます。こういったノートブックは、通常、就業時間帯のほとんどで実行されるため、比較的小型でさほどパワーがなく、料金も低いインスタンスタイプに適しています。 したがって、データセットが小さめな場合を除けば、ノートブックはフルスケールのデータ処理やモデルトレーニング、そして推論などに最適とは言えません。通常これらのタスクでは、相当量の並列コンピューティングリソースが必要となるため、ノートブックでの実行は現実的とは言えない訳です。一方で、サイズが最適でよりパワーがあり、これらのタスクが迅速に完了できる個別のインスタンスによるクラスターに、Amazon SageMaker のスピンアップ機能を使用すれば、かなり実践的でコスト効率も良くできます。この場合の料金は秒単位で発生し、各インスタンスはジョブの完了時点で Amazon SageMaker により自動的にシャットダウンされます。結果的に、Amazon SageMaker での通常のワークフローでの最も頻度の高い課金は、パワーがあり高価な GPU や高速化されたコンピューティングインスタンスではなく、データ調査やプロトタイピングを行う比較的低料金のノートブックで発生します。 プロトタイピングが完了すれば、自動化されたワークフローにより、作業はノートブックの上位へと移行されます。頑強かつ反復可能な手法でモデルのデプロイを行うワークフロー全体をオーケストレーションするためには、自動化されたパイプラインが不可欠です。そして、Amazon SageMaker では、このソリューションがネイティブに用意されています。この記事内の以降のセクションにおいて、プロジェクトライフサイクルでの各ステージで実装する、Amazon SageMaker のさまざまな機能をご紹介していきます。 Amazon SageMaker Processing によるデータ変換 Amazon SageMaker Processing は、ノートブックから分離されており適切なサイズで管理されたクラスターでの、大規模なデータセットの前処理に役立ちます。Amazon SageMaker Processing では、用意されたたサポートにより、Scikit-learn がすぐに使えます。また、他のコンテナ化されたテクノロジーもサポートしています。たとえば、Amazon SageMaker Processing の中で、機能変換のために一時的な Apache Spark クラスターを起動できます。 Amazon SageMaker Processing で Scikit-learn […]

Read More

Amazon SageMaker で TensorFlow を使用して ALBERT をトレーニングし、自然言語処理を行う

re:Invent 2019 で、AWS は、BERT (自然言語処理) および Mask-RCNN (オブジェクト検出) という 2 つの一般的な機械学習 (ML) モデルに対して、クラウドで最速のトレーニング時間を叩き出したところを披露しました。BERT を 1 時間でトレーニングするために、基盤となるインフラストラクチャ、ネットワーク、ML フレームワークを改善することにより、効率的に 2,048 の NVIDIA V100 GPU にスケールアウトしました。 今日、当社は最適化されたトレーニングコードを ALBERT (A Lite BERT) にオープンソーシングしています。ALBERT は、業界のベンチマークで最先端のパフォーマンスを実現しながら、1.7 倍の速さで安価なトレーニングを実現する強力な BERT ベースの言語モデルです。 この記事では、Amazon SageMaker で ALBERT という高速で小型の高品質モデルをトレーニングする方法を示します。ALBERT は、ML モデルの構築、トレーニング、調整、デプロイを容易にするフルマネージドサービスです。 これは新しいモデルではありませんが、TensorFlow 2 の最初の効率的な分散 GPU 実装です。AWS トレーニングスクリプトを使用して、単一ノードトレーニングと分散トレーニングの両方で、Amazon SageMaker の p3dn インスタンスと g4dn インスタンスで ALBERT をトレーニングできます。スクリプトは、混合精度トレーニングと加速線形代数を使用して、24 時間以内にトレーニングを完了します (このような最適化を使用しない場合の 5 […]

Read More

Amazon Translate と Amazon Augmented AI を使ったヒューマンレビューワークフローの設計

多くの企業と組織が世界的に拡大するにつれて、世界はますます狭くなっています。企業が異なる言語グループにまたがるより多くの客層にそのビジネス範囲を広げるにあたって、複数言語間での相互運用性に対するニーズも飛躍的に増加します。産業業務の大半は、手動で高額、かつ遅々とした人力によるもので、多くの産業垂直市場がスケーラブルで信頼性とコスト効率性に優れたソリューションを見つけることに苦慮しています。Amazon Translate は、良心的な価格で迅速かつ高品質な翻訳を実現するニューラル機械翻訳サービスです。Amazon Translate は、翻訳コストを低減させながら、2,970 個を超える言語ペアの全体で高品質のオンデマンドおよびバッチ翻訳機能を提供します。 Amazon Translate は、優れた出力を提供するために絶えず学び、進化し続けています。法律、医療、建設、およびエンジニアリングなどの分野に特化したアプリケーションでは、Amazon Translate のカスタム用語を使用することで翻訳品質を常時向上させることができます。これは、ほとんどのユースケースにとって優れたアプローチですが、ヒューマンチームによる簡単なポストエディティングが必要となる外れ値もあるかもしれません。ポストエディティングプロセスは、翻訳で失われる可能性がある現地語のニュアンスをキャッチすることによって、お客様のニーズをより良く理解するために役立ちます。機械翻訳を活用する翻訳者は、より多くのコンテンツを、より迅速に、より手頃な料金でより多くの言語にローカライズするための援助を提供することができます。 人間の知能を使って Amazon Translate (およびその他の Amazon AI サービス) の出力結果を補強したいというこのような企業と組織には、Amazon Augmented AI (Amazon A2I) がそれを行うためのマネージドアプローチを提供します。Amazon A2I はあらゆる開発者にヒューマンレビュー機能を提供するため、ヒューマンレビューシステムの構築、または大勢のレビュー者の管理に関連する「Undifferentiated Heavy Lifting」(差別化につながらない重労働) が取り除かれます。 この記事では、Amazon A2I と Amazon Translate を使って、プライベートワークフォースが Amazon Translate によって翻訳されたドキュメントの効果的なレビュー、修正、およびタグ付けを大規模に行うことを可能にするヒューマンレビューワークフローを作成します。 ソリューションの概要 以下の図は、このソリューションのアーキテクチャを示しています。 このユースケースでは、テキストファイルを処理し、受け取られるファイルの英語からスペイン語への変換を試みます。ファイルは /source フォルダの Amazon S3 バケットにドロップされ、これがイベント通知を通じて AWS Lambda 関数である TA2I-S3Notification をトリガーします。 この関数はオブジェクトをダウンロードして、それを文に分割します。次に、各文に対して TranslateText API を呼び出し、対応する出力を使って一連のソースおよび翻訳済みの文のペアを作成します。関数は […]

Read More

【開催報告】AWS AI/ML@Tokyo #3

アマゾン ウェブ サービス ジャパン株式会社の伊藤です。AWS Japan では、2020年からAI/ML関連情報を発信するイベント「AWS AI/ML@Tokyo」を定期的に開催しています。2020年4月23日にオンラインで開催された AWS AI/ML@Tokyo #3では、AWS Japan によるAmazon SageMaker Studioの紹介と、Amazon SageMaker をご利用いただいているお客様をゲストスピーカーにお招きし、実際に導入頂いたお客様による「体験談」をお話し頂きました。

Read More

Amazon Personalize を使用してパーソナライズされたクーポンの推奨事項により、顧客エンゲージメントとロイヤルティを向上

このブログ記事は、ロッテマートのビッグデータアナリストを務める Sungoh Park によるゲストの記事です。彼の説明によれば、「ロッテ株式会社の一部門であるロッテマートは、さまざまな食料品、衣料品、玩具、電子機器、およびその他の商品を販売する韓国の大手小売業者です」 今日の消費者は、多くの選択肢から日用品を購入できます。ハイパーマーケット、e コマース、コンビニエンスストア、スーパーマーケットなどの複数のチャネルで買い物をすることができます。韓国のハイパーマーケットであるロッテマートは、Amazon Personalize を使用してエンゲージメントを高め、新製品の購入率を高め、最終的に顧客忠誠心をさらに築き上げるために、頻繁にパーソナライズされた推奨事項を顧客に提供します。この記事では、Amazon Personalize を使用する前にロッテマートが直面した問題と、それらの問題がどのように製品の推奨事項を改善し、新製品の購入を増やしたかについて説明します。 ロッテマートは、韓国、インドネシア、ベトナムに位置する 189 店舗の 60 万人以上の買い物客にさまざまな食料品、衣料品、玩具、電子機器、その他の商品を販売しており、2019 年の売り上げは 51 億 USD にいたります。 ロッテマートは、独自のモバイルクーポンシステムである M クーポンを使用して、店内で節約を促すことにより顧客に買い物を薦めています。ハイパーマーケットの顧客は 1 回の訪問あたり平均 50〜200 USD を費やすため、顧客の訪問頻度がロッテマートのビジネスパフォーマンスに直接影響を及ぼします。 従来、M クーポンは顧客の購入履歴に基づいて推奨を行っていました。たとえば、顧客が以前その製品を購入したことがある場合、特定のブランドのインスタントラーメンを推奨します。クーポンをタイムリーに発行すると顧客がその品目を再購入するため、購入履歴に依存するルールベースの推奨事項は有意味です。これは繰り返し購入を促進し、顧客忠誠心を維持するのに役立ちましたが、新製品の需要を高めたり、進化する顧客のニーズに適応してパーソナライズされたユーザーエクスペリエンスを作成したりすることはありませんでした。新製品が毎日追加されるため、ハイパーマーケットは製品の需要を迅速に生み出さなければなりません。ただし、最適な顧客体験を提供するために、ハイパーマーケットでは顧客にすべての新製品を薦めることはできません。そのような戦術を使用すると、無関係な推奨事項が表示されるため顧客をすぐに圧倒する可能性があります。ロッテマートは、店舗のトラフィックを増やし、新製品の購入決定に影響を与える長期的な戦略を理解する必要がありました。ロッテマートは、M クーポンのユーザーに高度なキュレーションとパーソナライズされた製品の推奨を提供するソリューションとして Amazon Personalize を使用し、顧客忠誠心と新製品の需要を増やしました。 統計的アプローチを使用して大規模な推奨を生成する 従来、ロッテマートは、顧客プロファイルの販売履歴とユーザー設定を使用して、クーポンを介して対象製品を推奨していました。このプロセスは、再購入期間の間隔やお気に入りのブランドなどのターゲット条件が正しく設定されていたときに機能しましたが、各買い物客に個別化された推奨を宣伝するには不十分であったため、以前購入した製品に対してのみ機能しました。買い物客に新製品を勧めるとき、クーポンの使用率は、割引に対するユーザーの興味を示す指標となります。この場合、実際の購入率は非常に低い結果となりました。 さらに、新しいオファーに統計的ターゲットマーケティングエンジンを構築して維持するには時間がかかります。また、価値の高いビッグデータエンジニアリングリソースを浪費します。このプロセスでは、各製品の購入サイクルを手動で計算し、クーポンによる影響度を推定するために、関連製品との関連分析を実行する必要がありました。 時間をかけて行ったすべての努力と投資にもかかわらず、新製品の導入においての期待を満たすパフォーマンスを得ることはできませんでした。ロッテマートの場合、重要な指標は、表示されたクーポンの数、クーポンの使用状況、繰り返し購入とパーソナライズされたクーポンを使用した購入の購入率でした。比率が増えたということは、顧客の隠れたニーズを示している可能性があります。そのため、ロッテマートは Amazon Personalize の探索を始めました。 次の図は、ロッテマートの過去の統計的推奨事項によるアーキテクチャを示しています。 カスタマイズされた推奨事項による顧客体験の向上 ロッテマートは、従来の方法では需要を促進することが困難であった新製品を Amazon Personalize を使用することで、コスト効率よく推奨することができました。販促クーポンの反応率であるクーポンヒット率が上昇し、月次売上に大きく貢献し始めました。 即座で価値が実現されることもありました。以前のアプローチと比較して、Amazon Personalize は面倒で複雑な手動データ分析の必要性を排除し、開発時間を 50% 短縮しました。ロッテマートは事前定義されたインタラクション、ユーザー、および品目のデータセットを提供するだけで済むため、時間を短縮できました。エンジニアリングチームは、従来のアプローチと比較して半分の時間でテスト結果を生成できました。 ただし、時間の短縮は、Amazon Personalize が適切なソリューションであると判断するために必要な成功指標の一部にすぎません。彼らは、顧客に最適な顧客体験を保証しながら、新しい製品をより頻繁に利用し購入する必要がありました。Amazon […]

Read More

Amazon Fraud Detector で PoC (概念実証) を構築し、不正行為を迅速に検出する

Amazon Fraud Detector は偽のアカウントの作成やオンライン決済詐欺など、不正行為の可能性があるオンライン活動を簡単に特定できるようにするフルマネージドサービスです。汎用機械学習 (ML) パッケージとは異なり、Amazon Fraud Detector は不正を検出するように特別に設計されています。Amazon Fraud Detector は、最新の ML サイエンスのデータおよび Amazon.com と AWS の 20 年以上にわたる不正検出の経験を組み合わせて、ビジネスでの不正行為を検出するためにカスタマイズした ML モデルを構築するものです。 この投稿は、オンライン不正インサイトモデルの堅牢な概念実証 (POC) を開発および実行するのに役立ちます。そのため、ビジネスにおける Amazon Fraud Detector の有用性を評価できます。オンライン不正インサイトモデルは、新しいアカウントでの不正、オンライン取引詐欺、偽のレビューなど、さまざまな種類の不正行為を解決するための教師あり ML モデルです。データの可用性にもよりますが、通常は 1〜2 週間だけで Amazon Fraud Detector POC を完了することができます。 不正のライフサイクル 不正はあらゆる形や規模で発生しますが、一般的にどれもが同じ 3 つのステップのライフサイクルに従います。 不正ユーザーがプラットフォームに加わる 不正ユーザーが不正を行う (多くの場合、同じアカウントで複数回) 最終的に、不正を発見し、不正ユーザーをブロックする 次の図は、このライフサイクルを視覚化したものです。 まず、不正ユーザーがアカウントを登録します。この図ではタイムゼロ (T0) と表示しています。その後不正イベントが、タイム T1、T2、T3 で発生し、システムによって検出されなくなります。チャージバックの形で数時間、数日、または数週間となる可能性のある後の特定の時点 (TN) で、不正を発見し、不正ユーザーをブロックします。 不正の発見が遅れると、コストが発生します。財務コストには、販売する商品のコスト、人手による確認から生まれるコスト、チャージバック料金に関連するものがあります。さらに、会社の評判または規制に関するリスクも可能性としてあります。完全なシナリオでは、不正を予測し、損害が発生する前にそれを阻止します。その […]

Read More

Amazon Transcribe Medical および Amazon Comprehend Medical を使用した、医療現場でのトランスクリプションおよび分析の実行

ヘルスケア業界は、規制の厳しい複雑な業界です。業界内では口頭によるコミュニケーションで大量の情報交換が行われています。こうした音声データには、貴重な情報と実用的な洞察が含まれていることもあります。本稿では、HIPAA に準拠した AWS AI サービスである Amazon Transcribe Medical と Amazon Comprehend Medical を統合し、こうしたデータから洞察を引き出す方法について説明します。医療データの抽出と理解を自動化できれば、医療従事者は患者のケアに集中できます。 Amazon Transcribe Medical Amazon Transcribe Medical は機械学習 (ML、machine learning) サービスであり、患者と医師の間で行われる医療相談の内容を、迅速、簡単、高精度にテキストに変換 (トランスクリプション) できます。Amazon Transcribe Medical は、医師が書き取ったメモ、診察における医師と患者のやりとり、遠隔医療で使用される医学用語および薬理学用語を、音声からテキストに自動的に変換し、臨床文書アプリケーションで使用できるようにします。詳細については、「Amazon Transcribe Medical とは」をご参照ください。 Amazon Comprehend Medical Amazon Comprehend Medical は、ML を使用して非構造化テキストから関連する医療情報を簡単に抽出できる、自然言語処理サービスです。医師のメモ、臨床試験報告書、患者の健康記録などのさまざまなソースから、病状、薬剤、投与量、成分含有量、頻度などの情報を短時間で高精度に収集できます。Amazon Comprehend Medical では、検出された情報を ICD-10-CM や RxNorm などの医療オントロジーにリンクして、医療関係のダウンストリームアプリケーションで簡単に使用できるようにすることもできます。詳細については、「What is Amazon Comprehend Medical?」をご参照ください。 Medical Transcription Analysis Medical Transcription […]

Read More

エンタープライズ検索の再発明 - Amazon Kendra が一般発売されました

2019年末には、機械学習を活用した非常に正確で使いやすいエンタープライズ検索サービス Amazon Kendra のプレビューエディションをリリースしました。本日、Amazon Kendra が一般販売されることになりました。 過去数十年間の驚くべき成果のすべてを用いても、情報技術は、必要とする情報をすばやく簡単に見つけ、皆が日々直面している問題を解決するには至っていません。会社の出張規定の最新版を探す場合でも、「エポキシ接着剤の引張強度は?」などのより技術的な質問をする場合でも、すぐに正いい回答を得られれそうにはありません。全く回答を得られない時もあります。 こうした問題はユーザーにとってストレスとなるだけでなく、生産性の大幅な低下にもつながります。IDCの調査によると、非効率的な検索のコストは、従業員 1 人当たり年間 5,700 USD です。従業員 1,000 人の企業では、年間 570 万 USD が蒸発することになります。しかも、これには、精度の低い検索によって発生する責任やコンプライアンスリスクは含まれていません。 この問題にはいくつかの原因があります。第 1 に、ほとんどの企業データは構造化されておらず、必要な情報を特定することが困難なことです。第 2 に、多くの場合、データは組織のサイロに分散し、ネットワーク共有、リレーショナルデータベース、サードパーティアプリケーションなどの異種バックエンドに保存されていることです。最後に、キーワードの検索システムでは、適切なキーワードの組合せを見つける必要があり、通常は多数のヒットを返し、ほとんどのヒットはクエリとは無関係なものです。 これらの問題点を考慮して、Amazonは、お客様が適切な検索機能を構築できるように支援することにしました。この取り組みの結果が、Amazon Kendra です。 Amazon Kendra のご紹介 Amazon Kendra を使えば、数回クリックするだけで、ファイルシステム、アプリケーション、イントラネット、リレーショナルデータベースなど、さまざまなバックエンドに保存された構造化データと非構造化データのインデックスを作成できます。予想される通り、すべてのデータは HTTPS を使用して処理中に暗号化され、また、保存中にAWS Key Management Service (KMS) で暗号化することもできます。 Amazon Kendra は、ドメインから受けとる複雑な言語を理解するように最適化されています。IT関連ドメイン(例: 「 VPNの設定方法を教えてください。」)、医療およびライフサイエンス関連ドメイン(例: 「ALSの遺伝子マーカーとは何ですか。」)およびその他の多くのドメイン領域からの質問を受け取ることになります。このマルチドメインの専門知識により、Kendra はより正確な回答を見つけることができるのです。また、開発者は、信頼できるデータソースやドキュメントの鮮度などの基準を使用して、結果の関連性を明示的に調整することができます。 Kendra 検索は、AWS コンソールまたは API で利用可能なコードサンプルを使用して、任意のアプリケーション (検索ページ、チャットアプリ、チャットボットなど) に迅速に展開できます。お客様は、Kendara の最新のセマンティック検索を数分で実行できます。 […]

Read More

Amazon Forecast: 学習済み Predictor を再利用して最新の予測を更新する

こんにちは、アマゾン ウェブ サービス ジャパンの藤田です。Amazon Forecastでは、過去の時系列データからpredictor(予測子)の学習を行い、将来(新しいデータポイント)の予測を行うことが可能です。需要予測や在庫計画など、様々なビジネス課題に適用することができます。今回は、Amazon Forecast で学習した Predictor を再利用して、最新の予測を更新していく Rolling Forecastについて紹介します。

Read More

【開催報告】AWS AI/ML@Tokyo #1 ~AWS の AI/ML サービス最新情報~

アマゾン ウェブ サービス ジャパン株式会社の大渕です。AWS Japan は、2020年からAI/ML関連情報を発信するイベント「AWS AI/ML@Tokyo」を定期的に開催します。2020年2月6日に開催された AWS AI/ML@Tokyo #1では、AWS Japan によるAWS AI/ML サービスの紹介と、2019年12月の re:Invent 2019 で発表された Amazon SageMaker Studio など新機能の紹介を行いました。

Read More