Amazon Web Services ブログ

Category: Internet of Things

複数の CPU/GPU にかけて並列化して、エッジでの深層学習の推論を高速化する

AWS のお客様は、レイテンシーを最小限に抑えるために、エッジで機械学習 (ML) 推論を実行することを選択することがよくあります。これらの状況の多くでは、ML 推論は多数の入力で個別に実行する必要があります。 たとえば、ビデオの各フレームでオブジェクトの検出モデルを実行する場合です。これらの場合、エッジデバイスで利用可能なすべての CPU/GPU で ML 推論を並列化すると、全体的な推論時間を短縮できる可能性があります。 最近、私のチームはこの最適化の必要性を認識しながら、お客様が産業用異常検出システムを構築するのを支援しました。このユースケースでは、一連のカメラが通過するマシンの画像を取得してアップロードしました (マシンごとに約 3,000 枚の画像)。お客様は、サイトのエッジデバイスにデプロイした深層学習ベースのオブジェクト検出モデルに各画像を入力する必要がありました。各サイトのエッジハードウェアは、2 つの GPU と複数の CPU を搭載していました。最初に、AWS IoT Greengrass コアにデプロイされた長期実行 Lambda 関数 (これについては記事の後半で詳しく説明します) を実装しました。この設定では、各イメージをエッジデバイスで順次処理します。 ただし、この設定では、エッジデバイスの単一の CPU および単一の GPU コアで深層学習推論が実行されます。推論時間を短縮するために、利用可能なハードウェアの全容量を活用する方法を検討しました。調査をいくらか行った後、(さまざまな深層学習フレームワークに対して) 複数の CPU/GPU (TensorFlow、MXNet、PyTorchなど) にトレーニングを分散させる多くの方法に関するドキュメントを見つけました。ただし、特定のホストで並列化を行う方法に関する資料は見つかりませんでした。 この投稿では、推論を並列化する方法をいくつか示し、コードスニペットの例とパフォーマンスベンチマークの結果を提供します。 この投稿では、データの並列処理のみに焦点を当てます。これは、入力データのリストを均等な部分に分割し、各 CPU/GPU コアがそのような部分 1 つを処理することを意味します。このアプローチはモデルの並列処理とは異なり、ML モデルを異なる部分に分割し、各部分を異なるプロセッサにロードする必要があります。データの並列処理は、その単純さにより、はるかに一般的で実用的です。 単一のマシンで ML 推論を並列化するのにどの点が難しいのでしょうか? マルチスレッドコードの記述に精通しているソフトウェアエンジニアであれば、上記の内容を読んで疑問に思うかもしれません。単一のマシンで ML 推論を並列化するのに、何が課題なんだろうかと。 これをよりよく理解するために、デバイスに少なくとも 1 つの GPU があると仮定して、単一の ML 推論をエンドツーエンドで実行するプロセスを手短に確認しましょう。 複数の […]

Read More

IoTソリューションにおける10のゴールデンルール

Internet of Things(IoT)ソリューションは、さまざまな業界や用途で業務と顧客体験を変革するのに役立ちます。その無限の機会は興奮をもたらしますが、セキュリティ、リスク、プライバシーの懸念も持っています。顧客、デバイス、および企業を保護するには、すべてのIoTソリューションがセキュリティで始まり、セキュリティで終わる必要があります。最高のIoTセキュリティソリューションは、エッジからクラウドまでの多層保護を提供し、IoTデバイス、接続、およびデータを保護します。理想的には、独自の要件と制約に合わせたIoTソリューションのすべてのビルディングブロックについて、セキュリティプラクティスでパブリックに知られている再利用可能なリストに依存することができます。ただし、実際には、セキュリティルールをガイドとして使用して、セキュリティ戦略の少なくとも一部を自分で計画する必要があります。設計と実装から継続的な運用と管理まで、ビジネスとIoTエコシステムの保護に役立つ次のベストプラクティスをまとめました。高レベルの推奨事項のリストも各ルールに従います。これらの推奨事項は完全なリストではなく、各ルールの背景にある基本概念を明確にするものになります。

