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

电商平台网站开发过程是什么网站建设开发软件有哪些方面

电商平台网站开发过程是什么,网站建设开发软件有哪些方面,蜜雪冰城网页设计素材,移动网站建设机构目录 matlab代码kmeans matlab代码kmeans MNIST DATABASE下载网址: http://yann.lecun.com/exdb/mnist/ 聚类 将物理或抽象对象的集合分成由类似特征组成的多个类的过程称为聚类(clustering)。 对于给定N个n维向量x1#xff0c;…#xff0c;xN∈Rn#xff0c;聚类的目标…目录 matlab代码kmeans matlab代码kmeans MNIST DATABASE下载网址: http://yann.lecun.com/exdb/mnist/ 聚类 将物理或抽象对象的集合分成由类似特征组成的多个类的过程称为聚类(clustering)。 对于给定N个n维向量x1…xN∈Rn聚类的目标就是将这N个n维向量分成k个集合尽量使得同一个集合中的向量彼此接近如图2所示。 图2 聚类示意效果图 K-means聚类算法迭代过程 首先初始化聚类中心如图3所示。 图3 k-means初始聚类中心 然后计算每个点到k个聚类中心的聚类并将其分配到最近的聚类中心所在的聚类中重新计算每个聚类现在的质心并以其作为新的聚类中心如图4所示。 图4 k-means迭代1次 重复迭代直到达到给定的迭代次数或k个聚类中心的变化值小于某个阈值形成最终的聚类结果如图5所示。 图5 k-means最终聚类效果 K均值聚类算法的复杂度分析 初始化选择K个初始聚类中心。这个步骤的时间复杂度为O(K)。 分配对每个样本点计算其与每个聚类中心的距离并将其分配到距离最近的聚类中心所代表的簇。这个步骤的时间复杂度为O(N * K * d)其中N是样本数d是特征数。 更新对每个簇计算其所有样本点的平均值作为新的聚类中心。这个步骤的时间复杂度为O(N * K * d)。 重复执行第2和第3步直到满足停止条件例如达到最大迭代次数或聚类中心变化小于一定阈值。 因此K均值聚类算法的总体时间复杂度主要由分配和更新两个步骤决定为O(T * N * K * d)其中T是迭代次数。 K-means手写数字聚类 用kmeas聚类算法对train_images.mat的前100张和前1000张手写数字图像进行聚类重复测试10次每次测试的正确率如图6所示其中100张的平均正确率为59%最高正确率为66%平均运行时间为0.1秒1000张的平均正确率为55%最高正确率为62%平均运行时间为3.6秒。 图6 K-means聚类结果 再对train_images.mat的前100张、500张、1000张、2000张和4000张手写数字图像进行聚类每种图像张数重复测试10次计算平均正确率和平均运行时间结果如表1所示。 表1 K-means聚类测试 由表1可知K-means手写数字聚类在图像数目达到4000张的时候运行时间达到了41秒而且平均正确率为60%左右。 K-means性能分析 由结果可以很明显地看出K-means聚类应用在手写数字上的效果并不是很好平均正确率只有60%左右其中有几个原因。一是K-means假设各个簇的大小、形状和密度相似如果数据集中的簇具有类似的分布特征K-means能够产生较好的聚类结果而手写数字数据集的数字并不是均匀分布的不同的数字可能出现频率不同而且手写数字的形状有的区别不大二是K-means在处理高维数据时可能会遇到困难因为高维空间下的距离计算和聚类结果评估会变得复杂而实验中手写数字的维度达到了784。 K-means K-means聚类算法的一大缺点是初始类别中心的选择对聚类迭代的次数影响很大而K-means是想通过选择更好初始类别中心来减少K-means聚类的迭代次数。 那么什么样的初始类别中心是更好的呢 好的初始类别中心应该能够均匀地覆盖整个数据空间能够代表数据集中的不同特征。 K-means算法流程 从数据点中随机选择一个点作为第一个聚类中心。对于每个数据点计算它与当前已选择的聚类中心的距离选择与已选择的聚类中心距离最大的数据点作为下一个聚类中心。重复步骤②直到选择出k个初始聚类中心。 K-means手写数字聚类 用kmeas聚类算法对train_images.mat的前100张和前1000张手写数字图像进行聚类重复测试10次每次测试的正确率如图7所示其中100张的平均正确率为58%最高正确率达到了63%平均运行时间为0.03秒1000张的平均正确率为57%最高正确率为61%平均运行时间为0.76秒。 图7 K-means聚类结果 我们再对train_images.mat的前100张、1000张、2000张、4000张和8000张手写数字图像进行聚类每种图像张数重复测试10次计算平均正确率和平均运行时间结果如表2所示。 表2 K-means聚类测试 由表2可知K-means手写数字聚类在图像数目达到8000张的时候运行时间达到了15秒而且平均正确率均高于50%。 K-means性能分析 由结果可以很明显地看出相比K-means的聚类结果K-means的正确率差别不大基本上也是在60%左右但是程序运行时间极大的减少了这说明K-means的优化即选择更好的初始类别中心可以大大的减少算法迭代的过程迅速聚类。 但是由于K-means只是为K-means聚类选择更好的初始化中心这只是减少了聚类的迭代次数并不能解决K-means聚类手写数字效果不好的问题。 matlab代码kmeans clc,clear; load ./train_images.mat; load ./train_labels.mat; k10; dimension2; Dimension28*28; picturesNumber1000; sampletrain_images(:,:,1:picturesNumber); samplereshape(sample,28*28,picturesNumber); samplesample; classzeros(1,picturesNumber); times[]; ratios[]; for time1:10tic;classCentersample(randperm(picturesNumber,k),:); % 随机取点iterator0;while(true)iteratoriterator1;nextCenterzeros(k,Dimension);classNumberzeros(1,k);for i1:picturesNumberdistanceszeros(1,k);for j1:kdistances(j)pdist2(sample(i,:),classCenter(j,:));end[~,index]sort(distances);class(i)index(1);classNumber(class(i))classNumber(class(i))1;nextCenter(class(i),:)nextCenter(class(i),:)sample(i,:);endtempclassCenter;for i1:kif classNumber(i)~0classCenter(i,:)nextCenter(i,:)/classNumber(i);endendif tempclassCenterbreakendendmapcontainers.Map(KeyType,int32,ValueType,int32);for i1:knumber[];for j1:picturesNumberif class(j)inumber[number,train_labels(j)];endendmap(i)mode(number);endcount0;for i1:picturesNumberif map(class(i))train_labels(i)countcount1;endendratiocount/picturesNumber;ratios[ratios,ratio];times[times,toc]; end matlab代码kmeans clc; clear; load ./train_images.mat; load ./train_labels.mat; k 10; dimension 2; Dimension 28 * 28; picturesNumber 100; sample train_images(:, :, 1:picturesNumber); sample reshape(sample, 28 * 28, picturesNumber); sample sample; class zeros(1, picturesNumber); times []; ratios []; for time 1:10tic;% K-Means initial center selectionclassCenter zeros(k, Dimension);classCenter(1, :) sample(randi(picturesNumber), :);for j 2:kdistances pdist2(sample, classCenter(1:j-1, :));minDistances min(distances, [], 2); % 为什么挑最近的呢因为是挑离所有已选中心最远的[~, index] max(minDistances);classCenter(j, :) sample(index, :);enditerator 0;while (true)iterator iterator 1;nextCenter zeros(k, Dimension);classNumber zeros(1, k);for i 1:picturesNumberdistances pdist2(sample(i, :), classCenter);[~, index] min(distances);class(i) index;classNumber(class(i)) classNumber(class(i)) 1;nextCenter(class(i), :) nextCenter(class(i), :) sample(i, :);endtemp classCenter;for i 1:kif classNumber(i) ~ 0classCenter(i, :) nextCenter(i, :) / classNumber(i);endendif isequal(temp, classCenter)break;endendmap containers.Map(KeyType, int32, ValueType, int32);for i 1:knumber [];for j 1:picturesNumberif class(j) inumber [number, train_labels(j)];endendmap(i) mode(number);endcount 0;for i 1:picturesNumberif map(class(i)) train_labels(i)count count 1;endendratio count / picturesNumber;ratios [ratios, ratio];times [times, toc]; end
http://www.pierceye.com/news/334467/

