Deeplearning Algorithms tutorial

谷歌的人工智能位于全球前列,在图像识别、语音识别、无人驾驶等技术上都已经落地。而百度实质意义上扛起了国内的人工智能的大旗,覆盖无人驾驶、智能助手、图像识别等许多层面。苹果业已开始全面拥抱机器学习,新产品进军家庭智能音箱并打造工作站级别Mac。另外,腾讯的深度学习平台Mariana已支持了微信语音识别的语音输入法、语音开放平台、长按语音消息转文本等产品,在微信图像识别中开始应用。全球前十大科技公司全部发力人工智能理论研究和应用的实现,虽然入门艰难,但是一旦入门,高手也就在你的不远处!

机器学习主要有三种方式:监督学习,无监督学习与半监督学习。

(1)监督学习:从给定的训练数据集中学习出一个函数,当新的数据输入时,可以根据函数预测相应的结果。监督学习的训练集要求是包括输入和输出,也就是特征和目标。训练集中的目标是有标注的。如今机器学习已固有的监督学习算法有可以进行分类的,例如贝叶斯分类,SVM,ID3,C4.5以及分类决策树,以及现在最火热的人工神经网络,例如BP神经网络,RBF神经网络,Hopfield神经网络、深度信念网络和卷积神经网络等。人工神经网络是模拟人大脑的思考方式来进行分析,在人工神经网络中有显层,隐层以及输出层,而每一层都会有神经元,神经元的状态或开启或关闭,这取决于大数据。同样监督机器学习算法也可以作回归,最常用便是逻辑回归。

(2)无监督学习:与有监督学习相比,无监督学习的训练集的类标号是未知的,并且要学习的类的个数或集合可能事先不知道。常见的无监督学习算法包括聚类和关联,例如K均值法、Apriori算法。

(3)半监督学习:介于监督学习和无监督学习之间,例如EM算法。

如今的机器学习领域主要的研究工作在三个方面进行:1)面向任务的研究,研究和分析改进一组预定任务的执行性能的学习系统;2)认知模型,研究人类学习过程并进行计算模拟;3)理论的分析,从理论的层面探索可能的算法和独立的应用领域算法。

BIRCH

1 算法摘要

利用层次方法的平衡迭代规约和聚类(Balanced Iterative Reducing and Clustering Using Hierarchies,BIRCH)算法是一种层次聚类算法,主要应用于对样本数据进行聚类。由于引入簇结构,能够客服一般聚类的不可伸缩性和扩展性,使得该聚类方法在大型数据库中取得良好的速度和伸缩性。

Birch算法既能对大规模数值数据进行聚类,又能够有效地处理离群点。Birch算法只需扫描一遍数据库就可以得到一个好的聚类效果,而且不需事先设定聚类个数,克服了K-Means算法需要预先设定聚类中心点个数的缺点。

BIRCH算法的特点: (1)试图用可用的资源生成最好的聚类结果;(2)采用多阶段聚类技术;(3)是一种增量的聚类方法,因为对每个数据点的聚类的决策是基于当前已经处理过的数据点,而不是基于全局的数据点;(4)只对球形的簇状结构能起到很好的作用。

2 算法原理 BIRCH聚类是通过聚类特征树(Cluster Feature-Tree)实现的,在一定程度上保存了对数据的压缩。通过引入聚类特征和聚类特征数来概括簇,这种簇结构使得该方法在大型数据库中取得好的速度和伸缩性,对对象的增量和动态聚类也非常的有效;由于Birch算法使用半径或直径的概念来控制簇的边界,比较适合球形的簇,如果簇不是球形的,则聚簇的效果将受到影响。

该算法在进行聚类时,一般包含两个步骤:(1)单遍扫描数据,建立一颗存放于内存的初始CF树;(2)采用某个选定的聚类算法对CF树的叶节点进行聚类,把稀疏的簇作为异常点删除而把稠密的簇合并为更大的簇。

相关应用

Brich算法已经在实际领域中得到广泛的应用,包括市场研究、模式识别、数据分析和图像处理。在商务中,可以用来发现不同的顾客群,刻画顾客的特征;在生物学中,能够用来推到动植物分类等。

优缺点

优点:节省内存空间,计算速度加快;可识别噪声点

缺点:结果依赖于数据点的插入顺序;对非球状的簇聚类效果不好;算法在计算过程中一旦中断,一切必须从头再来;算法的局部性导致有可能出现聚类效果欠佳。