面包类的教学方法

2024-08-28

面包类的教学方法(共4篇)

面包类的教学方法 篇1

一、聚类算法概述

聚类的模式通常为一个度量的向量, 其可认为是在多维空间中不重合的某个点。聚类分析就是在相似性的基础上, 使相似性更多的点聚合在一起成为一个聚类模式。

聚类的一般模型和聚类结果的表示聚类的目的就是将n个对象的集合0={O1, O2, …, On}划分成K个不相交的部分Cl, C2, …, CK, 称之为聚类块。

聚类的结果可以表示为一个nxk阶矩阵U= (uik) nxk, 其中

聚类常用的最短距离法最基本的概念即为距离最短的样本汇聚成一类, 如图1, 所以选取相应合理的阈值T, 当样本的最短距离D>T时, 样本归类的合并立即停止。类与类之间再通过其他方法处理。Kknik, ..., 3, 2, 1;, ..., 3, 2, 1, 1

在图像分割中, 首先把图像依据某些因素进行分类, 把各个点按照相似程度划分整个图像为各区域 (不重叠的类) 。在图像上, 我们可以用RGB彩色图像进行分割, 通过象素在RGB直角坐标系中的距离对图像进行分割。通过最短距离法对这些象素进行处理以至于进一步对各分类处理后的象素域进行处理。

通过三原色红、绿、蓝为坐标轴, 如图2。实现最短距离法的实施, 达到图像分割的目的。这里通过实际情况, 对类得域进行合理的定义, 降低计算步骤、提高处理效率, 得到更科学的图像分割结果。

二、模糊聚类算法

以前的聚类分析是一种硬划分, 常常是把识别对象严格划分到各个类中, 其各个类之间界限分明。但在实际的识别对象中很多是呈中性的, 它们对于2个甚至2个以上的类具有相同的距离。这就需要软划分的方法对这些对象进行处理。这就出现了模糊处理分析聚类的方法, 即模糊聚类分析。由于模糊聚类的处理方法具有更高的实用性和更合理的适应性, 模糊聚类逐渐成为主流方法。

模糊聚类主要是基于目标函数利用模式集的观测值X={x1, x2, …, xn}。Rs与原型特征值B={βi, 1≤i≤c}之间的距离构造一个目标函数, 通过优化非线性规划得出最佳的模糊聚类划分规则。

三、K-MEANS算法

k-means算法接受输入量k, 取各聚类 (k个聚类) 的均值获得一个“中心对象”, 使得同一聚类的相似度高, 不同聚类的相似度低。其过程是从样本整体中选择K个样本作为聚类的初始中心, 对于剩下的样本, 根据相似度或距离大小进行聚类, 再分析各聚类中心的相似度, 再对新聚类样本进行聚类, 周而复始这一过程, 直到标准函数开始收敛。这样所得出的聚类个体充分紧凑, 各聚类之间泾渭分明。产生类的大小相差不大, 且对于脏数据很敏感是其最重要的缺点。

在使用K-均值法时, 实际上并没有预先设定类的数目, 一般常使用随机抽取样本的方法来确定K值。在测定判别准则时, 首要依据仍然是“相似而聚, 相异而分”的准则对样品进行分割, 使聚类内相近聚类间差别较大。最后得出不同K值聚类中最优的类别数。

在K-均值算法中的初始点选取难度较大, 无法在样本中选取最合理的样本作为聚类处理的初始点。初始聚类处理中, 在每选取一样本重新计算均值后都要更新聚类中心, 没有有效的聚类方法, 增加了循环判断的次数。

四、两种方法的比较

K均值聚类:初始化敏感度高, 必须设置一个初始聚类的中心, 收敛速度快, 与数据集的结构密切相关, 但抗噪声能力弱, 表述比较复杂、运算量大。

模糊算法:对初始化敏感度低, 抗噪声能力强, 模糊类的划分简单、运算量小, 但收敛速度较慢, 与数据集的结构特征缺乏直接的联系。

五、总结

在现在的研究水平下, 想找出一种通用的技术或方法是很困难的。每一种算法都有其自身的优点和缺点, 有其特定的适用范围, 因此首先明确研究对象的性质是至关重要的, 这样在使用算法时才可以有的放矢。经典的算法虽然在应用上已被新的算法所取代, 但经典算法中的很多思想都具有相当重要的价值, 它们是新算法研究和提出的基础。

