中國產(chǎn)品網(wǎng)注冊網(wǎng)站站長seo推廣
Tensorflow 2.12 電影推薦項目搭建
- 學習筆記
- 工具、環(huán)境
- 創(chuàng)建項目
- 項目配置
- 安裝相關(guān)python包
- 召回模型實現(xiàn)
- 排序模型實現(xiàn)
- 實現(xiàn)電影推薦
- 導入模塊
- 設(shè)置要推薦的用戶
- 召回推薦
- 排序推薦
- 推薦結(jié)果
- 結(jié)尾
學習筆記
Tensorflow 2.12 電影推薦項目搭建記錄~
Tensorflow是谷歌開源的機器學習框架,可以幫助我們輕松地構(gòu)建和部署機器學習模型。這里記錄學習使用tensorflow來搭建一個電影項目demo,包含召回模型搭建、排序模型搭建,以及整合兩個模型進行完整的推薦。
相關(guān)文章:
電影推薦-召回模型
電影推薦-排序模型
工具、環(huán)境
開發(fā)工具:PyCharm 2023.1.1 (Community Edition)
使用環(huán)境:Python 3.10.6
使用框架:tensorflow 2.12.0、tensorflow-datasets 4.9.2、tensorflow-recommenders 0.7.3、numpy 1.23.5、pandas 2.0.3、tensorboard 2.12.3
創(chuàng)建項目
使用PyCharm創(chuàng)建一個新項目:MovieRecommenders,方便后續(xù)在項目中實現(xiàn)推薦模型、排序模型相關(guān)的代碼:
點擊Create按鈕,完成創(chuàng)建,新建項目截圖如下:
項目配置
打開控制臺,配置pip國內(nèi)源,下包的速度會快一點,這里配置阿里源:
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple
pip config set install.trusted-host mirrors.aliyun.com
配置截圖如下:
安裝相關(guān)python包
使用pip安裝tensorflow、tensorflow-recommenders、tensorflow-datasets三個包,注意對應版本,tensorflow的依賴包很多,整個過程估計5~10分鐘:
pip install tensorflow==2.12.0
pip install tensorflow-recommenders==0.7.3
pip install tensorflow-datasets==4.9.2
安裝截圖如下:
召回模型實現(xiàn)
新建movie_recommenders包,在該包下創(chuàng)建Retrieval.py文件,如下:
Retrieval.py主要為構(gòu)建、訓練、導出電影推薦召回模型,包含以下步驟(代碼詳見上面召回模型的文章):
- 導入相關(guān)模塊
- 加載數(shù)據(jù)
- 數(shù)據(jù)預處理
- 生成詞匯表
- 構(gòu)建查詢塔
- 構(gòu)建候選條目塔
- 模型指標
- 損失函數(shù)
- 構(gòu)建雙塔召回模型
- 訓練和評估
- 預測
- 導出和加載模型
這里我們改下保存模型的路徑,把訓練好的模型保存到項目路徑下,為后續(xù)做推薦準備,其他代碼不做變動:
# 保存模型和加載模型
# with tempfile.TemporaryDirectory() as tmp:
# path = os.path.join(tmp, "model")
path = "C:\data\python\space\MovieRecommenders\models\\retrieval\\"
tf.saved_model.save(index, path)
loaded = tf.saved_model.load(path)
scores, titles = loaded(["42"])
print(f"Recommendations: {scores[0][:3]}")
print(f"Recommendations: {titles[0][:3]}")
點擊運行,控制臺訓練、評估、推薦結(jié)果相關(guān)日志輸出如下:
C:\data\python\space\MovieRecommenders\venv\Scripts\python.exe C:\data\python\space\MovieRecommenders\movie_recommenders\Retrieval.py
Epoch 1/3
10/10