Amazon Web Services ブログ

AWS AI と Amazon Sumerian を使用した IT 教育

この記事のゲストは AWS Machine Learning のヒーロー、Cyrus Wong です。Cyrus は、香港職業教育研究所(Lee Wai Lee)クラウドイノベーションセンターのデータサイエンティストです。AWS Certifications 9 つをすべて達成し、オープンソースプロジェクト、ブログ記事、イベントを通じて AWS の知識を他の人と共有することを楽しんでいます。

私たちの研究所(IVE)では、毎年数千人の生徒に IT トレーニングを提供しており、コースの 1 つで AWS プロモーションクレジットをうまく適用しています。最近私たちは、AWS AI、サーバーレス、AR/VR サービスを使用して学習経験を強化し、ラボで生徒が何をしているのかを理解するためにデータを収集するオープンソースプロジェクト「Lab Monitor」を構築しました。

問題

ラボアクティビティの一般的な問題の 1 つは、生徒がコースとは関係ないこと(動画視聴やゲームプレイなど)をしばしばしていることです。また、ラボの回答がソフトコピーになっているため、生徒がクラスメートの回答を簡単にコピーできます。一般的には答えが 1 つしかないので、教師は回答をコピーした学生を見抜くのに苦労します。どの生徒がラボに取り組んでいるのか、他の生徒の答案をコピーしているのかは誰にも分かりません!

ソリューション

Lab Monitor は、評価モデルの形から最終的な結果のみを以って、開発プロセス全体を変更します。AWS AI サービスを使用して、生徒をサポートし、モニタリングすることができます。

このシステムは、以下のパートで構成されています。

  • Lab Monitor エージェント
  • Lab Monitor コレクター
  • AR Lab アシスタント

Lab Monitor エージェント

Lab Monitor エージェントは、生徒のコンピュータアクティビティで動作する Python アプリケーションです。すべての情報は定期的に AWS に送信されます。生徒を特定して API ゲートウェイを保護するために、各生徒には使用制限付きの固有 API キーがあります。この機能には、次のものが含まれます。

  • すべてのキーボードとポインタのイベントをキャプチャします。これにより、キーボードやポインタを使用せずにコーディングタスクを完了することは不可能なので、生徒が実際にエクササイズに取り組んでいることを確認できます! また、生徒にショートカットを使用することを推奨します。その情報はインジケータ―として必要です。
  • PCプロセスのモニタリングと制御。教師は、ラボに関係のないプログラムを実行しないようにすることができます。コンピュータテストで、すべてのブラウザと通信ソフトウェアを強制終了できます。ハードウェアをアップグレードするかどうかを決定する場合は、詳細情報の処理が重要です!
  • 画面をキャプチャしますAmazon Rekognition は動画や不適切なコンテンツを検出できます。抽出されたテキストコンテンツで、Amazon Sumerian のホストが生徒と自動的に話すようにすることができます。教師が生徒の画面をすべてモニタリングすることは不可能です! 私たちは S3 Transfer Acceleration と並行する事前署名付き URL を使用して、画像のアップロードを高速化します。
  • 生徒がコードを保存するとき、ソースコードを AWS にアップロードします。生徒がいつタスクを完了したかがわかるため、遅れている生徒をサポートすることができます!

Lab Monitor コレクター

Lab Monitor コレクターは、データを収集し、API を AR Lab アシスタントに提供する AWS Serverless Application モデルです。必要に応じて、AWS Lambda のユニットテストを実行することで、教師はコードを保存するたびにすぐに生徒を評価することができます。Amazon S3 のデータレイクにすべてのデータを保存し、教師は Amazon Athena を使用してデータを分析できます。

コストを節約するために、スケジュールされた Lambda 関数は、教師のクラスのカレンダーを 15 分ごとにチェックします。予定されているクラスがある場合、Kinesis ストリームと Kinesis Data Analytics アプリケーションが自動的に作成されます。教師は、すべての生徒のアクティビティをほぼリアルタイムで見ることができます。

AR Lab アシスタント

AR Lab アシスタントは、生徒にラボのエクササイズをリマインダーする Amazon Sumerian のアプリケーションです。Amazon Rekognition にカメラの画像を送信し、学生 ID を返信します。

Sumerian のホスト Christine は、Amazon Polly を使って、何かあったときに生徒に話しかけます。

  • 生徒がユニットテストに合格すると、おめでとうございますといいます。
  • 生徒が映画を見ていると、トム・クルーズのような映画俳優の名前を使って生徒を叱ります。
  • 生徒がポルノを見ていると、叱ります。
  • 生徒が Python インタプリタ-を設定することを忘れるなど、間違ったことをすると、彼女はそれを設定するようにリマインダーします。

生徒は、例えば全体の進捗状況を確認するなど、彼女に質問することもできます。ホストは Lex チャットボットに接続できます。生徒の会話は、Amazon Comprehend が提供する感情分析結果とともに DynamoDB に保存されます。

生徒の画面は、Sumerian アプリケーションの中のプロジェクタのようなものです。

Christine: 「ラボで汚らわしいものを見るのは止めなさい! トム・クルーズは、Python コードの書き込みを手伝ってはくれません!」

簡素化されたアーキテクチャの図

デモ動画

AR Lab アシスタントの反応:https://youtu.be/YZCR2aROBp4

結論

さまざまな AWS のサービスを組み合わせることで、生徒はラボのエクササイズのみに集中でき、他の生徒の回答をコピーすることをやめさせることができます! 私たちは約 4 ヶ月でプロジェクトを構築しましたが、今もまだ進化しています。今後のバージョンでは、クラスでの振る舞いに基づいて生徒の最終的な成績を予測する Machine Learning モデルを構築する予定です。生徒たちは、Christine と一緒のとき授業がもっと楽しいと感じています。

最後に、AWS クレジットを提供してくださった AWS Educate と、AWS Academy 学生開発チームの MikeLongMandyTungJacqueline、そして Hin から IVE Higher Diploma in Cloud および Data Center Administration に感謝いたします。当チームは、このアプリケーションを AWS Artificial Intelligence (AI) Hackathon に提出し、3位賞を受賞しました!