xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

  • 大小: 13KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2021-05-29
  • 語言: 其他
  • 標簽:

資源簡介

基于用戶的協同過濾和基于內容的混合推薦系統源代碼。

資源截圖

代碼片段和文件信息

#?代碼說明:
#?基于內容的推薦算法的具體實現

import?math
import?numpy?as?np
import?pandas?as?pd

#?創建節目畫像
#?參數說明:
#?items_profiles?=?{item1:{‘label1‘:1?‘label2‘:?0?‘label3‘:?0?...}?item2:{...}...}
def?createItemsProfiles(data_array?labels_names?items_names):

????items_profiles?=?{}

????for?i?in?range(len(items_names)):

????????items_profiles[items_names[i]]?=?{}

????????for?j?in?range(len(labels_names)):
????????????items_profiles[items_names[i]][labels_names[j]]?=?data_array[i][j]

????return?items_profiles

#?創建用戶畫像
#?參數說明:
#?data_array:?所有用戶對于其所看過的節目的評分矩陣?data_array?=?[[2?0?0?1.1?...]?[0?0?1.1?...]?...]
#?users_profiles?=?{user1:{‘label1‘:1.1?‘label2‘:?0.5?‘label3‘:?0.0?...}?user2:{...}...}
def?createUsersProfiles(data_array?users_names?items_names?labels_names?items_profiles):

????users_profiles?=?{}

????#?計算每個用戶對所看過的所有節目的平均隱性評分
????#?users_average_scores_list?=?[1.2?2.2?4.3...]
????users_average_scores_list?=?[]

????#?統計每個用戶所看過的節目(不加入隱性評分信息)
????#?items_users_saw?=?{user1:[item1?item3?item5]?user2:[...]...}
????items_users_saw?=?{}

????#?統計每個用戶所看過的節目及評分
????#?items_users_saw_scores?=?{user1:[[item1?1.1]?[item2?4.1]]?user2:...}
????items_users_saw_scores?=?{}

????for?i?in?range(len(users_names)):

????????items_users_saw_scores[users_names[i]]?=?[]
????????items_users_saw[users_names[i]]?=?[]
????????count?=?0
????????sum?=?0.0

????????for?j?in?range(len(items_names)):

????????????#?用戶對該節目隱性評分為正,表示真正看過該節目
????????????if?data_array[i][j]?>?0:
????????????????items_users_saw[users_names[i]].append(items_names[j])
????????????????items_users_saw_scores[users_names[i]].append([items_names[j]?data_array[i][j]])
????????????????count?+=?1
????????????????sum?+=?data_array[i][j]

????????if?count?==?0:
????????????users_average_scores_list.append(0)
????????else:
????????????users_average_scores_list.append(sum?/?count)

????for?i?in?range(len(users_names)):

????????users_profiles[users_names[i]]?=?{}

????????for?j?in?range(len(labels_names)):
????????????count?=?0
????????????score?=?0.0

????????????for?item?in?items_users_saw_scores[users_names[i]]:

????????????????#?參數:
????????????????#?用戶user1對于類型label1的隱性評分:?user1_score_to_label1
????????????????#?用戶user1對于其看過的含有類型label1的節目item?i?的評分:?score_to_item?i
????????????????#?用戶user1對其所看過的所有節目的平均評分:?user1_average_score
????????????????#?用戶user1看過的節目總數:?items_count

????????????????#?公式:?user1_score_to_label1?=?Sigma(score_to_item?i?-?user1_average_score)/items_count

????????????????#?該節目含有特定標簽labels_names[j]
????????????????if?items_profiles[item[0]][labels_names[j]]?>?0:
????????????????????score?+=?(item[1]?-?users_average_scores_list[i])
????????????????????count?+=?1

????????????#?如果求出的值太小,直接置0
????????????if?abs(score)?????????????????score?=?0.0
????????????if?count?==?0:
????????????????result?=?0.0
????????????else:
????????????????result?=?score?/?count

????

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????8592??2018-05-02?12:51??recommender_system\CB.py

?????文件???????4849??2018-05-02?21:27??recommender_system\CB_Mixture_userCF.py

?????文件???????1841??2018-05-02?00:36??recommender_system\items_labels_to_01matrix.py

?????文件???????2230??2018-05-02?11:31??recommender_system\items_saw_labels_to_01matrix.py

?????文件???????7586??2018-05-02?19:53??recommender_system\UserCF.py

?????文件???????3686??2018-05-02?20:13??recommender_system\__pycache__\CB.cpython-36.pyc

?????文件???????3648??2018-05-02?20:13??recommender_system\__pycache__\UserCF.cpython-36.pyc

?????目錄??????????0??2018-05-02?21:57??recommender_system\__pycache__

?????目錄??????????0??2018-05-02?21:57??recommender_system

-----------?---------??----------?-----??----

????????????????32432????????????????????9


評論

共有 條評論

相關資源