总结
总结:
机器学习: 教机器怎么识别一个鸡蛋,只要告诉鸡蛋的颜色、大小、形状,重量的是多少,这些就是特征值。而鸡蛋就是一个目标值。 目标是一些离散型的数据就是分类算法(比如不同动植物),目标是连续的数据就是回归算法(比如预测房价销售额气温)。没有目标值的就是无监督学习。
分类算法有:K-近邻(距离近的是同一类,欧式距离)、朴素贝叶斯(概率大的同一类,拉普拉斯平滑系数)、决策树(高效的进行决策,看特征的先后顺序,可生成图,信息熵、信息增益)、随机森林(随机多个决策树,输出的类别是多个决策树的众数,BootStrap有放回抽样)、逻辑回归() 回归算法有:线性回归(损失函数,优化算法有正规方程和梯度下降)
使得特征能在机器学习算法上发挥更好的作用的过程叫特征工程 特征提取、特征预处理、特征降维的步骤
目标值为连续性的数据 叫 回归算法
K- 近邻 距离 朴素贝叶斯 概率 决策树 特征相关性 随机森林 训练值随机 特征值随机
无监督学习 k-means算法: 分成N个点,邻近的成为一个堆,再求出堆中心点,跟原点比,不是原点,用中心点继续分堆,再找中心点跟上次的中心点比,不匹配就继续找,直到找到非常接近的点。
神经元:站着感觉接触地面了。分解起来就是,通过细胞的树突接收到地面的信号通过轴突传给神经元,神经元再处理这些信号。深度神经网络就是基于此原理。
因为穷,想赚钱,于是研究了量化交易,发现这玩意要写代码,而且跟金融,数据挖掘,机器学习有些牵扯。
数据挖掘其实只用到了数据分析的三个模块,Numpy数组运算工具;matplotlib统计图表生成工具,可以把numpy的数据生成图;Pandas包含了numpy和matplotlib还有其他功能,写代码的时候开个文档就行了。
机器学习有一堆数学公式,学的时候看不明白,关系到money的事情怎么能允许我对这东西一知半解呢!于是穷的力量让我花了几天时间和一个练习本把初中数学重学了一遍,而且学会了!??(当初感觉很难的样子)。然后重学了三四遍机器学的视频之后,算法公式没看明白,但是知道机器学习是个什么玩意了。
PS:其实,开发过程中没有必要记住算法公式,只要调用函数和参数就行了,公式可以后面慢慢推导理解(本人认为是必要的)。开发的大部分时间是在特征工程上面。
作为一名优秀且热爱学习的程序员,下面将为你们揭开人工智能神秘的面纱。
说说我理解的机器学习
机器学习是从统计学里来的。可以解决分类问题和预测连续性的问题。
先用分类问题来说明机器学习的过程。
比如如何辨别是何种水果,只要把每种水果都找来100个,然后记录好每个水果的特征,标注好属于什么水果,然后告诉计算机,计算机就能使用算法分析出来,属于什么水果。
收集出来的数据叫做数据集,每条记录叫做样本,各种水果名称叫做标注数据也叫目标值。颜色,直径,重量这些叫做特征值。
机器学习的数据集里会分为训练集和测试集,训练集是训练模型的,测试集是验证模型的准确率的。
机器学习是如何区分出水果的?
先介绍一个K近邻算法。把训练集所有样本的这个特征和目标值映射在一个二维坐标系里,假设特征值为x,目标值为Y。如果你有一个新的样本数据,把这个样本数据的这个特征值放入这个二维坐标系中,坐标中谁的x值和这个样本的x值最接近,这个样本就属于谁。每个特征值都计算一遍,投票一样选出得分高的,就知道这个样本属于谁。这就是机器学习的分类问题。
这个算法的弊端是每个特征值的比重都是一样的,现实情况有很多特征的比重不一样的情况。于是就有了决策树算法,里面有信息熵和信息增益的公式可以计算出特征的相关性,然后进行分类,而且可生成图,告诉你如何决策的。
集成学习和随机森林:随机森林是随机多个决策树,每个决策树随机训练集和特征值进行训练,每个决策树得到的结果再进行投票,最终得出结果,这就叫集成学习。这个算法准确度高,但是计算的非常慢。
朴素贝叶斯:听名字高大上,其实很简单,就是概率性的东西,累加算出概率,哪个概率大就是哪个,每个特征值算一遍,然后投票是谁就是谁。里面有条件概率与联合概率的公式,常用来解决文章自动分类,区分垃圾邮件等问题。
然后说连续性的问题,连续性的问题其实正确的叫法是回归问题。就是目标值是连续型的数字比如温度,价格等。
线性回归:是深度学习的基础,线性一条直线,效果是给出特征值,计算出靠近真实值的预测值。 线性模型公式是:真实值=每种特征值的加权求和+偏置。 其中权数和偏置是未知的,需要通过最小二乘法公式(真实值减预测值然后平方)去计算,找到权数和偏置的最优解。可以想象成一个三维空间,权数和偏置是x,y,代入二乘法公式得到的值是z。因为是俩个值都是未知的值,需要从一个区间去遍历,z值接近于0的时候,x,y就是当前区间的最优解。遍历开销比较大,机器学习一般是通过标准方程或梯度下降等算法,去优化寻找权数和偏置的过程的。
标准方程:(线性代数矩阵的知识)
梯度下降:(高中导数的知识) 学习率 乘 偏导数。梯度消失,梯度爆炸。
岭回归:就是建立回归方程时候,加上正则化的限制,达到解决过拟合的效果。特征值少准确度低是欠拟合,特征值过多,准确度降低是过拟合,需要乘以权重系数降低影响。
无监督学习(没有目标值的数据集) k-means算法:是个聚类式算法,分成N个起始点,邻近的成为一个堆,再算出堆中心点,跟这个堆的起始点比,不是同一个点,把这个堆的中心点设为起始点重新分堆,再继续找,直到找到中心点接近起始点的点结束。可以用做相似的图片分类,相关性推荐
然后进入深度学习
深度学习:机器学习的特征工程是手动完成的,深度学习基于神经网络通过训练大量数据自动得出模型。
神经网络:是人工神经网络的简称,是模仿动物的中枢神经系统的结构和功能的数学模型。 传统神经网络分为输入层,隐藏层,输出层。
卷积神经网络:专门识别图片的。它把隐藏层分为了卷积层、激活层、池化层、全连接层。建模的时候添加多个层数达到增加特征值和去过拟合的作用,使准确度更高。
卷积层:由卷积核的个数,大小,步长,零填充大小组成,用来提取特征的。详情去找资料。
激活层:非线性激活函数sigmoid[0,1],TanH[-1,1],ReLU,Leaky ReLU函数,增加非线性分割能力。
池化层:分割成一个个2x2的矩阵中从中取最大值或平均值,生成新的矩阵。降低网格复杂度。
全连接层:起分类器的作用传给输出层。
循环神经网络:
深度学习,应用很广,比如智能推荐,人脸识别,语音识别,自然语言处理,文字识别,换脸,变声,自动驾驶,拦截导弹,目标追踪,数值预测,AI编曲,AI生成图片,AI建模等等。学它可以打开新世界的大门,创造很多好玩的东西。
推荐《西瓜书》他是从选瓜中引申出来机器学习的。《南瓜书》有西瓜书公式的推导过程。
学这个要了解几个概念、图、张量、会话、提取图片、二进制、tfrecords文件的特征码。