Slide 1

Slide 1 text

No content

Slide 2

Slide 2 text

自己紹介 為藤 アキラ (Akira Tameto) 株式会社BLUEISH 代表取締役 CEO兼CTO ・AWS歴12年 ・直近のAIプロジェクト   ・画像を中身とした機械学習とLLM のハイブリッドのアーキテクト

Slide 3

Slide 3 text

現在、1ヶ月でAWS All Certifications チャレンジ中! 残り6/12 ・SAP (1/18) ・DVA (1/20) ・SOA (1/23) ・SCS (1/25) ・DOP (1/27)  ・ANS (1/28)

Slide 4

Slide 4 text

今回はデータ準備のお話

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

・ Amazon SageMaker Feature Store をLLMで活用 ・データパイプライン (MLOps/LLMOps) と合わせた全体像 のイメージを掴む ゴール

Slide 8

Slide 8 text

ECサイトでの ”パーソナライズ ”レコメンド&説明文生成 Feature StoreとLLMを連携した推論手法をお話しします。 今回のユースケース

Slide 9

Slide 9 text

・「最新情報」の取得 ・「ユーザー固有の情報 」の取得 LLMでこの様な課題がありました

Slide 10

Slide 10 text

・「最新情報」の取得  → ・「ユーザー固有の情報 」の取得  → RAG (ナレッジベース) DBから取得 LLMでこの様な課題がありました

Slide 11

Slide 11 text

・「最新情報」の取得  → ・「ユーザー固有の情報 」の取得  → RAG (ナレッジベース) DBから取得 解決!! LLMでこの様な課題がありました

Slide 12

Slide 12 text

・「最新情報」の取得  → ・「ユーザー固有の情報 」の取得  → RAG (ナレッジベース) DBから取得 ちょっと待てぃ!! LLMでこの様な課題がありました

Slide 13

Slide 13 text

・「最新情報」の取得  → ・「ユーザー固有の情報 」の取得 RAG (ナレッジベース) LLMでこの様な課題がありました

Slide 14

Slide 14 text

・「最新情報」の取得  → ・「ユーザー固有の情報 」の⁨⁩取り入れ  →   ?? RAG (ナレッジベース) LLMでこの様な課題がありました

Slide 15

Slide 15 text

Amazon SageMake Feature Store!

Slide 16

Slide 16 text

・「最新情報」の取得  → ・「ユーザー固有の情報 」の⁨⁩取り入れ  → RAG (ナレッジベース) Feature Store LLMでこの様な課題がありました

Slide 17

Slide 17 text

取り入れ?

Slide 18

Slide 18 text

No content

Slide 19

Slide 19 text

SageMaker Feature Store vs Cognito / RDB / API ・本格的に機械学習ワークロードを回す際に重要に ・特徴量の再利用・バージョン管理 ・オフライン/オンラインの両面管理

Slide 20

Slide 20 text

y 特徴量の保存、探索、更新、共有が容易 y 構造化データ(ユーザー属性、商品情報、購買履歴など) を一元管A y ストリーミングとバッチの両方でデータの保存が可能 y オフラインとオンラインの Feature Store を使い分けるこ とができる y 推論とモデルトレーニングの際に一貫性を保つ事ができる Amazon SageMaker Feature Store?

Slide 21

Slide 21 text

Å 特徴量の保存、探索、更新、共有が容易P Å Å ストリーミングとバッチの両方でデータの保存が可能P Å Å 推論とモデルトレーニングの際に一貫性を保つ事ができる 構造化データ(ユーザー属性、商品情報、購買履歴など) を一元管h オフラインとオンラインの Feature Store を使い分けるこ とができるP Amazon SageMaker Feature Store?

Slide 22

Slide 22 text

Step1. お客様がECサイトを訪問 Step2. ユーザーIDに紐づく好みや購買履歴を取得 Step3. LLMが商品オススメ文を生成 Step4. サイトに表示 ユースケース全体像

Slide 23

Slide 23 text

Step1. お客様がECサイトを訪問 Step2. ユーザーIDに紐づく好みや購買履歴を取得 Step3. LLMが商品オススメ文を生成 Step4. サイトに表示 ユースケース全体像 ・購入率向上、カゴ落ち率の低減!! ・「なぜこの商品をオススメするか」を自然言語で丁寧に説明して 顧客の納得度アップ!!

Slide 24

Slide 24 text