Read More

エッジデバイス上のAWS IoT Greengrassへ顔認識モデルをインストールする方法

皆様は、リモートデバイスの通信と制御のためにAWS IoT CoreとAWS IoT Greengrassを使用する方法をすでに知っているかもしれません。 AWS IoT Greengrassの機械学習(ML)推論を使用すると、送信遅延なしにローカルデバイスで機械学習モデルを実行できます。 このブログ記事では、Raspberry PiでAWS IoT Greengrass ML推論を使用して自宅の監視のためにローカルの顔認識を実行する方法を紹介します。 Raspberry Piのカメラの制御装置として、Alexa Voice Serviceに接続されているAmazon Echo Dotを使用すると、ドアの外にいる人の写真を撮ることができ、その写真を使用して顔の検出と比較を実行できます。 Raspberry Piに展開された事前学習済みのMLモデルを使用したローカルデータセット 比較結果はドアロックや他のスマートデバイスでも使用できますが、これらの使用例はこの記事では扱いません。

Read More

AWS テクノロジーを使用して臨床試験の成果を改善する

  私たちはイノベーションの黄金時代に生きています。今では、個別化された医療によって、私たちが絶対に治癒できないと考えていた病気さえも治療できるようになりました。デジタル医療は、病気を抱えている人々がより健康になれるように手助けしています。私たちは、癌細胞を標的として根絶するために体の免疫システムを活用する方法をずっと探しています。ClinicalTrials.gov の報告によると、登録された研究は 2018 年に 293,000 件に達し、2000 年以来 250 倍の成長を遂げたことを表しています。 しかし、EvaluatePharma のデータを使用した Endpoints News の内部収益率 (IRR) の分析では、いくつか興味深い傾向が強調されています。製薬イノベーションが活気づいている現状は、登録された研究が大幅に成長したことによってサポートされています。しかし、IRR は 2000 年の約 17% から 2017 年の資本コストを下回るまで急激に減少する傾向を示しており、2020 年には 0% になると予測されています。 このブログ記事は、コンプライアンスに準拠した安全な方法で臨床試験データを収集、保存、処理、視覚化、そして実行するためのエンドツーエンドのワークフローに焦点を当てたシリーズの最初の記事です。このシリーズでは、また、人工知能と機械学習テクノロジーを臨床試験へ取り組んだアプリケーションについても説明します。この記事では、AWS のお客様が臨床試験を近代化するために使用する一般的なアーキテクチャパターンについて説明します。これらには、より良いエビデンス生成、コスト削減、品質の向上、アクセスの改善、および患者に向けて個人化された医療のモバイルテクノロジーが組み込まれています。 臨床試験の結果を改善し、コストを削減する バイオテクノロジーおよび製薬会社は、可能な限りリソースを効率的に使用することに対してプレッシャーを感じています。このプレッシャーにより、コストを削減しながら、プロセスを合理化し、高速化し、安全性を維持するためのあらゆる条件が求められます。ますます多くのライフサイエンス企業がバイオロジクス、CAR-T、および精密医療治療薬をターゲットにしており、より小さく、地理的に分散した患者セグメントに焦点が移っています。この変化により、これまで利用できなかった、非伝統的な情報源からデータを収集するという義務が増しています。これらの情報源には、モバイルデバイス、IoT デバイス、そして家庭用および臨床用デバイスが含まれます。ライフサイエンス企業は、これらの情報源から得たデータを従来の臨床試験データとマージして、薬の安全性と有効性に関する強力なエビデンスを構築します。 昨年の初めに、臨床試験改革イニシアチブ (CTTI) は、患者から総合的で高品質かつ帰属可能な実世界のデータを取得し、米国に提出するためのモバイルテクノロジーの使用に関する推奨事項を提供しました。食品医薬品局 (FDA)。モバイルテクノロジーを使用することで、ライフサイエンス企業は臨床試験への参加障壁を減らし、臨床試験の実施に伴うコストを削減できます。FDA、カナダ保健省、および英国医薬品庁 (MHRA) など、世界的な規制団体も、モバイルテクノロジーの使用を支持しています。モバイルテクノロジーによって、より効率的に患者を募集し、より早くエンドポイントに到達し、臨床試験を実施するために必要な費用と時間を削減することができます。 モバイルテクノロジーを使用して即席にデータを取り込むと、結果にすばやく到達し、コストを削減して、臨床試験の精度を向上させることができます。これは、特にモバイルデータの取り込みに人工知能および機械学習 (AI/ML) テクノロジーが追加されている場合に特に当てはまります。 それと共に、スマート臨床試験の新しい時代を迎えることができます。 同時に、市販されている超大型新薬に向けて設計された従来の臨床試験プロセスやテクノロジーは、新興産業のニーズを効果的に満たすことができません。このため、ライフサイエンス企業や製薬会社は、臨床試験の運用を進化させるための支援を必要としています。これらの事情により、臨床試験は新薬を市場に出すための最大の投資分野の 1 つになりました。 臨床試験でモバイルテクノロジーを従来のテクノロジーと併用すると、臨床試験の結果が改善され、同時にコストが削減されます。さまざまなテクノロジーの統合によって利用できるユースケースには、次のものがあります。 臨床試験における参加者の特定と追跡 臨床試験で募集する参加者の特定 臨床試験に参加している患者の教育と通知 標準化されたプロトコルの実装および臨床試験の参加者に関連情報を共有 有害事象と安全性プロファイルの追跡 新規バイオマーカーを特定するためのゲノムデータと表現型データの統合 臨床試験の管理をより良くするための臨床試験へのモバイルデータの統合 履歴データに基づいた患者コントロールアームの作成 治療、クレーム、およびレジストリデータセットに基づくコホートの階層化 […]

