自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 WSDM 2022 推荐系统论文阅读(下)

本篇是WSDM 2022中推荐系统论文阅读的完结篇!WSDM 2022 推荐系统论文阅读(中)WSDM 2022 推荐系统论文阅读(上)声明:本论文阅读笔记主要是对论文摘要的概括,评论仅代表个人的阅读观点,欢迎大家在评论区讨论!1. Reinforcement Learning over Sentiment-Augmented Knowledge Graphs towards Accurate and Explainable Recommendation公司/学校:汉阳大学(韩国)摘要:之前基于

2022-05-05 22:54:45 1361

原创 WSDM 2022 推荐系统论文阅读(中)

继续上一篇文章来阅读WSDM 2022中推荐系统的论文:WSDM 2022 推荐系统论文阅读(上)声明:本论文阅读笔记主要是对论文摘要的概括,评论仅代表个人的阅读观点,欢迎大家在评论区讨论!1. Hierarchical Imitation Learning via Subgoal Representation Learning for Dynamic Treatment Recommendation公司/学校:华东师范大学、华为诺亚(Ruiming Tang, Xiuqiang He)摘要:由于

2022-04-25 21:26:51 1438

原创 WSDM 2022 推荐系统论文阅读(上)

声明:本论文阅读笔记主要是对论文摘要的概括,评论仅代表个人的阅读观点,欢迎大家在评论区讨论!1. A Peep into the Future: Adversarial Future Encoding in Recommendation公司/学校:微信摘要:提出要让推荐模型可以利用future feature。文章设计了一个对抗学习网络,判别器输入common feature和future feature,输出用户物品对的判别;生成器则用来生成含有未来信息的common feature,用于推荐模型。

2022-04-19 21:00:06 1090

原创 Pytorch直接在GPU上创建张量报错

Pytorch直接在GPU上创建张量报错:legacy constructor expects device type: cpubut device type: cuda was passed一般的创建张量方法:torch.Tensor(x) # x可以是list或者np.array类型但是这种创建方式默认是在把张量放在CPU(内存)中的。如果我们要使用GPU来训练模型,那么就还必须进行一步将张量复制到GPU上的操作,这样显然会费时间。之前也是看到其他文章有说可以直接在GPU上创建张量,因此自己也

2021-09-04 14:20:04 9812

原创 Pytorch模型测试时显存一直上升导致爆显存

问题描述首先说明: 由于我的测试集很大, 因此需要对测试集进行分批次推理.在写代码的时候发现进行训练的时候大概显存只占用了2GB左右, 而且训练过程中显存占用量也基本上是不变的. 而在测试的时候, 发现显存在每个batch数据推理后逐渐增加, 直至最后导致爆显存, 程序fail.这里放一下我测试的代码: y, y_ = torch.Tensor(), torch.Tensor() for batch in tqdm(loader): x, batch_y =

2021-07-30 10:27:29 15965 8

原创 Faiss学习笔记

FaissFaiss是Facebook的AI Research开发的Similarity Search工具包.具体地就是对稠密向量进行快速的相似度检索. 这里很容易就能想到推荐系统中的召回过程. 召回就是将所有的物品向量存储在一个数据库中, 然后使用用户向量去检索其中欧氏距离最近的几个向量作为召回的物品列表.一. Faiss的使用步骤构建embedding矩阵, 具体地类似于加载预训练embedding, 其排序是从0排序到N-1的. 维度就是(N, v_dim)选择合适的index, 并将em

2021-06-15 22:36:17 1177 3

原创 神经网络/深度模型训练Debug过程中一些总结和经验

