Amazon Web Services ブログ

Category: Artificial Intelligence

カスタム語彙を構築して、Amazon Transcribe による speech-to-text 文字起こしの精度を高める

Amazon Transcribe は、開発者が speech-to-text 機能をアプリケーションに追加することを容易にする完全マネージド型の自動音声認識サービス (ASR) です。ユースケースによっては、正しく文字起こしされていない分野固有の用語がある可能性があります (例、「EBITDA」や「myocardial infarction (心筋梗塞)」)。この記事では、カスタム語彙機能 (カスタム発音とカスタム表示フォーム) を活用して、ユースケースに関連する分野固有の単語や語句の文字起こし精度を向上させる方法を紹介します。 カスタム語彙は、他の方法では一般的な ASR サービスの一部にはならない用語を文字起こしするのを助ける強力な機能です。たとえば、ユースケースによって、「Hogwarts」のように、通常は言語モデルの一般的な辞書の一部ではないブランド名や固有名詞が含まれることがあります。この場合、カスタムテキストを追加できるだけでなく、発音に関して ASR サービスに指示し、システムが不慣れな用語をよりよく認識できるようにすることもできます。関連した話では、おそらく車のブランド名として「ロータス」と言う用語があるでしょう。当然のことながら、私たちはすでに「蓮 (ロータス)」を花として認識しています。しかし、ユースケースによっては、認識する状況の中で適切に大文字化することで、その用語を車両の製造元またはモデルとして文字起こしさせたいと望むでしょう。最近追加されたカスタム表示フォームを使用すると、これを実現することができます。 それでは、カスタム発音とカスタム表示フォームの両方を使用している例をいくつか見てみましょう。 まず、サンプルオーディオを録音して S3 バケットに保存しました (これは前提条件であり、次のドキュメントに従って実現できます)。参考までに、オーディオファイルの正確さや整合性をチェックするためのテキストは次の通りです。 「Hi, my name is Paul.And I’m calling in about my order of two separate LEGO toys.The first one is the Harry Potter Hogwarts Castle that has a cool Grindelwald mini-fig. The second […]

Read More

Amazon Machine Learning で実行する社会的支援ロボットを使って車椅子の利用者に力を与える

Loro は社会的支援ロボットで、身体が不自由なユーザーが、周囲を見たり、感じたり、話したり、人々と対話したりするのを支援することによって、世界をよりしっかりと体験するのをサポートしています。  Loro は、さまざまな AWS 人工知能 (AI) サービス、特に機械学習 (ML) サービスを駆使して、幅広いユースケースで役立っています。 車椅子の利用者やその他の身体が不自由な人たちが直面する困難は、身体的な制約にとどまりません。社会的なやり取りや個人の健康と安全が、生活の中で絶えず直面する難題です。Loro の共同創設者 David Hojah 氏と Johae Song 氏は、車椅子に縛られた友人でメンターの Steve Saling に触発されて、これらの難題を軽減するために社会的支援ロボットを創作しようと決意しました。CTO の Hojah 氏は「Loro が肩に乗ったオウムのようにフレンドリーな伴侶になれればと思いました」と言葉をつづっています。 この「オウム」とそのコンパニオンアプリを徹底的にバックアップしているのが、AWS AI/ML です。  Among the services that work in concert to give Loro its assistive abilities are Amazon SageMaker and AWS DeepLens, as well as a wide combination of Amazon […]

Read More

MXNet モデルサーバーを使った PyTorch 推論のデプロイ

トレーニングと推論は、機械学習 (ML) 開発サイクルの重要な要素です。トレーニングの段階で、特定の問題に対処するためのモデルを教えます。このプロセスを通じて、本番稼働で使用する準備ができたバイナリモデルファイルを入手できます。 推論については、TensorFlow Serving や Model Server for Apache MXNet (MMS) など、モデルデプロイ用のフレームワーク固有のいくつかのソリューションから選択することができます。PyTorch は、PyTorch でモデルサービングを実行するためのさまざまな方法を提供します。 このブログ記事では、MMS を使用して PyTorch モデルをサーブする方法を説明します。 MMS はオープンソースのモデルサービングフレームワークであり、大規模な推論のための深層学習モデルをサーブするように設計されています。MMS は、本番稼働での ML モデルのライフサイクルを完全に管理します。MMS は、コントロールプレーンの REST ベースの API と共に、ロギングやメトリクスの生成など、本番ホストのサービスに必要な重要な機能も提供します。 以下のセクションでは、MMS を使用して PyTorch モデルを本番環境にデプロイする方法について説明します。 MMS による PyTorch モデルのサービング MMS は、ML フレームワークに依存しないように設計されています。言い換えれば、MMS はあらゆるフレームワークのバックエンドエンジンとして機能するのに十分な柔軟性を備えています。この記事では、PyTorch で MMS を使用した、堅牢な本番稼働レベルの推論について説明します。 アーキテクチャ 次の図に示すように、MMS はモデルをモデルアーカイブの形式で使用します。 モデルアーカイブは、Amazon S3 バケットに配置することも、MMS が実行されているローカルホストに配置することもできます。モデルアーカイブには、推論を実行するためのすべてのロジックとアーティファクトが含まれています。 また、MMS では、ML フレームワークおよびその他の必要なシステムライブラリを事前にホストにインストールする必要もあります。MMS は ML […]

