基于两两交互张量分解模型的个性化标签推荐
基于PITF的个性化标签推荐 摘要 关键词 引言 相关工作 个性化标签推荐 非个性化标签推荐 张量分解模型 成对交互模型 个性化标签推荐 形式化定义 数据分析 标签推荐的贝叶斯个性化排序BPR BPR最优化准则 BPR学习算法 张量分解模型 塔克分解模型TDTF 规范化分
- 基于PITF的个性化标签推荐
- 摘要
- 关键词
- 引言
- 相关工作
- 个性化标签推荐
- 非个性化标签推荐
- 张量分解模型
- 成对交互模型
- 个性化标签推荐
- 形式化定义
- 数据分析
- 标签推荐的贝叶斯个性化排序BPR
- BPR最优化准则
- BPR学习算法
- 张量分解模型
- 塔克分解模型TDTF
- 规范化分解模型CDTF
- 成对交互张量分解模型PITF
- TDCD和PITF之间的关系
- 实验评价
- 数据集
- 评价方法
- 实验结果
- 学习运行时间
- 预测质量
- ECMLPKDD 2009知识发现挑战赛
- 结论和未来工作
基于PITF的个性化标签推荐
摘要
在很多最近的网站中,标签扮演了一个重要的角色。推荐系统在用户想要给某个产品打标签时向其推荐他可能会使用的标签。基于Tucker分解(TD)模型的分解模型已经显示出了较高的性能,其标签推荐质量优于其它方法如PageRank,FolkRank和协同过滤等等。TD模型的问题在于三次核张量会导致在预测和学习时候的三次方的时间复杂度。
本文我们给出分解模型PITF(Pairwise Interaction Tensor Factorization,成对交互张量分解),这是一种特殊的TD模型,但是在学习和预测时的时间复杂度是线性的。PITF可以对用户、产品和标签之间的两两交互进行准确建模。之前用于产品推荐的贝叶斯个性化排序(BPR)准则被用于学习该模型。在真实数据集上的实验表明PITF模型在运算时间上远远优于传统TD模型,甚至能得到更好的预测精度。除了本文的实验外,PITF还赢得了ECML/PKDD 2009知识发现竞赛中基于图的标签推荐的奖项。
关键词
标签推荐,张量分解,个性化,推荐系统
引言
标签是Web 2.0时代的一个重要特征。它允许用户给产品/资源如音乐,图片和书签用关键词进行注释。标签帮助用户组织他的项目,促进浏览和搜索行为。标签推荐系统通过向用户推荐他可能用于一件产品的标签集合从而辅助用户的标记过程。个性化标签系统在推荐时会考虑到用户过去的标记行为。这意味着每个用户都被推荐一个个性化标签列表:也就是推荐的标签列表取决于用户和产品。由于不同的用户会使用不同的标签标记同一个项目因此需要进行个性化。Last.fm网站使用的是非个性化标签推荐系统,但是用户还是会使用不同的标签标记音乐。文献[18]给出了一个实证例子,表明最近的个性化标签推荐系统优于任何非个性化标签推荐系统的理论上的性能上限。
本文工作基于最近的使用分解模型的个性化标签推荐模型。这些模型如高维奇异值分解(HOSVD)和排序张量分解(RTF)都是基于Tucker分解模型。RTF已经表现出了很高的预测精度。使用完全Tucker分解模型的缺陷在于在分解维度上模型方程是三次方的。这使得TD模型较难应用于中等规模和大型数据集。本文我们介绍一种新的分解模型,该模型对用户、产品和标签之间的两两交互关系进行准确建模。该摸想的优势在于模型的计算复杂度是线性的,使得其可以在高维数据上进行计算。在统计学中,还有另外一种张量分解方法也有着线性的计算复杂度称作正规分解(canonical decomposition, CD),也称作并行因子分析(parallel factor analysis, PARAFAC)[2]。后面我们会说明我们的模型是CD和TD模型的特例。我们的实验结果也表明我们的两两交互模型在预测精度上明显优于CD模型,在运行时间上也略优于CD。此外,为了学习一般化的标签推荐模型,我们将贝叶斯个性化排序优化准则进行改进以适应标签推荐。
总体上,我们的贡献在于以下几点:
1. 我们将贝叶斯个性化排序优化准则(BPR-OPT)[17]进行了扩展以适应标签任务,并提供了一个基于bootstrap抽样的随机梯度下降学习算法。该优化准则和学习算法是通用的而不限于TD分解模型。
2. 我们提出的PTTF分解模型有着线性的预测时间复杂度,并分析了PITF模型与一般的Tucker分解模型和正规化分解模型之间的关系。
3. 我们的实验表明我们的BPR-PITF模型的性能在运行时间上优于预测质量最高的方法RTF-TF,计算复杂度从
相关工作
个性化标签推荐
个性化标签推荐是推荐系统中近来的一个热门话题。Hotho等人便引进了PageRank的改进版本FolkRank[5]。
非个性化标签推荐
张量分解模型
成对交互模型
个性化标签推荐
个性化标签推荐是给用户推荐一个用于注释(如,描述)某件产品的标签列表。例如,在一个音乐网站上,一个听众(用户)想要给一首音乐(产品)打上标签,系统给他推荐了他可能想要用于标记这首歌的关键词列表。为了推断这个列表,一个个性化标签推荐系统可以使用系统中的历史数据也就是过去的标记行为。例如,推荐系统可以利用用户过去给相似的产品打过的标签,或者更一般化地,利用相似用户给相似产品打过的相似标签。
形式化定义
为了形式化描述个性化标签推荐问题,我们使用[18]中的数学符号:
对给定帖子
这意味着排序
其中(1)式为总体性,(2)为反对称性,(3)为传递性。本文所有模型都是预测一个评分函数

