监督学习型神经网络

监督学习型神经网络兄弟姐妹们,如需转载请标明出处:http://blog.csdn.net/jiangjunshow总目录什么是监督学习?简单的回答是:判断是否是监督学习,就看输入数据是否有标签。输入数据有标签,则为有监督学习,没标签则为无监督学习。对于上面的简单回答,如果你看不懂,是正常的!下面我给出详细回答,如果你还是不明白,那么…….也是正常的。因为有些概念要被接受是需要时间的!坚持不懈地看我

大家好,又见面了,我是你们的朋友全栈君。

朋友们,如需转载请标明出处:http://blog.csdn.net/jiangjunshow

什么是监督学习

简单的回答是:判断是否是监督学习,就看输入数据是否有标签。输入数据有标签,则为有监督学习,没标签则为无监督学习。

对于上面的简单回答,如果你看不懂,是正常的!下面我给出详细回答,如果你还是不明白,那么…也是正常的。因为有些概念要被接受是需要时间的!坚持不懈地看我的文章,不知不觉中你就明白了!

这里写图片描述

要详细解释什么是监督学习,那么先要明白“什么是学习?”。一个成语就可概括:举一反三。此处以高考为例,高考的题目在上考场前我们未必做过,但在高中三年我们做过很多很多题目,由此学会了解题方法,因此考场上面对陌生问题也可以算出答案。机器学习的思路也类似:我们利用一些训练数据(高中的大量题库),使机器能够总结出一些规律(总结出解题方法),然后用这些规律来分析未知数据(用解题方法来解答高考题目)。

分类(classification)这种机器学习算法就是一种监督学习。对于分类,输入的训练数据有特征(feature),有标签(label)。也就是我们前面文章中的输入x和输出y。每一个x样本都对应着一个y(输出)标签。所谓的学习,其本质就是找到特征和标签间的关系(mapping),也就是找规律。这样当有特征而无标签的未知数据输入时,我们就可以通过已有的关系得到未知数据标签,即根据新数据进行预测。在上述的分类过程中,如果所有训练数据都有标签,则为有监督学习(supervised learning)。如果数据没有标签,显然就是无监督学习(unsupervised learning),即聚类(clustering)。

目前分类算法(监督学习)的效果还是不错的,而相对来讲,聚类算法(无监督学习)就有些惨不忍睹了。确实,无监督学习本身的特点使其难以得到如分类一样近乎完美的结果。这也正如我们在高中做题,答案(标签)是非常重要的,假设两个完全相同的人进入高中,一个正常学习,另一人做的所有题目都没有答案,那么想必第一个人高考会发挥很好,第二个人会发…疯。
这里写图片描述

这时各位可能要问,既然监督学习如此之好,非监督学习如此之不靠谱,那为何我们还可以容忍非监督学习的存在?因为在实际应用中,标签的获取常常需要极大的人工工作量,有时甚至非常困难。

但是我觉得非监督学习非常之重要!要想让人工智能更加聪明,就必须使它具有更强的自学能力。我预见的未来将是这样的:先用监督学习教会人工智能体一些基本的常识,然后让它基于这些常识去自学去探索世界。当实现这个架构后,人工智能体将会超越人类。
这里写图片描述

但到目前为止,几乎所有由人工智能创造的经济价值都是通过监督学习型神经网络实现的。例如广告预测,这可能是最有利可图的人工智能应用了,它也许不是最鼓舞人心的,但肯定是非常有利可图的,通过输入一些关于用户的信息x,神经网络就能预测你是否会点击某个广告(给出输出y来指示某个广告),所以当你看到你朋友,或男朋友,或女朋友手机电脑上面都是些黄色广告时,你基本上可以断定TA的“性趣很浓”,也之所以我一般不会给别人用我的手机或电脑。计算机视觉在过去几年也取得了很大的进步,主要是由于深度学习。您可以输入人脸图像,神经网络会给出这个人的姓名。在语音识别方面的进展也非常激动人心,我们可以输入一段音频到神经网络,相应的文字就被输出来了。机器翻译也取得了巨大的进步,你可以输入英文句子,直接输出中文句子。在自动驾驶中,您可以输入车辆前方的图片以及雷达中的一些信息,基于此,神经网络将告诉您其它汽车的位置(这是自动驾驶系统的关键组成部分)。因此,通过神经网络进行的许多价值创造当前都是通过监督学习来实现的——巧妙地构造数据集,选择什么应该是x,什么应该是y,然后让神经网络来学习这个数据集。