Read More

Amazon SageMaker のバッチ変換を使用して予測結果を入力データに関連付ける

大規模なデータセットに対して予測を実行するときは、実行前にいくつかの入力属性を削除することをお勧めします。これは、これらの属性が信号を伝達しない、または機械学習 (ML) モデルのトレーニングに使用するデータセットの一部ではなかったという理由からです。ジョブの完了後、予測結果をすべてまたは一部の入力データに分析用としてマッピングすることにも役立ちます。 たとえば、ID 属性を持つデータセットを考えてみましょう。一般に、観測 ID は特定の ML 問題に対する信号を伝送しないランダムに生成した番号か連続番号です。このため通常、観測 ID はトレーニングデータ属性の一部ではありません。しかし、バッチ予測を行う場合は、出力に観測 ID と予測結果の両方を 1 つのレコードとして含めることもできます。 バッチ変換機能は Amazon SageMakerで、Amazon S3 に格納されているデータセットに対して予測を実行します。以前はバッチ変換ジョブの作成前に入力データをフィルター処理し、ジョブの完了後に予測結果を目的の入力フィールドに結合する必要がありました。Amazon SageMaker のバッチ変換を使えば、予測を実行する前に属性を除外できるようになりました。CSV、テキスト、JSON 形式のデータを使用すると、予測結果を部分的または全体の入力データ属性と結合することもできます。このため、追加の前処理や後処理が不要となり、ML プロセス全体が高速化します。 この投稿では、この新しい機能を使用して Amazon SageMaker のバッチ変換ジョブの入力データをフィルター処理し、予測結果を入力データセットの属性と結合する方法を説明します。 背景 Amazon SageMaker は ML のワークフロー全体を対象にした完全マネージド型サービスです。このサービスは、データにラベルを付けてデータを準備し、アルゴリズムを選択して、モデルのトレーニングを行い、デプロイ用にモデルを調整および最適化を行い、予測を行い、実行します。 Amazon SageMaker はバッチ変換ジョブの開始時に、リソースのプロビジョニングを管理します。ジョブが完了するとリソースを解放するので、ジョブの実行中に使用したリソースに対してのみ支払うことになります。ジョブが完了すると、Amazon SageMaker は指定された S3 バケットに予測結果を保存します。 バッチ変換の例 UCI の乳がん検出のためのパブリックデータセットを使って、特定の腫瘍が悪性 (1) または良性 (0) である可能性があるかどうかを検出するバイナリ分類モデルをトレーニングします。このデータセットには各腫瘍の ID 属性が付属しています。これらはトレーニングと予測の際に除外されます。ただし、バッチ変換ジョブからの各腫瘍の悪性腫瘍について予測した確率を使用して、ID 属性を最終的なアウトプットに戻し、記録します。 手引きとなる Jupyter ノートブックもダウンロードできます。この記事の以下の各セクションはノートブックのセクションに対応していますので、読みながら各ステップのコードを実行してください。 設定 […]

Read More

Amazon SageMaker での Apache MXNet 1.4 と Model Server のサポート

Apache MXNet は ディープニューラルネットワークのトレーニングとデプロイに使用するオープンソースの深層学習ソフトウェアフレームワークです。 データサイエンティストや機械学習 (ML) の開発者の多くが深層学習モデルの構築の際、その柔軟性と効率性から MXNet を好んで使用しています。 Amazon SageMaker では MXNet を含むすべての ML フレームワークとライブラリにおいて、カスタマーエクスペリエンスの向上に取り組んでいます。MXNet 1.4 の最新リリースでは、インターネット無料モードで MXNet コンテナを使用したり、Model Server for Apache MXNet (MMS) を使った深層学習モデルを推論用にデプロイしたりできるようになりました。 Model Server for Apache MXNet (MMS) は深層学習モデルを推論用にデプロイする作業を簡素化するオープンソースのツールセットです。MMS を使用すると、MXNet やその他のフレームワークモデルを簡単に、素早く、そして大きな規模で提供できます。詳細については、「Model Server for Apache MXNet v1.0 release」をご参照ください。 MXNet 1.4 の更新には、ネットワークの分離、Julia バインディング、実験的な制御フロー演算子、JVM メモリ管理、グラフの最適化と量子化、使いやすさの向上など、いくつかの新機能が含まれています。変更ログ情報については、「Apache MXNet (incubating) 1.4.0」をご参照ください。 Amazon SageMaker のトレーニングとデプロイ済み推論コンテナは、デフォルトでインターネットに対応しています。新しい MXNet コンテナを使用すると、インターネット無料モードでコンテナを使用できます。そのため、セキュアかつ隔離された環境内でトレーニングジョブを実行できます。 Amazon SageMaker をトレーニングまたは推論コンテナへの外部ネットワークにアクセスさせたくない場合は、トレーニングジョブやモデルの作成時にネットワークの分離を有効にできます。 MXNet […]

