CN117251643A - 基于协同过滤和概率语言术语集的新闻推荐方法及*** - Google Patents
基于协同过滤和概率语言术语集的新闻推荐方法及*** Download PDFInfo
- Publication number
- CN117251643A CN117251643A CN202311094314.8A CN202311094314A CN117251643A CN 117251643 A CN117251643 A CN 117251643A CN 202311094314 A CN202311094314 A CN 202311094314A CN 117251643 A CN117251643 A CN 117251643A
- Authority
- CN
- China
- Prior art keywords
- news
- user
- similarity
- recommendation
- evaluation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000001914 filtration Methods 0.000 title claims abstract description 28
- 238000012545 processing Methods 0.000 claims abstract description 12
- 238000011156 evaluation Methods 0.000 claims description 60
- 239000011159 matrix material Substances 0.000 claims description 36
- 230000006870 function Effects 0.000 claims description 23
- 230000003993 interaction Effects 0.000 claims description 10
- 238000007781 pre-processing Methods 0.000 claims description 10
- 238000006243 chemical reaction Methods 0.000 claims description 8
- 238000012549 training Methods 0.000 claims description 8
- 230000004927 fusion Effects 0.000 claims description 7
- 238000005457 optimization Methods 0.000 claims description 7
- 238000012163 sequencing technique Methods 0.000 claims description 6
- 238000004458 analytical method Methods 0.000 claims description 5
- 230000002452 interceptive effect Effects 0.000 claims description 5
- 238000013480 data collection Methods 0.000 claims description 4
- 230000011218 segmentation Effects 0.000 claims description 3
- 238000004422 calculation algorithm Methods 0.000 abstract description 20
- 230000000694 effects Effects 0.000 abstract description 7
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000004364 calculation method Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000008451 emotion Effects 0.000 description 3
- 238000012552 review Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000002996 emotional effect Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007500 overflow downdraw method Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9536—Search customisation based on social or collaborative filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9538—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开基于协同过滤和概率语言术语集的新闻推荐方法及***。该方法通过基于嵌入表示和单词嵌入技术的协同过滤算法,将用户和新闻文章同时嵌入潜在空间,利用它们之间的新闻文章相似性来预测用户感兴趣的内容,解决了在处理稀疏数据和冷启动问题时的限制;使用在线评论与概率语言术语集相结合的推荐算法,解决新用户和新投稿的新闻文章的推荐效果不佳的问题;最后让两种推荐算法通过排名排序的方法相融合,可以有效解决推荐***覆盖率和多样性低、推荐内容过于单一等问题。本发明能够极大提高了推荐覆盖率,使最终推荐排序富有多样选择性的同时提高推荐精确度。
Description
技术领域
本发明涉及信息推荐技术领域,尤其涉及基于协同过滤和概率语言术语集的新闻推荐方法及***。
背景技术
近年来,随着互联网的发展和普及,越来越多的信息被制造和传播,每天都有大量的新闻文章被创建和发布,用户需要花费越来越多的时间和经理去筛选和整理这些新闻,才能找到自己真正感兴趣或对自己有利的内容。这就是信息***和信息过载的影响,给用户带来了很大的信息负担,也影响了信息的利用效率和效果。为了能帮助用户能够更快、更准确的找到所感兴趣的新闻,降低信息的利用门槛,提高信息的利用效率和效果,新闻推荐算法应运而生。新闻推荐算法是一种根据用户的兴趣和行为,通过分析、筛选和排序新闻内容,为用户提供个性化的新闻推荐服务的算法。其目的是根据用户的喜好和需求,将最相关、最有价值的新闻推荐给用户,提高用户的阅读体验。
但现有的技术对用户所需的应用进行排名预测时,会有推荐内容过于单一、对新用户和新新闻的推荐效果不佳、数据存在稀疏性和为充分利用等问题,因此会导致很难在复杂的应用环境进行建模,很多算法难以投入实际使用。而基于深度学习的推荐算法因其能够处理大规模数据集、具有较强的泛化能力、能够处理复杂的非线性关系等优点被各大专家青睐,但也存在对于数据的要求较高,需要有足够的训练数据和计算资源、参数调整困难等问题。
发明内容
为了解决上述技术问题,本发明提出基于协同过滤和概率语言术语集的新闻推荐方法及***。在所述方法及***中,通过基于嵌入表示和单词嵌入技术的协同过滤算法,将用户和新闻文章同时嵌入潜在空间,利用它们之间的新闻文章相似性来预测用户感兴趣的内容,解决了在处理稀疏数据和冷启动问题时的限制;使用在线评论与概率语言术语集相结合的推荐算法,解决新用户和新投稿的新闻文章的推荐效果不佳的问题;最后让两种推荐算法通过排名排序的方法相融合,可以有效解决推荐***覆盖率和多样性低、推荐内容过于单一等问题。
为了达到上述目的,本发明的技术方案如下:
基于协同过滤和概率语言术语集的新闻推荐方法,包括如下步骤:
采集数据并进行预处理,所述数据包括用户id、新闻文章id和每个用户交互过的所有新闻文章的id;
将用户id和每个用户交互过的所有新闻文章的id同时输入至UI2vec模型,输出每个用户对所有新闻文章的推荐概率值,通过softmax函数对每条新闻文章进行排序,获得概率值排序结果并将概率值排序结果发送至用户;
用户针对排序结果所对应的新闻文章进行在线评价,若评价满足,则完成新闻推荐任务,退出自动推荐功能;若评价不满意,则进入下一步;
读取每条新闻文章的评论内容以及针对推荐排序的在线评价内容,基于评价内容分析得到新闻文章之间的相似度,根据相似度大小确定相似度排序结果;
将概率值排序结果和相似度排序结果进行融合,获得融合排序结果并将融合排序结果发送至用户再次进行在线评价,直至用户满意推荐的新闻文章为止。
优选地,所述获得概率值排序结果,具体包括如下步骤:
将用户id和每个用户交互过的所有新闻文章的id同时作为输入,假设用户yj的交互序列为输入层表示为:
式中,Wi∈R|I|×d和Wu∈R|U|×d分别是新闻和用户的转换矩阵,以及|Lj|表示用户交互序列的长度yj,表示第a行Wi矩阵,以及/>表示第j行Wu矩阵;
隐藏层将d维隐藏层向量转换为大小与新闻数相同的向量,从隐藏层到输出层的转换矩阵为其被定义为:
输出层通过softmax函数获得每条新闻的相应概率值,针对第t条新闻文章,概率值ot定义为:
其中表示/>的第j列以及|V|表示新闻文章的总数。
优选地,所述读取每条新闻文章的评论内容以及针对推荐排序的在线评价内容,基于评价内容分析得到新闻文章之间的相似度,根据相似度大小确定相似度排序结果,具体包括如下步骤:
读取每条新闻文章的评论内容以及针对推荐排序的在线评价内容并进行预处理;
将预处理后评价内容转换为概率语言术语集,构建评估矩阵;
通过最大偏差法确定属性权重;
基于评估矩阵中相同属性下的两条新闻文章之间的余弦相似性以及属性权重,获得两条新闻文章之间的加权相似度;
构建相似度矩阵,根据加权相似度大小确定相似度排序结果。
优选地,所述预处理包括通过Jieba中文分词工具将预处理后的评价内容切分成独立的词语,并手动去除罕见单词或语义模糊性的语句;去掉停止词。
优选地,所述通过最大偏差法确定属性权重,具体包括如下步骤:
设w={wj|j=1,2,…,n}是一组属性权重,对于属性词Cj,新闻文章xi与其他新闻文章之间的偏离度可以通过以下公式得出:
其中,#Lij(p)为Lij(p)中的项数,为第k项属性词的概率,/>为/>的下标。那么对于属性词Cj的总偏差程度为:
在评估矩阵P中,属性之间的总偏差程度为:
构建最大偏差优化模型:
使用拉格朗日函数求解模型:
其中n为属性词类型总数,m为新闻文章总数,λ是拉格朗日乘子,λ>0表示约束条件对目标函数有一定的约束力;
计算获得归一化的属性权重:
优选地,所述基于评估矩阵中相同属性下的两条新闻文章之间的余弦相似性以及属性权重,获得两条新闻文章之间的加权相似度,具体包括如下步骤:
计算概率语言术语集之间的余弦相似性确定相同属性下的两条新闻文章之间的相似性,其中#Lij(p)=#Llj(p),τ为权重,用于调整每个属性或特征的重要性,如下式:
根据属性权重,得到两条新闻文章之间的加权相似度:
优选地,所述构建相似度矩阵,根据加权相似度大小确定相似度排序结果,具体包括如下步骤:
预设推荐阈值ξ,当两条新闻文章之间的加权相似度S(x1,x2)≥ξ时,如果新闻文章x1被视为用户提供的历史评价过的新闻文章,则新闻文章x2将被推荐给用户,否则,不建议用户使用新闻文章x2;
根据相似矩阵M,对到达推荐阈值的新闻文章进行推荐排名。
优选地,所述将概率值排序结果和相似度排序结果,获得融合排序结果,具体包括如下步骤:
计算每条新闻文章分别在概率值排序结果和相似度排序结果中的位置;
使用加权求和得到每条新闻文章的最终权重;
按照每条新闻文章的最终权重对所有新闻文章进行推荐排序。
基于上述内容,本发明还公开了基于排序融合协同过滤和概率语言术语集的新闻推荐***,包括数据收集和处理模块、模型训练和推荐模块和反馈优化模块,其中,
所述数据收集和处理模块,用于采集数据并进行预处理,所述数据包括用户id、新闻文章id和每个用户交互过的所有新闻文章的id;
所述模型训练和推荐模块,用于将用户id和每个用户交互过的所有新闻文章的id同时输入至UI2vec模型,输出每个用户对所有新闻文章的推荐概率值,通过softmax函数对每条新闻文章进行排序,获得概率值排序结果并将概率值排序结果发送至用户;
所述反馈优化模块,用于接收用户针对排序结果所对应的新闻文章的在线评价,若评价满足,则完成新闻推荐任务,退出自动推荐功能;若评价不满意,则读取每条新闻文章的评论内容以及针对推荐排序的在线评价内容,基于评价内容分析得到新闻文章之间的相似度,根据相似度大小确定相似度排序结果;将概率值排序结果和相似度排序结果进行融合,获得融合排序结果并将融合排序结果发送至用户再次进行在线评价,直至用户满意推荐的新闻文章为止。
优选地,还包括评估模块,用于采用精确性、召回率和F1分数作为评价指标,基于评价指标评估新闻推荐***的性能。
基于上述技术方案,本发明的有益效果是:本发明首先获得用户历史交互序列中的用户id和新闻文章id以及每个用户交互过的所有新闻文章的id,通过计算得到每个用户对所有新闻文章的推荐概率值,通过softmax函数对每条新闻文章进行排序,根据最终排序得到新闻文章的导引推荐。最后用户对推荐推荐***进行选择评价反馈,推荐***会抓取用户的在线评论进行分析,根据评论分析用户的需求来推荐新闻文章,再通过排名排序融合对两次推荐排序进行融合得到最终的新闻文章推荐排序。用户会再次评价,直到用户反馈满意最终的推荐导引新闻文章。本发明通过嵌入表示和单词嵌入技术的协同过滤算法,将用户和新闻文章同时嵌入潜在空间,利用它们之间的新闻文章相似性来预测用户感兴趣的内容,解决了在处理稀疏数据和冷启动问题时的限制;通过在线评论与概率语言术语集的推荐算法计算得到新闻文章之间的相似度,解决新用户和新新闻文章的推荐效果不佳的问题,使新用户也能有和老用户一样类似的推荐;通过排名排序融合将两种推荐算法推荐排序相融合,可以有效推荐内容过于单一等问题。能够极大提高了推荐覆盖率,使最终推荐排序富有多样选择性的同时提高推荐精确度。
附图说明
图1是一个实施例中基于协同过滤和概率语言术语集的新闻推荐方法流程图;
图2是一个实施例中基于协同过滤和概率语言术语集的新闻推荐方法中UI2vec模型图;
图3是一个实施例中基于协同过滤和概率语言术语集的新闻推荐方法中相似度排序推荐流程图;
图4是一个实施例中基于协同过滤和概率语言术语集的新闻推荐方法的架构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
如图1至4所示,本实施例提供一种基于协同过滤和概率语言术语集的新闻推荐方法,具体包括如下步骤:
步骤1:通过Python抓取腾讯新闻网站最新投稿新闻的id,该新闻相关评论者的id以及他们对该新闻具体的评论内容,通过数据预处理整理出符合模型运算的用户历史交互序列中用户id、新闻文章id、每个用户交互过的所有新闻文章的id以及每个参与评论用户的具体评论内容。
步骤2:将用户历史交互序列中的用户id和新闻文章id映射到一个热代码,融合通过线性变换获得用户和新闻文章的嵌入表示。最终得到每个用户对所有新闻文章的推荐概率值。如图2所示,具体包括以下步骤:
步骤2-1:将用户历史交互序列中的用户id和新闻文章id映射到一个热代码,然后通过线性变换获得用户和新闻文章的嵌入表示。用户和新闻文章的转换矩阵不共享,新闻文章之间的转换矩阵是共享的;
步骤2-2:假设用户yj的交互序列为那么输入层可以表示为:
式中,Wi∈R|I|×d和Wu∈R|U|×d分别是新闻文章和用户的转换矩阵,以及|Lj|表示用户交互序列的长度yj。表示第a行Wi矩阵,以及/>表示第j行Wu矩阵;
步骤2-3:隐藏层将d维隐藏层向量转换为大小与新闻数相同的向量。从隐藏层到输出层的转换矩阵为其可以被定义为
步骤2-4:输出层通过softmax函数获得每条新闻的相应概率值oi∈{o1,o2,...,|V|}。oi的取值范围为[0,1]。对于第t条新闻文章,ot可以定义为:
结合等式(3)和(4)得出:
其中表示/>的第j列以及|V|表示新闻文章的总数。
步骤3:用户对推荐推荐***进行评价。若用户满意此次推荐,那么推荐***完成任务,退出自动推荐功能;反之,当用户不满足此次推荐,用户可以通过分析评价来反馈此次推荐过程中的不足,从而改变推荐排序,根据客户的评论重新推荐导引用户。
步骤4:如果用户对此次导引不满意并给出评论,推荐***会将读取此次在线评论,读取所有新闻文章的评论信息,再对所有读取的数据进行预处理。具体包括如下步骤:
步骤4-1:读取用户此次的在线评论,同时也会进入应用网站更新最新在线评论,使用Python软件抓取所有|V|条新闻文章的信息,并为每条新闻文章选择q条评论。为了控制时间变量,我们获得了同一时期内每条新闻文章的审查数据,并将获得的数据存储在csv文件中。
步骤4-2:预处理在线评论,通过Jieba中文分词工具将中文文本切分成一个个独立的词语,并使用手动方法来处理具有罕见单词或语义模糊性的语句。去掉停止词,即缺乏实际意义或对陈述贡献不大的词后,设 表示第i条新闻文章的第t个评论词语的单词集,且/>表示单词集/>中的第m个单词;
步骤4-3:分析属性词,在诸多评论中词语分为三大类:首先是属性词,如“功能性”,“服务”等;其次是感情词,如“好用”,“方便”等;最后是情绪强度词,如“极端”,“很”,“非常”等。在分析属性词时,预设新闻文章的标准属性词并根据同义词森林中语义项相似度的计算方法计算/>与标准属性词/>之间的相似度,将属性词转换为标准属性词。此外,每个评论语句中同一类型的属性词只分析一次。我们用/>表示第i条新闻文章第t条评论涉及的属性词集合,其中包括属性词。
步骤4-4:通过知网感情词典,采用五粒度的语言术语来表达评论信息,即S={S-2,S-1,S0,S1,S2},其中S-2=“非常差”,S-1=“差”,S0=“平均”,S1=“好”,S2=“非常好”。
步骤4-5:在评论信息进行预处理后,概率语言术语集(Probabilistic LanguageTerm Set,PLTS)作为一种信息表达工具,用于统计描述评论信息。新闻文章的所有属性信息和评审术语的出现次数都由PLTS表示。具体流程如下:
步骤4-5-1:对于第i条新闻文章第t条评论,分析每个评论集 和属性词集/>并将评论中的情感词转换为五粒度的语言术语,表示为S={S-2,S-1,S0,S1,S2};
步骤4-5-2:统计每个评论词在每个属性词中的出现次数,并计算每个属性词Cj,/>中出现的总次数;
步骤4-5-3:属性词的概率p(α)有以下公式计算:
其中,α是语言术语Sα的下标,Sα是五粒度的语言术语(S-2,S-1,S0,S1,S2),j是表示属性词集里属性词的个数,是所有属性词出现次数累加的总和。计算完所有的概率之后,他们被描述为一个概率语言术语集,Lij(p)表示与第j个属性相关联的第i条新闻文章的评论集。
步骤5:构造基于概率语言术语集的新闻文章推荐算法,如图3所示,具体包括如下步骤:
步骤5-1:通过PLTS构建新闻文章评估矩阵P;
其中,Lij表示与属性词Cj关联的第i条新闻文章xi的评估信息;
步骤5-2:采用最大偏差发来确定属性权重。对于一个属性,方案之间的偏差越大,该属性的辨别能力就越强,因此分配的属性权重应该越多。设w={wj|j=1,2,…,n}是一组属性权重,并使用方程计算偏差程度。对于属性词Cj,新闻文章xi与其他新闻文章之间的偏离度可以通过以下公式得出:
其中,#Lij(p)为Lij(p)中的项数,/>为第k项属性词的概率,/>为/>的下标。那么对于属性词Cj的总偏差程度为:
在评估矩阵P中,属性之间的总偏差程度为:
构建最大偏差优化模型:
使用拉格朗日函数求解模型:
其中n为属性词类型总数,m为新闻文章总数,λ是拉格朗日乘子,λ>0表示约束条件对目标函数有一定的约束力。较大的λ值会更强调约束条件,可能导致结果更接近约束条件的解。
通过以下等式获得归一化的属性权重:
步骤5-3:采用加权相似性的计算方法,计算所有新闻文章之间的相似性。首先通过计算PLTS之间的余弦相似性计算相同属性下的两条新闻文章之间的相似性,如下所示,其中#Lij(p)=#Llj(p),τ为权重,用于调整每个属性或特征的重要性,
其次根据属性权重,得到两条新闻文章之间的加权相似度,如下所示:
最后构建新闻文章的相似度矩阵M,如下所示:
在相似度矩阵M中,对角线上的元素等于1,上三角形中的元素和下三角形中的元件相应地相等。在相似度矩阵M中,可以直接看到两条新闻文章之间的相似性。
步骤5-4:预设推荐阈值ξ,根据用户的真实需求,当S(x1,x2)≥ξ时,如果x1被视为用户提供的历史评价过的新闻文章,则x2将被推荐给用户,否则,不建议用户使用新闻文章x2。最后根据相似矩阵M,对到达阈值的新闻文章进行推荐排名。
步骤6:利用排名排序融合的方法将两种推荐排名融合,计算每条新闻文章在两个排名列表中的位置,然后使用加权求和的方法得到最终权重,最后按照权重大小对所有新闻文章进行推荐排序。最终权重大小通过以下公式得出:
Ri=w1×Rank1,i+w2×Rank2,i (17)
在得到最终推荐排序之后,回到步骤3,让用户重新对推荐推荐***进行评价,反复步骤3-6直至用户满意此次导引,退出自动导引功能,完成导引任务。
应该理解的是,虽然上述流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
仿真算例:
为了验证本实例所提出算法的有效性,选择了2023年7月21日15:30腾讯新闻网网址上最新投稿并更新的87条新闻,引申出的13962名用户对应的16721条交互信息以及评论,并通过上述所有用户此前一周内与所有参与评论过的11598条新闻文章,引申出的211512名用户对应的460097条交互信息以及评论,分别将两组数据存储在news_data和news_con_data中,如表1所示。
表1网址抓取数据
数据集 | 新闻文章数 | 用户数 | 交互以及评论数量 |
news_data | 87 | 13962 | 16721 |
news_con_data | 11598 | 211512 | 460097 |
使用Top-k推荐中常用的指标,分别是精确性、召回率和F1分数。计算上述指标首先要统计出预测答案正确的个数(TP),错将其他类预测为本类的个数(FP)以及本类标签预测为其他类标的个数(FN)。以下为计算各指标的公式:
将融合时的权重定w1=w2=0.5时,最终得出的指标如下表所示:
表2模型对比试验结果
从表2中可以看出在数据量比较少时,本发明的UI2vec_PLTS推荐算法效果不明显,甚至低于两种推荐算法分别的推荐正确率,但随着数据量的增多,UI2vec_PLTS推荐算法在推荐精确率结果上有着优异的表现。
在一个实施例中,针对推荐***中推荐覆盖率和准确率低的问题,提供了一种基于协同过滤和概率语言术语集的新闻推荐***包括:数据收集和处理模块、模型训练和推荐模块和反馈优化模块,其中,
数据收集和处理模块,用于通过Python抓取腾讯新闻网站最新投稿新闻的所有相关数据以及对应新闻的评论者和他们的评论内容,通过数据预处理获得用户历史交互序列中的用户id和新闻文章id以及每个用户交互过的所有新闻文章的id。
模型训练和推荐模块,用于获得用户历史交互序列中的用户id和新闻文章id以及每个用户交互过的所有新闻文章的id之后,输入至UI2vec模型中进行训练,模型将用户和新闻文章同时嵌入潜在空间,利用它们之间的新闻文章相似性来预测用户感兴趣的内容,最终通过计算得到每个用户对所有新闻文章的推荐概率值,通过softmax函数对每条新闻文章进行排序,确保每个元素都在0到1之间,根据最终排序得到新闻文章的推荐排名。
反馈优化模块,用于当得到UI2vec模型的最终推荐排序后,接收用户对推荐推荐***进行的选择评价。若用户满意此次推荐,那么推荐***完成任务,退出自动推荐功能,反之,当用户不满足此次推荐,用户可以通过评价此次推荐,推荐***会抓取用户的在线评论,首先预处理用户的在线评论构建评估矩阵,通过最大偏差法确定属性权重,再通过加权相似性构建相似度矩阵,最后通过相似度矩阵得到新闻文章之间的相似度,分析用户的评价以推荐与用户评价功能相似的应用,并根据相似度大小进行推荐排名。为了能让用户有更多的推荐选择,在模块最后对两种推荐算法的排名排序融合,得到新闻文章排序。用户再次评价,直到用户反馈满意最终的推荐新闻文章。
在一个实施例的基于协同过滤和概率语言术语集的新闻推荐***中,还包括评估模块,用于采用精确性、召回率和F1分数作为评价指标,基于评价指标评估新闻推荐***的性能。
以上所述仅为本发明所公开的基于协同过滤和概率语言术语集的新闻推荐方法及***的优选实施方式,并非用于限定本说明书实施例的保护范围。凡在本说明书实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本说明书实施例的保护范围之内。
Claims (10)
1.基于协同过滤和概率语言术语集的新闻推荐方法,其特征在于,包括如下步骤:
采集数据并进行预处理,所述数据包括用户id、新闻文章id和每个用户交互过的所有新闻文章的id;
将用户id和每个用户交互过的所有新闻文章的id同时输入至UI2vec模型,输出每个用户对所有新闻文章的推荐概率值,通过softmax函数对每条新闻文章进行排序,获得概率值排序结果并将概率值排序结果发送至用户;
用户针对排序结果所对应的新闻文章进行在线评价,若评价满足,则完成新闻推荐任务,退出自动推荐功能;若评价不满意,则进入下一步;
读取每条新闻文章的评论内容以及针对推荐排序的在线评价内容,基于评价内容分析得到新闻文章之间的相似度,根据相似度大小确定相似度排序结果;
将概率值排序结果和相似度排序结果进行融合,获得融合排序结果并将融合排序结果发送至用户再次进行在线评价,直至用户满意推荐的新闻文章为止。
2.根据权利要求1所述的基于协同过滤和概率语言术语集的新闻推荐方法,其特征在于,所述获得概率值排序结果,具体包括如下步骤:
将用户id和每个用户交互过的所有新闻文章的id同时作为输入,假设用户yj的交互序列为输入层表示为:
式中,Wi∈R|I|×d和Wu∈R|U|×d分别是新闻和用户的转换矩阵,以及|Lj|表示用户交互序列的长度yj,表示第a行Wi矩阵,以及/>表示第j行Wu矩阵;
隐藏层将d维隐藏层向量转换为大小与新闻数相同的向量,从隐藏层到输出层的转换矩阵为其被定义为:
输出层通过softmax函数获得每条新闻的相应概率值,针对第t条新闻文章,概率值ot定义为:
其中表示/>的第j列以及|V|表示新闻文章的总数。
3.根据权利要求1所述的基于协同过滤和概率语言术语集的新闻推荐方法,其特征在于,所述读取每条新闻文章的评论内容以及针对推荐排序的在线评价内容,基于评价内容分析得到新闻文章之间的相似度,根据相似度大小确定相似度排序结果,具体包括如下步骤:
读取每条新闻文章的评论内容以及针对推荐排序的在线评价内容并进行预处理;
将预处理后评价内容转换为概率语言术语集,构建评估矩阵;
通过最大偏差法确定属性权重;
基于评估矩阵中相同属性下的两条新闻文章之间的余弦相似性以及属性权重,获得两条新闻文章之间的加权相似度;
构建相似度矩阵,根据加权相似度大小确定相似度排序结果。
4.根据权利要求3所述的基于协同过滤和概率语言术语集的新闻推荐方法,其特征在于,所述预处理包括通过Jieba中文分词工具将预处理后的评价内容切分成独立的词语,并手动去除罕见单词或语义模糊性的语句;去掉停止词。
5.根据权利要求3所述的基于协同过滤和概率语言术语集的新闻推荐方法,其特征在于,所述通过最大偏差法确定属性权重,具体包括如下步骤:
设w={wj|j=1,2,…,n}是一组属性权重,对于属性词Cj,新闻文章xi与其他新闻文章之间的偏离度可以通过以下公式得出:
其中,#Lij(p)为Lij(p)中的项数,为第k项属性词的概率,/>为/>的下标。
那么对于属性词Cj的总偏差程度为:
在评估矩阵P中,属性之间的总偏差程度为:
构建最大偏差优化模型:
使用拉格朗日函数求解模型:
其中n为属性词类型总数,m为新闻文章总数,λ是拉格朗日乘子,λ>0表示约束条件对目标函数有一定的约束力;
计算获得归一化的属性权重:
6.根据权利要求3所述的基于协同过滤和概率语言术语集的新闻推荐方法,其特征在于,所述基于评估矩阵中相同属性下的两条新闻文章之间的余弦相似性以及属性权重,获得两条新闻文章之间的加权相似度,具体包括如下步骤:
计算概率语言术语集之间的余弦相似性确定相同属性下的两条新闻文章之间的相似性,其中#Lij(p)=#Llj(p),τ为权重,用于调整每个属性或特征的重要性,如下式:
根据属性权重,得到两条新闻文章之间的加权相似度:
7.根据权利要求3所述的基于协同过滤和概率语言术语集的新闻推荐方法,其特征在于,所述构建相似度矩阵,根据加权相似度大小确定相似度排序结果,具体包括如下步骤:
预设推荐阈值ξ,当两条新闻文章之间的加权相似度S(x1,x2)≥ξ时,如果新闻文章x1被视为用户提供的历史评价过的新闻文章,则新闻文章x2将被推荐给用户,否则,不建议用户使用新闻文章x2;
根据相似矩阵M,对到达推荐阈值的新闻文章进行推荐排名。
8.根据权利要求1所述的基于协同过滤和概率语言术语集的新闻推荐方法,其特征在于,所述将概率值排序结果和相似度排序结果,获得融合排序结果,具体包括如下步骤:
计算每条新闻文章分别在概率值排序结果和相似度排序结果中的位置;
使用加权求和得到每条新闻文章的最终权重;
按照每条新闻文章的最终权重对所有新闻文章进行推荐排序。
9.基于排序融合协同过滤和概率语言术语集的新闻推荐***,其特征在于,包括数据收集和处理模块、模型训练和推荐模块和反馈优化模块,其中,
所述数据收集和处理模块,用于采集数据并进行预处理,所述数据包括用户id、新闻文章id和每个用户交互过的所有新闻文章的id;
所述模型训练和推荐模块,用于将用户id和每个用户交互过的所有新闻文章的id同时输入至UI2vec模型,输出每个用户对所有新闻文章的推荐概率值,通过softmax函数对每条新闻文章进行排序,获得概率值排序结果并将概率值排序结果发送至用户;
所述反馈优化模块,用于接收用户针对排序结果所对应的新闻文章的在线评价,若评价满足,则完成新闻推荐任务,退出自动推荐功能;若评价不满意,则读取每条新闻文章的评论内容以及针对推荐排序的在线评价内容,基于评价内容分析得到新闻文章之间的相似度,根据相似度大小确定相似度排序结果;将概率值排序结果和相似度排序结果进行融合,获得融合排序结果并将融合排序结果发送至用户再次进行在线评价,直至用户满意推荐的新闻文章为止。
10.根据权利要求9所述的基于协同过滤和概率语言术语集的新闻推荐***,其特征在于,还包括评估模块,用于采用精确性、召回率和F1分数作为评价指标,基于评价指标评估新闻推荐***的性能。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311094314.8A CN117251643B (zh) | 2023-08-29 | 2023-08-29 | 基于协同过滤和概率语言术语集的新闻推荐方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311094314.8A CN117251643B (zh) | 2023-08-29 | 2023-08-29 | 基于协同过滤和概率语言术语集的新闻推荐方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117251643A true CN117251643A (zh) | 2023-12-19 |
CN117251643B CN117251643B (zh) | 2024-05-07 |
Family
ID=89127197
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311094314.8A Active CN117251643B (zh) | 2023-08-29 | 2023-08-29 | 基于协同过滤和概率语言术语集的新闻推荐方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117251643B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102929928A (zh) * | 2012-09-21 | 2013-02-13 | 北京格致璞科技有限公司 | 基于多维相似度的个性化新闻推荐方法 |
US20160012511A1 (en) * | 2013-06-25 | 2016-01-14 | Kobo Incorporated | Methods and systems for generating recommendation list with diversity |
CN108228745A (zh) * | 2017-12-19 | 2018-06-29 | 北京荣之联科技股份有限公司 | 一种基于协同过滤优化的推荐算法和装置 |
US20190043070A1 (en) * | 2017-08-02 | 2019-02-07 | Zestfinance, Inc. | Systems and methods for providing machine learning model disparate impact information |
CN112256965A (zh) * | 2020-10-23 | 2021-01-22 | 海南大学 | 一种基于lambdaMart的神经协同过滤模型推荐方法 |
CN113343120A (zh) * | 2021-05-28 | 2021-09-03 | 哈尔滨理工大学 | 基于情感防护的新闻智能推荐*** |
US20210326674A1 (en) * | 2019-05-13 | 2021-10-21 | Tencent Technology (Shenzhen) Company Limited | Content recommendation method and apparatus, device, and storage medium |
CN114218457A (zh) * | 2021-11-22 | 2022-03-22 | 西北工业大学 | 一种基于转发社交媒体用户表征的假新闻检测方法 |
CN116108246A (zh) * | 2022-12-06 | 2023-05-12 | 重庆邮电大学 | 考虑用户偏好一致性的语义非对称相似性推荐*** |
CN116431919A (zh) * | 2023-04-13 | 2023-07-14 | 齐鲁工业大学(山东省科学院) | 基于用户意图特征的智能新闻推荐方法和*** |
-
2023
- 2023-08-29 CN CN202311094314.8A patent/CN117251643B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102929928A (zh) * | 2012-09-21 | 2013-02-13 | 北京格致璞科技有限公司 | 基于多维相似度的个性化新闻推荐方法 |
US20160012511A1 (en) * | 2013-06-25 | 2016-01-14 | Kobo Incorporated | Methods and systems for generating recommendation list with diversity |
US20190043070A1 (en) * | 2017-08-02 | 2019-02-07 | Zestfinance, Inc. | Systems and methods for providing machine learning model disparate impact information |
CN108228745A (zh) * | 2017-12-19 | 2018-06-29 | 北京荣之联科技股份有限公司 | 一种基于协同过滤优化的推荐算法和装置 |
US20210326674A1 (en) * | 2019-05-13 | 2021-10-21 | Tencent Technology (Shenzhen) Company Limited | Content recommendation method and apparatus, device, and storage medium |
CN112256965A (zh) * | 2020-10-23 | 2021-01-22 | 海南大学 | 一种基于lambdaMart的神经协同过滤模型推荐方法 |
CN113343120A (zh) * | 2021-05-28 | 2021-09-03 | 哈尔滨理工大学 | 基于情感防护的新闻智能推荐*** |
CN114218457A (zh) * | 2021-11-22 | 2022-03-22 | 西北工业大学 | 一种基于转发社交媒体用户表征的假新闻检测方法 |
CN116108246A (zh) * | 2022-12-06 | 2023-05-12 | 重庆邮电大学 | 考虑用户偏好一致性的语义非对称相似性推荐*** |
CN116431919A (zh) * | 2023-04-13 | 2023-07-14 | 齐鲁工业大学(山东省科学院) | 基于用户意图特征的智能新闻推荐方法和*** |
Non-Patent Citations (1)
Title |
---|
高发展;黄梦醒;张婷婷;: "综合用户特征及专家信任的协作过滤推荐算法", 计算机科学, no. 02, 15 February 2017 (2017-02-15) * |
Also Published As
Publication number | Publication date |
---|---|
CN117251643B (zh) | 2024-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11893071B2 (en) | Content recommendation method and apparatus, electronic device, and storage medium | |
CN111291266B (zh) | 基于人工智能的推荐方法、装置、电子设备及存储介质 | |
CN108073568B (zh) | 关键词提取方法和装置 | |
CN111444428A (zh) | 基于人工智能的信息推荐方法、装置、电子设备及存储介质 | |
CN104657496A (zh) | 一种计算信息热度值的方法和设备 | |
CN112307762B (zh) | 搜索结果的排序方法及装置、存储介质、电子装置 | |
CN111444334A (zh) | 数据处理方法、文本识别方法、装置及计算机设备 | |
CN112307182B (zh) | 一种基于问答***的伪相关反馈的扩展查询方法 | |
CN110222260A (zh) | 一种搜索方法、装置及存储介质 | |
CN106095942A (zh) | 强变量提取方法及装置 | |
CN109376219A (zh) | 文本属性字段的匹配方法、装置、电子设备及存储介质 | |
Zhiyuli et al. | Bookgpt: A general framework for book recommendation empowered by large language model | |
CN114881712B (zh) | 智能广告投放方法、装置、设备及存储介质 | |
Dai et al. | BTR: a feature-based Bayesian task recommendation scheme for crowdsourcing system | |
CN110083766B (zh) | 一种基于元路径引导嵌入的查询推荐方法及装置 | |
CN115062070A (zh) | 一种基于问答的文本表格数据查询方法 | |
CN114662470A (zh) | 结合大数据的产品点评信息处理方法及*** | |
CN108509588B (zh) | 一种基于大数据的律师评估方法及推荐方法 | |
CN113378024A (zh) | 一种基于深度学习面向公检法领域的相关事件识别方法 | |
CN117725194A (zh) | 针对期货数据的个性化推送方法、***、设备及存储介质 | |
CN117251643B (zh) | 基于协同过滤和概率语言术语集的新闻推荐方法及*** | |
CN110517069A (zh) | 一种多模态的用户画像方法及*** | |
CN115712777A (zh) | 一种基于逻辑回归的文献推荐***的排序方法 | |
CN115098767A (zh) | 一种基于兴趣感知和用户相似度的新闻推荐方法 | |
CN111651643A (zh) | 候选内容的处理方法及相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |