当前位置: 首页 > news >正文

企查查网站客户评价网站建设

企查查网站,客户评价网站建设,团员电子档案查询网,网站建设维护的知识SVM分类器 1.命令函数部分: clear;%清屏 clc; X load(data.txt); n length(X);%总样本数量 y X(:,4);%类别标志 X X(:,1:3); TOL 0.0001;%精度要求 C 1;%参数,对损失函数的权重 b 0;%初始设置截距b Wold 0;%未更新a时的W(a) Wnew 0;%更新a后的…

SVM分类器

1.命令函数部分:

clear;%清屏
clc;
X =load('data.txt');
n = length(X);%总样本数量
y = X(:,4);%类别标志
X = X(:,1:3);
TOL = 0.0001;%精度要求
C = 1;%参数,对损失函数的权重
b = 0;%初始设置截距b
Wold = 0;%未更新a时的W(a)
Wnew = 0;%更新a后的W(a)
for i = 1 : 50%设置类别标志为1或者-1y(i) = -1;
end
a = zeros(n,1);%参数a
for i = 1 : n%随机初始化a,a属于[0,C]a(i) = 0.2;
end%为简化计算,减少重复计算进行的计算
K = ones(n,n);
for i = 1 :n%求出K矩阵,便于之后的计算for j = 1 : nK(i,j) = k(X(i,:),X(j,:));end
end
sum = zeros(n,1);%中间变量,便于之后的计算,sum(k)=sigma a(i)*y(i)*K(k,i);
for k = 1 : nfor i = 1 : nsum(k) = sum(k) + a(i) * y(i) * K(i,k);end
endwhile 1%迭代过程%启发式选点
n1 = 1;%初始化,n1,n2代表选择的2个点
n2 = 2;
%n1按照第一个违反KKT条件的点选择
while n1 <= nif y(n1) * (sum(n1) + b) == 1 && a(n1) >= C && a(n1) <=  0break;endif y(n1) * (sum(n1) + b) > 1 && a(n1) ~=  0break;endif y(n1) * (sum(n1) + b) < 1 && a(n1) ~=Cbreak;endn1 = n1 + 1;              
end
%n2按照最大化|E1-E2|的原则选取
E1 = 0;
E2 = 0;
maxDiff = 0;%假设的最大误差
E1 = sum(n1) + b - y(n1);%n1的误差
for i = 1 : ntempSum = sum(i) + b - y(i);if abs(E1 - tempSum)> maxDiffmaxDiff = abs(E1 - tempSum);n2 = i;E2 = tempSum;end
end%以下进行更新
a1old = a(n1);
a2old = a(n2);
KK = K(n1,n1) + K(n2,n2) - 2*K(n1,n2);
a2new = a2old + y(n2) *(E1 - E2) / KK;%计算新的a2
%a2必须满足约束条件
S = y(n1) * y(n2);
if S == -1U = max(0,a2old - a1old);V = min(C,C - a1old + a2old);
elseU = max(0,a1old + a2old - C);V = min(C,a1old + a2old);
end
if a2new > Va2new = V;
end
if a2new < Ua2new = U;
end
a1new = a1old + S * (a2old - a2new);%计算新的a1
a(n1) = a1new;%更新a
a(n2) = a2new;%更新部分值
sum = zeros(n,1);
for k = 1 : nfor i = 1 : nsum(k) = sum(k) + a(i) * y(i) * K(i,k);end
end
Wold = Wnew;
Wnew = 0;%更新a后的W(a)
tempSum = 0;%临时变量
for i = 1 : nfor j = 1 : ntempSum= tempSum + y(i )*y(j)*a(i)*a(j)*K(i,j);endWnew= Wnew+ a(i);
end
Wnew= Wnew - 0.5 * tempSum;
%以下更新b:通过找到某一个支持向量来计算
support = 1;%支持向量坐标初始化
while abs(a(support))< 1e-4 && support <= nsupport = support + 1;
end
b = 1 / y(support) - sum(support);
%判断停止条件
if abs(Wnew/ Wold - 1 ) <= TOLbreak;
end
end
%输出结果:包括原分类,辨别函数计算结果,svm分类结果
for i = 1 : nfprintf('第%d点:原标号 ',i);if i <= 50fprintf('-1');elsefprintf(' 1');endfprintf('    判别函数值%f      分类结果',sum(i) + b);if abs(sum(i) + b - 1) < 0.5fprintf('1\n');else if abs(sum(i) + b + 1) < 0.5fprintf('-1\n');elsefprintf('归类错误\n');endend
end

2.名为f的功能函数部分:
 

function y = k(x1,x2)y = exp(-0.5*norm(x1 - x2).^2);
end