基于K均值分割算法改进算法, 是基于传统的图像分割方法研究的产物, 它是图像分割算法研究上的一大进步。传统的图像分割方法已经不能适用于现在的实际要求, 需要与先进的技术结合才能有所突破。但是在同时, 这种算法也1有着固有的缺点, 他们都是针对图像灰度数据进行聚类分割, 运算量随图像尺寸增大而增大。模糊算法 (例如模糊C) 在图像分割上有很的大改进, 但是在现有的理论基础上发展仍然不是很完善, 需要进一步的改良探索。

参考文献

[1]夏得深, 傅德胜.现代图像处理技术与应用[M].东南大学出版, 2001

[2]章毓晋, 图像工程 (中册) 图像处理[M].北京:清华大学出版社, 2006

[3]何清, 模糊聚类分析理论与应用研究进展[J].模糊系统与数学, 1998, 1 (22) :89-94

[4]周咏梅, 徐德智, 等.一种基于模糊C均值聚类的图像区域分割方法[J].广西师范大学学报, 2006, 12 (4) :203-204

[5]冷明伟, 陈晓云, 颜清.一种基于影响因子的快速K-均值算法[J].计算机应用, 2007, 27 (12) :3042-3044

模糊聚类的方法及应用 篇2

关键词:模式识别,隶属函数,隶属度,神经网络

模糊数学被很多人认为是解决很多人工智能问题,尤其是常识性问题最合适的数学工具。而将模糊技术应用于不同的领域就会产生一些新的学科分支。模糊模式识别一开始就是一个模糊技术应用和研究的活跃领域,人们对传统的模式识别中的一些方法利用模糊数学的方法进行了许多改进。模糊模式识别的方法是利用模糊数学中的基本概念,原理,方法解决分类识别问题。

模糊模式识别问题大致可分为两种:一种是模糊库是模糊的,而待识别对象是分明的;另一种是模糊库和待识别对象都是模糊的模式识别问题。

1 模糊聚类法

所谓聚类分析是指按一定的要求和规律将事物进行分类的一种数学方法,它在天气预报,地震预测,地质勘探,环境保护以及图像语言识别等领域有着广泛的应用,是模糊理论应用最广泛的领域之一。其基本思想是要把需要识别的事物与模板进行模糊比较,从而得到所属的类别。简单地说,模糊聚类事先不知道具体的分类类别,而模糊识别是在已知分类的情况下进行的。

1.1 模糊等价关系法

人们常常利用模糊等价关系(模糊矩阵)来进行模糊分类,若R为等价关系,则对于给定的λ∈[0,1]使可得到的普通等价关系Rλ,从而得到一个λ水平分类,若0≤λ≤μ≤1,则Rμ分的类是Rλ的某一类的子类,即Rμ的分类是Rλ的分类的加细。

1.2 传递闭包法

在很多应用中,模糊关系具有自反性和对称性,但不满足传递性,即仅是相似关系,此时可对模糊相似关系R进行改造,寻找一个包含R的传递闭包,将其转化为模糊等价关系,进而进行模式分类。这种方法称为传递闭包法。

根据标定所得的模糊相似矩阵,先求出传递闭包R,R为模糊等价矩阵,当λ从0到1取不同的值,即得截集矩阵Rλ,由于λ1刍λ2,所以,因而对任意对象元素(x1,x2),若(x1,x2),则Rλ2(x1,x2)∈Rλ1,即Rλ2(x1,x2)=1。

则Rλ1(x1,x2)=1.

1.3 最大树方法

由于利用模糊等价矩阵的聚类方法,因此,在n很大时,其工作量是成指数规律增加的,所以,此时可以应用在模糊相似矩阵上进行的聚类方法——最大树方法。

1.4 编网法

编网法实现了在R是、的a截矩阵所得到的布尔矩阵上直接进行聚类,此方法相对简单。

求出截矩阵,且空去布尔矩阵主对角线右上部分;将主对角线上的1对应的用其对象xi的标号i来代替;将剩下的0,1中的0去掉,拥*代替1;用竖线和横线将*与对角线上的序号连接,即编网,通过如此打结的对象连为一类。

1.5 模糊C均值法

在C均值法中,吧N个样本划分为C个子类,G1,G2,...,Gc,使得所有样本到聚类中心的距离平方和最小,即使准则函数

而模糊C均值算法设μj(xi)是第i个样本xi属于第j类Gj的隶属度。则聚类损失函数其中b>1是一个可以控制聚类结果的模糊程度常数。

2 模糊模式识别在自适应控制中的应用

一般的神经网络量化机制中,输入变量与个状态之间隶属关系都是简单的'0','1'关系,而将模糊模式识别的观念引入量化过程中,使得量化过程更加精确,以cmac网络来说,第一层将输入引入网络,第二层对对输入进行模糊量化,过程如下,对于输入(x1,x2…,xm)每个输入的区域上定义n个块(X1,X2,…,Xm),输入对于块的隶属关系采用高斯基函数关系,cj表示高斯隶属函数的中心值,σj表示高斯隶属函数的宽度。

