【空想編】大学で挫折した卒業研究をAWSの力で再現したい

記載内容は所属会社を代表したものではなく、私の個人的な意見ということをご了承ください。

本件は長くなりますので、【空想編】、【設計編】、【実現編】の3部に分けて投稿したいと思います。
今回は【空想編】と言うことで、思い付いたことを書き述べていきます。

# はじめに
私は学生時代、下記のような卒業研究を行っていました。
前提:
スポーツフードアドバイザーの資格を所持
→球技系、持久系、筋力系のそれぞれのスポーツをする上で必要な栄養素に関する知識
![Screenshot_20240222_232219_Gallery.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2780811/c016435a-c838-9850-1520-524ce2c158e2.jpeg)


昨今、ウェアラブルデバイスの発展に伴いウェアラブルデバイスをつけているだけである程度どのスポーツに従事しているかが分かります。
また、下記の例はランニングに関しての記事ですが様々な意思でランニングに取り組んでいる事が分かります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2780811/0793da5f-67ae-61f2-af3f-53fc307a5b1a.png)
出典：　「インテージ調べ」　「ランナーたちはなぜ走る？７つのタイプとその違い」https://www.intage.co.jp/gallery/runner/　(参照 2020-01-20)



近年、食事の写真を撮影することは何らおかしいことでないこと。

ターゲット:
・自己啓発でスポーツに取り組む一般アスリート
・社員の健康を管理したい会社向け

研究内容:
人間の心理として、美味しそうな食べ物を見たとき、その食べ物を食べたくなる傾向があります。
参考:
https://www.mashingup.jp/2015/11/050660sns_diet.html#:~:text=%E9%A3%9F%E3%81%B9%E7%89%A9%E3%81%AE%E7%A2%BA%E4%BF%9D%E3%81%AE%E3%81%9F%E3%82%81,%E3%81%A8%E5%91%BC%E3%82%93%E3%81%A7%E3%81%84%E3%81%BE%E3%81%99%E3%80%82
本研究はその心理を逆手に取ったものとなります。
想定しているユースケースは下記の通りです。
①ユーザーは、消費カロリーや運動を測定できるウェアラブルデバイスをつけていること
②ユーザーは、朝食・昼食を写真に押さえること
これらの行動を行った結果、その日の消費量と摂取量から最適な晩御飯を提案すると言ったものです。
ここで、提案される晩御飯はアマチュアアスリートに対してはその競技でベストなもの、一般的な人に向けてはほどよい栄養素のものを写真で提案し、ユーザーの食欲を誘導するものです。

# この研究にて実現出来ることは何か
一般アスリートに対しては、食事面を少しの意識変更をするだけで確実に成果として現れてくると思います。
また、企業向けに対して行うとどうなるでしょうか？
例えば、オフィスのビルの中にコンビニや食堂が併設されているオフィスもたくさんあると思います。コンビニや食堂と提携することによって、社員の意識も健康的な食事に向くのではないでしょうか？

# ストーリー
文字だけでは説明が難しいので、実際に考えているストーリーを紹介します。
①例えば、ある朝ランニングに出かけたとします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2780811/21770f16-ea6e-9445-8e5f-fe73a66e66d6.png)

②そうすると当然のことながらお腹は減り、何らかのおやつを食べたくなることでしょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2780811/77d9adc5-f10f-29b4-76c6-9255fc512227.png)

③しかしながら、朝のランニングによって適度に消費されているので、このおやつを摂取することで、運動と食事がバランスの取れた状態になります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2780811/91229b2b-416b-7c4d-dfd2-fccf1d22b25c.png)

※ここで大事になるのは、「どの運動をした」から「どれだけのものを食べる」とちょうど良いのかを自然に誘導することです。
下記の例ですが、学生時代にハードなトレーニングをしてみてからシステムによる食事の誘導をしてみた結果です。（王将に駆け込みたくなります。）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2780811/bd5e5c78-60ec-c7c4-59ef-bdf7c99af23a.png)
当時の実験では、精度に欠ける点や、一般向けに配信できないなどの課題が残りました。
そこでAWSを使うことで課題の解決ができ、一般にシステムを提供できるのではないかということです。

# AWSで実現するためには
※ここからが空想になります。
　実現編では多少の変更が、加わる可能性があることをご容赦ください。
必要なこととしては下記になります。
①ウェアラブルデバイスから個人の運動データを抽出する。
②個人の運動データから、筋力系・持久系・球技系のどのスポーツであるかを特定すること。
③ユーザーが撮影した写真から、その食事の特定及び、摂取カロリーや栄養素を特定すること。
④ユーザーの朝昼の摂取量から晩に必要な摂取量を計算すること。
⑤ユーザーの食欲を沸き立たせる食事の画像を作成すること。

# 使用予定のAWSサービス
<a href="https://docs.aws.amazon.com/ja_jp/greengrass/v1/developerguide/what-is-gg.html">・AWS IoT Greengrass</a>
　→クラウドの機能をローカルデバイスに拡張するソフトウェアです。これにより、デバイスは情報源に近いデータを収集および分析して、ローカルイベントに自動的に反応し、ローカルネットワークで互いに安全に通信することができます。
 　①のデータをクラウドにアップロードするために使います。

<a href="https://aws.amazon.com/jp/kinesis/">・Amazon Kinesis</a>
ストリーミングデータをリアルタイムで収集、処理が出来る
フルマネージド型の分析サービスです。
　①のデータを収集するために使います。

<a href="https://aws.amazon.com/jp/dynamodb/">・Amazon DynamoDB</a>
1 桁ミリ秒単位で規模に応じたパフォーマンスを実現する高速で柔軟な NoSQL データベースサービス
　①のデータを保存するために使います。

<a href="https://aws.amazon.com/jp/glue/#:~:text=AWS%20Glue%20%E3%81%AF%E3%80%81%E3%83%87%E3%83%BC%E3%82%BF%E3%81%AE,%E3%83%AC%E3%82%A">・AWS Glue</a>
データの準備をより簡単、迅速、低コストにするサーバーレスデータ統合サービスです。 70 を超える多様なデータソースを検出して接続し、一元化されたデータカタログでデータを管理し、ETL パイプラインを視覚的に作成、実行、モニタリングして、データをデータレイクにロードできます。
　②でスポーツを特定するために使います。

<a href="https://docs.aws.amazon.com/ja_jp/athena/latest/ug/what-is.html">・Amazon Athena</a>
標準的な SQL を使用して Amazon Simple Storage Service (Amazon S3) 内のデータを直接分析することを容易にするインタラクティブなクエリサービスです。
　②でスポーツを特定するために使います。

<a href="https://aws.amazon.com/jp/bedrock/">・Amazon Bedrock</a>
　→Amazon Bedrock は、主要な AI スタートアップや Amazon が提供する高パフォーマンスな基盤モデル (FM) を、統合 API を通じて利用できるようにするフルマネージド型サービスです。
 　③の画像認識や⑤の画像生成に使用出来ると思います。

# 次回予告
【設計編】:今回の空想を元に設計をしていきます。構成図および各構成の設計意図を書き述べていきます。
今回の空想に興味を持っていただければ是非【設計編】、【実現編】もご覧ください。
また、現在は空想段階ですのでもっと最適なAWSサービス等があれば、コメント頂ければ幸いです。