Read More

AWS IoT Device Managementのフリートインデックスを使っての大量のモノの状態を識別する

本ブログにおいて、新しいAWS IoT Device ManagementのFleet indexingの新しい機能を紹介します。これの記事の内容ではAWS LambdaおよびAmazon CloudWatchを組み合わせてフリートの監視を自動化できます。 IoTデバイスを管理する場合、フリートの状態を監視するのは難しい場合があります。 複雑さは多くの要因によるものです:デバイスの数、監視する動的状態の数、およびフリート状態変更のための通知メカニズムの数。 AWS IoT Device Managementは、リモートで接続されたデバイスを大規模にオンボード化、整理、監視、管理することを可能にするサービスです。   AWS IoT Device Management内では、フリートインデックスを使用すると、フリート内のすべてのデバイスのレジストリ、デバイスシャドウ、および接続状態をインデックス化し、これらの属性の任意の組み合わせに基づいてデバイスを検索できます。 フリートインデックスを使用して、どのデバイスが特定のバージョンのファームウェアを実行しているかを照会したり、どのデバイスがAWS IoTサービスに接続されているかを照会したりできます。 このブログ記事は4つのステップにわけて解説します。 フリートインデックスを有効にします。 Lambda関数のAWS Identity and Access Management(IAM)ロールとアクセス許可を定義します。 Lambda関数を定義して構成します。 フリート管理ダッシュボードを構築し、CloudWatchを使用してアラームを設定します。 本ブログではAWSマネージメントコンソールで作業していきます。この作業はAWS Command Line Interface(AWS CLI)でも実行できます。

Read More

IoT atlasのご紹介(デザインパターン)