Read More

AWS DeepRacer League が香港で開催され、あらゆるスキルレベルの開発者が結集。

AWS DeepRacer League は、誰もが参加可能な、自動運転車による世界初の国際的レーシングリーグです。あらゆるスキルレベルの開発者達が、世界中で 22 回開催される AWS イベントで直接、あるいは AWS DeepRacer コンソールを通じてオンライン (車は不要です) で、競技に参加できます。参加者は 2019 年のチャンピオンカップをかけたレースが開催される re:Invent 2019 への旅費無料の招待を競い合います。 そのリーグ戦が、今週香港で開催されました。これは 2019 年のアジア太平洋地域での最後のレースでしたが、期待を裏切ることはありませんでした。 あらゆる年齢やスキルレベルの開発者を魅了 今シーズンのこれまで、AWS DeepRacer League はあらゆるスキルレベル、経歴、年齢の開発者を集めて競い合ってきました。さらに重要なことは、参加者が機械学習を学び、探求することです。人工知能を習得した人から、この分野で経験のない人まで、本当に多様なストーリーがあり、AWS で機械学習を始めるのがどれほど簡単であるかを示しています。 香港でも同じでした。優勝者は、DeepRacer チームの一員として AWS Summit に参加した他でも勝者でもある Peter Chong でした。今回、このチームは企業の一員ではなく、香港職業教育研究所 (IVE) の 6 人の学生として参加しました。そのうち 5 人がトップ 10 に入り、さらに 2 人は 8.64 秒 (1 位) と 9.43 秒 (2 位) のタイムで表彰台に上がりました! […]

Read More

Amazon SageMaker Ground Truth: データラベリングを高速化するための事前トレーニング済みモデルの使用

Amazon SageMaker Ground Truth を使用すると、機械学習用の高精度なトレーニングデータセットをすばやく構築することができます。SageMaker Ground Truth を使用すると、パブリックおよびプライベートでラベル付けを行う人間の作業者への簡単なアクセスと、一般的なラベル付けタスクのための組み込みのワークフローとインターフェースが提供されます。さらに、SageMaker Ground Truth は自動データラベル付けを使用してラベル付けのコストを最大 70% 削減します。自動データラベル付けは、人間がラベルを付けたデータから Ground Truth をトレーニングし、サービスが独自にデータにラベルを付けることを学習することによって機能します。以前のブログ記事では、自動化されたデータのラベル付けのしくみと、その結果の評価方法について説明しました。 SageMaker Ground Truth はラベリングジョブの間にお客様のためにモデルをトレーニングし、そしてラベリングジョブが終わった後にこれらのモデルを使用できるようになることはご存知でしたでしょうか? このブログ記事では、前のラベリングジョブからトレーニングされたモデルを使用して次のラベリングジョブを「スタートダッシュ」する方法について説明します。これは高度な機能で、SageMaker の Ground Truth API を通じてのみ利用できます。 このブログ記事について 読む時間 30 分 完了するまでの時間 8 時間 完了するためのコスト 600 USD 未満 学習レベル 中級 (200) AWS のサービス Amazon SageMaker、Amazon SageMaker GroundTruth この記事は、以下の以前の記事を基にしているので、最初にその記事を確認することをお勧めします。 Amazon SageMaker Ground Truth と自動化されたデータのラベル付けによる低コストでのデータのアノテーション このブログの一部として、以下で説明するように、3 つの異なるラベリングジョブを作成します。 「自動ラベリング」機能を有効にした初期ラベリングジョブ。このラベリングジョブの最後に、サンプルデータセットに対して高い精度の予測を行うことができるトレーニング済みの機械学習モデルを準備します。 […]

Read More

TensorFlow と Apache MXNet を使用して、Amazon SageMaker で Keras モデルをトレーニングおよびデプロイする

