京公网安备 11010802034615号
经营许可证编号:京B2-20210330
简单易学的机器学习算法—Rosenblatt感知机的对偶解法
一、Rosenblatt感知机回顾
在博文“简单易学的机器学习算法——Rosenblatt感知机”中介绍了Rosenblatt感知机的基本概念。Rosenblatt感知机是针对线性可分问题的二分类算法。通过构造分离超平面将正类和负类区分开。构造了如下的输入空间到输出空间的函数:

其中,w为权重,b为偏置。
为符号函数:

求解这个函数的重点就是求解函数中的参数:和。Rosenblatt感知机通过构造损失函数,并求得使得这样的损失函数达到最小时的w和b。
其中,
为:
这里的为所有误分类的点的集合。我们的目标是求得损失函数的最小值:。
通过梯度下降法(详细请见“简单易学的机器学习算法——Rosenblatt感知机”),我们得到了w和b的更新公式:

其中,
为学习率。
二、Rosenblatt感知机的对偶形式
对偶形式的基本想法是,将w和b表示为实例
的线性组合的形式,通过求解其系数而求得
。
通过上面的
的更新公式,我们发现,
是一个累加的过程。如果令
,则
可以表示为:
其中,
。
此时的感知机模型就变为:
三、算法流程
初始化,
选择误分类数据点,即
,更新a和b

直到没有误分类的点,否则重复步骤2
计算出
四、实验的仿真
利用博文“简单易学的机器学习算法——Rosenblatt感知机”中的数据集,原始数据集如下图所示:

(原始数据点)
MATLAB代码
[plain] view plain copy 在CODE上查看代码片派生到我的代码片
%% Rosenblatt感知机的对偶解法
clear all;
clc;
%读入数据
x=[3,3;4,3;1,1];
y=[1;1;-1];
[m,n] = size(x);%取得数据集的大小
%% 画出原始的点
hold on
axis([0 5 0 5]);%axis一般用来设置axes的样式,包括坐标轴范围,可读比例等
for i = 1:m
plot(x(i,1),x(i,2),'.');
end
%% 初始化
alpha = zeros(1,m);
b = 0;
yita = 1;%学习率
gram = zeros(m,m);
%% 计算Gram矩阵
for i = 1:m
for j = 1:m
gram(i,j)=x(i,:)*x(j,:)';
end
end
%% 更新
for i = 1:m
tmp = 0;
for j = 1:m
tmp = tmp + alpha(j)*y(j)*gram(i,j);
end
tmp = tmp + b;
tmp = y(i)*tmp;
if tmp <= 0
alpha(i) = alpha(i)+yita;
b = b + y(i);
end
end
% 要使得数据集中没有误分类的点
flag = 0;%标志位,用于标记有没有误分类的点
i = 1;
while flag~=1
while i <= 3
tmp = 0;
for j = 1:m
tmp = tmp + alpha(j)*y(j)*gram(i,j);
end
tmp = tmp + b;
tmp = y(i)*tmp;
if tmp <= 0
alpha(i) = alpha(i)+yita;
b = b + y(i);
i = 1;%重置i
break;
else
i = i+1;
end
if i == 4
flag = 1;
end
end
end
%% 重新计算w和b
for i = 1:m
x_new(i,:) = x(i,:) * y(i);
end
w = alpha * x_new;
%% 画出分隔线
x_1 = (0:3);
y_1 = (-b-w(1,1)*x_1)./w(1,2);
plot(x_1,y_1);
最终的分离超平面:

(最终分离超平面)
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在机器学习建模体系中,随机森林作为集成学习的经典算法,凭借高精度、抗过拟合、适配多场景、可解释性强的核心优势,成为分类、 ...
2026-03-12在机器学习建模过程中,“哪些特征对预测结果影响最大?”“如何筛选核心特征、剔除冗余信息?”是从业者最常面临的核心问题。随 ...
2026-03-12在数字化转型深度渗透的今天,企业管理已从“经验驱动”全面转向“数据驱动”,数据思维成为企业高质量发展的核心竞争力,而CDA ...
2026-03-12在数字经济飞速发展的今天,数据分析已从“辅助工具”升级为“核心竞争力”,渗透到商业、科技、民生、金融等各个领域。无论是全 ...
2026-03-11上市公司财务报表是反映企业经营状况、盈利能力、偿债能力的核心数据载体,是投资者决策、研究者分析、从业者复盘的重要依据。16 ...
2026-03-11数字化浪潮下,数据已成为企业生存发展的核心资产,而数据思维,正是CDA(Certified Data Analyst)数据分析师解锁数据价值、赋 ...
2026-03-11线性回归是数据分析中最常用的预测与关联分析方法,广泛应用于销售额预测、风险评估、趋势分析等场景(如前文销售额预测中的多元 ...
2026-03-10在SQL Server安装与配置的实操中,“服务名无效”是最令初学者头疼的高频问题之一。无论是在命令行执行net start启动服务、通过S ...
2026-03-10在数据驱动业务的当下,CDA(Certified Data Analyst)数据分析师的核心价值,不仅在于解读数据,更在于搭建一套科学、可落地的 ...
2026-03-10在企业经营决策中,销售额预测是核心环节之一——无论是库存备货、营销预算制定、产能规划,还是战略布局,都需要基于精准的销售 ...
2026-03-09金融数据分析的核心价值,是通过挖掘数据规律、识别风险、捕捉机会,为投资决策、风险控制、业务优化提供精准支撑——而这一切的 ...
2026-03-09在数据驱动决策的时代,CDA(Certified Data Analyst)数据分析师的核心工作,是通过数据解读业务、支撑决策,而指标与指标体系 ...
2026-03-09在数据处理的全流程中,数据呈现与数据分析是两个紧密关联却截然不同的核心环节。无论是科研数据整理、企业业务复盘,还是日常数 ...
2026-03-06在数据分析、数据预处理场景中,dat文件是一种常见的二进制或文本格式数据文件,广泛应用于科研数据、工程数据、传感器数据等领 ...
2026-03-06在数据驱动决策的时代,CDA(Certified Data Analyst)数据分析师的核心价值,早已超越单纯的数据清洗与统计分析,而是通过数据 ...
2026-03-06在教学管理、培训数据统计、课程体系搭建等场景中,经常需要对课时数据进行排序并实现累加计算——比如,按课程章节排序,累加各 ...
2026-03-05在数据分析场景中,环比是衡量数据短期波动的核心指标——它通过对比“当前周期与上一个相邻周期”的数据,直观反映指标的月度、 ...
2026-03-05数据治理是数字化时代企业实现数据价值最大化的核心前提,而CDA(Certified Data Analyst)数据分析师作为数据全生命周期的核心 ...
2026-03-05在实验检测、质量控制、科研验证等场景中,“方法验证”是确保检测/分析结果可靠、可复用的核心环节——无论是新开发的检测方法 ...
2026-03-04在数据分析、科研实验、办公统计等场景中,我们常常需要对比两组数据的整体差异——比如两种营销策略的销售额差异、两种实验方案 ...
2026-03-04