🗂

【個人開発 #1-2】レコメンドシステムを作ってみた vol.2 〜画面イメージ・DB設計・処理の流れ〜

2023/09/30に公開

作りたいシステム

忙しい人のためのギフト提案型AI「AiSAP!(エイサップ)」

忙しい社会人のために、AIが可能な限り素早く(ASAP: As Soon As Possible)、最適なギフトを提案してくれるWebサービス。

画面イメージ

画面イメージはこんな感じです。
ドロップダウンで条件を選択して検索ボタンを押下すると、ランキングされた商品一覧が表示されます。

画面イメージ

DB設計

ER図はこんな感じです。

  • 商品テーブル:商品情報を管理。商品1つにつき1つのIDを付与。
  • 受け取り手テーブル:受け取り手の情報を管理。受け取り手のパターンは検索条件のパターン数だけ存在するため有限なので、IDではなくタイプという形で振り分け。
  • 評価テーブル:各商品が各受け取り手タイプにどれだけクリックされたかを管理。「商品Aは20代の彼女の誕生日プレゼントとして5回クリックされた」といった感じ。


    ER図
    処理の流れはこんな感じです。
  1. 【ユーザ】検索条件(受け取り手の情報および商品の予算)を選択し、検索ボタンを押下。
  2. 【システム】選択された受け取り手の情報が、受け取り手テーブルに登録されている受け取り手タイプのうち、どれに該当するかを特定。
  3. 【システム】選択された商品の予算に該当する商品を抽出。
  4. 【システム】推薦アルゴリズムが、評価テーブルを元に商品のランクを算出。
  5. 【システム】ランク上位の商品を出力して画面に表示。
  6. 【ユーザ】表示された商品のうち、気になる商品をクリック。
  7. 【システム】クリックされた情報を評価テーブルに登録。

次回は「推薦アルゴリズム」の中身について、詳しく解説していきます!

Discussion