TensorFlow Recommenderで映画のレコメンダーシステムを構築

この記事は GMOアドマーケティング Advent Calendar 2021 12日目の記事です。

こんにちは、GMOアドマーケティングのS.Rです。 機械学習エンジニアとしてよくある開発はレコメンダーシステムの構築になります。今日は皆さんへTensorFlow Recommenderで簡単に映画レコメンダーシステムを構築する方法を紹介します。

TensorFlow Recommenderとは

TensorFlow Recommender(TFRS)は、レコメンダー システムを構築するためのライブラリです。 TensorFlow Recommenderで学習データの準備、モデルのトレーニングと評価まで簡単に作業が行えます。

モデルの簡単な説明

TensorFlow Recommender の基本モデルはユーザーが商品を購入する履歴を利用してレコメンド結果を作成することです。
 

ColabのInstanceを作る

今回はGoogleのMachine Learning Cloud ServiceというColabを利用して説明します。Colabの公式サイトからColabのPython3のInstanceを作ります。

環境を構築

Tensorflow RecommendersとTensorflow Datasetsをインストールしましょう。

学習データを読み込む

今回はユーザーが公開された映画を評価するMovieLens のデータセットを利用します。
下記のコードで学習データを読み込みます。

TensorFlowを処理できる様にReformatする

Usermodelを定義する

Moviemodelを定義する

学習の目標関数を定義する

モデルを定義する

モデルを学習する

ユーザーへレコメンドする結果を試す

指定されたユーザーへレコメンドする映画TOP10を出してみましょう ユーザー38を入力します。 評価の点数はTOP10の映画を出ます。

まとめ

今回はTensorFlow Recommender で簡単に映画レコメンダーシステムを構築する方法を紹介しました。
レコメンダーシステムはよく使われているものですので、もし今回のブログが皆さんの日本語のNLP の開発にお役に立てば幸いです。
明日はT.Nさんによる「JavaのSealed Classesについて」について紹介します。
引き続き、GMOアドマーケティング Advent Calendar 2021 をお楽しみください!  

■エンジニア採用ページ ~福利厚生や各種制度のご案内はこちら~
https://note.gmo-ap.jp/n/n02cbeb6edb0d

■noteページ ~ブログや採用、イベント情報を公開中!~
https://note.gmo-ap.jp/