另外再补充些知识点。神经网络除了按监督学习和非监督学习来分类外,还按结构来分类。不同结构的神经网络被用于不同的应用程序中。例如,在之前看到的房价预测应用中,我们使用的是标准的神经网络结构,广告预测也是一个相对标准的神经网络。对于图像应用程序,我们经常使用卷积神经网络CNN。对于序列数据应用程序一般使用递归神经网络RNN(例如音频就属于序列数据,是随着时间一段一段表述的,例如英语、汉语都是随着时间一个字一个单词来表述的)。对于更复杂的应用,比如自动驾驶,里面有图像所以需要CNN卷积神经网络,而雷达信息则需要其它类型的神经网络,这就导致了混合的神经网络架构。

这里写图片描述

为了更具体一点,上面分别给出了各种不同神经网络的结构图。依次是,标准神经网络SNN, 卷积神经网络CNN,递归神经网络RNN。稍后我会解释这些图的含义以及如何实现它。卷积网络通常被用于图像数据。递归神经网络被用于序列数据。

你也可能听说过机器学习中将数据分为结构化数据和非结构化数据。结构化数据主要表示数据库数据。例如,在房价预测中,您可能会有一个数据库告诉您卧室的大小和数量。又如预测用户是否点击广告时,您可能会获得有关用户的信息,例如年龄,广告的一些信息。所谓结构化数据,意味着每个特征,如房子的大小,卧室的数量或用户的年龄,是具有非常明确的含义的。相比之下,非结构化数据指的是音频,图像。这里的特征可能是图像中的像素值或文本中的单个单词,没有明确的含义。与结构化数据相比,计算机更难以理解非结构化数据。而人类已经进化得非常善于理解音频和图像这些非结构化数据。但这一两年由于深度学习的兴起,计算机对非结构化的理解能力越来越强了。人们在听到有关神经网络对非结构化数据的成功时,例如当神经网络识别出一只猫时,人们都很兴奋。但事实证明,神经网络正在创造的许多短期经济价值其实是在结构化数据上的,比如广告系统。所以在这个课程中,我将介绍的很多技术都将适用于结构化数据和非结构化数据。为了解释算法,在示例中我将会更多的使用非结构化数据。但是,将来在您自己的团队中应用神经网络时,我希望您应该对结构化和非结构化数据都重视。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/140220.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 深入理解iso七层模型_网络模型的七层结构

    深入理解iso七层模型_网络模型的七层结构ISO七层模型是国际标准化组织用于计算机或者通信系统间相互联系的标准体系.他是一个七层的,抽象的模型体.应用层(Application):网络服务与最终用户的一个接口。协议有:HTTPFTPTFTPSMTPSNMPDNSTELNETHTTPSPOP3DHCP表示层(PresentationLayer):数据的表示、安全、压缩。(

    2025年5月23日
    3
  • java怎么输出数组的下标_java数组获取指定元素

    java怎么输出数组的下标_java数组获取指定元素/** *输出数组指定元素的下标 */ publicstaticvoidmain(String[]args){ //定义一个数组 int[]array=newint[]{123,456,789,321,654,987}; intindex=printArray(array,321); System.out.println(“321对应的下标是:”+index); //查询没有的数据 intindex1=printArray(array,1..

    2022年10月11日
    0
  • 微信小程序实例教程_小程序怎么做

    微信小程序实例教程_小程序怎么做微信小程序入门教程+案例demo尊重原创,转载请注明出处:原文查看惊喜更多http://blog.csdn.net/qq137722697首先摆在好姿态,——微信小程序开发也就那么回事。你只需要一点点css(真的只要一点点)的基础就可以了。认清微信小程序开发其实,我觉得小程序就是将微信官方提供20+个基础组件(目前有26个)进行排列组合,然后加上一些css样式,对用户的操作进行反馈(调

    2025年12月12日
    3
  • 根据两点的经纬度计算距离_经纬度两点距离

    根据两点的经纬度计算距离_经纬度两点距离问题提出目前手头的一个项目要用到GPS地理定位信息,很自然的就需要知道两个地点之间的距离,于是上网找了一下。背景知识这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两极的距离相等,这个圆圈就叫作“赤道”。在赤道的南北两边,画出许多和赤道平行的圆圈,就是“纬圈”;构成这些圆圈的线段,叫做纬线

    2025年12月5日
    2
  • Json字符串和对象相互转换[通俗易懂]

    Json字符串和对象相互转换[通俗易懂]importcom.fasterxml.jackson.databind.ObjectMapper;publicclassJsonUtil{privatestaticfinalObjectMapperMAPPER=newObjectMapper();/***把对象转字符串*@paramdata*@return*/publicstaticStringobjectToJson(Objec

    2025年5月24日
    0
  • objectmapper json转对象_图片格式转换器

    objectmapper json转对象_图片格式转换器JSONObject转换为Mapimportcom.alibaba.fastjson.TypeReference;importcom.alibaba.fastjson.JSONObject;JSONObjectobj=newJSONObject();{obj.put(“key1″,”value1”);obj.put(“key2″,”value2”);obj.put(“key3″,”value3”);}Map<String,String>params=

    2022年8月23日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号