白话Attenction机制

attention机制最初是在 rnn 中引入的用于解决机器翻译问题,此前机器翻译问题通过使用 RNN 解决,先基于输入编码一个隐语义向量,然后通过解码器基于该隐语义向量进行解码。但是这样存在一个问题,就是解码严重依赖于同一个隐语义向量。仔细思考下这样是不合理的。因为对于不同的输出 $y_i$,其和输入$X=\lbrace x_1, x_2,.., x_n \rbrace$有着不同的相关性,例如将“我爱你”翻译成“I love you”,显然输入“我“,”爱“,”你”对输出 $I$的贡献是不同的。attention就是为了解决这个问题,总结就是为了解决信息传递过程中的信息量不同的情况。

阅读更多

记录一下接下来要做的

有一些需要做的,先记录一下。

阅读更多

windows下如何安装torch-geometric

最近要看下IGMC的源码,发现代码中引用了torch-geometric库,所以需要安装下pytorch环境和对应的库。有点点坑,记录下。环境配置需要和作者保持一致,不然会有一些问题,作者的环境是 Python 3.8.1 + PyTorch 1.4.0 + PyTorch_Geometric 1.4.2。

阅读更多

《Inductive Matrix Conpletion Based On Graph Neural Network》论文阅读

论文提出了一种不使用辅助信息的归纳(inductive)矩阵补全模型。通过将评分矩阵分解为行(用户)和列(物品)的低维隐向量的乘积,现有的大多数矩阵补全方法都是可转导(transductive)的,因为学习的向量无法泛化为看不见的行/列或新矩阵。为了使矩阵补全具有归纳性,之前大多数的工作都使用内容(辅助信息)进行预测,例如用户的年龄或电影类型。但是,内容并不总是高质量的,并且可能难以提取。在极端的情况下,除了要补全的矩阵之外没有其他辅助信息可用,这时我们就无法学习归纳矩阵补全模型。本文提出了一种基于归纳图的矩阵补全(IGMC)模型来解决此问题。 IGMC基于一跳子图训练图神经网络(GNN),并将这些子图映射到其对应的评分,一跳子图基于评分矩阵生成的用户-物品pair对生成。IGMC相比于最新的transductive基线实现了更好的性能。此外,IGMC是归纳性的,它可以推广到训练时未看到的用户/物品(假设二者存在相互作用),甚至可以推广到新任务上。我们的迁移学习实验表明,从MovieLens数据集中训练出的模型可以直接用于预测豆瓣电影收视率,并且性能出奇地好。我们的工作表明:1)可以在不使用辅助信息的情况下训练归纳矩阵补全模型,同时获得与最新的transductive方法相似或更好的性能; 2)用户-物品pair对周围的局部图模式是该用户对该物品评分的有效预测指标;和3)建模推荐系统时可能不需要长期依赖。

阅读更多

协同过滤

协同过滤(collaborative filtering)是一种在推荐系统中广泛使用的技术。该技术通过分析用户或者物品之间的相似性(”协同”),来预测用户可能感兴趣的物品并推荐给用户[1]。所以,协同过滤本质上是一类技术的统称。在大多数资料中,协同过滤技术分为两类:基于存量(Memory - based)的协同过滤和基于模型(Model- based)的协同过滤。

阅读更多

2020年回忆录

2020年只剩下6天了,刚刚晚上和组长交流完工作后,继续开始搞可视化项目,分心之余想起来了大学喜欢看的一个短视频《80后在路上》,于是又打开边听边工作,==。虽然早已没有了当年的激情,但是仍然希望做出一些有意义的事情来。

阅读更多

leetcode 10 正则表达式匹配

给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 ‘.’ 和 ‘*’ 的正则表达式匹配。

阅读更多

transformer是什么

transformer是近些年在NLP领域火起来的一个语言模型,google bert的出现更是将其推到了顶峰。所谓语言模型就是预测每个句子在语言中出现的概率。简单地说,transformer是基于attention和encode-decode的产物。

阅读更多

leetcode 9 回文数

题目有点水,先得到要求商求余的除数就很简单了。但是没判定<0,wa;求余wa。

阅读更多

leetcode 8 字符串转换整数 (atoi)

这道题是一道水题,但是没有注意到一个细节:假如第一个非空格字符不是一个有效整数字符的话是无效转换返回0,所以wa了一发,mmp。

阅读更多