假设第二层的第p个神经元是对第i个输入进行第j个块的模糊量化,则神经元的输入输出关系Op=Ip=μXj(xi),p=1,2,…,n,Op,Ip分别为第二层第P个神经元的输入输出。采用这种模糊化方法,即可克服CMAC的主要缺陷,即泛化能力与存储量之间的矛盾。

3 结束语

模糊聚类方法及其相关隶属度函数的确定方法是多种多样的,需要在实践中不断地学习,通过实践检验,利用信息反馈,不断进行调整,加以修改,使之逐步完善,从而达到优化算法,提高分类精确度的目的。

参考文献

[1]陈水利,李敬功.模糊及理论及其应用[M].科学出版社,2005.

[2]刘普寅,吴孟达.模糊理论及其应用[M].长沙国防科技大学出版社,1998.

[3]李程,邵美珍,黄洁.模式识别原理与应用[M].西安电子科技大学出版社,2008.

[4]边肇祺,张学工.模式识别[M].清华大学出版社,2007.

[5]吴士力.通俗模糊数学与程序设计[M].中国水利水电出版社,2008.

单链表类的正确定义方法剖析 篇3

线性表是一种最简单、最基本、也是最常用的数据结构之一。线性表的概念在操作系统和数据库系统中有着广泛的应用。线性表的存储表示有两种:顺序存储方式和链表存储方式。其中单链表是一种最简单的链表表示,也叫线性链表。用它来表示线性表时,用指针表示结点间的逻辑关系。因此我们常常单用两个域来表示单链表的一个结点。一个是存放该结点有用信息的data域,一个是存放下一个结点地址的next域。结点的结构如图1所示。

多个结点间通过next域连接成一个"链条",称之为链表。因此链表是由n (n 0) 个结点组成的有限系列。由于此链表的每个结点中只包含一个next域,故又被称为单链表。单链表的结构如图2所示。

其中head是一个指向单链表的第一个结点的指针,对单链表的所有操作都是通过head来进行的。由于单链表的最后一个元素没有直接后继,则单链表的最后的的next域为"空"(NULL)。

2、整体与部分的关系

用面向对象的语言来描述和实现数据结构中的各种逻辑结构是一种趋势。C++是现在的数据结构的描述和实现的流行工具。面向对象对一种逻辑结构的描述是通过类来实现的。通过上面的分析可知,要定义一个单链表需要链表的结点 (LinkNode) 类和单链表(LinkList)类来协同表示。一个单链表包含了零个或多个结点,也就是说一个类型为LinkList的对象包含零个或多个类型为LinkNode的对象。这种关系在面向对象方法中叫做整体与部分关系,或叫聚合关系。单链表类是整体,链表中的每一个结点是部分。对于整体来说,计算机要处理的是一个单链表类的对象,一个单链表对象是由n (n 0) 个结点类对象组成。根据面向对象的程序设计中的性质,要求我们在设计单链表类时使之能访问结点类的所有数据成员,也就是说对于单链表类来讲,结点类是透明的。因此要定义好单链表类的实质是要让单链表类的成员能直接访问结点类的所有成员,否则就不能正确地定义单链表类。

3、单链表类的定义方法

为了叙述的方便,设单链表中每一个结点中的数据域的类型为整型。根据两个类来表示一个单链表的聚合关系。可以有四种方法。

1、用继承的方法构造单链表类,这种方法比较特殊,把结点(LinkNode)类声明为基类,链表 (LinkList) 类声明为派生类,这样链表类继承了结点类的所有的数据成员和成员函数。为了使链表类能访问基类中的数据成员,应该将结点类的数据成员的访问权限定义为保护, 同时将链表类继承方式定义为公有。

2、用嵌套的方法构造单链表类

此方法中将结点(LinkNode)类的定义放在链表 (LinkList) 类的内部,由于把LinkNode类定义在LinkList的私有部分,这就保证了LinkList类外的代码不能直接访问LinkNode类的对象,同时LinkNode类的数据成员放在它的公有部分,使得LinkNode类和LinkList类的成员能直接访问它们。

3、复合的方法构造单链表类

结点(LinkNode)类和链表 (LinkList) 类之间既不存在继承,也不存在嵌套关系,它们是两个单独的类,为了达到让LinkLis类中成员都能访问LinkNode类中的成员,需要将LinkLis类声明为LinkNode类的友元类。

4、用结构的方法定义单链表类

