- 博客(38)
- 收藏
- 关注
原创 动手学深度学习-注意力机制
在自注意力机制中,输入序列中的每一个元素既充当Query,又充当Key和Value。这意味着,序列中的每个元素都会与序列中的其他所有元素进行交互,从而捕捉全局依赖关系。例如,Transformer 中每个单词对句子中其他单词的注意力权重是通过自注意力计算的。自注意力机制的核心思想是通过计算输入序列中每个元素与其他元素之间的相似度,来动态调整每个元素对其他元素的关注程度。
2024-09-22 15:51:01
794
原创 动手学深度学习(四)卷积神经网络-上
填充(padding)是指在输入高和宽的两侧填充元素(通常是0元素)。卷积窗口从输入数组的最左上方开始,按从左往右、从上往下的顺序,依次在输入数组上滑动。我们将每次滑动的行数和列数称为步幅(stride)。
2024-09-14 00:40:37
883
原创 动手学深度学习(三)深度学习计算
ModuleList是 PyTorch 中的一种容器类,位于torch.nn模块下,专门用于存储多个子模块(即网络层)。net.append(nn.Linear(256, 10)) # # 类似List的append操作print(net[-1]) # 类似List的索引访问print(net)和 Python 普通列表的区别注册模块中的所有子模块都会被注册为模型的一部分。PyTorch 会自动识别并将它们的参数纳入模型的训练和保存中。而普通的 Python 列表并不会注册其中的模块。参数追踪。
2024-09-12 22:39:17
640
原创 动手学深度学习(二)基础知识-下
欠拟合(underfitting):模型无法得到较低的训练误差。过拟合(overfitting):模型的训练误差远小于它在测试数据集上的误差。正向传播(forward propagation):对神经网络沿着从输入层到输出层的顺序,依次计算并存储模型的中间变量(包括输出)。线性层计算隐藏层使用激活函数进行非线性转换线性层计算计算损失和惩罚项目标函数。
2024-09-12 01:11:02
746
原创 动手学深度学习(一)简介+预备知识+基础知识(上)
nn模块:“nn”是neural networks(神经网络)的缩写。顾名思义,该模块定义了大量神经网络的层。Sequential可以看作是一个串联各个层的容器。在构造模型时,我们在该容器中依次添加层。当给定输入数据时,容器中的每一层将依次计算并将输出作为下一层的输入。直接在nn.Sequential()内定义:# 此处还可以传入其他层创建实例后add_module:OrderDict创建多个:每层有名字# ......]))nn里面有很多Loss。
2024-09-11 00:38:59
989
原创 HOT100(九)多维动态规划
维护一个二维数组f,f[i][j]表示从起点到(i,j)的路径数。已知初始化f[0][0]=1,即机器人在起点的路径是1;机器人到达第一列f[:][0]只能走下来,因此第一列的每个元素都为1;机器人到达第一行f[0][:]只能走下来,因此第一行的每个元素都为1。这是因为机器人到达一个点,只能从上方和左方走过来,因此。
2024-09-09 01:25:44
1252
原创 HOT100(八)动态规划
开辟一个长度为 n+1 的,f[i]表示走到第i个台阶的方案数。(在台阶底部,不需要移动也视为一种方法),(走到台阶1的方案只有一种,就是爬一步)。,因为走到第i个台阶,必然是从第i-1个台阶或者第i-2个台阶上爬上来的,因此走到第i个台阶的方案数等于走到第i-1个台阶的方案数与走到第i-2个台阶的方案数之和。最后返回f(n)就是爬到n级阶梯的方案总数。
2024-09-08 15:40:03
681
原创 HOT 100(七)栈、堆、贪心算法
使用来解决。主要思路是遍历数组,利用栈来存储。当遇到比栈顶索引所对应温度更高的温度时,就可以确定当前这一天的温度比之前那一天高。。求一个元素右边或者左边第一个比它大/小的元素可以用到单调栈。
2024-09-07 21:04:23
2607
1
原创 HOT 100(六)二分查找、栈
这种方式计算的mid更偏向于左侧。这是因为当left+right为偶数时,它会精确地取中间;而当它为奇数时,mid会向左侧靠拢。通常用这种方式来查找目标值的第一个位置。(偏右):通过在mid的基础上加 1,使得在偶数的情况下mid向右侧靠拢。这通常用于寻找目标值的最后一个位置,因为它倾向于偏向右侧的搜索区域。
2024-09-07 01:32:13
883
原创 HOT 100(五)
我们遍历二维网格中的每一个点,如果遇到一个值为1的点,则启动一次 DFS 搜索,将所有与之相连的陆地都标记为访问过。这意味着我们找到了一座岛屿。最后,
2024-09-06 00:11:03
692
原创 刷题记录-HOT 100(三)
slowfastslowfastfastslowfastfastNonefast.nextNoneslowfastNone第一阶段,soft和fast在b点相遇,soft走过的距离是x+y,fast走过的距离是2(x+y)。fast比soft多走的距离x+y=r+y。可以得到x=r。第二阶段,找环起点a,soft重定向到头结点head,fast从相遇点b出发。soft走到a的距离为x,fast回到环起点经过的距离为r,x=r,所以两者会在a处相遇。
2024-09-04 00:42:18
923
原创 torch、torchvision、torchtext版本兼容问题
2、 torch与torchvision版本兼容。1、torch与torchtext版本兼容。
2024-08-31 23:02:00
881
原创 推荐系统实战(八)-冷启动(下)
物料x_i通过两种数据增强方式得到衍生y_i和y_i',物料x_j通过两种数据增强方式得到衍生y_j和y_j'。③随机丢失:Dropout,不再是随机拆分field,而是将具有多值的field,比如说分类和标签中的值随机拆到不同变体中。比如用户u在场景O下已经有非常丰富的行为,而在场景N中数据稀疏,因此可以由场景O向场景N进行知识迁移,帮助场景N兴趣建模。对比学习是怎么纠偏的:通过数据增强,可以衍生出来更多少数样本,放大少数样本在训练中的作用。不仅可以单向迁移,场景N中数据也可以丰富场景O的兴趣建模。
2024-08-30 00:45:52
881
原创 推荐系统实战(八)-冷启动(上)
喂入元学习的基本数据不再是一条条样本,而是一个个Task。每个Task包含一个训练集(support set)和一个测试集(query set)。每个任务训练好模型后,测试得到该任务的loss(这被称为任务内学习)。所有任务的loss之和是总损失,这用到了一个batch内的所有数据,被称为跨任务学习。Meta Learning示意。
2024-08-29 19:38:07
1740
原创 推荐系统实战(七)-多任务多场景(下)多场景
多场景指的是在不同的应用场景或用户交互环境中进行推荐。1、在同一个视频APP中,单列模式(比如抖音,一屏之内只有一个视频,通过上下才能切换)和多列模式(youtube中一屏可以显示多个视频),用户的行为模式存在显著差异。2、一个提供全球服务的APP,在不同国家的用户行为模式也存在显著差异。3、同一个APP内根据生命周期不同的用户,推荐系统的应对策略也不一样。
2024-08-28 23:40:49
1493
原创 推荐系统实战(七)-多任务多场景(上)多任务
多任务Multi-Task,有时也被称为多目标Multi-Objective建模。比如说电商场景下,希望曝光的物料被多多点击,还希望商品被下单购买,因此同时建模三个目标:曝光到点击CTR,点击到购买转换率CVR,曝光到购买的概率CTCVR。
2024-08-27 22:40:58
2134
原创 推荐系统实战第六章-粗排和重排(下)重排
从一个集合Z中抽取出任意子集的概率分布被叫做点过程。随机点过程示意建立一个重排模型,输入的是整个精排筛选出的N个物料,评估的是物料在其上下文环境中被用户选中的概率。这被称为基于上下文感知的排序学习(Context-aware Learning-To-Rank)。
2024-08-27 13:18:11
1310
原创 推荐系统实战第六章-粗排和重排(上)粗排
知识蒸馏涉及两个模型:teacher模型和student模型。知识蒸馏的意义在于取长补短。teacher模型,相对来说比较复杂,喂入了更多特征,表达能力更强。student模型,相对来说比较简单,loss主要由两部分组成:①拟合真实目标y。②拟合teacher模型的输出。最后优化目标是,两部分loss通过加权平均后的结果最小。
2024-08-26 23:27:00
1512
原创 推荐算法实战五-召回(下)
FM主要应用于采用与用户正向交互过的样本。,一个是随机采样,一个是曝光但未点击的负向物料。,因此正负样本中热门物料参与度都不小,为了确保推荐结果的,对采取不同的热门物料打压策略。
2024-08-26 01:03:29
1284
原创 推荐算法实战-五-召回(上)
向量化召回Embedding-based Retrieval,是将召回问题建模成向量空间内最近邻搜索问题。哪些q向量(表示用户向量)和t向量(表示物料向量)在向量空间中的距离应该相近。喂入召回模型中的负样本主要依靠随机采样。负样本在召回中地位非常重要。Word2Vec的目标是每个单词都能学习到表征其意义的稠密向量,也就是Word embedding。
2024-08-22 22:20:24
1533
原创 论文调研-多模态聚类
这个目标函数通过H的L1,2-norm和S的Frobenius 范数项,鼓励模型选择重要的视图和多阶图,同时保持共识图的质量。这样,每个视图的嵌入特征都会在新的张量中与其它视图的特征相邻,从而有助于捕捉视图间的相关性。②局部传播模型:它首先从不完整的数据集中的完整子集获取高质量的伪标签,然后通过图卷积网络将这些伪标签传播到同一视图的不完整样本上,学习视图特定的标签空间,并通过类别概率的平均融合来构建统一的标签空间。基于图的多视图聚类算法通过对不同视图的一阶图进行一致图学习,获得了较好的聚类性能。
2024-08-05 11:48:36
1384
原创 推荐系统实战(三)推荐系统中的embedding(中)
共享Embedding是指在深度学习模型中,不同的输入特征或不同的特征域(Field)使用相同的Embedding矩阵。
2024-08-02 23:52:40
1029
原创 推荐系统实战(二)特征工程
通常指的是那些在数据集中可能引起模型预测偏差的特征。这些特征可能与目标变量存在某种关联,但它们不一定代表真实的因果关系。
2024-07-29 18:06:19
1397
原创 推荐算法实战(一)推荐系统简介
2、物料Item:推荐系统要推荐的信息。3、依赖的最重要的特征不同:搜索依赖查询语句与物料信息的交叉,推荐依赖用户信息和物料信息的交叉。2、即时性不同:推搜目标完成的即时性较强,比如点击率等。特点:功能架构中越靠前的面对的候选集越大,对速度要求越高,对精度要求稍松。3、目标不同:推搜要求留住用户、产生流量,广告要求流量的变现。1、准确性要求不同:推搜要求相对准确,广告要求绝对准确性。1、用户User:推荐系统的服务对象。2、准确性不同:搜索对准确性要求更严。3、主要目标:提供用户需要的信息。
2024-07-28 17:21:23
1341
原创 算法基础课第一章(中)高精度+前缀和+差分
假设A是一个一维数组,A[i]表明A中第i个元素。对于数组A,可以定义一个前缀和数组P,使得P[i]表示A中第一个到第i个元素之和。即:对于P数组第一个元素,由于没有元素可以累加,设P[0]=0。任意区间[l,r]的和可以在常数时间内被查询:区间和=P[r]-P[l-1]。其中构建过程为:初始化P[0]=0,而P[i]=P[i-1]+A[i]。①A是一个二维数组,A[i][j]代表第i行第j列元素,设前缀和数组P,有P[i][j]代表A中左上角(1,1)的元素到A中(i,j)的所有元素的和。
2024-07-20 15:56:41
898
原创 算法基础课第一章(上)快排,归并,二分
此时,可以确定的是至少有mid-i+1这么多的元素大于右边当前j指向的元素(因为左边部分是递增的,i~mid之间的元素都比第i个指向的元素大,那么肯定也是都大于右边当前j指向的元素的,个数可以由i-mid+1得到。因此当前比较可以得到的逆序对有【3 2】【5 2】【7 2】【8 2】,有mid-i+1=4-1+1=4个逆序对。(1)区别1:循环跳出约束改变,while r-l
2024-07-18 21:22:13
1004
原创 算法基础课-第二章复盘
对于插入操作,循环读入字符,如果当前结点p的子节点指针数组son中并没有指向当前字符的指针(即son[p][u]=0,其中u可以由当前字符ASCII码减去'a'的ASCII码得到),那么创建结点(idx+=1,son[p][u]=idx,通过idx来标识结点)。2、再逐个比较得到的每个数的最大异或值,其中最大的数即为输出:初始化res=0,p指向根结点(p=0)。从最高位开始计算,如果存在相应位置i上与该位不同的值(比如0和1),则res加上1左移i位(1
2024-07-17 21:30:04
930
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人