- 博客(44)
- 资源 (3)
- 收藏
- 关注
原创 cs224w课程学习笔记-第12课
本文介绍了知识图谱问答任务的核心方法,重点对比了路径查询和连词查询两类问题的解决方案。路径查询通过TransE模型将问题转为向量运算,利用平移特性隐式推理缺失信息;连词查询则采用Query2box模型,将节点嵌入为盒子并通过投影、交集等操作实现复杂逻辑推理。文章详细解析了两种模型的原理、训练过程及适用场景,指出TransE无法处理多路径交集的局限性,而Query2box通过盒子操作支持AND/OR逻辑运算,更适合复杂查询。最后通过采样策略说明不同类型问题的训练数据构建方法,为知识图谱问答系统提供了完整的技术
2025-05-28 19:53:23
1067
原创 【学习笔记】因果推理导论第1课
本节课说明了因果推理的动因是观测到的相关不等于因果,然后解释了为什么相关不等于因果,因为相关中混杂了其他因素;随后说明了可以通过随机实验剔除掉混杂因素,但是实际应用中很难实现;因此引出了通过控制混杂因素使用观测数据计算因果的直观方法,并通过疫情治疗的例子进一步理解.
2025-05-16 18:24:35
948
原创 cs224w课程学习笔记-第11课
根据上一节课的异构图内容我们知道知识图谱也是经典的异构图,并在上节课的论文分类按例中提到最佳方案不是使用RGCN模型,而是使用了知识图谱嵌入模型complEX与简单的GCN模型(其原因是知识图谱类数据通常关系类型数多,异构图的RGCN着重于局部,无法很好的表征全部与全局性的语义关系,此时使用语义关系嵌入的模型提取全局与全面的关系信息,再使用GCN进行局部信息提取,其最终的嵌入表征能力会更强).因此本节课我们就来了解一下知识图谱嵌入的思想,常见模型与其表征能力.
2025-05-12 20:08:27
964
原创 【论文阅读】MOE大模型里程碑《OUTRAGEOUSLY LARGE NEURAL NETWORKS: THE SPARSELY-GATED MIXTURE-OF-EXPERTS LAYER》
已知神经网络处理信息的能力受限于模型参数,而条件计算可以在提升模型的能力的同时,让模型计算量不会成比例增长.但是条件计算策略会对模型算法与性能带来挑战(文中挑战性内容有说明).本文通过搭建可训练稀疏门控网络与上千个专家的moe方案解决了条件计算中的大部分挑战,实现了条件计算策略下的预期.同时本文通过语言翻译类任务的多项实验证明了该方案的有效性.本文核心的点是提出了稀疏门控网络,考虑负载均衡的两个辅助损失函数,以及在工程上并行等优化实现了137B的大模型,为后续moe在大模型中的应用奠定了基调.
2025-04-27 19:53:30
720
1
原创 【论文阅读】MOE奠基论文《Adaptive Mixtures of Local Experts》
论文提出了一个基于多个分离网络的有监督学习方案,该方案可以解决整个训练集中的子集问题.该方案既可以看做多层有监督网络模块的版本,也可以看作是竞争学习的协同版本.该方案将这个两个看似差异很大的版本联系了起来.最后使用元音分辨任务对该方案进行了验证与说明,其具体方法是通过将元音任务拆分为几个子任务,每个子任务由一个简单的专家网络负责.
2025-04-14 19:39:12
887
1
原创 cs224w课程学习笔记-第10课
异构图的定义是节点内部存在类型不同,边的内部存在类型不同信息,那么类型不同的信息是否可以做特征引入图学习中,由此异构图可做同构图对待?若必须视为异构图,其图学习又如何进行?本节课将介绍异构图的基本定义,以及其与同构图的关系,如何使用GCN实现对异构图的嵌入学习,如何使用Transform实现对异构图的嵌入学习.
2025-04-11 19:15:21
989
原创 cs224w课程学习笔记-第9课
上节课结尾我们说到位置信息的引入可以借助注意力机制,那么我们联想到目前注意力机制最火爆的模型transformer,它已经成功应用在了时序类任务上如iTransformer,informer等,是不是也可以用于图学习呢?本节课将探索transformer与图学习的联系,以及如何实现图的transformer.
2025-03-20 11:35:15
934
原创 cs224w课程学习笔记-第8课
根据上一节课我们知道目前最强的GIN在表征带环或对称图形时,无法完美区分出来不同的图形.本节课基于这个局限提出了引入图的结构信息,其代表方法是通过谱分解得到图的全局结构,说明GIN的局限的原因,并可以通过矩阵得到结构信息特征;此外根据上一节课我们知道当计算图一致时,表征结果一致,但当两个不同的节点虽然其计算图一样,但是其位置不同,我们希望得到不同的表征,这种情况我们就需要引入位置信息。
2025-03-17 16:54:12
1082
原创 cs224w课程学习笔记-第7课
前面介绍了图神经网络的构成,常见类型,训练流程与实践结构,本节课将对图神经网络的表征能力进行挖掘,首先是用什么来衡量图神经网络的表征能力,然后是什么样的结构能够得到表征能力强大的图神经网络.本节课主要说明了如何分析图神经网络的表征能力,能够区分不同的图,表现在神经网络计算上为节点的嵌入应为单射;如何搭建表征能力强的网络结构GIN,通过保证节点计算图单层聚合为单射函数,引出MLP可实现单射需求.最后讲述了GIN与WL图核的关系,其hash 函数为单射函数,可用GIN实现,两者殊途同归.
2025-03-10 17:07:33
848
原创 cs224w课程学习笔记-第6课
本课程,描述了在节点嵌入后如何适用于不同任务类型,其中可直接用于节点任务,通过拼接点积等操作可用于边预测,最复杂的是图预测需要做分层的节点聚合才能得到的区分不同图的表示;然后介绍了自监督由数据结构和信息本身得到标签,与有监督的标签来源;随后介绍了图学习里的loss与评价指标,基本与机器学习中常见的方法一致;最后讲述了数据集的划分,分为直推式划分(训练集,验证集,测试集来源于一个图),归纳式(训练集,验证集,测试集来源于不同图),并介绍了不同任务类型的例子增进两种方法的理解,其中以边任务较为特征,值得注意.
2025-03-03 17:49:01
1071
原创 cs224w课程学习笔记-第5课
本课程首先对GNN层的构建原理进行了解读,其中包含两个核心环节消息传递与聚合,根据消息传递方式的差异性产生了不同的变种GCN,graphSAGE,GAT .然后介绍了GNN层与层之间的堆叠会产生的核心问题过度平滑,从而引申出可通过丰富单层核心环节的结构或增加GNN层输入输出前后的处理层实现单层容量增强,与跳跃式连接实现浅层与深层混合结构来实现容量增强两种方式.最后介绍了实际图数据的常见问题(稀疏,稠密,大图),为更好的实现图嵌入,我们需要通过增加虚拟节点/边解决图过度稀疏问题,以及近邻采样提升计算效率解决大
2025-02-28 16:00:48
833
原创 cs224w课程学习笔记-第4课
本课基于传统嵌入法的局限性,考虑使用神经网络的表征能力强的特性来构建新的图嵌入方法;通过总结现有神经网络结构特性与图嵌入的特点,构建的基于置换不变性与置换等变性函数的多层图神经网络用于图嵌入,该结构完美克服了传统方法的局限性,并与已有神经网络(如CNN,transform)在理论上相通.
2025-02-25 11:08:31
787
原创 cs224w课程学习笔记-第3课
为什么要做节点嵌入,节点嵌入可以揭示节点间的相似性;可以编码网络信息;可以用于更多下游应用.且节点嵌入是非监督或自监督的方法,无需要节点的标签,特征,仅估计节点的一组坐标变可实现原网络结构信息的保留.节点嵌入过程基本独立与实际任务,不同任务其嵌入是通用的.
2025-02-20 20:45:58
808
原创 cs224w课程学习笔记-第2课
本节课主要介绍了传统的图特征提取方法,其中包括节点特征度,中心性,聚类系数,子图模式库特征;边的两点间最短距离特征,局部邻域重叠,全局领域重叠;与最后通过核函数对图进行特征提取,灵感来源于语言模型的词袋方法,介绍了基于子图模式的Graphlet Kernel与基于hash 节点颜色标签(或特征)的迭代式聚合的Weisfeiler-Lehman Kernel 得到图的特征与图之间的相似度度量.
2025-02-18 20:36:47
885
原创 cs224w课程学习笔记-第1课
第一课讲解了现实中什么样的场景可以用图来表示,以及图的表示方法如节点,边,相邻矩阵,有无权重;和不同场景衍生出来不同的图结构,如有向无向图,异构图,双边图等.最后介绍了图学习的任务类型及其应用场景,分别有节点任务,如蛋白质空间结构;边任务如推荐系统,药物相互作用;图任务,如交通预测,抗生素预测任务,物理仿真.
2025-02-18 11:47:15
711
原创 深度学习经典结构之注意力机制Transformer
注意力核心的三个向量是Q,K,V分别代表查询,键,值;其公式如上文的经典表示公式,其图解可见下图,第一步:残差与归一化,第二步:缩放操作,第三步:掩码,Masking 操作通常通过将无效位置的数值替换为一个极小的值(如负无穷)来实现。这种方法的优点是对于任意长度的输入序列,其位置编码都是唯一的。核心是训练多组Q,K,V,的自注意力机制,每一组都是随机初始化(也可通过线性变换),经过训练之后,输入向量可以被映射到不同的子表达空间中,而后将输出拼接,经过矩阵转化到单个注意力机制的维度上,其流程见下图。
2025-02-12 16:55:06
879
原创 【论文阅读】扩散卷积递归神经网络:数据驱动的交通预测
时空预测一直是一个值得攻克的难题,其中最具代表性的领域就是交通预测,其交通预测的两大难点是,一为复杂的空间关系,二为随着时间变化,其预测难度非线性上涨.该论文基于交通数据搭建了扩散卷积循环网络结构,结合seq2seq结构进行交通领域的预测.其中扩散卷积结构用于抓捕空间信息,循环网络抓补时间信息,seq2seq结构实现时序依赖.图的定义表示如下,ν\nuν是以传感器抽象出来的点,εε代表边的集合,如传感器A到传感器B的道路,W 代表相邻权重矩阵,为公路网中的距离.
2025-01-16 11:30:14
738
1
原创 【python库学习】lightgbm集成学习库学习
随着GBDT的广泛应用与大数据集的日益增加,对算法的效率要求不断提高;因此基于GBDT上出现了不少改进算法,其中XGBoost是改进成功的代表.然在高维特征跟大型数据集场景下,改进算法仍无法满足需求.因此又出现了针对该问题的改进算法light GBM,其特别之处在于提出了一个基于梯度的单边采样降低了训练集大小,提出了一个互斥特征绑定,降低了特征维度,从而在精度差异不大的情况下.提升了模型的效率.
2024-06-07 15:13:12
1002
原创 【python库学习】XGBoost集成学习库学习
XGboost 梯度加速决策树集成学习,是在GBDT后出现的一个应用广泛且框架稳定的模型.其出现源于原梯度加速模型在大型数据上计算量大,运行速度缓慢;二是随着数据库的积累与丰富,对更高性能,精度与效率的模型需求越来越高;两大原因催生了该模型的出现.接下来我们将首先了解熟悉该模型的原理,优化点;然后是对应的库的实现方法,相应参数,重要属性使用,与实践中的一些注意事项.
2024-05-13 11:30:14
978
原创 【python库学习】sklearn集成学习ensemble模块学习
集成学习由数个基础学习器构成, 在表现上通常优于单个学习器。根据基础学习器的组合方式又分为bagging、boosting、stacking三大类,第一类经典模型为随机森林,第二类代表为梯度boosting,该类目前最受欢迎的有LGBM,GBDT,XGBoost。
2024-03-06 13:51:35
1972
原创 hive实现多列数组元素一一对应展开为行
有如下均为字符类型的数据,其中aa与bb里面放的是数组,且每一行,而不同行之间长度不不同,目标是想让aa,bb中的,如下方第2行展开后为图2所示.目标输出。
2024-03-01 17:27:16
956
原创 hive 分组后使用近期日期数据进行缺失值填充
有产品重量表,其数据如图所示,一共为四列,分别是日期inc_day,重量weights_value,产品类型product_name,与产品等级product_level.可以看到有些日期下的重量是缺失的,此时我想要拿近期同产品类型跟等级下的重量数据进行填充,也就是第二幅图这样。最后对求和,以及产品类型跟等级进行分组按日期排序取重量最大值,这样缺失的部分前面若有非缺失值,取最值,非缺失值则会被取到,否则继续为空,作为缺失处的值;然后对标记分组求和得到👇结果,可以看到缺失的地方不会进行累加,无缺失的会累加.
2023-12-26 19:40:36
754
原创 深度学习经典结构之长短期记忆网络LSTM
从三个门的公式可以看到,其激活函数与状态生成的激活函数不一样,门的激活函数选用sigmoid类函数,取值在[0,1]之间,符合门的定义,是实现长短期记忆的功能控制开关;Keras的每个循环层都有两个与 dropout 相关的参数:一个是 dropout,它是一个浮点数,指定该层。状态激活函数tanh,取值[-1,1],是一个0值中心化的函数,在0附近的梯度较大,收敛快.GRU不引入额外的状态,而是引入的一个更新门与重置门.其公式如下。则为外部状态,其三个门可以理解为下面的作用。
2023-11-15 15:45:37
634
原创 【python库学习】 sklearn中的支持向量模型svm模块
在二分类中,使用Platt 缩放法实现,该方法使用SVC模型输出作为训练集,构建sigmod函数,原标签仍为标签,进行拟合参数求解,由此得到了概率输出。当前模有方法SVC,NuSVC与LinearSVC,NuSVC与SVC的区别在于使用了参数V来控制训练误差的上限与支持向量的下限,而SVC的正则参数是C。SVM 支持向量的原型最开始是从一个二分类任务得到的.有一个二分类,标签y取值{+1,-1},想要进行分类,则要在样本中寻找一个超平面可以将样本分为两类,该超平面可以定义为。
2023-11-10 14:42:44
1146
1
原创 深度学习基础之反向传播算法
其起源是我们想要神经网络结构对输入进行学习去拟合我们的目标输出,如何去衡量我们拟合的好不好,就是去衡量网络输出与标签值的距离,这个衡量距离的方法我们就称之为损失函数.有了损失函数我们的目标就是要去使得这个损失函数最小化,如何使得损失函数最小,我们想到导数,导数的定义如下方公式所示,当足够逼近x0时的斜率存在,则该点可导.f′x0lim△x→0fx0△x−fx0△xf′x0△x→0lim△xfx0△x−fx0。
2023-11-06 23:33:34
113
原创 【python库学习】 sklearn中的决策树Decision Trees
本库的决策树通过分段常数逼近目标分布,深度越大,其分段越细致,同时复杂度越大,拟合越好,过拟合风险上升。决策树易于理解与解释,且生成的决策树可以可视化;无需做数据标准化处理,空值剔除等,注意的是本库不支持缺失值;其拟合时间复杂度是0(logN) N为样本数;可以处理多输出问题,可以同时接受连续值与类别型数据,注意本库不支持类别型数据;对数据假设要求不严格,在部分违反下,表现仍然不错。当然根据决策树的原理,也有一些缺点,一是不加限制会学到复杂的树结构,需要注意控制过拟合问题;
2023-06-19 11:38:28
5028
1
原创 【python库学习】 sklearn中的线性模型linear models模块
对sklearn库中linear models模块里的线性模型的不同类型的方法优缺点与使用注意事项,进行一个简单的学习,与学习记录。
2023-06-01 14:49:51
4724
原创 【论文阅读】NeuralProphet: Explainable Forecasting at Scale
本文模型延续了prophet的可扩展,解释性强,与使用友好的优点,同时增加了神经网络部分(包括自回归网络与协变模块两种网络),与基于pytorch后端的实现可以随着深度学习算法的更新进行更新,这部分弥补了prophet模型对上下文信息利用的缺失(通常对近期未来预测有重要作用,非线性动态拟合差,以及prophet基于stan(统计概率编程语言)实现难以与深度学习模型进行结合以及更新扩展的问题。
2023-05-12 19:46:53
1830
2
原创 【论文阅读】Forecasting at scale
该文章是fbprophet 提出时对应的官方论文,同时fbprophet官方文档可以进该网站,了解fbprophet的实际使用与参数配置等方法。该论文中具体包括了fbprophet的原理,公式,特点,以及构建该模型的一些出发点,动机;数据预测与基线模型的对比,以及闭环时序预测的理念展示。阅读该文章对于初次接触fbprophet模型的人来说可以较好的对fbprophet模型有一个全面的了解。prophet模型由趋势项,周期项,节假日事件项与误差项组成,g(t)是趋势函数,可以设置不同的可变趋势;
2023-04-26 16:40:39
961
1
原创 hive使用关键字做字段
可知date在SQL语言中为关键字,用为字段名时,无法直接使用,需要加上倒引号,才可识别,在建表时也需加倒引号进行使用。
2022-07-11 14:18:38
2303
原创 hive get_json_object传递可变参数
hive 复杂数据解析待解析数据字段与样例:样例1:request: TmPromiseReParam [calcMode=A, queryType=0, srcCode=662AA02P, destCode=752BK, consignTime=Fri Sep 24 11:21:00 CST 2021, weight=1.0, productType=T6, monthCard=null, srcAoi=662AA000832, destAoi=752BK000208, serviceCode=nu
2021-11-19 16:00:30
1647
原创 hive 获取某字段排序后倒数第n次的所有信息
hive 获取某字段排序后倒数第n次的所有信息牛客网sql题背景:有一个员工入职信息表empolyees,其中包含字段入职日期hire_date与其他相关信息字段。问题:要求获取倒数第n次入职的所有员工信息要求获取倒数第n次入职的一位员工信息解答:问题1:严格获取原表所有字段select * from employees where hire_date=(select distinct hire_date from employees order by hire_date d
2021-08-25 13:42:28
715
原创 访问Java接口
如何通过java访问http接口话不多说上代码,直接可用系列。package src.main.scala.com.sf.spark.otherimport com.alibaba.fastjson.{JSON, JSONObject}import org.apache.http.HttpEntityimport org.apache.http.client.config.RequestConfigimport org.apache.http.client.methods.{HttpGet,
2021-05-18 19:55:06
184
原创 scala 使用时间戳与时间互相转换类
借助java中的Date与Calendar实现时间类型互相转换时间戳:与1970年间隔的毫秒数-1621337596326时间string类型常见形式:“2021-05-18 19:33:16”1.获取当前时间2.获取昨天日期3.计算时间差4.指定日期和间隔天数,返回指定日期前N天的日期 date - N days5.指定日期和间隔小时,返回指定日期前N小时的日期 date - N days6.指定日期和间隔小时,返回指定日期后N小时的日期 date - N days7.时间与时间戳互相
2021-05-18 19:47:11
2579
原创 idea maven 打包报错 --xxxx\target\classes does not exist or is not a director --java: -source 1.5 中不支持 d
idea maven 打包报错 --xxxx\target\classes does not exist or is not a director --java: -source 1.5 中不支持 diamond 运算符1.xxxx\target\classes does not exist or is not a director在build project 之后,target会自动成,ackage仍报错;通过idea界面右侧maven,lifecycle下的clean,清除target,重新bu
2021-05-13 12:04:08
2728
原创 HIve 中explode,inline与lateral view
HIve 中explode,inline与lateral view1.功能展示2.使用注意事项不支持与其他字段同时使用不支持一次对同字段使用多次explode不支持在group by/sort by/cluster by 后使用explode3.与lateral view 一起使用SELECT myCol1, myCol2 FROM baseTableLATERAL VIEW explode(col1) myTable1 AS myCol1LATERAL VIEW explode(
2020-07-23 17:51:23
809
预测算法工程师或者数据挖掘涉及到的工程技术,算法理论知识,以及统计分析方法知识框架全览
2022-02-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人