这种方法中只有一个类,而结点的类型用一个含有两个成员的结构体类型来描述。结构体中的所有成员的访问权限都是公有的,剔除了类的封装性、简化了描述。由于在LinkList类中把头指针head封装在其内部,属于LinkNode类型的所有变量都成为LinkList对象的私有成员,从而保证了不被外界访问。

当在LinkList对象中使用了一个或多个LinkNode的对象或变量时,这些LinkNode的对象或变量为LinkList对象专用,只能通过LinkList对象的指针head才能访问它们。

4、小结

能否正确定义单链表类的实质是要让单链表类的成员能直接访问结点类的所有成员。上面的四种方法都能达到这种要求。由于在面向对象的程序设计中有代码重用的需要,为了使结点(LinkNode)类的代码能应用于其它类型的链表,采用复合的类型或用struct定义它可以提供很大的灵活性。

参考文献

基于聚类的响应时间分析方法 篇4

随着计算机以及互联网技术的普及,门户网站、即时通信软件、社交网络、电子商务等基于互联网的应用出现爆炸性增长,与之对应的终端用户也出现大规模增长。据第三方网络服务统计提供者Complete的报告,社交网络facebook在2011年3月的独立访问者达到1.4亿[1]。互联网技术应用安装部署的便利性和应用操作的简单易用性也使互联网技术应用于各类专业领域软件,如医疗卫生领域等。

软件测试是软件工程不可或缺的一个环节,是软件产品质量的重要保证[2]。在为大规模的终端用户提供网络服务时,服务质量逐渐成为终端用户选择互联网应用的决定性指标,而响应时间[3,4]是软件质量体系中用于衡量用户体验的最重要的指标之一。响应时间是指从用户发出计算机处理指令(请求)至软件系统响应指令(请求)并返回结果所需时间。聚类是指将物理或抽象对象的集合分成由类似的对象组成的多个类的过程。通过使用基于聚类的响应时间分析方法,有利于从量化数据出发,展示响应时间的分布情况,为软件质量分析提供更准确、更全面的参考数据。

1 技术现状

1.1 软件质量与响应时间

软件质量由内部质量、外部质量、使用质量三部分组成[5]。性能测试是对软件质量进行外部度量的一种重要评估方法。性能测试通过自动化的测试工具模拟多种软件运行场景来对被测软件的各项性能指标进行测试。性能测试输出结果通常包含并发用户数、事务吞吐量、响应时间等指标。性能是反映软件质量的重要指标,响应时间是评估软件性能的最具代表意义的重要指标之一。

1.2 响应时间获取与分析方法

在测试实践活动中一般可以通过性能测试来获取响应时间,包含录制(人工编写)脚本、回放、参数化、定制运行场景、执行场景五大步骤。响应时间所对应的事务一般在录制(人工编写)脚本阶段进行定义。定制测试场景环节主要对获取事务响应时间相关联的并发用户数、测试执行时间、加压模式等要素进行定义。

通过性能测试方式获取到目标事务响应时间的多次采样集,设为T。在对响应时间进行度量分析时,纵观软件工程相关国标、性能测试工具,基本采用原始值、平均值、最大值、最小值、标准差等基本指标进行分析。具体如表1所示。

表1中,Load Runner,对90% Percentage定义为:响应时间样本集中,90%的响应时间样本都小于等于的一个值;Silk Performer对Percentile Rank定义为:小于等于指定阈值的响应时间样本在样本集中所占的比例。

通过表1给出的分析方法,可通过平均值、90% Percentage、Percentile Rank等方法获取到一个简单量化的数值,用于快速判断系统性能是否达到设计指标要求。当需要进一步对系统的响应时间进行分析时,仅通过表1中给出的方法是无法对响应时间所代表的服务水平的分布情况进行评估的。

2 基于聚类的响应时间分析

2.1 应用背景

医学影像存档与通信系统PACS(Picture Archiving and Communication Systems)是近年来随着成像技术、计算机技术和网络技术的进步而迅速发展起来的、旨在全面解决医学图像的获取、显示、存储、传送和管理的综合系统[8]。

本文使用某医院的PACS/MIIS系统在相同测试场景下进行性能测试,测试的具体操作为使用WEB方式的DICOM浏览工具打开某病人的头部MR影像。该MR影像为1个影像序列,含50幅影像,每幅影像容量约为340kB。使用的测试工具为Load Runner V8.1。

2.2 响应时间分布

为对响应时间的分布情况进行分析,可先对响应时间样本集进行概率直方图分析。

采用上述测试场景进行MR影像打开的测试,建立分析所用的响应时间样本集A、B。样本集基本统计数据如表2所示。