K-means算法代码

function [Idx, Center] = K_means(X, xstart)
% K-means聚类
% Idx是数据点属于哪个类的标记,Center是每个类的中心位置
% X是全部二维数据点,xstart是类的初始中心位置len = length(X);        %X中的数据点个数
Idx = zeros(len, 1);    %每个数据点的Id,即属于哪个类C1 = xstart(1,:);       %第1类的中心位置
C2 = xstart(2,:);       %第2类的中心位置
C3 = xstart(3,:);       %第3类的中心位置for i_for = 1:100%为避免循环运行时间过长,通常设置一个循环次数%或相邻两次聚类中心位置调整幅度小于某阈值则停止%更新数据点属于哪个类for i = 1:lenx_temp = X(i,:);    %提取出单个数据点d1 = norm(x_temp - C1);    %与第1个类的距离d2 = norm(x_temp - C2);    %与第2个类的距离d3 = norm(x_temp - C3);    %与第3个类的距离d = [d1;d2;d3];[~, id] = min(d);   %离哪个类最近则属于那个类Idx(i) = id;end%更新类的中心位置L1 = X(Idx == 1,:);     %属于第1类的数据点L2 = X(Idx == 2,:);     %属于第2类的数据点L3 = X(Idx == 3,:);     %属于第3类的数据点C1 = mean(L1);      %更新第1类的中心位置C2 = mean(L2);      %更新第2类的中心位置C3 = mean(L3);      %更新第3类的中心位置
endCenter = [C1; C2; C3];  %类的中心位置%演示数据
%% 1 random sample
%随机生成三组数据
a = rand(30,2) * 2;
b = rand(30,2) * 5;
c = rand(30,2) * 10;
figure(1);
subplot(2,2,1); 
plot(a(:,1), a(:,2), 'r.'); hold on
plot(b(:,1), b(:,2), 'g*');
plot(c(:,1), c(:,2), 'bx'); hold off
grid on;
title('raw data');%% 2 K-means cluster
X = [a; b; c];  %需要聚类的数据点
xstart = [2 2; 5 5; 8 8];  %初始聚类中心
subplot(2,2,2);
plot(X(:,1), X(:,2), 'kx'); hold on
plot(xstart(:,1), xstart(:,2), 'r*'); hold off
grid on;
title('raw data center');[Idx, Center] = K_means(X, xstart);
subplot(2,2,4);
plot(X(Idx==1,1), X(Idx==1,2), 'kx'); hold on
plot(X(Idx==2,1), X(Idx==2,2), 'gx');
plot(X(Idx==3,1), X(Idx==3,2), 'bx');
plot(Center(:,1), Center(:,2), 'r*'); hold off
grid on;
title('K-means cluster result');disp('xstart = ');
disp(xstart);
disp('Center = ');
disp(Center);

http://www.yayakq.cn/news/99102/

相关文章:

  • 大型网站seo方案网络加盟
  • 北京网站备案拍照地址鼓楼如何注册公司邮箱帐号
  • 网站空间哪里便宜app专业定制开发
  • 网站域名怎么写wordpress wap
  • 淮南医院网站建设行业门户网站有哪些
  • 出口家具东莞网站建设学做网站要什么基础
  • 娄底网站建设wyo8娄底网站建设企业
  • 网站建设背景图片vr功能网站建设
  • 天猫网站左侧菜单向右滑出的导航菜单服装如何做微商城网站建设
  • 使用云主机做网站教程菏泽住房与城乡建设官网
  • 安徽合肥网站制作公司磁力屋torrentkitty
  • dkp网站开发成都app开发制作
  • 用电信固定IP做网站做网站上传照片的尺寸
  • phpcms 手机网站模板广西建设厅办事大厅网站
  • 怎样做优惠券网站网页设计制作网站素材
  • 做体育设施工程公司的网站原创软文
  • w3c网站怎么做50个最火的创业小项目
  • node.js 网站开发 公司 广州手机体验网站
  • 好的网站收入北京软件开发工作室
  • 做外围的都上什么网站找网站体验方案
  • WordPress 古腾堡开发怎么做谷歌seo
  • 青岛市黄岛区网站建设检查wordpress主题
  • 西宁网站系统建设阜新网站优化
  • 吉安好的网站建设公司返回json数据的网站
  • 枞阳美好乡村建设办公窒网站优秀网站建设价格
  • 够物网站空间100m够不够从广州回来需要隔离吗?
  • 花店网站建设方案建设网站需要懂什么
  • 华为公司网站建设分析评价高端网站建设文案
  • 苏州住房城乡建设部网站团队做网站的收获
  • 南昌购物网站制作公众号做网站