第7章无监督学习.pptxVIP

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7章 无监督学习;7.1 无监督学习简介;7.1.1 聚类模型 聚类的思想:对于未指定明确的分类的数据,通过其本身呈现出的集群的结构,使用若干个通常是不相交的子集对样本数据进行划分,每个子集称之为“簇”(Cluster)。通过这样的划分,每个簇可能对应着一些潜在的类别。 基于不同的学习策略,人们设计出了多种类型的聚类算法,主要包括原型聚类、密度聚类和层次聚类。 原型聚类算法:假设数据的聚类结构能通过一组原型进行刻画,然后对原型进行不断的迭代更新而获取到数据的聚集、分类。主要的原型聚类算法包括了k均值算法(k-means)、学习向量量化(LVQ)以及高斯混合聚类。 密度聚类算法:假设数据的聚类结构能通过样本分布的紧密程度确定。最著名的的密度聚类算法就是DBSCAN算法。 层次聚类算法:假设数据的聚类结构能够通过数据的分层来进行确定。最著名的层次聚类算法就是AGNES算法。 ;7.1.2 自编码网络模型 自编码网络:利用信息论中对信息进行“编码-解码”原理。通过对信息进行“编码-解码”,可以对原信息进行恢复重建,而且编码后的信息虽然在形式上与原信息不同,但有效地保留了原信息的内容。 在自编码网络模型中,一般都通过构建多层神经网络来实现。将原信息作为神经网络模型的输入,通过神经网络中间层的处理对原信息进行“编码-解码”过程,形成神经网络的输出。 ;7.2 K均值聚类;7.2.2 K均值实践 使用K均值算法来对MNIST的训练集中图片进行类型标注,最后与训练集中的正确标签进行对比。 1.加载数据 加载数据时,我们在无监督学习中,进行训练的样本仅仅是MNIST训练集中的图片数据,而不使用MINST训练集中的标识数据。 mnist = input_data.read_data_sets(‘data/’, one_hot=True) X=mnist.train.images ;7.2.2 K均值实践 2.实现K均值算法 K均值算法是一个循环迭代的过程,重点注意的是明确K值、初始质心、计算距离、更新质心: K值:最终样本数据的分类数量。MNIST数据的分类值为10。 初始质心:在样本数据的边界内通过随机选取: start_pos = tf.Variable(X[np.random.randint(X.shape[0], size=k),:], dtype=tf.float32) centroids = tf.Variable(start_pos.initialized_value(), S, dtype=tf.float32) 簇分配:对于每个点计算该点到所有簇心的距离,然后使用tf.argmin()方法获取距离最小的簇心作为该点所有区域的簇心,划分到该簇。 更新质心:完成簇的划分后,对于该簇能所有的样本数据使用方法求和、求平均值,获得簇的新质心。 tf.unsorted_segment_sum();3.数据训练 使用参数的数据进行训练,并输入其结果 4.评估模型 使用K均值训练后,样本数据被划分到了10个簇中。对每一个簇内数据,我们获取其对应的正确标记,统计每一个簇内数据正确标识前三的情况。 ;7.3 自编码网络;7.3 自编码网络;7.3.2 自编码网络实践 使用自编码神经网络来对MNIST的训练集中图片进行类型标注。 1.加载数据 加载数据时,我们在无监督学习中,进行训练的样本仅仅是MNIST训练集中的图片数据,而不使用MINST训练集中的标识数据。 mnist = input_data.read_data_sets(‘data/’, one_hot=True) X=mnist.train.images ;7.3.2 自编码网络实践 2.自编码网络构建 通过隐藏层1和隐藏层2对输入数据进行编码和解码: #编码函数 def encoder(x): layer1=tf.nn.sigmoid(tf.add(tf.matmul(x,weights[‘encoder_h1’]),biases[‘encoder_b1’])) layer2=tf.nn.sigmoid(tf.add(tf.matmul(layer1,weights[‘encoder_h2’]),biases[‘encoder_b2’])) return layer2 #解码函数 def decoder(x): layer1=tf.nn.sigmoid(tf.add(tf.matmul(x,weights[‘decoder_h1’]),biases[‘decoder_b1’])) layer2=tf.nn.sigmoid(tf.add(tf.matmul(layer1,weights[‘decoder_h2’]),b

文档评论(0)

sunny131 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档