Keras は適切に文書化された定評のある深層学習用オープンソースライブラリで、一方 Amazon SageMaker は機械学習モデルをトレーニングし最適化するための使いやすいツールです。両者を使用するにはこれまで、カスタムコンテナを構築する必要がありましたが、Keras は TensorFlow と Apache MXNet 用のビルトイン TensorFlow 環境の一部になりました。この結果、開発プロセスが簡素化しただけでなく、スクリプトモードや自動モデル調整などの Amazon SageMaker の標準機能を使用することもできるようになりました。 Keras の優れたドキュメント、多数の事例、さらに活発なコミュニティにより、初心者にも経験豊富な専門家にも最適な選択肢となっています。このライブラリはあらゆる種類の深層学習アーキテクチャを簡単に構築できるようにするハイレベルな API を提供し、さらにトレーニングと予測に異なるバックエンドを使用するオプション (TensorFlow、Apache MXNet、および Theano) もあります。 この記事では TensorFlow と Apache MXNet 用ビルトイン TensorFlow 環境を使用して、Amazon SageMaker で Keras 2.x モデルをトレーニングおよびデプロイする方法を説明します。その過程で、次のことも学びます。 スクリプトモードを使用して、ローカルマシンで実行しているのと同じ Keras コードを Amazon SageMaker で実行する。 自動モデル調整を起動して、ハイパーパラメータを最適化する。 Amazon Elastic Inference を使用してモデルをデプロイする。 Keras の例 この例では、Fashion MNIST データセットで簡単な畳み込みニューラルネットワークをトレーニングする方法を示します。このデータセットは、よく知られている MNIST データセットに置き換えられるものです。同数のクラス […]

Read More

DeepRacer League のもう一つのトリプルでは、さらなる世界記録を更新し、初の女性優勝者が誕生しました!

AWS DeepRacer League は、誰もが参加可能な、自動運転車による世界初の国際的レーシングリーグです。あらゆるスキルレベルの開発者達が、国際的に 22 回開催される AWS イベントで直接、あるいは AWS の DeepRacer コンソールを通じオンラインでの競技参加が可能です。彼らは 2019 年のチャンピオンカップをかけたレースが開催される re:Invent 2019 への旅費無料の招待を賭けて競い合います。 先週、AWS DeepRacer League が世界中の 3 つの都市 (米国ワシントン DC、台湾台北、日本東京) を訪れました。各レースでは何日にもわたり、開発者が優勝ラップタイムを記録できるように多数の機会を提供しました。 初の女性優勝者と世界記録 東京レースは今回も最大規模で行われました。都市のすぐ離れにある幕張メッセで 2 万人を超える AWS のお客様が AWS サミットに参加し、学習、実践ラボ、およびネットワーキングを 3 日間行いました。開発者がサミットを通して競うための 2 つの DeepRacer トラック、仮想レーシングポッド、および DeepRacer モデルを構築する方法を学ぶための複数のワークショップが開かれました。 モデルを構築し、AWS DeepRacer リーグの詳細を学ぶための仮想レーシングポッド。 何百人もの開発者が各自のモデルをトラックでテストしましたが、誰も初の女性優勝者である sola@DNP の世界最高記録 7.44 秒を勝ち抜くことはできませんでした。実際の車のサイズにスケールアップした場合、DeepRacero は約 100 mph に相当します。 sola@DNP […]

Read More

Amazon SageMaker の体験ハンズオン動画とQAを公開しました

先日 (2019/5/17) 開催しました 「Amazon SageMaker 機械学習エンジニア向け体験ハンズオン」の動画および資料を公開しました。当日、参加者の皆様から多数頂いた QA についても掲載しています。 Amazon SageMaker は、データサイエンティストやエンジニアが効率よく機械学習を進めるために、 AWS が提供するマネージドサービスです。この動画はSageMakerの基本的な使い方を体験できる1時間のハンズオン動画となっており、動画を見ながら実際に手を動かすことで、SageMakerの利用法を効率よく理解することができます。これからSageMakerを利用して機械学習に取り組む際にはAWS Black Belt オンラインセミナーと合わせて是非ご覧下さい。 【ハンズオンの概要】 1) ビルトインアルゴリズムの利用 ・Random Cut Forest を利用した異常検知 ・XGBoost を利用した画像認識(紹介のみ) 2) Deep Learning フレームワークの利用 ・Chainer を利用した画像認識          ※ 動画の一例 視聴はこちらから >> ※ リンク先でフォームに登録いただきますと、各コンテンツにアクセス可能となります。   当日、参加者の皆様から頂いた QA を以下に掲載します。 Q. SageMakerと他のMachine Learningサービスの区別は?マネージドサービスの中の機械学習サービスの分別とか、適用範囲を教えて頂けませんか A. 機械学習に関連するAWSサービスは、インフラストラクチャ、MLサービス、AIサービスという3つのカテゴリに大きく分けられます。 1. 機械学習を支えるインフラストラクチャには、GPU/FPGA/大量のCPUを搭載したEC2やAWS IoT Greengrass、Amazon Elastic Inferenceなどが該当します。 […]

Read More