根据表2,可得样本集A、B的最大值、最小值、平均值之间差异较大,且标准差较大,说明从测试工具获取的响应时间样本存在较大的离散性。为进一步对样本A、B进行分析,求得其直方分布,如图1、图2所示。

从响应时间样本集的直方分布图可以看出,图1、图2中响应时间较短的样本聚集性比较好,响应时间位于中间的样本分布区域较大,响应时间最长的部分样本数量最少。基于样本A、B的情况,为对响应时间的分布情况进行分析,可以先设定快速、一般、缓慢三个区域,假设所有响应时间的样本均位于三个区域中的一个,若可以通过某种计算方法明确、稳定地计算出任何一个响应时间样本值位于哪个区域,则可以通过计算以上三个区域中的样本值所占的百分比,使用户获得快速、一般、缓慢服务响应的概率,从而可以量化评估响应时间所代表的服务水平的分布情况。

2.3 响应时间的聚类分析

为计算响应时间样本在快速、一般、缓慢三个区域上的分布,本文使用定制的K-均值聚类算法[9],聚类目标为快速、一般、缓慢三个簇。

为进行K-均值聚类,响应时间样本采用二维坐标进行标识,记为:

Ti=(Xi,Yi) i=1,2,…,N (1)

其中,X为测试时间,Y为响应时间。K-均值聚类算法如下:

任意选择3个响应时间样本做为初始的簇中心

Repeat

计算每个响应时间样本至三个簇的中心的距离D

将响应时间样本划入距离最近的簇

重新计算三个簇的中心

Until簇中心不再发生变化

在以上算法中,定义响应时间样本Ti(Xi,Yi)至簇中心Oj(Xj,Yj)的距离为D:

D=|Yi-Yj| (2)

3 试验及分析

3.1 响应时间的聚类

对于样本集A,使用聚类分析方法进行分析,选择样本集中的(14.79,12.50)、(15.21,12.39)、(15.92,13.05)三个样本为聚类的初始簇中心,经过聚类后最终得到响应时间样本分布情况如表3所示。

即终端用户有69.4%(575/828)的可能性获得快速响应,24.4%(202/828)的可能性获得一般响应,6.2%(51/828)的可能性响应缓慢。

3.2 算法的优化

K-均值聚类算法是一个比较简洁和快速的聚类算法,但是2.3节的响应时间聚类算法中3个初始簇中心是随机选择的。由于随机性缺陷造成聚类的结果不是最优的,性能测试过程中的响应时间样本分布有缓慢的样本少,快速、一般的样本较多的特点,故可以按照以下步骤选定:

1) 将响应时间样本按照响应时间降序排列;

2) 选定响应时间的最小值、最大值两个样本为初始簇中心;

3) 选定排序后样本的中值作为最后一个初始簇中心。

根据以上初始簇中心的选择步骤,在对样本A进行聚类时,初始簇中心为(291.56,3.80)、(260.98,109.53)、(244.07,12.80),再对样本集A进行聚类分析,聚类结果如表4所示。

对比表3、表4,优化后的聚类方法在快速、一般两个区间段的样本数量所有增加,每个区段的平均值未见明显变化。缓慢区间的样本数有所减少,平均值有较大幅度增加,该区间的样本聚集性进一步得到了增强。

上述算法一般先用于对样本的快速分类,然后利用已得到的结果作进一步聚类分析。

4 结 语

在传统的响应时间分析方法基础上,采用基于聚类的响应时间分析方法,可对响应时间的分布进行量化分析,更符合用户体验,也为系统性能的调优提供了直观的参考数据。

参考文献

[1]Compete.facebook.com site statistics[OL].2011-04-10.http://siteanalytics.compete.com/facebook.com.

[2]肖良,杨根兴,蔡立志.软件测试用例可复用性度量[J].计算机应用与软件,2010,27(6):46-49,69.

[3]梁晟,李明树,梁金能.Web应用程序运行响应时间的实验研究[J].计算机研究与发展,2003,40(7):1076-1080.

[4]周元哲.基于web的软件测试工具的研发[J].电子科技,2010,23(5):36-37,41.

[5]GB/T16260-2006软件工程产品质量[S].

[6]Mercury LoadRunner.Analysis User's Guide(Version8.0)[OL].

[7]Segue SilkPerformer6.5online help[OL].

[8]张继武,张宇明,李红卫.基于DICOM标准的mini-PACS系统的设计与实现技术研究[J].计算机应用与软件,2005,22(4):47-49,139.

上一篇:编辑出版系统下一篇:舞蹈教学中的因材施教