当前位置:网站首页>02 Bar _ Recommandation de film (basée sur le contenu) Portrait de l'utilisateur
02 Bar _ Recommandation de film (basée sur le contenu) Portrait de l'utilisateur
2022-07-19 05:05:00 【Big Data dawency】
Recommandation de films basés sur le contenu:Portrait de l'utilisateur
Étapes de construction du portrait de l'utilisateur:
- Selon l'historique de notation de l'utilisateur,Combinaison de portraits d'objets,.Retourner l'étiquette de l'image du film avec l'enregistrement de l'image à l'utilisateur comme étiquette initiale
- En comptant le nombre de fois que l'utilisateur regarde l'étiquette d'ombre,Calculer les valeurs de poids pour chaque étiquette initiale de l'utilisateur,Trier et sélectionnerTOP-NÉtiquette d'image finale de l'utilisateur
Création de portraits d'utilisateurs
import pandas as pd
import numpy as np
from gensim.models import TfidfModel
from functools import reduce
import collections
from pprint import pprint
# ......
''' user profileCréation de portraits: 1. Extraire la liste de visualisation de l'utilisateur 2. Correspond aux mots clés de l'utilisateur en fonction de la liste de visualisation et de l'image de l'article,Et compter la fréquence des mots 3. Trier par fréquence de mots,Réserve maximaleTOP-kUn mot.,Ici.KSet to100,Étiquette en tant qu'utilisateur '''
def create_user_profile():
watch_record = pd.read_csv("datasets/ml-latest-small/ratings.csv", usecols=range(2), dtype={
"userId":np.int32, "movieId": np.int32})
watch_record = watch_record.groupby("userId").agg(list)
# print(watch_record)
movie_dataset = get_movie_dataset()
movie_profile = create_movie_profile(movie_dataset)
user_profile = {
}
for uid, mids in watch_record.itertuples():
record_movie_prifole = movie_profile.loc[list(mids)]
counter = collections.Counter(reduce(lambda x, y: list(x)+list(y), record_movie_prifole["profile"].values))
# Mots d'intérêt
interest_words = counter.most_common(50)
maxcount = interest_words[0][1]
interest_words = [(w,round(c/maxcount, 4)) for w,c in interest_words]
user_profile[uid] = interest_words
return user_profile
user_profile = create_user_profile()
pprint(user_profile)
边栏推荐
猜你喜欢

mysql数据库实验实训6,数据视图(详细)

String字符串根据符号进行特殊截取处理

MYSQL两个查询条件取并集然后进行查询

Attendance check-in and leave system based on SSM framework

DSL查询文档
![[batch] batch delete intermediate folder - personal research script](/img/6d/699987559bc25998e635a403d9d52d.png)
[batch] batch delete intermediate folder - personal research script
[email protected]: `node install.js` 的问题"/>解决[email protected]: `node install.js` 的问题

【Batch】批量删除中间文件夹-个人研究脚本

DSL query document

用户登录-以及创建验短信证码
随机推荐
User login - and create SMS verification code
MySQL takes the union of two query conditions and then queries
免签名模板审核的短信验证测试
DSL search results processing, including sorting, paging, highlighting
Fanoutexchange switch is simple to use
ThinkPHP official website tutorial
Monitoring and alarm of kubernetes
负载均衡添加ssl证书
Tidb performance analysis and optimization
三种高并发方式实现i++
[batch] batch delete intermediate folder - personal research script
浅聊链路追踪
User management - paging
Harmonyos fourth training notes
Declaration and definition of template class
POC——DVWA‘s XSS Reflected
异步数据-短信验证码
Cve-2017-12635 CouchDB vertical privilege bypass vulnerability recurrence
Implementation idea of log adding to database
Order system of middle office