神经网络/模型训练Debug深度模型的Debug与一般程序的Debug有很大的不同. 一般程序的Debug通常可以通过简单地打断点调试出来. 而深度模型通常会出现程序的所有模块都可以正常跑通, 但就是模型效果与正常情况相去甚远, 这种Debug就非常的困难.尤其对于大模型来说, 一处"笔误"可能也会导致很大的问题.因此, 这里总结常见的Bug以及Debug经验.常见Bug1. 某一部分参数梯度总为0可能是程序里存在"笔误", 有一部分的参量并没有加入模型中进行运算2. Loss不下降(未完待

2021-03-18 15:19:28 2468

原创 pytorch中不定长序列补齐方法

在collate_fn中进行序列补齐第二种方法通常是在load一个batch数据时, 在collate_fn中进行补齐的. collate_fn使用方法以下给出两种思路:第一种思路是比较容易想到的, 就是对一个batch的样本进行遍历, 然后使用np.pad对每一个样本进行补齐.for unit in data: mask = np.zeros(max_length) s_len = len(unit[0]) # calculate the length of

2021-03-11 16:14:06 7389

原创 pytorch中collate_fn函数的使用&如何向collate_fn函数传参

1.为什么要使用collate_fn这里先从dataset的运行机制讲起.在dataloader按照batch进行取数据的时候, 是取出大小等同于batch size的index列表; 然后将列表列表中的index输入到dataset的getitem()函数中,取出该index对应的数据; 最后, 对每个index对应的数据进行堆叠, 就形成了一个batch的数据.看这个视频可以理解得更透彻一些⚠️ 在最后一步堆叠的时候可能会出现问题: 如果一条数据中所含有的每个数据元的长度不同, 那么将无法进行堆

2021-03-08 09:43:41 40247 10

原创 使用Pytorch的dataloader时报错每个tensor的维度不一样

使用pytorch的dataloader报错:RuntimeError: stack expects each tensor to be equal size, but got [2] at entry 0 and [1] at entry 11. 问题描述报错定位:位于定义dataset的代码中def __getitem__(self, index): ... return y #此处报错报错内容: File "D:\python\lib\site-packages\torch\u

2020-11-19 20:22:25 32599 8

原创 Liunx创建新用户登录异常:/usr/bin/xauth: error/timeout in locking authority file /home/liuqidong/.Xauthority

Liunx创建新用户登录异常:/usr/bin/xauth: error/timeout in locking authority file /home/liuqidong/.Xauthority问题1:在服务器上创建新的用户userA,在使用ssh连接时报错:/usr/bin/xauth: error in locking authority file /home/userA/.Xauthority解决方案:报错的意思就是找不到/home/userA/.Xauthority。这个文件按理来说是登录用户

2020-09-28 09:40:21 11595 3

原创 VScode调试方法

VScode调试VScode的运行和调试相比较于Pycharm方便了不少。但是除去一般的调试,还有一些高级调试方法需要学习。1.一般调试一般情况下,在VScode的侧边栏调到调试一项,然后直接点击进行调试即可。但是这种调试方法通常只能调试当前程序。2. 调试配置但如果想要每次都方便地调试同一个文件,或者要给调试的文件添加命令行参数,那么就必须要编写调试的配置文件。点击调试栏设置状的图标,就可以打开调试的配置文件:launch.json在launch.json中的configuration中一

2020-07-31 20:41:52 11709

原创 模型训练过程中产生NAN的原因分析

模型训练过程中产生NAN的原因分析在模型的训练过程中发现,有时在经过多轮训练后loss会突然变为nan。loss变为nan也就使权重更新后的网络里的参数变为了nan,这样就使整个训练无法再进行下去了。1. nan的来源从调试情况来看nan出现的顺序是:loss的梯度 --> 网络的参数 --> 预测的结果 --> loss本身。注意,第一个出现问题的应该是loss的梯度。2. 可能1:torch.sqrt()一般sqrt函数的定义域为:[0,无穷大)torch.sqrt()的

2020-07-29 22:34:41 16256 7

原创 使用Pytorch的nonzero函数报warning: UserWarning: This overload of nonzero is deprecated

使用pytorch的nonzero函数报warning1.先放一下报的warning:.\torch\csrc\utils\python_arg_parser.cpp:756: UserWarning: This overload of nonzero is deprecated: nonzero(Tensor input, , Tensor out)Consider using one of the following signatures instead:nonzero(Tensor input,

2020-06-03 16:16:02 15700 3

原创 使用Pytorch训练two-head网络

使用Pytorch训练two-head网络之前有写过一篇如何使用Pytorch实现two-head(多输出)模型在那篇文章里,基本把two-head网络以及构建讲清楚了(如果不清楚请先移步至那一篇博文)。但是我后来发现之前的训练方法貌似有些问题。以前的训练方法:之前是把两个head分开进行训练的,因此每一轮训练先要对一个batch的数据进行划分,然后再分别训练两个头。代码如下:f_out_y0, _ = net(x0) _, f_out_y1 = net(x1)

2020-05-31 21:51:38 1800 5

原创 使用visdom可视化pytorch训练时报错:TypeError: Object of type Tensor is not JSON serializable

使用visdom可视化pytorch训练时报错:TypeError: Object of type Tensor is not JSON serializable今天学习使用visdom对pytorch训练过程中的loss进行可视化。部分代码如下:loss0 = criterion0(f_y0, f_out_y0, w0) + 0.01 * l2_regularization0loss1 = criterion1(f_y1, f_out_y1, w1) + 0.01 * l2_regularizati

2020-05-27 11:51:39 3904 1

原创 《The book of why》读书笔记(二)--第一章:因果关系之梯

《The book of why》读书笔记(二)–第一章:因果关系之梯本文是接着上一篇读书笔记来写的。本文依旧按书中的章节来分享的,文中红色字为书中的原文,而黑色字是我自己的一些想法。如果大家对问中内容有其他间接,欢迎评论!1.事实是通过错综复杂的因果关系网络融合在一起的。因果解释而非枯燥的事实构成了我们大部分的知识,它应该成为机器智能的基石。我们从数据处理者向因果解释者的过渡不是渐进的,而...

2020-04-26 21:28:02 1423

原创 如何使用Pytorch实现two-head(多输出)模型

如何使用Pytorch实现two-head(多输出)模型1. two-head模型定义先放一张我要实现的模型结构图:如上图,就是一个two-head模型,也是一个但输入多输出模型。该模型的特点是输入一个x和一个t,h0和h1中只有一个会输出,所以可能这不算是一个典型的多输出模型。2.实现所遇到的困难一开始的想法:这不是很简单嘛,做一个判断不就完了,t=0时模型为前半段加h0,t=1时模...

2020-03-13 22:09:29 10570 17

原创 《The book of why》读书笔记(一)--导言:思维胜于数据

《The book of why》读书笔记(一)–导言:思维胜于数据本人刚上研究生半年,老师给了一个方向是因果推断。论文看了大半学期,说实话也没太看懂。而且因果推断的论文好多都有推导,一遇到推导就懵逼了。所以就决心拜读一下大牛Judea Pearl的因果推断入门书《The book of why》。然后在这里,我将分享一下我读这本书的读书笔记。我是按书中的章节来分享的,问中红色字为书中的原文,而...

2020-03-03 18:51:56 2438

原创 在Linux下安装R语言包的时候出现问题:make XXX:permission denied

在Linux下安装R语言包的时候出现问题:make XXX:permission denied最近在做因果推断相关的研究,发现因果推断中许多代码的实现甚至是数据集的模拟都是使用的R语言,迫不得已我也开始学习R的使用。在进行因果推重一个benchmark数据集IHDP的模拟中,要使用到名为NPCI的R包。安装的时候报了如下错误(只提取错误中关键的部分):make xxx:permissio...

2020-03-03 18:37:26 3928

原创 解决在windows下docker login超时的问题

在Windows下使用docker,不论是login,search还是push都会报错超时:Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)这个问题是Window...

2019-07-31 15:18:12 5730

转载 module 'cifar10' has no attribute 'maybe_download_and_extract'

使用TensorFlow进行Cifar数据集实验,使用官方提供的cifar.py下载数据报错:module ‘cifar10’ has no attribute ‘maybe_download_and_extract’这段时间学习TensorFlow的使用,按照官方教程进行Cifar数据集上的实验。看到有代码cifar10.maybe_download_and_extract()用来下载数据,但...

2019-07-09 11:57:37 1699

原创 安卓地理位置开发:调用location.getLongitude/Latitude出错

安卓地理位置开发,报错:Attempt to invoke virtual method ‘double android.location.Location.getLatitude()’ on a null object reference这两天在做一个简单地通过手机获取经纬度并上传至服务器,在这个过程中遇到问题:先放一下我的代码:private void initLocation() {...

2019-05-07 20:42:25 6372 1

原创 安卓开发:真机测试时无法访问服务器

使用AS开发安卓APP,发现在AVD上可以访问服务器,但打包安装到手机上无法访问服务器。我把手机连上AS调试了一下,发现报错:Cleartext HTTP traffic to www.sportssocial.cn not permitted这个报错的理由是不可以使用HTTP来访问服务器,但是为什么AVD没有报错?最后发现我AVD上装的是安卓6,而我的手机是安卓9.在安卓9以后禁止使用HT...

2019-04-29 10:24:55 2337

原创 在AVD上运行程序时,程序闪退并报错unfortunately,xx has stopped

在AVD上运行程序时,程序闪退并报错unfortunately,xx has stopped事实上,这个错误是事出有因的,而非AVD或者AS有问题。由于刚开始学习安卓,所以还没有习惯如何对安卓程序进行检错。运行在模拟器上的程序实际上是可以在左下角的run窗口内找到运行过程的。在run窗口中发现报错Attempt to invoke virtual method ‘void android.w...

2019-04-18 21:37:34 4205 2

原创 导入安卓项目遇到问题:Failed to find Platform SDK with path: platforms;android-19

导入安卓项目遇到问题:Failed to find Platform SDK with path: platforms;android-19使用Android Studio导入了一个新的项目,在sync的时候报错:Failed to find Platform SDK with path: platforms;android-19。解决办法: 先分析问题,报错的理由是找不到Platform S...

2019-04-17 10:38:35 27180

原创 关于安卓传感器时间sensorEvent.timestamp的学习

安卓传感器时间戳sensorEvent.timestamp最近做的毕设和行为识别相关,老师给了他们实验室的一个数据采集APP用来采集加速度数据。但是我发现采集数据的时间戳如下:15 28 20 begin0.16199169 0.0014652514 9.872587 26956276798626 0.16119681 0.027150247 9.896097 26956296798626...

2019-04-17 10:26:58 3608 3

转载 AndroidStudio在AVD上运行出错com.google.gson.stream.MalformedJsonException: Invalid escape sequence at...

使用AndroidStudio在AVD上运行出错:com.google.gson.stream.MalformedJsonException: Invalid escape sequence at line 1 column 29 path $[0]解决方法:把项目中build.gradle文件中的dependencies下的gradle版本号从3.3.1改为3.2.0.buildscript...

2019-03-22 21:12:53 5461 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除