大数据----机器学习---神经网络
1.神经网络与深度学习的发展历程:
2.神经网络与大脑神经元
神经网络的起源、结构、个体间的信息交互方式是以我们大脑神经元为模板的,我们的大脑神经元如下所示:
3.神经网络源头--M-P神经元模型
M-P 模型问题:
• 模型不能训练,也就是没有学习的过程:
可以说不能称作是机器学习,上图中的w0,w1,w2都是预设好的定死的,不能够通过
学习来调整。
• 在机器学习中,不仅有模型,还有一个学习的概念:
怎么样给一个模型输入不同的样本让这个模型最后适应你的数据,最后学习到适合你当
前数据的参数,比如w0,w1等
4.可学习的模型-感知机模型
感知机(perceptron)是处理二分类的线性分类模型。感知机旨在求出将训练数据进行线性划分的分离超平面,属于判别模型,所以,导入误分类的损失函数,利用梯度下降法极小化损失函数,求得感知机模型,感知机预测是用学习得到的感知机模型对新输入的数据进行分类。感知机在1957年由Rosenblatt提出,是神经网络和支持向量机的基础。
由输入空间到输出空间的如下函数:
f(x)=sign(w⋅x+b)
称为感知机。其中w为权重,b为偏置,sign为符号函数:
sign(x)={+1,x≥0−1,x<0
所以,感知机输出是{+1,-1}.
几何解释:
线性方程
wx+b=0
对应特征空间的一个超平面S,其中w为该平面的法向量,b为超平面的截距。这个超平面将特征空间分为两个部分,位于两部分的点分别被分为正负两类,因此,超平面S被称为分离超平面。
有了感知机模型以后学术界就觉得感知机是实现人工智能的方式。但是随着研究的进展,大家发现感知机不能学习一个XOR异或问题
5.解决异或问题:
两层感知机解决异或问题
6.神经网络简单架构:
6.1确定神经网络层数
• (1)输入层和输出层仅有一层,隐层有多层
6.2确定每层单元的个数
• (1)输入层单元个数根据输入数据个数定
• (2)输出层单元个数根据目标分类个数确定
• (3)隐层的单元个数如何确定?
=>隐层个数设定没有明确规则,根据准确度来进行判断和改进。
=>留一法和交叉验证法
7.神经网络简单总结
最开始出现了MP模型,但是这个时候并不具有深度学习的特征,只是简单的模拟神经元架构而已,之后出现了感知机模型具有深度学习特征,但是出现了异或的问题,我们解决异或的手段是两层神经元网络架构BP,这个模型也是有缺点的,它的提取能力是有限的,所以目前市场上出现了卷积层神经网络(CNN)与循环层神经网络(RNN),但是这两个模型都是在两层架构BP的基础上实现的。
8.神经网络与深度学习的应用领域
目前市场上神经网络与深度学习的重点引用领域在人脸识别(隔代遗传人脸识别、狗脸识别)无人驾驶(涉及语音识别、图像识别)目标检测和追踪。
9.机器学习三要素
9.1模型 :模型的定义在于寻找规律,在机器学习中首先要确定什么样的模型,模型通常分为决策函数与条件概率分布,
9.2策略:同来评估模型的好坏,使用损失函数来进行度量,常用的损失函数有:
9.3算法
机器学习的算法就是求解最优化问题的算法,优化问题上有显示的解析解,这个优化就比较简单,但是一般时候这个解析解不存在,就需要利用数值计算的方法求解,机器学习可以利用已经有的最优化算法,也可以开发独自的最优化算法。
10.机器学习系统的构建
不同模型有不同的拟合效果,我们要选择最适合的:
第三个值泛化性最好的,也是最优先选择的模型,一与二都是出于欠拟合状态,四出于过拟合状态。
这里有一个模型泛化的说法:
泛化:模型具有好的泛化能力指的是:模型不但在训练数据集上表现的效果很好,对于新数据的适应能力也有很好的效果
泛化能力的表现:过拟合和欠拟合
过拟合overfitting:模型在训练数据上表现良好,在未知数据或者测试集上表现差。
产生的原因:可能是模型太过于复杂、数据不纯、训练数据太少等造成。
出现的场景:当模型优化到一定程度,就会出现过拟合的情况。
解决办法:(1)重新清洗数据
(2)增大训练的数据量
(3)采用正则化方法对参数施加惩罚:常用的有L1正则和L2正则
(4)采用dropout方法,即采用随机采样的方法训练模型,常用于神经网络算法中。
欠拟合underfitting:在训练数据和未知数据上表现都很差
产生的原因:模型过于简单
出现的场景:欠拟合一般出现在机器学习模型刚刚训练的时候,也就是说一开始我们的模型往往是欠拟合也正是因为如此才有了优化的空间,我们通过不断优化调整算法来使得模型的表达能力更强
解决办法:(1)添加其他特征项:因为特征项不够而导致欠拟合,可以添加其他特征项来很好的解决。
(2)添加多项式特征:可以在线性模型中通过添加二次或三次项使得模型的泛化能力更强。
(3)减少正则化参数,正则化的目的是用来防止过拟合的,但是现在模型出现了欠拟合,需要减少正则化参数。
11 模型选择的原则-奥卡姆剃刀原则
给定两个具有相同泛化误差的模型,较简单的模型比较复杂的模型更可取。奥卡姆剃刀原则是模型选择的基本而且重要的原则。
12 机器学习算法层面目前的情况
近几年随着众多强大开源库的出现,我们不用像以前那样用编程语言一步一步的去实现机器学习的算法,我们使用成熟的机器学习库里面的算法来完成我们要的功能,我们只需要了解各个模型的参数如何调整,或者算法应用到实际业务中的一些简单改动即可。
13 机器学习库(目前常用的、简单介绍)
Scikit-learn:简单高效的数据挖掘和数据分析工具可供大家使用,可在各种环境中重复使用建立在NumPy,SciPy和matplotlib上开源,可商业使用-获取BSD许可证
Scikit-learn算法选择
SparkMLLIB:MLlib是Spark机器学习库
Weka
WEKA的全名是怀卡托智能分析环境(Waikato Environment forKnowledge Analysis),同时weka也是新西兰的一种鸟名,而WEKA的主要开发者来自新西兰。
WEKA作为一个公开的数据挖掘工作平台,集合了大量能承担数据挖掘任务的机器学习算法,包括对数据进行预处理,分类,回归、聚类、关联规则以及在新的交互式界面上的可视化。
如果想自己实现数据挖掘算法的话,可以看一看weka的接口文档。在weka中集成自己的算法甚至借鉴它的方法自己实现可视化工具并不是件很困难的事情。
大数据----机器学习---神经网络相关推荐
- 深度学习 vs. 大数据:神经网络权值的版权属于谁?
深度学习 vs. 大数据:神经网络权值的版权属于谁? width="22" height="16" src="http://hits.sinaj ...
- 2015年《大数据》高被引论文Top10文章No.7——大数据机器学习系统研究进展(上)...
2015年<大数据>高被引论文Top10文章展示 [编者按]本刊将把2015年<大数据>高被引论文Top10的文章陆续发布,欢迎大家关注!本文为高被引Top10论文的No.7, ...
- 《大数据》第1期“专题”——大数据机器学习系统研究进展(上)
大数据机器学习系统研究进展 黄宜华1,2 1.南京大学计算机软件新技术国家重点实验室 南京 210023: 2.南京大学PASA大数据技术实验室 南京 210023 摘要:要实现高效的大数据机器学习, ...
- 一个案例告诉你如何使用 Kyligence + Spark 进行大数据机器学习
导语:今天,大数据.数据科学.机器学习分析不再只是热词,已经真实地渗透于生活方方面面.根据福布斯,到2025年,全球每年将会有 175 泽字节的数据产生.Kyligence的诞生为企业带来了极速的大数 ...
- 学堂在线_大数据机器学习_小笔记
学堂在线大数据机器学习小笔记 20220607 - https://www.xuetangx.com/learn/THU08091001026/THU08091001026/10333105/vide ...
- 大数据机器学习(一)概述
2020.09.17 星期三课程笔记 1.学习资源 (1)在线课程 ①清华学堂在线-袁春老师的<大数据机器学习> ②李宏毅的机器学习课程(中文) ③林轩田<机器学习基石上下>( ...
- 分布计算 | 大数据机器学习系统研究进展
1 大数据机器学习系统研究背景 近年来,大数据技术在全球发展迅猛,掀起了巨大的研究热潮,引起全球业界.学术界和各国政府的高度关注.随着计算机和信息技术的迅猛发展和普及应用,行业应用数据呈爆炸性增长.动 ...
- 大数据机器学习系统研究进展
要实现高效的大数据机器学习,需要构建一个能同时支持机器学习算法设计和大规模数据处理的一体化大数据机器学习系统.研究设计高效.可扩展且易于使用的大数据机器学习系统面临诸多技术挑战.近年来,大数据浪潮的兴 ...
- 大数据+机器学习#x3D;天下无敌!
通俗的说,机器学习就是基于一些高度复杂的算法和技术,在一个非生命的物体.机器或系统中构建人类行为.制造一台能够符合数十亿用户期望的人脑复制品的机器绝不是一件容易的事.但也有一些项目正在解决基于情境.情 ...
最新文章
- 多目标跟踪笔记二:Efficient Algorithms for Finding the K Best Paths Through a Trellis
- 谷歌地球API相关网页翻译
- minecraft666java_我的世界的666的世界
- static在内存层面的作用_虚拟地址空间--用户进程看到的自己所占用的内存
- 我买网勾搭搜狐吃货自媒体联盟 大搞自媒体“晒图”营销?
- JavaScript(八)—— PC 端网页特效
- SVN、GIT生成版本号
- 机器学习专题(一):绪论
- linux jvm启动过程,Linux操作系统启动过程详解
- Android常用的网络权限,Android系统的常用权限
- python单元测试用例_Python单元测试与测试用例简析
- Apache详解(一)Internet和HTTP协议
- 雅诗兰黛公司宣布晋升Stéphane de La Faverie为集团总裁
- 利用PHP GD库生成位图
- 面试中的着装与举止--Java面试
- java 绑定mac地址_如何JAVA实现使用TrueLicense在证书中绑定PC的MAC地址,以防止拷贝应用...
- MQTT协议——MQTTX工具使用
- 北京师范大学网络教育计算机动画,北师大网络教育《计算机动画》在线作业.pdf...
- 少儿编程之Scratch入门
- ret和retf的区别和用法
热门文章
- PL-SLAM 配置和测试
- UE5 官方案例Lyra 全特性详解 8.如何用配置表初始化角色数据
- 投资日记 11.2中心从科技板逐渐转换到食品版块
- xp运行linux软件下载,为你演示xp系统利用U盘直接运行Linux软件 的解决方案
- ALSA应用层编程播放音乐
- Linux语音通话如何消除回声(PulseAudio)
- 商业智能(Business Intelligence,简称:BI)
- jmeter 跳板机_jmeter本地通过跳板机连接塔内数据库
- 蓝桥杯 ALGO-121 算法训练 猴子分苹果
- 【字符串2】(删除公共字符、合法括号序列判断、两种排序方法、密码强度等级)