AWS IoTが利用可能になった2015年から、センサーネットワークやコントロールシステムアーキテクチャやマシンツーマシン(M2M)ネットワークの、成熟した長年あるドメインへクラウド開発の概念を含めように修正する必要がでています。 IoT Atlasは、使いやすく検索可能なWebサイト(https://iotatlas.net)で入手できるIoTデザインパターンです。 IoT AtlasはクラウドでIoTソリューションを構築している人が利用できるように想定し、デザインの更新や拡張を行います。 IoT Atlasは、新規および長期にわたるソリューションビルダーのためのリソースです。 デザインはクラウドサービスにとらわれないため、IoT AtlasはGitHubのリポジトリとして公開されています。 Creative Commonsライセンスの下でコンテンツを公開することで、デザインのアイデア、考慮事項、および例の顧客、フィールド、およびパートナーの貢献を促進します。 また、ソリューションにおける新しいIoTパターンについての会話と理解を促進したいと考えています。 現時点で IoT Atlasは以下のデザインが利用可能です。 コマンド:要求元のエンティティは、ステータスの確認応答とともに、デバイスに単一のアクションを実行するように要求する。 デバイスブートストラップ:未登録のデバイスが登録され、IoTソリューションとして機能するようになる。 デバイスステータスレプリカ:物理デバイスから報告された状態または望ましい将来の状態の論理表現。 ゲートウェイ:デバイスは、ローカルデバイスとデバイスおよびクラウドの間の仲介役として機能。 ソフトウェアアップデート:デバイスは新しいソフトウェアを入手し、アップデートを実行、完了の確認をする。 テレメトリ:遠隔環境のセンサーからデータを収集し、その測定値を他のコンポーネントで使用できるようにする。 テレメトリアーカイブ:デバイスの測定値が保存され、元の形式または処理された形式で使用できるようにする。 たとえば、従来のテレメトリソリューションでは、オンプレミスデバイスからセンサーデータを取得し、そのデータをFTP、HTTP、またはその他のメカニズムを使用して自分で運用しているサーバーに送信することができます。 IoT Atlasのテレメトリ設計では、マネージドなクラウドベースのIoTメッセージングプロトコルとプロトコルエンドポイントを使用しています。 このため、オリジナルのテレメトリ設計は、グローバルなハイパースケールクラウドを含む改訂の恩恵を受けます。 これはIoTデザインの初公開となるために、IoT Atlasを成長するリソースにするためのあなたの助けを待っています。 IoTの設計、考慮事項、および例についてのアイデアやコンテンツを読んで、レビューし、コメントする時間を少しいただけませんか?コントリビュートの方法はこちらをご参照ください。 私たちは一緒にIoTソリューションの成功に向かって業界を導くマップを作成することができます。 原文はこちら 翻訳はSA 小梁川が担当しました

Read More

AWS IoT ボタンによる、ジャストインタイムの VPN アクセス

AWS コミュニティヒーローである Teri Radichel による寄稿。Teri Radichel は、彼女の会社である 2nd Sight Lab を通じてサイバーセキュリティ評価、ペネトレーションテスト、調査サービスを提供しています。また、彼女は AWS Architects Seattle Meetup の創設者でもあります。 クラウドセキュリティのトレーニングを行うために旅行している間、私はホテルの部屋でも、教室でも VPN を使用して Wi-Fi ネットワークに接続します。ほとんどの企業は、リモート VPN エンドポイントをインターネット全体に公開しています。そこで、必要な場所にだけネットワークアクセスを許可するために AWS IoT ボタンを使用できるという仮説を思いつきました。VPN ユーザーがクリックするとアクセスできるようになり、ネットワークルールが起動され、ダブルクリックすると再びネットワークトラフィックが許可されなくなるとしたらどうでしょうか。 このアイディアを試したところ、以下の結果が分かります。 なぜ、VPN をリモートクラウド管理に使用するのか、疑問に思われるかもしれません。なぜ、ノートパソコンやモバイルアプリケーションではなくて AWS IoT ボタンなのでしょうか? それについての詳細は、私のクラウドセキュリティに関するブログをご覧ください。 最初は、デバイスで使用される証明書を組織が管理できるので、AWS IoT エンタープライズボタンを使用したいと考えていました。また Wi-Fi も使用し、ネットワークアクセスを許可するためにボタンの IP アドレスを取得することを望んでいました。そのためには、ラップトップと同じ IP アドレスをボタンが Wi-Fi ネットワークから受け取ったことを証明できなければなりませんでした。残念ながら、一部のワイヤレスネットワークで使用されるキャプティブポータルのために、一部の場所でボタンを接続するのに問題がありました。 次に、AT&T LTE-M ボタンを試しました。このボタンを今回のユースケースのために機能させることはできましたが、必要とされるほどユーザーフレンドリーではありませんでした。このボタンは、ホテルの部屋で VPN に接続するために使用している Wi-Fi ではなく、セルラーネットワークにあるため、IP アドレスを自動的に判断することができないのです。AWS IoT モバイルアプリケーションを使用して手動で設定しなければなりません。 […]

Read More

新機能 – Amazon SageMaker Neo – トレーニングしたモデルをどこでも実行

機械学習(Machine Learning: ML)は、トレーニングと推論という2つの異なるフェーズに分かれています。 トレーニングは、モデルを構築すること、すなわち、意味のあるパターンを識別するためにデータセット上で ML アルゴリズムを実行することを扱います。これには大量のストレージとコンピューティングパワーが必要なことが多く、クラウドは Amazon SageMaker や AWS Deep Learning AMI などのサービスで ML ジョブをトレーニングするためのうってつけな場所になります。 推論は、モデルの使用、すなわちモデルが一度も見たことがないデータサンプルの結果を予測することを扱います。ここでは、要件が異なります。開発者は通常、待ち時間(1回の予測でどれくらい時間がかかるか)とスループット(並列で実行できる予測の数)を最適化することに関心があります。 もちろん、リソースが制約されているデバイスを扱う場合は、予測環境のハードウェアアーキテクチャがこのようなメトリックに非常に大きな影響を与えます。Raspberry Pi の愛好家として、私はしばしば、若い仲間が私の推論コードをスピードアップするためにもう少し誘導して欲しいと思っています。 特定のハードウェアアーキテクチャーのモデルをチューニングすることは可能ですが、ツールの欠如が原因でエラーが発生しやすく時間がかかります。ML フレームワークやモデル自体にマイナーな変更を加えると、通常、ユーザーは再び最初からやり直す必要があります。残念なことに、ほとんどの ML 開発者は、基礎となるハードウェアにかかわらずどこでも同じモデルを展開する必要があり、パフォーマンスは大幅に向上しません。

Read More

Amazon FreeRTOSでBluetooth Low Energyが利用可能、Espressif ESP32で利用する例

Amazon Web Services (AWS) は、Amazon FreeRTOS BLEのベータ版を発表しました。本機能により組み込み開発者が、Bluetooth Low Energy (BLE) を使用するAmazon FreeRTOSデバイスをAndroidまたはiOS端末を通して安全にAWS IoTと接続することができます。Amazon FreeRTOSのBLEサポートにより、Wi-Fiを含む他の接続方法よりも低消費電力が必要なデバイス向けの新しいアプリケーション開発が可能になります。 Amazon FreeRTOSのBLEサポートにより、汎用的なAPI経由で標準のGeneric Access Profile (GAP)やGeneric Attributes (GATT)プロファイルを利用することで、Amazon FreeRTOS対応デバイス間で移植可能なBLEアプリケーションの作成や、AndroidやiOS SDKsを利用してAWS IoT機能と統合することが可能です。BLEの仕様によると、GAPはBLEデバイスがどのようにブロードキャストを有効にし、相互接続するかを定義している。GATTは、コネクションが接続されるとどのようにデータが転送されるかを記述している。

Read More

新機能 – AWS IoT Greengrassのデプロイがシンプル化、セキュリティ強化、柔軟性も向上しました

AWS IoT Greengrass では、ローカルコンピューティング、メッセージング、データキャッシング、同期、および機械学習の推論機能をエッジデバイスに導入することができます。 最新のリリースでは、Greengrass上で動作する Lambda 関数のデプロイを簡素化し、新しい環境に Greengrass を導入できるように柔軟性を高め、さらに使いやすいセキュリティ機能も追加しています。 サードパーティアプリケーションや AWS サービスへの接続、アイソレーションとアクセス権の設定を行うための AWS IoT Greengrass の設定オプションの追加、信頼の根幹となる秘密鍵のハードウェアストレージなど、AWS IoT Greengrass デバイスの機能を拡張する新機能を今日から使用できます。

Read More