- 博客(80)
- 收藏
- 关注
原创 Transformer多步时序预测:多变量输入,单变量输出
只使用encoder,然后把encoder的输出展平,后接线性层进行输出,理解为encoder只是把原始特征进行变换。感觉在ETTh1数据集上使用transformer效果一般。
2024-10-28 19:59:23 300
原创 Merlion笔记(四):添加一个新的预测模型
将一个预测模型转换为异常检测模型是非常简单的。只需要在合适的目录下创建一个新文件,并定义包含一些基本头部的类结构。通过多重继承 ForecastingDetectorBase 类,大部分繁重的工作都可以自动处理。任何基于预测的异常检测器返回的异常评分,都是基于预测值与真实时间序列值之间的残差。# 定义一个配置类,该类按顺序继承自 RepeatRecentConfig 和 DetectorConfig# 设置一个默认的异常评分后处理规则# 默认的数据预处理变换是均值-方差归一化,
2024-10-25 10:12:42 478
原创 Transformer时间序列预测:多变量输入与多变量输出
使用100个时间步的多变量时间序列预测未来20个时间步的目标序列。自变量有10个,因变量也有10个。train_data是一个列表,元素为元组,元组有两个元素,第一个为特征,第二个为标签。这里的解码器用一个全连接层表示,然后再加一个全连接层得到最后输出。上面图形是对第一个目标序列的预测结果,最小。以下代码在GPU上运行成功。
2024-10-24 14:44:40 890
原创 Merlion笔记(三):多变量时间序列预测
在许多情况下,通过提供这些变量的未来值以及过去值,我们可以获得更好的预测。这些变量可以是与目标变量相关的外部因素,通常可以提高模型的预测性能。在多变量时间序列预测中,可以将外生回归变量作为输入,帮助模型捕捉到更多的信息,从而改善预测结果。在这里,我们的任务是预测每周的销售额。我们希望我们的模型能够考虑可能影响消费者需求的变量(例如温度、消费者价格指数和失业率),因为对这些变量的了解可以提高销售预测的质量。在这里,我们先在训练数据上训练初始模型,然后使用滑动窗口的方法获取模型在训练数据上的预测结果。
2024-10-15 16:48:47 1136
原创 Merlion笔记(二):单变量时间预测
我们首先导入Merlion的TimeSeries类和M4数据集的数据加载器。然后,我们可以将该数据集中的特定时间序列划分为训练集和测试集。然后我们可以初始化并训练Merlion的DefaultForecaster,这是一个在性能与效率之间平衡的预测模型。我们还可以获得该模型在测试集上的预测结果。接下来,我们可视化模型的预测结果。最后,我们对模型进行定量评估。sMAPE用于衡量预测误差,范围为0到100(越低越好),而MSIS用于评估95%置信区间的质量,范围同样为0到100(越低越好)。和。
2024-10-14 21:14:36 735
原创 kaggle房价预测
举个例子,假设特征MSZoning里面有两个不同的离散值RL和RM,那么这一步转换将去掉MSZoning特征,并新加两个特征MSZoning_RL和MSZoning_RM,其值为0或1。如果我们得到与交叉验证时差不多的训练误差,那么这个结果很可能是理想的,可以在Kaggle上提交结果。在预测之前,我们会使用完整的训练数据集来重新训练模型,并将预测结果存成提交所需要的格式。对连续数值的特征做标准化(standardization),对于缺失的特征值,将其替换成该特征的均值。参考李沐《动手学深度学习》
2024-08-12 15:52:57 696
原创 DataWhale市场博弈和价格预测
气象状况对出清价格有较大影响节假日对出清价格有较大影响,易于出现负值总负荷与出清价格线性关系很高,但总体呈现分段线性的特征不同月份/小时下的出清价格受市场竞争影响较大碳中和不断发展,火电价格有总体下降的趋势本案例旨在提供探索性数据分析的一般步骤。可以自行尝试使用seaborn,plotly等python库做进一步的可视化,挖掘序列的更多信息,从而指导后续的特征构造。回想之前提到的规则:如果自身持有资本不为0,将1单位资本随机给一个其他的人。检查自己的财富状况,如果为0,则什么也不做。
2024-08-05 17:43:49 789
原创 2024datawhale电力需求预测挑战赛
赛题数据由训练集和测试集组成,为了保证比赛的公平性,将每日日期进行脱敏,用1-N进行标识。即1为数据集最近一天,其中1-10为测试集数据。数据集由字段id(房屋id)、 dt(日标识)、type(房屋类型)、target(实际电力消耗)组成。
2024-07-22 14:18:53 1093
原创 第20、21章 潜在狄利克雷分配(LDA)和PageRank算法
这一章书上的数学推导实在无法全部看懂,特别是吉布斯抽样和变分EM算法那里,也太逆天了吧,一切都毁了!难道就满足于会调包吗?
2024-07-19 16:05:31 902 2
原创 第19章 马尔可夫链蒙特卡罗法(MH算法、吉布斯抽样)
本章学习使用书籍:李航老师的《机器学习方法》配合观看视频:蒙特卡洛(Monte Carlo, MCMC)方法的原理和应用P1、P2和机器学习-白板推导系列(十三)-MCMC(Markov Chain Monte Carlo)其他博客链接:https://cosx.org/2013/01/lda-math-mcmc-and-gibbs-samplinghttps://www.cnblogs.com/pinard/p/6638955.htmlhttps://zhuanlan.zhihu.com/p/371215
2024-07-14 19:51:54 692
原创 第18章 概率潜在语义分析:课后习题
1.概率潜在语义分析是利用概率生成模型对文本集合进行话题分析的方法。概率潜在语义分析受潜在语义分析的启发提出两者可以通过矩阵分解关联起来。给定一个文本集合,通过概率潜在语义分析,可以得到各个文本生成话题的条件概率分布,以及各个话题生成单词的条件概率分布。概率潜在语义分析的模型有生成模型,以及等价的共现模型。其学习策略是观测数据的极大似然估计,其学习算法是EM算法。2.生成模型表示文本生成话题,话题生成单词从而得到单词文本共现数据的过程;假设每个文本由一个话题分布决定,每个话题由一个单词分布决定。
2024-07-11 16:54:06 895
原创 第17章 潜在语义分析:奇异值分解、非负矩阵分解及课后习题
1.单词向量空间模型通过单词的向量表示文本的语义内容。以单词-文本矩阵X为输入,其中每一行对应一个单词,每一列对应一个文本,每一个元素表示单词在文本中的频数或权值(如TF-IDF)Xx11x21⋮xm1x12x22⋮xm2⋯⋯⋯x1nx2n⋮xmn单词向量空间模型认为,这个矩阵的每一列向量是单词向量,表示一个文本,两个单词向量的内积或标准化内积表示文本之间的语义相似度。
2024-07-09 17:42:49 647
原创 第16章 主成分分析:四个案例及课后习题
1.假设x为m维随机变量,其均值为μ,协方差矩阵为Σ。考虑由m维随机变量x到m维随机变量y的线性变换yiαiTxk1∑mαkixki12⋯m其中αiTα1iα2i⋯αmi。如果该线性变换满足以下条件,则称之为总体主成分:(1)αiTαi1i12⋯m;(3)变量y1是x。
2024-07-08 19:35:47 971
原创 第15章 奇异值分解:习题解答及其案例
这一章初学建议看该视频学习,讲得歪瑞古德: 《统计学习方法》李航 第15章奇异值分解1.矩阵的奇异值分解是指将m×nm \times nm×n实矩阵AAA表示为以下三个实矩阵乘积形式的运算A=UΣVTA = U \Sigma V ^ { T }A=UΣVT其中UUU是mmm阶正交矩阵,VVV是nnn阶正交矩阵,Σ\SigmaΣ是m×nm \times nm×n矩形对角矩阵Σ=diag(σ1,σ2,⋯ ,σp),p=min{m,n}\Sigma = \operatorname { diag } ( \
2024-07-06 20:47:37 898
原创 第14章 聚类方法:Python代码实现及课后习题
1.聚类是针对给定的样本,依据它们属性的相似度或距离,将其归并到若干个“类”或“簇”的数据分析问题。一个类是样本的一个子集。直观上,相似的样本聚集在同类,不相似的样本分散在不同类。2.距离或相似度度量在聚类中起着重要作用。常用的距离度量有闵可夫斯基距离,包括欧氏距离曼哈顿距离、切比雪夫距离、以及马哈拉诺比斯距离。常用的相似度度量有相关系数、夹角余弦。用距离度量相似度时,距离越小表示样本越相似;用相关系数时,相关系数越大表示样本越相似。3.类是样本的子集,比如有如下基本定义:用G。
2024-07-05 19:50:05 871
原创 第10章 隐马尔可夫模型课后习题
1.隐马尔可夫模型是关于时序的概率模型,描述由一个隐藏的马尔可夫链随机生成不可观测的状态的序列,再由各个状态随机生成一个观测而产生观测的序列的过程。隐马尔可夫模型由初始状态概率向量π、状态转移概率矩阵A和观测概率矩阵B决定。因此,隐马尔可夫模型可以写成λABπ。隐马尔可夫模型是一个生成模型,表示状态序列和观测序列的联合分布,但是状态序列是隐藏的,不可观测的。隐马尔可夫模型可以用于标注,这时状态对应着标记。标注问题是给定观测序列预测其对应的标记序列。2.概率计算问题。给定模型λAB。
2024-07-03 16:55:21 861
原创 第9章 EM算法:例题及课后习题
高斯混合模型的参数估计是EM算法的一个重要应用,下一章将要介绍的隐马尔可夫模型的非监督学习也是EM算法的一个重要应用。已知观测数据:-67,-48,6,8,14,16,23,24,28,29,41,49,56,60,75。1.EM算法是含有隐变量的概率模型极大似然估计或极大后验概率估计的迭代算法。根据参数初始化或上一次迭代的模型参数来计算出隐变量的后验概率,其实就是隐变量的期望。函数的极大-极大算法。如例9.1的三硬币模型,假设观测数据不变,试选择不同的处置,例如,在构建具体的EM算法时,重要的是定义。
2024-06-22 14:37:31 1181
原创 Boosting原理代码实现
1.提升方法是将弱学习算法提升为强学习算法的统计学习方法。在分类学习中,提升方法通过反复修改训练数据的权值分布,构建一系列基本分类器(弱分类器),并将这些基本分类器线性组合,构成一个强分类器。代表性的提升方法是AdaBoost算法。fxm1∑MαmGmx2.AdaBoost算法的特点是通过迭代每次学习一个基本分类器。每次迭代中,提高那些被前一轮分类器错误分类数据的权值,而降低那些被正确分类的数据的权值。
2024-06-18 13:45:01 948
原创 逻辑斯谛回归与最大熵模型的原理实现
逻辑斯谛回归(LR)是经典的分类方法1.逻辑斯谛回归模型是由以下条件概率分布表示的分类模型。逻辑斯谛回归模型可以用于二类或多类分类。PYk∣x1∑k1K−1expwk⋅xexpwk⋅xk12⋯K−1PYK∣x1∑k1K−1expwk⋅x1这里,x为输入特征,w为特征的权值。逻辑斯谛回归模型源自逻辑斯谛分布,其分布函数Fx是S形函数。
2024-06-14 16:51:20 383
原创 决策树原理实现
决策树学习算法包括三部分:特征选择、树的生成和树的剪枝。常用的算法有ID3、C4.5和CART。特征选择的目的在于选取对训练数据能够分类的特征。特征选择的关键是其准则。常用的准则如下:(1)特征A对训练数据集D的信息增益(ID3)gDAHD−HD∣A其中,HD−k1∑K∣D∣∣Ck∣log2∣D∣∣Ck∣HD∣Ai1∑n∣D∣∣Di∣HDiHD是数据集D。
2024-06-11 15:22:22 745
原创 Python一些小操作
除了可以用sklearn.metrics.auc这个类来计算AUC面积,也可以使用roc_auc_score这个类。输入的参数也比较简单,就是真实标签,和与roc_curve中一致的置信度分数或者概率值。
2024-06-07 14:49:35 905
原创 鸢尾花分类和手写数字识别(K近邻)
虽然归一化前后的图像在视觉上似乎并无明显的差异,但通过打印归一化前后的像素值平均值和标准差可以发现标准化后,数据的平均值为5.890979314337566e-17,接近0(浮点数计算的微小误差,这在数值计算中可以视为0),这是标准化的预期结果,旨在将数据的均值中心化到0;如果图像的尺寸或像素值范围(亮度或颜色深度)不统一,可能会导致距离计算偏向于尺度较大的特征。如:将所有图像归一化到同一尺寸和/或将像素值标准化到同一范围(如0到1),可以确保不同的特征对距离的贡献均衡,从而使KNN分类器更公平、更准确。
2024-06-07 12:46:28 370
原创 安装Python包常用的国内镜像源
上海交通大学:https://mirror.sjtu.edu.cn/pypi/web/simple/中国科技大学:https://pypi.mirrors.ustc.edu.cn/simple/清华:https://pypi.tuna.tsinghua.edu.cn/simple/阿里云:http://mirrors.aliyun.com/pypi/simple/华中科技大学:http://pypi.hustunique.com/simple/
2024-04-22 17:02:14 556
原创 (11) XGBoost
XGBoost(eXtreme Gradient Boosting)是一种基于梯度提升算法的机器学习模型,特别适用于解决回归和分类问题。它是一种强大的集成学习方法,通过迭代地训练多个弱学习器(通常是决策树),并将它们组合成一个强大的预测模型。XGBoost以其高性能和可扩展性而受到广泛关注,并在多个数据科学竞赛中获得了显著的成绩。XGBoost库是一个开源的机器学习库,最初由陈天奇开发,并在GitHub上公开发布。
2023-06-05 12:29:09 1412 1
原创 (10) 朴素贝叶斯
朴素贝叶斯(Naive Bayes)是一种常见且简单的机器学习算法,常用于文本分类、垃圾邮件过滤、情感分析等任务。它基于贝叶斯定理和特征条件独立性假设,具有高效、易于实现和良好的可解释性。朴素贝叶斯算法基于贝叶斯定理,其中通过观察到的特征预测未观察到的类别。
2023-05-28 16:10:12 1253
原创 归一化、中心化、标准化、正则化的区别
综上所述,归一化、中心化、标准化和正则化是数据处理和特征工程中常用的转换技术,它们的目的和效果有一些差异,根据具体任务和需求选择适当的方法。L1正则化:通过向模型的损失函数添加L1范数项,使得模型的权重稀疏化,即使得一些权重变为零。L2正则化:通过向模型的损失函数添加L2范数项,使得模型的权重趋向于较小的值,但不为零。中心化通常用于需要将数据聚焦在均值为零的中心位置,以便更好地研究数据的分布和变化趋势。正则化通常用于在训练机器学习模型时控制模型的复杂度,并减少模型在未见数据上的错误。
2023-05-20 11:51:56 1738
原创 (8) 支持向量机分类器SVC案例:预测明天是否会下雨
SVC在现实中的应用十分广泛,尤其实在图像和文字识别方面,但SVC真实应用的代码其实就是sklearn中的三行,真正能够展现出SVM强大之处的,反而很少是案例本身,而是应用之前所作的各种探索。在实际工作中,数据预处理往往比建模难得多,耗时多得多,因此合理的数据预处理是非常必要的。本案例数据集是未经过预处理的澳大利亚天气数据集。本文的目标是在这个数据集上来预测明天是否会下雨。这个案例的核心目的,是通过巧妙的预处理和特征工程来展示如何在现实数据集上做数据预处理,或者有哪些预处理的方式和思路。
2023-05-05 21:36:45 1389 5
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人