相关文章:

  • 网站建设目标文档鄂州网站制作哪家好
  • 廉政建设网站微信运营
  • 什么样的网站结构适合做seo北京互联网建站网站
  • 工程科技 网站设计广东做seo的公司
  • 外贸都是在哪些网站做怎么做个手机版的网站
  • 北京社保网站做社保增减员锦绣大地seo官网
  • 分析影响网站排名的因素河南省住房和城乡建设厅网站文件
  • 宁城网站建设公司引流最好的推广方法
  • 辽宁省建设厅官方网站网站免费正能量直接进入浏览器下载安装
  • 怎么给公司建网站广州互联网营销师培训
  • 用阿里云做网站注意事项绵阳的网站建设公司哪家好
  • 电商网站设计工作内容深圳国际设计学院
  • 国内界面优秀的网站科技有限公司名字叫什么好
  • 网站底部悬浮代码搭建网站的主要风险
  • 长安网站建设公司常做网站首页的文件名
  • 学网站开发的能找什么工作赣州网站设计较好的公司
  • 网站建设接单微信营销软件收费排行榜
  • 佛山网站建设公司排名佛山微网站推广哪家专业
  • 招商网站建设网设备 光速东莞网站建设
  • 网站建设公司如何wordpress用多大主机
  • 东莞网站建设规范网页美工设计(第2版)素材
  • 论文 网站建设值得推荐的深圳app外包公司
  • 建网站的电脑可以换位置吗莆田建站培训
  • 外贸必看网站离职模板网
  • 内网网站建设正能量不良网站软件下载
  • 制作手机广告的网站吉林省建设厅网站评职称系统
  • 云南建设厅网站资质证书查询自动生成app
  • 柳州正规网站制作公司大连建设厅网站
  • 北京市保障房建设投资中心网站瘫痪广州大型网站建设公司排名
  • 做电池网站的引导页室内设计联盟效果图