- 博客(129)
- 资源 (30)
- 收藏
- 关注
原创 图神经网络(GNN)模型的基本原理
图神经网络(Graph Neural Networks, GNN)是一种直接在图结构数据上运行的神经网络,用于处理节点、边或整个图的特征信息。其核心思想是通过聚合邻域节点的特征信息来更新当前节点的表示,从而捕捉图中节点间的依赖关系和拓扑结构特征。
2025-06-08 14:26:40
716
原创 知识图谱技术概述
知识图谱(Knowledge Graph) 是一种基于图结构的语义网络,用于表示实体及其之间的关系,旨在实现更智能的知识表示和推理。它通过将现实世界中的各类信息抽象为 “实体-关系-实体” 的三元组结构,构建出复杂的知识网络,从而支持高效的信息检索、语义理解和决策分析。
2025-06-06 23:58:46
872
原创 长短期记忆(LSTM)网络模型
长短期记忆(Long Short-Term Memory,LSTM)网络是一种特殊的循环神经网络(RNN),专门设计用于解决传统 RNN 在处理长序列数据时面临的梯度消失 / 爆炸问题,能够有效捕捉长距离依赖关系。其核心在于引入记忆细胞(Cell State)和门控机制(Gate Mechanism),通过控制信息的流动来实现对长期信息的存储与遗忘。
2025-05-31 00:10:23
1003
原创 循环神经网络(RNN)模型
循环神经网络(Recurrent Neural Network, RNN)是一种专门设计用于处理序列数据(如文本、语音、时间序列等)的神经网络模型。其核心思想是通过引入时间上的循环连接,使网络能够保留历史信息并影响当前输出。
2025-05-30 00:09:33
1124
1
原创 卷积神经网络(CNN)模型
卷积神经网络(Convolutional Neural Network, CNN)是一种深度学习模型,广泛应用于图像识别、计算机视觉等领域。其设计理念源于对生物视觉皮层神经机制的模拟,核心原理是通过卷积、池化(下采样)、全连接等操作,自动提取输入数据的层级特征,完成分类或回归任务。
2025-05-26 13:42:43
1024
原创 常见的激活函数汇总
在神经网络中,激活函数(Activation Function)扮演着至关重要的角色,它为神经网络引入非线性因素,使得网络能够学习和模拟复杂的非线性函数关系,从而具备处理各种复杂问题的能力。如果没有激活函数,多层神经网络将仅仅是一个线性组合模型,其表达能力会受到极大限制。以下是几种常见的激活函数汇总。
2025-05-16 01:04:16
934
原创 人工神经网络(ANN)模型
人工神经网络(Artificial Neural Network,ANN),是一种模拟生物神经网络结构和功能的计算模型,它通过大量的神经元相互连接,实现对复杂数据的处理和模式识别。从本质上讲,人工神经网络是对人脑神经细胞的数学抽象,试图模仿人类大脑处理信息的方式,以解决各种实际问题。
2025-05-15 22:59:24
942
原创 基于主成分分析(PCA)的数据降维
主成分分析(Principal Component Analysis,简称 PCA)是一种用于数据降维的方法,其核心目标是在尽可能保留原始数据信息的前提下,将高维数据映射到低维空间。该算法基于方差最大化理论,通过寻找数据的主要变化方向(即主成分),将原始数据投影到这些方向上,从而实现降维。
2025-05-08 19:09:52
999
原创 LightGBM算法原理及Python实现
LightGBM 由微软公司开发,是基于梯度提升框架的高效机器学习算法,属于集成学习中提升树家族的一员。它以决策树为基学习器,通过迭代地训练一系列决策树,不断纠正前一棵树的预测误差,逐步提升模型的预测精度,最终将这些决策树的结果进行整合,输出最终的预测结果。
2025-05-06 23:45:31
895
原创 CatBoost算法原理及Python实现
CatBoost 是在传统GBDT基础上改进和优化的一种算法,由俄罗斯 Yandex 公司开发,于2017 年开源,在处理类别型特征和防止过拟合方面有独特优势。在实际数据中,存在大量的类别型特征,如性别、颜色、类别等,传统的算法通常需要在预处理中对这些特征进行独热编码(One-Hot Encoding)或标签编码(Label Encoding)。但这些方法存在一些问题,独热编码会增加数据的维度,导致模型训练时间变长;标签编码可能会引入不必要的顺序关系,影响模型的准确性。CatBoost 采用了一种独特的处
2025-05-05 17:41:55
1077
原创 XGBoost算法原理及Python实现
XGBoost 在构建决策树时,利用了二阶导数信息。在损失函数的优化过程中,不仅考虑了一阶导数(梯度),还引入了二阶导数(海森矩阵),这使得算法能够更精确地找到损失函数的最优解,加速模型的收敛速度,同时提高模型的泛化能力。此外,XGBoost 还加入了正则化项,包括 L1 和 L2 正则化,用于控制模型的复杂度,防止过拟合。
2025-05-04 16:18:23
1083
原创 AdaBoost算法的原理及Python实现
AdaBoost(Adaptive Boosting,自适应提升)是一种迭代式的集成学习算法,通过不断调整样本权重,提升弱学习器性能,最终集成为一个强学习器。它继承了 Boosting 的基本思想和关键机制,但在具体的实现中有着显著特点,成为具有一定特定性能和适用场景的集成学习算法。
2025-04-30 19:11:24
864
原创 GBDT算法原理及Python实现
GBDT(Gradient Boosting Decision Tree,梯度提升决策树)是集成学习中提升(Boosting)方法的典型代表。它以决策树(通常是 CART 树,即分类回归树)作为弱学习器,通过迭代的方式,不断拟合残差(回归任务)或负梯度(分类任务),逐步构建一系列决策树,最终将这些树的预测结果进行累加,得到最终的预测值。
2025-04-29 20:55:44
747
原创 Bagging、Boosting、Stacking的原理
Bagging、Boosting、Stacking是常见集成学习的形式,它们都是通过对多个学习器进行有机组合,达到比单个学习器性能更好的目标。
2025-04-27 14:23:12
1139
原创 感知机模型
感知机模型(Perceptron Model)也叫做神经元模型,设计灵感即来自于生物神经元的运行机制,依次完成信息接收、处理、输出的过程。当前大放异彩的各种人工神经网络模型即由一个个人工神经元构成,因此,本文介绍的感知机模型(神经元模型)就是各种神经网络模型的基本单元。
2024-09-06 11:53:49
1283
原创 逻辑回归模型
逻辑回归模型(Logistic Regression,LR),由名称上来看,似乎是一个专门用于解决回归问题的模型,事实上,该模型更多地用于解决分类问题,尤其是二分类问题。这并不矛盾,因为逻辑回归直接输出的是一个连续值,我们将其按值的大小进行切分,不足一定范围的作为一个类别,超过一定范围的作为一个类别,这样就实现了对分类问题的解决。概况来说就是,先对数据以线性回归进行拟合,输出值以Sigmoid函数进行映射,映射到0和1之间,最后将S曲线切分上下两个区间作为类别区分的依据。
2024-09-05 22:28:45
1107
原创 分类模型的算法性能评价
分类模型是机器学习中一种最常见的问题模型,在许多问题场景中有着广泛的运用,是模式识别问题中一种主要的实现手段。分类问题概况起来就是,对一堆高度抽象了的样本,由经验标定了每个样本所属的实际类别,由特定算法训练得到一个分类器,输入样本属性即自动计算出其所属类别,从而完成特定的识别任务。在特定问题中,算法性能的评价是一个重要的方面,它一般由学习器在测试数据中的性能表现来直接衡定,常见的评价指标有准确率、精准度(查准率)、召回率(查全率)、F1值、ROC-AUC值、Kappa系数等。
2024-07-09 15:31:58
1189
原创 AttributeError: module ‘backend_interagg‘ has no attribute ‘FigureCanvas‘. Did you mean: ‘FigureCanv
matplotlib切换图形界面显示终端为TkAgg。多是由环境的兼容性导致。
2024-07-08 17:22:21
268
原创 聚类模型的算法性能评价
作为机器学习领域的重要内容之一,聚类模型在许多方面能够发挥举足轻重的作用。所谓聚类,就是通过一定的技术方法将一堆数据样本依照其特性划分为不同的簇类,使得同一个簇内的样本有着更相近的属性。依不同的实现策略,聚类算法有很多种,如基于距离的k-means、基于密度的DBSCAN等。在聚类完成之后,其性能的评估是一个不可规避的问题,常见的评估方法依有无事先的标记性信息分为外部评估法和内部评估法。
2024-06-27 17:45:24
1505
1
原创 回归模型的算法性能评价
在一般形式的回归问题中,会得到系列的预测值,它们与真实值(ground truth)的比较表征了模型的预测能力,为有效量化这种能力,常见的性能评价指标有可解释方差(EVS)、平均绝对误差(MAE)、均方误差(MSE)、均方根误差(RMSE)、决定系数(R2)等。值得一提的是,回归问题分单输出情形和多输出情形,在多输出情形下,可以对各维度结果进行平均计算或以不同的权重进行计算。
2024-06-05 16:47:53
1137
原创 Python缺失值处理实现
在数据处理相关工作中,读取的数据中常常会有缺失值的情况,为顺利进行后续的操作,需要首先对缺失值进行处理,处理的方式一般为**删除**或**填充**,Python中提供了专门的工具包,可以方便地进行实现。读取操作可以由pandas模块实现,通常直接读一个excel或csv文件,创建为DataFrame对象,模块中的dropna方法和fillna方法可以实现对缺失值的删除和填充。
2023-11-28 23:32:41
2042
原创 三种常见的平滑滤波方法
均值滤波、中值滤波、高斯滤波是三种常见的平滑滤波方法,其中均值滤波和高斯滤波是线性技术,中值滤波是非线性技术。它们实现的基本原理是基本一致的,指定一个滑动窗口,计算其中的均值、中值、卷积值输出到当前位置。均值滤波、高斯滤波对高斯噪声表现较好,但对椒盐噪声表现较差;中值滤波则对椒盐噪声表现较好,对高斯噪声表现较差。
2023-08-10 00:44:51
10038
1
原创 DBSCAN聚类
DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是一种基于密度的聚类算法,簇集的划定完全由样本的聚集程度决定。聚集程度不足以构成簇落的那些样本视为噪声点,因此DBSCAN聚类的方式也可以用于异常点的检测。
2023-08-05 18:36:49
544
原创 常见距离计算的Python实现
常见的距离有曼哈顿距离、欧式距离、切比雪夫距离、闵可夫斯基距离、汉明距离、余弦距离等,用Python实现计算的方式有多种,可以直接构造公式计算,也可以利用内置线性代数函数计算,还可以利用scipy库计算。
2023-08-02 23:20:15
3866
原创 Python实现字符串模糊匹配
在一个字符串中,有时需对其中某些内容进行模糊匹配以实现条件的判定,如在“你好,hello,world”中判断是否含有“llo”。Python中通过re.search()方法实现,特别地,对于首位起始的内容匹配,也可通过re.match()方法实现。若匹配成功,它们返回一个re.Match对象;若匹配失败,返回None。
2023-04-15 19:55:28
3852
原创 k-means聚类
当前人工智能技术实现的一种主要手段是机器学习,而机器学习能够解决的问题主要有三种:分类、聚类、回归,有监督的是分类,无监督的是聚类。所谓聚类,就是以一定的方法将一堆样本依它们本身的数据特性划分成不同的簇类,以达成不同的技术目的,k-means就是这样一种基础聚类算法。
2023-01-30 18:39:27
1200
原创 kNN分类
kNN(k nearest neighbor,k近邻)是一种基础分类算法,基于“物以类聚”的思想,将一个样本的类别归于它的邻近样本。
2023-01-07 18:24:00
1265
原创 基于准则匹配的图像对准
在图像处理相关的问题中,图像对准是一类典型的问题,也就是要将两幅图严丝合缝地对应起来。通常来讲,两幅图大小不一,一个是模板,一个是母图,也就是要在母图中搜寻定位到与模板图最为接近的区域。
2023-01-02 11:22:30
1192
2
原创 Matlab打印运行进度
在运行matlab程序的过程中,有时候需要实时地掌握程序运行的进度,尤其对于一些耗时较长的循环操作,能够及时地输出运行进度,显得非常有必要。
2022-07-15 21:53:24
1877
原创 MATLAB更改初始工作路径
matlab每次启动时,会默认进入指定的工作路径,这个初始路径是可以自行设定的,方式如下。方式一:主页 -> 预设 -> MATLAB -> 常规,指定初始工作文件夹。方式二:MATLAB启动时会自动地执行toolbox\local\matlabrc.m这个文件,因此只需要s1.打开该文件 edit matlabrc.m;s2.在该文件的最后一行加入一条语句:cd ‘(想进入的路径)’,保存。...
2022-03-20 14:40:20
3476
原创 Java中将jsonArray导出为Excel
java中使用jxl导出excel时,需指定WritableSheet对象中对应于每个单元格的数据。List类型是一种常用的数据类型,它里面的元素是实体对象,当将它创建为WritableSheet对象时,它的每个实体元素可以通过简单索引循环的形式遍历到,但对实体每个属性的遍历,却不能以简单索引循环的形式实现,而只能用getter方法去逐一获取,这样,对不同的实体,均需特定的实现代码与之对应,势必会造成大量的代码冗余。 一种有效的策略是,将List转化为jsonArray,把实体对象的属性名构
2021-11-27 13:18:04
1513
转载 flask中在js中如何解析render_template传递给html的数据
现象说明: 在flask中通常在使用render_template渲染一个.html页面文件时,可以传入一下参数,在html源码中通过{{变量名}}的方式来调用数据,但是假如在html文件中的JavaScript中想要调用该数据变量,直接调用可能出现识别为Undefined类型的情况。问题分析: 出现上述情况是因为:经常会有字符 空格 ' "" 等被转义成其他字符,这其实是特殊字符进行转义,防止js注入 在js中可以利用tojson解决。比如:数组 num = [“ni”
2021-11-23 14:03:28
1918
原创 python多线程的简单使用
from threading import Timerimport timedef run1(): print(1) print(2) print(3)def run2(): print("A") print("B") print("C")if __name__ == "__main__": t1 = Timer(1, run1) #新建一个Time线程,设定启动1秒后执行函数run1 t2 = Timer(0, run2) #.
2021-11-23 13:43:53
449
原创 java中double变量保留小数位数
public class Test { public static void main(String[] args) { double a = 12.123456789; String a_str = String.format("%.3f", a); //以字符串形式保留位数,此处保留3位小数 double a_1 = Double.parseDouble(a_str); //将字符串转回double类型 }}
2021-11-22 14:23:49
3694
原创 使用pmml跨平台部署机器学习模型Demo——房价预测
基于房价数据,在python中训练得到一个线性回归的模型,在JavaWeb中加载模型完成房价预测的功能。一、 训练、保存模型工具:PyCharm-2017、Python-39、sklearn2pmml-0.76.1。1.训练数据house_price.csvNosquare_feetprice11506450220074503250845043009450535011450640015450760018450
2021-11-21 12:08:14
1683
1
原创 使用pmml实现跨平台部署机器学习模型
一、概述 对于由Python训练的机器学习模型,通常有pickle和pmml两种部署方式,pickle方式用于在python环境中的部署,pmml方式用于跨平台(如Java环境)的部署,本文叙述的是pmml的跨平台部署方式。 PMML(Predictive Model Markup Language,预测模型标记语言)是一种基于XML描述来存储机器学习模型的标准语言。如,对在Python环境中由sklearn训练得到的模型,通过sklearn2pmml模块可将它完整地保存为一个pmml格式的文件,再
2021-11-20 19:02:12
4807
4
原创 解决PMML namespace URI httpwww.dmg.orgPMML-4_4 is not supported
使用pmml的方式跨平台部署机器学习模型时,在java中加载模型,出现了该错误原因:java的jar包版本与PMML文件的版本不相符,jar包的版本过低无法解析PMML文件。如果升级jar包,加载模型的当前语法不可用;因此,降低PMML文件的版本号是安全可靠的。解决:将pmml文件中xmlns="…/PMML-4_4"改为xmlns="…/PMML-4_3"再运行,成功。参考https://blog.csdn.net/qq_32113189/article/details/107542
2021-11-18 21:06:20
1914
原创 html5柱状图示例
<!DOCTYPE html><html lang="en"><canvas id="canvas1" width="1000" height="300"></canvas><script> (function () { window.addEventListener("load", func1(),func2(), false); })(); function func1() {
2021-11-04 11:34:51
828
【数据分析与处理】基于主成分分析(PCA)的数据降维方法详解
2025-05-08
机器学习LightGBM算法原理详解与Python实现
2025-05-06
机器学习CatBoost算法原理及其Python实现
2025-05-05
机器学习XGBoost算法原理详解及Python实现
2025-05-04
机器学习AdaBoost算法原理与Python实现:集成学习中提升弱学习器性能的技术详解及应用实例
2025-04-30
机器学习GBDT算法原理详解及Python实现:涵盖梯度下降与决策树构建全过程
2025-04-29
机器学习集成学习中Bagging、Boosting、Stacking算法原理及应用:提升模型性能的关键技术解析
2025-04-26
聚类模型的算法性能评价
2024-06-27
kNN算法原理与python实现 博客地址:https://blog.csdn.net/Albert201605?type=bl
2023-01-07
SAD+MAD+SSD+MSD+NCC算法matlab实现代码
2022-12-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人