The steps for upgrading MySQL database include: 1. Backup the database, 2. Stop the current MySQL service, 3. Install the new version of MySQL, 4. Start the new version of MySQL service, 5. Recover the database. Compatibility issues are required during the upgrade process, and advanced tools such as PerconaToolkit can be used for testing and optimization.

MySQL backup policies include logical backup, physical backup, incremental backup, replication-based backup, and cloud backup. 1. Logical backup uses mysqldump to export database structure and data, which is suitable for small databases and version migrations. 2. Physical backups are fast and comprehensive by copying data files, but require database consistency. 3. Incremental backup uses binary logging to record changes, which is suitable for large databases. 4. Replication-based backup reduces the impact on the production system by backing up from the server. 5. Cloud backups such as AmazonRDS provide automation solutions, but costs and control need to be considered. When selecting a policy, database size, downtime tolerance, recovery time, and recovery point goals should be considered.

MySQLclusteringenhancesdatabaserobustnessandscalabilitybydistributingdataacrossmultiplenodes.ItusestheNDBenginefordatareplicationandfaulttolerance,ensuringhighavailability.Setupinvolvesconfiguringmanagement,data,andSQLnodes,withcarefulmonitoringandpe

Optimizing database schema design in MySQL can improve performance through the following steps: 1. Index optimization: Create indexes on common query columns, balancing the overhead of query and inserting updates. 2. Table structure optimization: Reduce data redundancy through normalization or anti-normalization and improve access efficiency. 3. Data type selection: Use appropriate data types, such as INT instead of VARCHAR, to reduce storage space. 4. Partitioning and sub-table: For large data volumes, use partitioning and sub-table to disperse data to improve query and maintenance efficiency.

TooptimizeMySQLperformance,followthesesteps:1)Implementproperindexingtospeedupqueries,2)UseEXPLAINtoanalyzeandoptimizequeryperformance,3)Adjustserverconfigurationsettingslikeinnodb_buffer_pool_sizeandmax_connections,4)Usepartitioningforlargetablestoi

MySQL functions can be used for data processing and calculation. 1. Basic usage includes string processing, date calculation and mathematical operations. 2. Advanced usage involves combining multiple functions to implement complex operations. 3. Performance optimization requires avoiding the use of functions in the WHERE clause and using GROUPBY and temporary tables.

Efficient methods for batch inserting data in MySQL include: 1. Using INSERTINTO...VALUES syntax, 2. Using LOADDATAINFILE command, 3. Using transaction processing, 4. Adjust batch size, 5. Disable indexing, 6. Using INSERTIGNORE or INSERT...ONDUPLICATEKEYUPDATE, these methods can significantly improve database operation efficiency.

In MySQL, add fields using ALTERTABLEtable_nameADDCOLUMNnew_columnVARCHAR(255)AFTERexisting_column, delete fields using ALTERTABLEtable_nameDROPCOLUMNcolumn_to_drop. When adding fields, you need to specify a location to optimize query performance and data structure; before deleting fields, you need to confirm that the operation is irreversible; modifying table structure using online DDL, backup data, test environment, and low-load time periods is performance optimization and best practice.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 Linux new version
SublimeText3 Linux latest version

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

Zend Studio 13.0.1
Powerful PHP integrated development environment
