- 博客(41)
- 收藏
- 关注
原创 RuntimeError: nvrtc: error: invalid value for --gpu-architecture (-arch)
做实验在自己电脑上没什么问题(3050ti),在借用学长电脑(3080)时却出现以上问题,主要原因可能是cuda跟显卡的兼容问题,按以下指令重新下载后问题消失。pip install torch==1.7.1+cu110 torchvision==0.8.2+cu110 torchaudio===0.7.2 -f https://download.pytorch.org/whl/torch_stable.html...
2022-04-14 10:21:34
10969
原创 git错误 OpenSSL SSL_read: Connection was reset, errno 10054
git config --global http.sslVerify "false"
2022-03-27 14:24:17
622
原创 动态图snapshot构建
让我们构建一个由 5 个人组成的小型社交网络图(见图 1)。这里的节点代表人,边代表两个人之间的友谊。这就是 T = 0 时的情况。当它们相互影响一段时间时,可以形成一些新的关系,也可以打破一些新的关系。另外,请记住,新人可以在任何时间点进入此社交网络,现有成员也可以离开。在社交网络的演化过程中,我们在 3 个时间点获得了 3 个snapshot。所有这 3 个snapshot构成了动态图。我们目睹了一些新的友谊正在建立,也有一些被打破。我们可能会遇到新的传入节点(加入网...
2022-03-10 20:40:16
499
1
原创 LaTeX3 Error: The key ‘ctex/section‘ is unknown and is being ignored. }
原来想改变一下latex中标题的格式,使用了\ctexset进行格式编辑却报了如上错误,解决方案是在ctex宏包前加上heading=true:\usepackage[UTF8,heading = true]{ctex},之后就能编译通过了。
2021-11-19 19:31:10
7989
7
原创 Movielens数据预处理:将时间戳转换成datetime格式
为了方便进一步实验处理与观察,将原时间戳格式进行处理。class MovielensDataset(): def __init__(self, file, read_part=False, sample_num=1000000): super(MovielensDataset, self).__init__() dtype = { 'userId': np.int32, 'movieId': np.int32,
2021-11-03 14:59:31
660
转载 创建多维列表
By francis_haoMar 24,2018"*"操作符可以用于列表,表示将列表内容重复n次。如下,但是当列表内容是列表的时候就出问题了,如果我只是修改多维列表中的一项,结果是所有的都改变了,如下这是因为,"*"操作符相当于"浅复制"的概念。只复制了一个"指针"过去,如下这个时候如果修改复制后的内容,其结果就取决于复制的内容是什么了,如果是一个独立的对象,那修改不会造成其他影响但是,如果复制的内容是一个复合的对象,而修改仅仅是修改了复合对...
2021-10-29 21:35:43
464
原创 Cut-Minimization
NNvumber of within-roup Interactionsumber of within-group Interactions
2021-10-27 19:27:49
131
原创 极其简单的协同过滤算法
几乎完全按照王喆的《深度学习推荐系统》来复现的,用的皮尔逊相似度使用物品平均分对各独立评分作修正,如果评分都是一样的话部分退化成余弦相似度。但是最后效果较差,mae高达惊人的0.9,运算速度极其缓慢,当然也可能与使用语言有关。由于是完全手写,可以很明显的感受到python的笨拙,没有c++那么轻便。import randomimport mathfrom operator import itemgetterclass ItemBasedCF(): #...
2021-10-22 14:19:34
439
原创 复杂网络中心性
degree centrality设想一下,你在微信上有个账号,那么是不是意味着微信好友数量越多,那么你的社交圈子越广?(假设都是真实好友,不考虑微商神马的奇葩情况)比如我有20个好友,那么意味着20个结点与我相连。如果你有50个好友,那么意味着你的点度中心度比我高,社交圈子比我广。这个就是点度中心性的概念。当然,刚才这个情况是无向图的情形,如果是有向图,需要考虑的出度和入度的问题。在刚才的基础上拓展一下,假如我们要比较你在微博和微信上的点度中心度,刚才的方法是否适用?如果说使用微信与微博的人数
2021-10-20 13:41:20
1109
原创 推荐系统经典算法:FM的pytorch实现
首先说明为什么用pytorch实现该算法:因为暑假里尝试过在cpu里运行的简陋版本,运行速度过于缓慢;pytorch中有现成的embedding方法可以使用并且做梯度下降比较容易。下面先说核心算法部分:这里的时间复杂度仍为o(kn^2)具体实现:class FactorizationMachine(nn.Module): def __init__(self, field_dims, embed_dim=4): super(Factori...
2021-10-15 20:33:55
3501
原创 TypeError: can‘t convert CUDA tensor to numpy. Use Tensor.cpu() to copy the tensor to host memory fi
TypeError: can't convert CUDA tensor to numpy. Use Tensor.cpu() to copy the tensor to host memory .. - 龙雪 - 博客园
2021-10-13 18:03:28
121
原创 扩展屏幕方法以及注意问题
笔记本外接了个显示器 怎么把笔记本的屏幕关了_百度知道win10扩展屏幕怎么设置_win10扩展屏幕的设置方法-win7之家
2021-10-11 15:52:51
959
原创 167. 两数之和 II - 输入有序数组(python)
思路是两个指针一个在最左端一个在最右端分别代表一个最大值和一个最小值,然后控制大小达到最后要求。class Solution: def twoSum(self, numbers: List[int], target: int) -> List[int]: left,right = 0,len(numbers)-1 while numbers[left] + numbers[right] != target: if number...
2021-10-10 09:38:41
155
原创 283. 移动零(python版)
首先是两种python中简短精炼的方法:class Solution: def moveZeroes(self, nums: List[int]) -> None: for i in range(nums.count(0)): nums.remove(0) nums.append(0)class Solution: def moveZeroes(self, nums: List[int]) -> No..
2021-10-10 09:24:18
295
原创 189. 旋转数组(python版)
这里采用的是一种比较取巧的方法,和考研书王道上的方法相同,是利用镜像的原理一次性把数组翻转到对应位置。class Solution: def reverse(self,nums: List[int], a: int, b:int) -> None: while(a < b): temp = nums[b] nums[b] = nums[a] nums[a] = temp ..
2021-10-09 17:43:30
126
原创 977. 有序数组的平方(python)
主要思路就是用双指针,但是不知道为啥慢的批爆,可能跟语言有关?class Solution: def sortedSquares(self, nums: List[int]) -> List[int]: l = len(nums) nums1 = [None] * l left,right = 0,l-1 t = l-1 while left <= right: if a..
2021-10-09 16:07:54
274
原创 35. 搜索插入位置(python)
与上一题一样的算法,这里不再赘述。class Solution: def searchInsert(self, nums: List[int], target: int) -> int: min,max = 0,len(nums)-1 while min <= max: mid = (min + max) // 2 if nums[mid] == target: r...
2021-10-09 10:08:22
124
原创 278. 第一个错误的版本(依然是二分法)
class Solution: def firstBadVersion(self, n): """ :type n: int :rtype: int """ min,max = 1,n flag = 0 while(min <= max): mid = (min + max) // 2 if isBadVersion(mid) == .
2021-10-09 09:36:21
77
原创 力扣第一步,二分法
原理没什么说的了,主要是用python写 #BinarySearch:find the location of the target number def BinarySearch(nums:list,x:int) -> int: ''' nums: Sorted array from smallest to largest x: Target number ''' left,right
2021-10-09 09:02:08
78
原创 关于沐神的论文阅读方法
希望在论文阅读的过程中再顺道用导师布置的作业完成一些想法的实现。现在主要是一些用户质量物品质量的一些论文,这些评分特征应当可以用embedding变成特征。
2021-10-05 14:45:44
111
原创 使用基于标准Beta分布的评级权重设置
参考文献:Abdel-Hafez A J. Reputation Model Based on Rating Data and Application in Recommender Systems[D]. Queensland University of Technology, 2016.其中的第四章 文章提出了一种新的评级聚合方法,其概念是加权平均方法,其中权重是使用统计分布生成的。但是,在这个模型中,使用beta分布而不是正态分布,因为它更灵活地产生不同的分布形状,反映...
2021-10-04 21:24:00
625
原创 Beta分布的概念及应用
基础概念讲得比较好的:如何通俗理解 beta 分布? - 马同学的回答 - 知乎 https://www.zhihu.com/question/30269898/answer/445460286从Beta分布的概率密度函数的图形我们可以看出,Beta分布有很多种形状,但都是在0-1区间内,因此Beta分布可以描述各种0-1区间内的形状(事件)。不同的形状参数值提供了多种形状,可以灵活地建模各种数据集。因此,它特别适合为某件事发生或者成功的概率建模。同时,当α=1,β=1的时候,它就是一个均匀分布。
2021-10-04 19:24:06
1182
原创 救救概率论
考的数二,概率论忘完了,重温概率论。当P(A)和P(B)不相关时,P(AB)=P(A)*P(B);当P(A)和P(B)相关时,P(AB)=P(A|B)/P(B)或者 P(AB)=P(B|A)/P(A)。P(A|B)——在 B 条件下 A 的概率。即事件A 在另外一个事件 B 已经发生条件下的发生概率。P(AB)——事件A、 B同时发生的概率,即联合概率。联合概率表示两个事...
2021-10-03 21:17:14
164
翻译 用户行为一致性
在线从众建模的好处是多方面的。首先,它让我们有机会更好地了解用户的上网行为。接下来,我们可以消除一致性的影响,恢复用户对商品的真实偏好,从而改进个性化推荐系统。据我们所知,目前还没有将在线一致性模型与传统用户偏好模型结合起来以提高推荐系统质量的工作。目标是建立用户一致性模型,并改进在线评级网站的评级预测。在本文中,我们的目标是建立用户一致性模型,并改进在线评级网站的评级预测。我们首先使用真实数据进行分析,以显示在线整合的存在。我们得出结论,从众心理确...
2021-09-30 20:37:08
414
原创 Neo4j初步学习
多行输入用Shift+Enter删除所有节点:MATCH (n)OPTIONAL MATCH (n)-[r]-()DELETE n,r导入csv文件参考neo4j导入csv文件学习笔记 - 程序员大本营,大的语句块之间需要用;隔开。暂时就到这,以后再更
2021-09-30 10:49:43
136
原创 依然是introduction
主要时间都在摸鱼,主要是三个知识点:接近中心性(Closeness Centrality)。反映在网络中某一节点与其他节点之间的接近程度。将一个节点到所有其他节点的最短路径距离的累加起来的倒数表示接近性中心性。即对于一个节点,它距离其他节点越近,那么它的接近性中心性越大。中介中心性/中间中心性(Between Centrality) 。以经过某个节点的最短路径数目来刻画节点重要性的指标。PageRank算法:通常需要使用递归实现,M(pi)是连向pi的页面的集合。pj的影响力需要
2021-09-29 21:24:02
91
原创 复杂网络介绍
基本定义 网络:名词上解释为互相联系的群体或系统;多台计算机和其他设备连接在一起以共享信息。动词上解释为为了取得联系或个人进步而进行社会交往;连接两台或多台计算机或其他计算机化设备。 节点(Nodes):具有相互关联属性的实体的集合。例如:人群,河流中的分叉,蛋白质,网页,生物体。 边或者链接(Links):节点之间的联系。边可能是真实固定的(例如河流);有可能是实时动态的(例如航空线路);具有实际影响的摘要(超链接);纯粹的抽象(概念之间的语义联系)。...
2021-09-23 16:27:54
2666
原创 AlexNet改进之处
来源于李沫的课,做一个笔记。AlexNet赢得了2012年ImageNet竞赛。本质上是一个更深更大的LeNet,与LeNet在架构上上没有太多本质的区别。主要改进是:加入了丢弃法。它的激活函数从LeNet的sigmoid变成了ReLu。LeNet主要用的是平均池化,AlexNet用的最大池化。丢弃法是做模型的控制,因为模型更大了所以会用丢弃法做正则。Relu与sigmoid相比梯度更大,Relu在零点处的一阶导更加好,能支持更好的...
2021-09-11 15:54:06
1243
原创 LeNet实现
实现由于不在jupyter上略有改变并有一点bug,主要是matplotlib用的不熟,有一个legend一直显示不出,不明觉厉。import torchfrom torch import nnimport sysimport torchvisionfrom torchvision import transformsimport matplotlib.pyplot as pltimport numpy as npimport timeclass Timer: #@save
2021-09-11 15:14:14
522
原创 实用程序类Accumulator
前些日子发现动手学深度学习pytorch版李沐大佬是有课的,之前一直跟着另外一个GitHub项目在学,这里是对之前准确率中的一个实用程序类的解释,防止自己忘记。class Accumulator: #在n个变量上累加 def __init__(self, n): self.data = [0.0] * n def add(self, *args): for a, b in zip(self.data, args...
2021-09-05 16:05:00
4250
2
转载 模型选择,欠拟合,过拟合
这节主要理解一些知识点,代码没有怎么仔细看。 1.训练误差和泛化误差首先区分训练误差(training error)和泛化误差(generalization error)。通俗来讲,前者指模型在训练数据集上表现出的误差,后者指模型在任意一个测试数据样本上表现出的误差的期望,并常常通过测试数据集上的误差来近似。计算训练误差和泛化误差可以使用之前介绍过的损失函数,例如线性回归用到的平方损失函数和softmax回归用到的交叉熵损失函数。 2....
2021-08-16 20:48:17
124
原创 多层感知机的简洁实现
import torchfrom torch import nnfrom torch.nn import initimport numpy as npimport sysimport torchvisionfrom torchvision import transformsimport timeclass FlattenLayer(nn.Module): def __init__(self): super(FlattenLayer, self).__init__(.
2021-08-14 21:42:06
206
转载 多层感知机理论
多层感知机在输出层与输入层之间加入了一个或多个全连接隐藏层,并通过激活函数对隐藏层输出进行变换。 常用的激活函数包括ReLU函数、sigmoid函数和tanh函数。
2021-08-14 15:00:56
140
原创 softmax回归简洁实现
import torchimport numpy as npimport torch.utils.data as Dataimport torch.nn as nnfrom torch.nn import initimport torch.optim as optim#生成数据集num_inputs = 2num_examples = 1000true_w = [2, -3.4]true_b = 4.2features = torch.tensor(np.random.norma.
2021-08-14 13:19:30
155
原创 softmax回归从零实现
import torchimport torchvisionimport torchvision.transforms as transformsimport numpy as npimport timeimport sysimport matplotlib.pyplot as pltdef load_data_fashion_mnist(batch_size): mnist_train = torchvision.datasets.FashionMNIST(root='~/Dat.
2021-08-14 13:18:14
312
转载 softmax回归理论
由于之前在跟北京交通大学的暑期课程,所以对这个内容有所了解。但是由于那个课程讲得太简略,而且不给实验课,这里参考了《动手学深度学习》(pytorch版)边学深度边学pytorch。 首先是它的特点:1....
2021-07-28 15:27:28
284
转载 线性回归的简单实现
代码详解# 将训练数据的特征和标签组合dataset = Data.TensorDataset(features, labels)# 随机读取小批量data_iter = Data.DataLoader(dataset, batch_size, shuffle=True)for X, y in data_iter: print(X, y) break#利用nn.module实现模型# class LinearNet(nn.Module):# def __in
2021-07-27 21:11:49
253
转载 3.2 线性回归的从零开始实现
import torchfrom matplotlib import pyplot as pltimport numpy as npimport random#首先生成数据集num_inputs = 2 #每个样本2个特征数num_examples = 1000 #一共1000个样本true_w = [2, -3.4] #权重true_b = 4.2 #偏差features = torch.randn(num_examples, num_inputs, .
2021-07-22 23:42:46
223
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人