「最近、コスメを買った29歳女性」に対して 「新発売の保湿クリーム」を紹介し、 その特徴を短文で表示 イメージ

Slide 25

Slide 25 text

・user_features ・product_features   user_id、age、 favorite_category、 past_purchases
   product_id、 category、 price、 stock、 main_feature データモデル (Feature Storeに格納するデータ)

Slide 26

Slide 26 text

・オフラインストア ・オンライン   日次/週次の購買ログを一括バッチ登録、分析にも活用
   在庫数や価格変動をリアルタイム更新 オフラインストア / オンラインストア

Slide 27

Slide 27 text

・Lambda / API Gatewayからuser_id をキーに Feature Storeを参照
 ・ 取得した属性をプロンプトへ埋め込み → Bedrock推論 → レスポンス返却 Bedrock + LLM (Nova)との接続 Response Lambda API Gateway Feature Store Bedrock

Slide 28

Slide 28 text

˜„ データ収集フロー  (1日1回 or 数時間おきにバッチ投入) ・ECサイト → Kinesis Firehose → S3 → AWS Glue → Feature Store (Offline)

 2. リアルタイム更新フロー  (ミリ秒オーダーで更新/取得が可能) ・ユーザーが商品を購入 → Lambda で在庫数を更新 → Feature Store (Online) へ書き込み 3. 推論フロー ・エンドユーザーがサイトを開く → API 呼び出し ・「ユーザーID」をキーにOnlineStore から最新データ取得 → LLMへプロンプト生成 → 結果をWeb に返す 4. モニタリング & Retraining パイプライン

Slide 29

Slide 29 text

に対して を紹介し、 その特徴を短文で表示 「最近、コスメを買った29歳女性」 「新発売の保湿クリーム」 イメージ

Slide 30

Slide 30 text

LLM生成 (Feature Store無し)

Slide 31

Slide 31 text

・年齢や購入履歴等がわからないため、より汎用的で無難な説明になる ・「29歳女性」や「過去の保湿アイテム」に言及できず、ユーザー個別の要素が含 まれない ・結果として、「パーソナライズ度」や「説得力」は下がる ポイント (Feature Store無し)

Slide 32

Slide 32 text

# 例: user_id="U010" のオンラインストア情報を取得済 み user_data = { } product_data = { } "age": 29, "favorite_category": "Cosmetics", "past_purchases": ["C003", "C010"] "product_id": "C011", "category": "Cosmetics", "price": 2500, "stock": 5, "main_feature": "毛穴ケア" prompt = f""" ""†€ ユーザー情報: - 年齢: "age" - 好みのカテゴリ: "favorite_category" - 過去購入: "past_purchases" おすすめ商品: - ID: "product_id" - 価格: "price" 円 - 特徴: "main_feature" - 在庫: "stock" 個 このユーザー向けに、なぜこの商品をおすすめするのか 50文字程度で日本語で説明してください。 {user_data[ ]} {user_data[ ]} {user_data[ ]} {product_data[ ]} {product_data[ ]} {product_data[ ]} {product_data[ ]} 実際のプロンプト

Slide 33

Slide 33 text

LLM生成 (Feature Store有り)

Slide 34

Slide 34 text

・ユーザー情報や商品情報が正しく反映された精度の高い説明文 ・在庫5個なら「在庫わずか!」などと促す工夫も可能 ポイント (Feature Store有り)

Slide 35

Slide 35 text

1. Feature Storeのバージョニング 2. フィードバックループ 3. モデル監視 ・どの時点のデータが学習/推論に使われたかを追跡できる → 改善策の検討が容易
 ・「説明を見て購入したか」「離脱したか」を記録し、A/Bテスト や プロンプトエンジニアリング の材料に
 ・生成コンテンツに不適切表現やハルシネーションがないかをCloudWatch Logsや外部ツールで定 期チェック LLMOps視点で意識するところ

Slide 36

Slide 36 text

・フィードバックの多いフレーズや追加の特徴量(ユーザー嗜好の細分化など)を 取り込み、継続的にアップデート
 ・商品レビューやSNSの感想をRAG(Retrieval Augmented Generation)で取り 込み、説明の説得力を強化
 ・ユーザーの過去クレーム履歴から“好まない要素”を排除するなど、きめ細かい フィルタリング 高精度推論を目指すには

Slide 37

Slide 37 text

Thank You!