摘要:① def encode_onehot(labels): classes = set(labels) classes_dict = {c: np.identity(len(classes))[i, :] for i, c in enumerate(classes)} labels_onehot = 阅读全文
posted @ 2021-03-08 18:51 Kayden_Cheung 阅读(7) 评论(0) 推荐(0) 编辑
摘要:GraphSAGE 之前所接触的都是直推式学习,也就是仅仅考虑了当前数据,直接计算出节点的embedding,一旦数据变更后,则需要重新训练。 而GraphSAGE则是一种归纳式学习,也就是说它的目标是训练得到权重矩阵的参数。 计算节点 \(v\) 第 \(k\) 层的 embedding 流程为: 阅读全文
posted @ 2021-03-07 20:11 Kayden_Cheung 阅读(7) 评论(0) 推荐(0) 编辑
摘要:将Ubuntu默认的python2改为python3 首先删除原有的python连接文件: rm /usr/bin/python 然后建立指向python3.6的软连接: ln -s /usr/bin/python3.5 /usr/bin/python 之后把路径/usr/bin/加入环境变量PAT 阅读全文
posted @ 2021-01-14 17:15 Kayden_Cheung 阅读(25) 评论(0) 推荐(0) 编辑
摘要:更换清华源的时候,这三个都需要加上 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.tun 阅读全文
posted @ 2020-12-19 20:34 Kayden_Cheung 阅读(101) 评论(0) 推荐(0) 编辑
摘要:转自怎么理解推荐系统中的NDCG? CG CG(cumulative gain,累计增益)可以用于评价基于打分/评分的个性推荐系统。假设我们推荐k个物品,这个推荐列表的CGk计算公式如下: \(CG_k=\sum_{i=1}^k \text{rel}_i\) \(rel_i\) 表示第 \(k\) 阅读全文
posted @ 2020-12-04 15:35 Kayden_Cheung 阅读(82) 评论(0) 推荐(0) 编辑
摘要:以一张图片作为开始吧: 这里的输入数据是大小为(8×8)的彩色图片,其中每一个都称之为一个feature map,这里共有3个。所以如果是灰度图,则只有一个feature map。 进行卷积操作时,需要指定卷积核的大小,图中卷积核的大小为3,多出来的一维3不需要在代码中指定,它会自动扩充至图片的ch 阅读全文
posted @ 2020-12-03 22:38 Kayden_Cheung 阅读(244) 评论(0) 推荐(0) 编辑
摘要:当然,这只是其中的一种映射。 阅读全文
posted @ 2020-11-11 20:12 Kayden_Cheung 阅读(95) 评论(0) 推荐(0) 编辑
摘要:该论文提出了一个称为KBRD的框架,它是一个基于知识图谱的推荐对话系统。 首先需要做的就是知识图谱的实体链接,论文中使用到了DBpedia,将对话中出现的items以及non-item entities与DBpedia中的实体链接起来。通过知识图谱,我们也许可以发现这些non-items的内容可能与 阅读全文
posted @ 2020-10-30 20:51 Kayden_Cheung 阅读(143) 评论(0) 推荐(0) 编辑
摘要:引入 数据下载:传送门 这个教程的任务目标是将输入的法文翻译成英文。因为翻译前后句子可能不等长,所以用之前的RNN、LSTM就不太合适,所以这里就是用的Encoder-Decoder结构。其结构如下图所示: 数据处理 所需要的库: from __future__ import unicode_lit 阅读全文
posted @ 2020-10-22 14:17 Kayden_Cheung 阅读(160) 评论(0) 推荐(0) 编辑
摘要:torch.cat的作用是对张量按行或列进行拼接。在使用的过程中我也碰到了一些需要注意的点。 import torch x = torch.rand((4,5)) print(x) tmp = torch.Tensor() for i in range(4): if i%2 == 0: tmp = 阅读全文
posted @ 2020-10-13 11:02 Kayden_Cheung 阅读(81) 评论(0) 推荐(0) 编辑
摘要:花书第10.2.2节的计算循环神经网络的梯度看了好久,总算是把公式的推导给看懂了,记录一下过程。 首先,对于一个普通的RNN来说,其前向传播过程为: $$\textbf{a}^{(t)}=\textbf{b}+\textbf{Wh}^{t-1}+\textbf{Ux}^{(t)}$$ $$\text 阅读全文
posted @ 2020-10-11 14:48 Kayden_Cheung 阅读(111) 评论(0) 推荐(0) 编辑
摘要:简介 本次作业所用到的数据为Twitter上的推文,训练数据会被打上正面或负面的标签,最终我们要对无标签的句子分类。 带标签的训练数据,中间的+++$+++只是分隔符,共200000条数据。 不带标签的训练数据,共1178614条数据。 测试数据,共200000条数据。 数据处理 读数据 impor 阅读全文
posted @ 2020-10-09 20:47 Kayden_Cheung 阅读(295) 评论(0) 推荐(0) 编辑
摘要:LSTM参数 input_size:输入维数 hidden_size:输出维数 num_layers:LSTM层数,默认是1 bias:True 或者 False,决定是否使用bias, False则b_h=0. 默认为True batch_first:True 或者 False,因为nn.lstm 阅读全文
posted @ 2020-10-09 16:31 Kayden_Cheung 阅读(446) 评论(0) 推荐(0) 编辑
摘要:在RNN模型的训练过程中,需要用到词嵌入,而torch.nn.Embedding就提供了这样的功能。我们只需要初始化torch.nn.Embedding(n,m),n是单词数,m就是词向量的维度。 一开始embedding是随机的,在训练的时候会自动更新。 举个简单的例子: word1和word2是 阅读全文
posted @ 2020-10-09 15:15 Kayden_Cheung 阅读(344) 评论(0) 推荐(0) 编辑
摘要:简介 word2vec实现的功能是将词用$n$维的向量表示出来,即词向量。一般这个词向量的维度为100~300。 word2vec有两种训练模型: (1) CBOW:根据中心词$w(t)$周围的词来预测中心词 (2) Skip-gram:根据中心词$w(t)$来预测周围词 word2vec有两种加速 阅读全文
posted @ 2020-10-07 21:35 Kayden_Cheung 阅读(302) 评论(0) 推荐(0) 编辑
摘要:数据处理 传送门:官方教程 数据从上面下载。本次的任务用到的数据和第一次一样,还是18个不同国家的不同名字。 但这次需要根据这些数据训练一个模型,给定国家和名字的首字母时,模型可以自动生成名字。 首先还是对数据进行预处理,和第一个任务一样,利用Unicode将不同国家的名字采用相同的编码方式,因为要 阅读全文
posted @ 2020-10-04 08:51 Kayden_Cheung 阅读(238) 评论(0) 推荐(0) 编辑
摘要:数据处理 数据可以从传送门下载。 这些数据包括了18个国家的名字,我们的任务是根据这些数据训练模型,使得模型可以判断出名字是哪个国家的。 一开始,我们需要对名字进行一些处理,因为不同国家的文字可能会有一些区别。 在这里最好先了解一下Unicode:可以看看:Unicode的文本处理二三事 NLP哪里 阅读全文
posted @ 2020-10-03 13:04 Kayden_Cheung 阅读(154) 评论(0) 推荐(0) 编辑
摘要:代码 # -*- coding: utf-8 -*- import numpy as np # N是批量大小; D_in是输入维度; # 49/5000 H是隐藏的维度; D_out是输出维度。 N, D_in, H, D_out = 64, 1000, 100, 10 # 创建随机输入和输出数据 阅读全文
posted @ 2020-09-27 20:39 Kayden_Cheung 阅读(254) 评论(0) 推荐(0) 编辑
摘要:问题引入 使用cnn进行食物分类,给出的图片如上所示,前面的是分类,后面的是编号。 数据处理 首先读入图片,并进行缩放处理,使像素数相同。 def readfile(path, flag): """ :param path: 图片所在文件夹位置 :param flag: 1:训练集或验证集 0:测试 阅读全文
posted @ 2020-09-25 23:25 Kayden_Cheung 阅读(415) 评论(0) 推荐(0) 编辑
摘要:今天被这个问题折腾了好几个小时,难受。 如果我们读取了图片之后又想把它显示出来,那么存储的数据格式必须为np.uint8,否则之后是显示不出来的。 如下形式: x = np.zeros((len(image_dir), 128, 128, 3), dtype=np.uint8) 阅读全文
posted @ 2020-09-24 16:21 Kayden_Cheung 阅读(398) 评论(0) 推荐(0) 编辑
//目录