版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
AIAI时代人工智能入学指南为嘛Python这么火?从哪里开始,学什么?有什么用?算法该如何学?数学怎么办?如何实际动手去做?用什么工具?AIAI时代为嘛Python这么火?难度:有任何语言基础学Python你会觉得简单到家了实用性:能用一行代码,何必用十行呢?(我们的定位通常都是工程师,而非科学家,能干活更重要)Python工具库:这些简直太多了,基本上你能想到的现在都有了(我们常用的:Numpy,Pandas,Matplotlib,Scikit-Learn,tensorflow)大家都在用,各大公司开源工具库都有Python接口,并且都是主流,我们实际干活很大程度上都是使用这些库帮助我们完成任务AIAI时代Python和这些库怎么配置?常规套路:1.安装2.环境变量3.用什么库去看配置文档自己安(这个是程序员的常规套路了,但是刚转行的同学会弄个大半天)大礼包:,傻瓜式安装,解决上述问题(还给我们赠送了notebook写代码环境,库安装工具等)为什么建议使用Notebook?主要原因在于它不光能写代码,还可以做笔记尤其是代码需要一步步执行的时候,可以得到每一步结果并保留下来,在可视化展示方面就更方便了!AIAI时代如何学Python呢?有其他语言基础:简单过一遍语法,直接上手应该没什么问题第一门语言:初级内容便学边写,高级内容暂时不需要(我觉得语言只是一门工具,不需要先都学彻底了才能干活,边做事边学习应该会更加深理解,忌光看书不练习)Python这么多库,这么多函数,我需要都记下来吗?(其实这些依旧是工具,记它干嘛?我觉得重点在于知道每个库能做什么,大概用哪个函数,等实际用的时候还是需要查一查API的,这么多参数都记下来不太切合实际,动手查的能力也很重要)AI时代AI时代人工智能我该怎么学呢?人工智能是一个很大的圈子,但是基础必然是机器学习什么是机器学习呢?说白了就是你告诉机器你想做什么?并且给它一堆数据让它去模仿着做!(比如,咱们上高中,老师会告诉我们一个目标就是考高分,然后给我们一堆练习册和答案,我们的目的就是让我们做的题的解和答案一致)机器学习需要什么?算法,数据,程序,评估,应用机器学习能做什么?机器学习在数据挖掘,图像识别,语音和自然语言处理中有着广泛应用机器学习流程?一个机器学习的常规套路数据收集与预处理特征选择与模型构建评估与预测机器学习我该怎么学?机器学习本质包含了数学原理推导与实际应用技巧机器学习中有很多经典算法,既然要学习,那就需要清楚一个算法是怎么来的(推导)以及该如何应用数学重要吗?非常重要的,大学的数学基础即可,如果你都忘了,大致的印象还是有的吧,我觉得与其从头过一遍数学,不如边学边查,一个合适的做法就是哪里不会点哪里,我每天也在查很多知识点机器学习我该怎么学?一定要学数学,学推导吗?我知道会用不就可以了吗?有句老话,不光要知其然还要知其所以然,这对我们的应用具有很大的帮助程序员兄弟:如果要转行,让你看数学你肯定要疯的,重点应在于如何应用(库的使用,完整项目如何构建,从头到尾的流程)现在说的很火的深度学习是什么?深度学习是机器学习中神经网络算法的延伸,只不过应用的比较广深度学习在计算机视觉和自然语言处理中更厉害一些那我学机器学习还是深度学习呀?一切的基础都是机器学习,做任何事情没有坚实的基础只会越来越迷茫,机器学习觉得值得你从头开始算法推导如何开始?找本书?找博客?找视频?都可以的,选择你喜欢的就好!如果有一个地方死活看不懂怎么办?很常见的情况,我也经常卡在一个地方好久,这时候有个圈子来交流当然更好(好累),不过我们也可以先继续前进,等回过头来再想想,没准就想通啦!习惯很重要,当你看别人的资料觉得掌握的差不多了,其实你明天估计就忘的也差不多了,自己动手从头开始做笔记(不是照抄人家的,是写自己的)或者博客都是很好的选择,只要你自己能写出来了才算真正的掌握!机器学习怎么动手去做?只有实际应用啦,才觉得没白学,那么去哪里找案例呢?最好的资源:Github,kaggle,各大资源分享点案例的积累作用很大,其实我们干活是什么样的呢?主要就是在模仿,我们并不是科学家,能做事才能有用的,既然人家是这么做的,并且做的不错,那我们去模仿做出来的就是我们自己的!很少从头开始去写一个项目,通常都是按照之前的某种套路照搬过来,实际上大部分公司都这么做,建议大家先学会模仿,再去创作吧!咱们的课程!Python库的讲解,常用函数的应用(只是工具)算法原理推导:从零开始,对一个机器学习/深度学习算法进行推导,得出其最终的解法,评估参数对结果的影响。案例实战:基于真实数据集,结合Python工具库,从数据预处理开始一步步建模完成整个案例。线性回归线性回归工资年龄额度400025工资年龄额度40002520000800030700005000283500075003350000120004085000数据:工资和年龄(2个特征)目标:预测银行会贷款给我多少钱(标签)考虑:工资和年龄都会影响最终银行贷款的结果那么它们各自有多大的影响呢?(参数通俗解释X1,X2就是我们的两个特征(年龄,工资)Y是银行最终会借给我们多少钱找到最合适的一条线(想象一个高维)来最好的拟合我们的数据点数学来了设是年龄的参数 是工资的参数拟合的平面:(是偏置项):整合:误差真实值和预测值之间肯定是要存在差异的(用 来表示该误差)对于每个样本:误差误差是独立并且具有相同的分布,并且服从均值为0方差为的高斯分布独立:张三和李四一起来贷款,他俩没关系同分布:他俩都来得是我们假定的这家银行高斯分布:银行可能会多给,也可能会少给,但是绝大多数情况下这个浮动不会太大,极小情况下浮动会比较大,符合正常情况误差预测值与误差: (1)由于误差服从高斯分布:(2)将(1)式带入(2)式:误差: 解释:什么样的参数跟我们的数据组合后恰好是真实值对数似然:解释:乘法难解,加法就容易了,对数里面乘法可以转换成加法误差展开化简:目标:让似然函数(对数变换后也一样)越大越好(最小二乘法)误差目标函数:求偏导:偏导等于0:评估方法最常用的评估项 :
(残差平方和)(类似方差项)的取值越接近于1我们认为模型拟合的越好梯度下降引入:当我们得到了一个目标函数后,如何进行求解?直接求解?(并不一定可解,线性回归可以当做是一个特例)常规套路:机器学习的套路就是我交给机器一堆数据,然后告诉它什么样的学习方式是对的(目标函数),如何优化:一口吃不成个胖子,我们要静悄悄的一步步的完成迭代(每次优化一点点,累积起来就是个大成绩了)梯度下降目标函数:寻找山谷的最低点,也就是我们的目标函数终点(什么样的参数能使得目标函数达到极值点)下山分几步走呢?(更新参数):找到当前最合适的方向:走那么一小步,走快了该”跌倒 ”了:按照方向与步伐去更新我们的参数梯度下降,目标函数:(容易得到最优解,但是由于每次考虑所有样本,速度很慢随机梯度下降:(每次找一个样本,迭代速度快,但不一定每次都朝着收敛的方向): (每次更新选择一小部分数据来算,实用!)梯度下降学习率(步长):对结果会产生巨大的影响,一般小一些如何选择:从小的时候,不行再小批处理数量:32,64,128都可以,很多时候还得考虑内存和效率逻辑回归逻辑回归Logisticregression目的:分类还是回归?经典的二分类算法!机器学习算法选择:先逻辑回归再用复杂的,能简单还是用简单的逻辑回归的决策边界:可以是非线性的Sigmoid函数式 自变量取值为任意实数,值域[0,1]解释:将任意的输入映射到了[0,1]区间我们在线性回归中可以得到一个预测值,再将该值映射到Sigmoid函数中这样就完成了由值到概率的转换,也就是分类任务Sigmoid函数预测函数:其中:分类任务: 整合:解释:对于二分类任务(0,1),整合后y取0只保留y取1只保留Logisticregression对数似然:此时应用梯度上升求最大值,引入 转换为梯度下降任务求导过程:逻辑回归逻辑回归Logisticregression参数更新:多分类的softmax:总结:逻辑回归真的真的很好很好用!决策树决策树树模型决策树:从根节点开始一步步走到叶子节点(决策)所有的数据最终都会落到叶子节点,既可以做分类也可以做回归树的组成根节点:第一个选择点非叶子节点与分支:中间过程叶子节点:最终的决策结果决策树的训练与测试训练阶段:从给定的训练集构造出来一棵树(从跟节点开始选择特征,如何进行特征切分)测试阶段:根据构造出来的树模型从上到下去走一遍就好了一旦构造好了决策树,那么分类或者预测任务就很简单了,只需要走一遍就可以了,那么难点就在于如何构造出来一颗树,这就没那么容易了,需要考虑的问题还有很多的!如何切分特征(选择节点)问题:根节点的选择该用哪个特征呢?接下来呢?如何切分呢?想象一下:我们的目标应该是根节点就像一个老大似的能更好的切分数据(分类的效果更好),根节点下面的节点自然就是二当家了。目标:通过一种衡量标准,来计算通过不同特征进行分支选择后的分类情况,找出来最好的那个当成根节点,以此类推。衡量标准-熵熵:熵是表示随机变量不确定性的度量(解释:说白了就是物体内部的混乱程度,比如杂货市场里面什么都有那肯定混乱呀,专卖店里面只卖一个牌子的那就稳定多啦)公式:H(X)=-∑pi*logpi,i=1,2,...,n一个栗子: 显然A集合的熵值要低,因为A里面只有两种类别,相对稳定一些而B中类别太多了,熵值就会大很多。(节点分支后数据类别的熵值大还是小呢?)衡量标准-熵熵:不确定性越大,得到的熵值也就越大当p=0或p=1时,H(p)=0,随机变量完全没有不确定性当p=0.5时,H(p)=1,此时随机变量的不确定性最大如何决策一个节点的选择呢?信息增益:表示特征X使得类Y的不确定性减少的程度。天打球情况决策树构造实例数据:14天打球情况特征:4种环境变化目标:构造决策树决策树决策树构造实例划分方式:4种问题:谁当根节点呢?依据:信息增益决策树决策树决策树构造实例在历史数据中(14天)有9天打球,5天不打球,所以此时的熵应为:4个特征逐一分析,先从outlook特征开始:Outlook=sunny时,熵值为0.971Outlook=overcast时,熵值为0Outlook=rainy时,熵值为0.971决策树构造实例根据数据统计,outlook取值分别为sunny,overcast,rainy的概率分别为:5/14,4/14,5/14熵值计算:5/14*0.971+4/14*0+5/14*0.971=0.693(gain(temperature)=0.029gain(humidity)=0.152gain(windy)=0.048)信息增益:系统的熵值从原始的0.940下降到了0.693,增益为0.247同样的方式可以计算出其他特征的信息增益,那么我们选择最大的那个就可以啦,相当于是遍历了一遍特征,找出来了大当家,然后再其余的中继续通过信息增益找二当家!决策树算法ID3:信息增益(有什么问题呢?)C4.5:信息增益率(解决ID3问题,考虑自身熵)CART:使用GINI系数来当做衡量标准GINI系数(和熵的衡量标准类似,计算方式不相同)连续值怎么办?决策树剪枝策略为什么要剪枝:决策树过拟合风险很大,理论上可以完全分得开数据(想象一下,如果树足够庞大,每个叶子节点不就一个数据了嘛)剪枝策略:预剪枝,后剪枝预剪枝:边建立决策树边进行剪枝的操作(更实用)后剪枝:当建立完决策树后来进行剪枝操作决策树决策树剪枝策略预剪枝:限制深度,叶子节点个数叶子节点样本数,信息增益量等(叶子节点越多,损失越大)后剪枝:通过一定的衡量标准(叶子节点越多,损失越大)集成算法集成算法Ensemblelearning目的:让机器学习效果更好,单个不行,群殴走起Bagging:训练多个分类器取平均Boosting:从弱学习器开始加强,通过加权来进行训练(加入一棵树,要比原来强)Stacking:聚合多个分类或回归模型(可以分阶段来做)Bagging模型全称:bootstrapaggregation(说白了就是并行训练一堆分类器)最典型的代表就是随机森林啦随机:数据采样随机,特征选择随机森林:很多个决策树并行放在一起随机森林构造树模型:由于二重随机性,使得每个树基本上都不会一样,最终的结果也会不一样Bagging模型树模型:之所以要进行随机,是要保证泛化能力,如果树都一样,那就没意义了!随机森林优势它能够处理很高维度(feature很多)的数据,并且不用做特征选择在训练完后,它能够给出哪些feature比较重要容易做成并行化方法,速度比较快可以进行可视化展示,便于分析Bagging模型KNN模型:KNN就不太适合,因为很难去随机让泛化能力变强!Bagging模型树模型:理论上越多的树效果会越好,但实际上基本超过一定数量就差不多上下浮动了Boosting模型典型代表:AdaBoost,XgboostAdaboost会根据前一次的分类效果调整数据权重解释:如果某一个数据在这次分错了,那么在下一次我就会给它更大的权重最终的结果:每个分类器根据自身的准确性来确定各自的权重,再合体Adaboost工作流程每一次切一刀!最终合在一起弱分类器这就升级了!Stacking模型堆叠:很暴力,拿来一堆直接上(各种分类器都来了)可以堆叠各种各样的分类器(KNN,SVM,RF等等)分阶段:第一阶段得出各自结果,第二阶段再用前一阶段结果训练为了刷结果,不择手段!Stacking模型堆叠在一起确实能使得准确率提升,但是速度是个问题集成算法是竞赛与论文神器,当我们更关注于结果时不妨来试试!K-MEANS算法K-MEANS算法聚类概念:无监督问题:我们手里没有标签了聚类:相似的东西分到一组难点:如何评估,如何调参基本概念:要得到簇的个数,需要指定K值质心:均值,即向量各维取平均即可距离的度量:常用欧几里得距离和余弦相似度(先标准化)优化目标:工作流程:优势:简单,快速,适合常规数据集劣势:K值难确定复杂度与样本呈线性关系很难发现任意形状的簇DBSCAN算法DBSCAN算法基本概念:(Density-BasedSpatialClusteringofApplicationswithNoise)核心对象:若某个点的密度达到算法设定的阈值则其为核心点。(即r邻域内点的数量不小于minPts)ϵ-邻域的距离阈值:设定的半径r直接密度可达:若某点p在点q的r邻域内,且q是核心点则p-q直接密度可达。密度可达:若有一个点的序列q0、q1、…qk,对任意qi-qi-1是直接密度可达的,则称从q0到qk密度可达,这实际上是直接密度可达的“传播”。基本概念:密度相连:若从某核心点p出发,点q和点k都是密度可达的,则称点q和点k是密度相连的。边界点:属于某一个类的非核心点,不能发展下线了直接密度可达:若某点p在点q的r邻域内,且q是核心点则p-q直接密度可达。噪声点:不属于任何一个类簇的点,从任何一个核心点出发都是密度不可达的基本概念:A:核心对象B,C:边界点N:离群点DBSCAN算法工作流程:参数D:输入数据集参数ϵ:指定半径MinPts:密度阈值DBSCANDBSCAN算法参数选择:半径ϵ,可以根据K距离来设定:找突变点K距离:给定数据集P={p(i);i=0,1,…n},计算点P(i)到集合D的子集S中所有点之间的距离,距离按照从小到大的顺序排序,d(k)就被称为k-距离。MinPts:k-距离中k的值,一般取的小一些,多次尝试可视化:\h/blog/visualizing-dbscan-clustering/http\hs://www\h.naft\h/blog/visualizing-k-means-clustering/DBSCAN算法优势:不需要指定簇个数可以发现任意形状的簇擅长找到离群点(检测任务)劣势: \h\hclustering/高维数据有些困难(可以做降维)参数难以选择(参数对结果的影响非常大)Sklearn中效率很慢(数据削减策略)贝叶斯贝叶斯贝叶斯简介:贝叶斯(约1701-1761)ThomasBayes,英国数学家贝叶斯方法源于他生前为解决一个“逆概”问题写的一篇文章生不逢时,死后它的作品才被世人认可贝叶斯要解决的问题:正向概率:假设袋子里面有N个白球,M个黑球,你伸手进去摸一把,摸出黑球的概率是多大逆向概率:如果我们事先并不知道袋子里面黑白球的比例,而是闭着眼睛摸出一个(或好几个)球,观察这些取出来的球的颜色之后,那么我们可以就此对袋子里面的黑白球的比例作出什么样的推测Why贝叶斯?现实世界本身就是不确定的,人类的观察能力是有局限性的我们日常所观察到的只是事物表面上的结果,因此我们需要提供一个猜测贝叶斯贝叶斯男生总是穿长裤,女生则一半穿长裤一半穿裙子正向概率:随机选取一个学生,他(她)穿长裤的概率和穿裙子的概率是多大逆向概率:迎面走来一个穿长裤的学生,你只看得见他(她)贝叶斯贝叶斯假设学校里面人的总数是U个穿长裤的(男生):U*P(Boy)*P(Pants|Boy)P(Boy)是男生的概率=60%P(Pants|Boy)是条件概率,即在Boy这个条件下穿长裤的概率是多大,这里是100%,因为所有男生都穿长裤穿长裤的(女生):U*P(Girl)*P(Pants|Girl)求解:穿长裤的人里面有多少女生穿长裤总数:U*P(Boy)*P(Pants|Boy)+U*P(Girl)*P(Pants|Girl)P(Girl|Pants)=U*P(Girl)*P(Pants|Girl)/穿长裤总数U*P(Girl)*P(Pants|Girl)/[U*P(Boy)*P(Pants|Boy)+U*P(Girl)*P(Pants|Girl)]与总人数有关吗?U*P(Girl)*P(Pants|Girl)/[U*P(Boy)*P(Pants|Boy)+U*P(Girl)*P(Pants|Girl)容易发现这里校园内人的总数是无关的,可以消去P(Girl|Pants)=P(Girl)*P(Pants|Girl)/[P(Boy)*P(Pants|Boy)+P(Girl)*P(Pants|Girl)]化简:P(Girl|Pants)=P(Girl)*P(Pants|Girl)/[P(Boy)*P(Pants|Boy)+P(Girl)*P(Pants|Girl)]分母其实就是P(Pants)分子其实就是P(Pants,Girl)贝叶斯公式拼写纠正实例:问题是我们看到用户输入了一个不在字典中的单词,我们需要去猜测:“这个家伙到底真正想输入的单词是什么呢?P(我们猜测他想输入的单词|他实际输入的单词)用户实际输入的单词记为D(D代表Data,即观测数据)猜测1:P(h1|D),猜测2:P(h2|D),猜测3:P(h1|D)。。。统一为:P(h|D)P(h|D)=P(h)*P(D|h)/P(D)用户实际输入的单词记为D(D代表Data,即观测数据)对于不同的具体猜测h1h2h3..,P(D)都是一样的,所以在比较P(h1|D)和P(h2|D)的时候我们可以忽略这个常数P(h|D)∝P(h)*P(D|h)对于给定观测数据,一个猜测是好是坏,取决于“这个猜测本身独立的可能性大小(先验概率,Prior)”和“这个猜测生成我们观测到的数据的可能性大小。用户实际输入的单词记为D(D代表Data,即观测数据)对于不同的具体猜测h1h2h3..,P(D)都是一样的,所以在比较P(h1|D)和P(h2|D)的时候我们可以忽略这个常数P(h|D)∝P(h)*P(D|h)对于给定观测数据,一个猜测是好是坏,取决于“这个猜测本身独立的可能性大小(先验概率,Prior)”和“这个猜测生成我们观测到的数据的可能性大小。拼写纠正实例:贝叶斯方法计算:P(h)*P(D|h),P(h)是特定猜测的先验概率比如用户输入tlp,那到底是top还是tip?这个时候,当最大似然不能作出决定性的判断时,先验概率就可以插手进来给出指示——“既然你无法决定,那么我告诉你,一般来说top出现的程度要高许多,所以更可能他想打的是top”模型比较理论最大似然:最符合观测数据的(即P(D|h)最大的)最有优势奥卡姆剃刀:P(h)较大的模型有较大的优势掷一个硬币,观察到的是“正”,根据最大似然估计的精神,我们应该猜测这枚硬币掷出“正”的概率是1,因为这个才是能最大化P(D|h)的那个猜测模型比较理论如果平面上有N个点,近似构成一条直线,但绝不精确地位于一条直线上。这时我们既可以用直线来拟合(模型1),也可以用二阶多项式(模型2)拟合,也可以用三阶多项式(模型3),特别地,用N-1阶多项式便能够保证肯定能完美通过N个数据点。那么,这些可能的模型之中到底哪个是最靠谱的呢?奥卡姆剃刀:越是高阶的多项式越是不常见垃圾邮件过滤实例:问题:给定一封邮件,判定它是否属于垃圾邮件D来表示这封邮件,注意D由N个单词组成。我们用h+来表示垃圾邮件,h-表示正常邮件P(h+|D)=P(h+)*P(D|h+)/P(D)P(h-|D)=P(h-)*P(D|h-)/P(D)垃圾邮件过滤实例:先验概率:P(h+)和P(h-)这两个先验概率都是很容易求出来的,只需要计算一个邮件库里面垃圾邮件和正常邮件的比例就行了。D里面含有N个单词d1,d2,d3,P(D|h+)=P(d1,d2,..,dn|h+)P(d1,d2,..,dn|h+)就是说在垃圾邮件当中出现跟我们目前这封邮件一模一样的一封邮件的概率是多大!P(d1,d2,..,dn|h+) 扩展为:P(d1|h*P(d2|d1,h+)*P(d3|d2,d1,h+)*..垃圾邮件过滤实例:P(d1|h+)*P(d2|d1,h+)*P(d3|d2,d1,h+)*..假设di与di-1是完全条件无关的(朴素贝叶斯假设特征之间是独立,互不影响)简化为P(d1|h+)*P(d2|h+)*P(d3|h+)*..对于P(d1|h+)*P(d2|h+)*P(d3|h+)*..只要统计di这个单词在垃圾邮件中出现的频率即可支持向量机支持向量机SupportVectorMachine要解决的问题:什么样的决策边界才是最好的呢?特征数据本身如果就很难分,怎么办呢?计算复杂度怎么样?能实际应用吗?目标:基于上述问题对SVM进行推导SupportVectorMachine决策边界:选出来离雷区最远的(雷区就是边界上的点,要LargeMargin)距离的计算数据标签定义数据集:(X1,Y1)(X2,Y2)…(Xn,Yn)Y为样本的类别:当X为正例时候Y=+1 当X为负例时候Y=-1: 决策方程 其中是对数据做了变换,后面继续说): => =>优化的目标通俗解释:找到一个条线(w和b),使得离该线最近的点(雷区)能够最远将点到直线的距离化简得:(由于 所以将绝对值展开原始依旧成立)目标函数放缩变换:对于决策方程(w,b)可以通过放缩使得其结果值|Y|>=1=> (之前我们认为恒大于0,现在严格了些优化目标:,只需要考虑由于 (目标函数搞定!),只需要考虑目标函数当前目标
1||𝑊||
,约束条件:常规套路:将求解极大值问题转换成极小值问题
𝑤,𝑏
1𝑤22如何求解:应用拉格朗日乘子法求解拉格朗日乘子法带约束的优化问题: 原式转换:我们的式子:(约束条件不要忘: )SVM求解分别对w和b求偏导,分别得到两个条件(由于对偶性质)-> 对w求偏导:对b求偏导:SVM求解带入原始:其中 完成了第一步求解SVM求解条件:极大值转换成求极小值:条件:SVM求解实例数据:3个点,其中正例X1(3,3),X2(4,3),负例X3(1,1)求解:约束条件:SVM求解实例由于:原式: ,将数据代入由于:化简可得:SVM求解实例分别对ɑ1和ɑ2求偏导,偏导等于0可得:(并不满足约束条件 ,所以解应在边界上)带入原式=-0.153(不满足约束带入原式=-0.25 (满足啦!)最小值在(0.25,0,0.25)处取得SVM求解实例将ɑ结果带入求解𝑤=
1 ∗1∗ 3,3 +1∗1∗1 ∗18+1∗44−1 ∗6
∗ −1 ∗ 1,1 =1 12 2,𝑏= 𝑦 −𝑛 𝑎1 12 2,
𝑥)=1 −𝑖 𝑖=1 𝑖
𝑖 𝑗
=−2+2=0SVM求解实例支持向量:真正发挥作用的数据点,ɑ值不为0的点soft-margin软间隔:有时候数据中有一些噪音点,如果考虑它们咱们的线就不太好了之前的方法要求要把两类点完全分得开,这个要求有点过于严格了,我们来放松一点!为了解决该问题,引入松弛因子soft-margin新的目标函数:当C趋近于很大时:意味着分类严格不能有错误当C趋近于很小时:意味着可以有更大的错误容忍C是我们需要指定的一个参数!soft-margin拉格朗日乘子法:约束: 同样的解法:低维不可分问题核变换:既然低维的时候不可分,那我给它映射到高维呢?低维不可分问题目标:找到一种变换的方法,也就是 (𝑋)低维不可分问题支持向量机低维不可分问题支持向量机支持向量机SupportVectorMachine高斯核函数:线性核函数 高斯和函数推荐系统推荐系统19444人在进行视频或语音聊天万部优酷土豆视频被观看共产生701,389账号登陆App上已有51,000个app。。。推荐系统推荐系统 推荐系统推荐系统推荐系统推荐系统协同过滤协同过滤如果你现在想看个电影,但你不知道具体看哪部,你会怎么做?如何确定一个用户是不是和你有相似的品位?如何将邻居们的喜好组织成一个排序的目录?要实现协同过滤,需要的步骤?收集用户偏好找到相似的用户或物品计算推荐协同过滤相似度计算相似度计算相似度计算欧几里德距离(EuclideanDistance)皮尔逊相关系数(PearsonCorrelationCoefficient)Cosine相似度(CosineSimilarity)皮尔逊相关系数(PearsonCorrelationCoefficient)协方差皮尔逊相关系数Pearson相关系数是用协方差除以两个变量的标准差得到的相似度计算皮尔逊相关系数相似度计算相似度计算邻居的选择固定数量的邻居基于相似度门槛的邻居协同过滤协同过滤基于用户的协同过滤基于用户的协同过滤要解决的问题已知用户评分矩阵MatrixR(一般都是非常稀疏的)推断矩阵中空格emptycells处的值UserCF存在的问题issues对于一个新用户,很难找到邻居用户。对于一个物品,所有最近的邻居都在其上没有多少打分。基础解决方案相似度计算最好使用皮尔逊相似度考虑共同打分物品的数目,如乘上min(n,N)/N n:共同打分数N:指定阈值对打分进行归一化处理设置一个相似度阈值相似度计算相似度计算基于用户的协同过滤为啥不流行?稀疏问题数百万的用户计算,这量?人是善变的协同过滤协同过滤基于物品的协同过滤基于物品的协同过滤优势!计算性能高,通常用户数量远大于物品数量可预先计算保留,物品并不善变 r_51=(0.41*2+0.59*3)/(0.41+0.59)=2.6用户冷启动问题引导用户把自己的一些属性表达出来利用现有的开放数据平台根据用户注册属性推荐排行榜单物品冷启动问题文本分析主题模型打标签推荐排行榜单协同过滤协同过滤协同过滤协同过滤基于用户的推荐 基于物品的推荐实时新闻 图书突然情况 电子商务电影。。。隐语义模型隐语义模型隐语义模型从数据出发,进行个性化推荐用户和物品之间有着隐含的联系隐含因子让计算机能理解就好将用户和物品通过中介隐含因子联系起来隐语义模型分解隐语义模型隐语义模型求解梯度下降方向:迭代求解:隐语义模型负样本选择对每个用户,要保证正负样本的平衡(数目相似)选取那些很热门,而用户却没有行为的物品对于用户—物品集K{(u,i)}其中如果(u,i)是正样本,则有𝑟𝑢𝑖=1,负样本则𝑟𝑢𝑖=0隐语义模型参数选择隐特征的个数F,通常F=100学习速率alpha,别太大正则化参数lambda,别太大负样本/正样本比例ratio协同过滤VS隐语义原理:协同过滤基于统计,隐语义基于建模空间复杂度,隐语义模型较小实时推荐依旧难,目前离线计算多隐语义模型咋解释呢?不解释评估指标评估指标评估标准:准确度:令R(u)是根据用户在训练集上的行为给用户作出的推荐列表,T(u)是用户在测试集上的行为列表评估标准:覆盖率:多样性:推荐系统推荐系统推荐系统推荐系统少©©翠皂tree1 tree21_+2 1_f-2+f-
O.9)=4 +目标函数:如何最优函数解?集成算法的表示:少©©翠皂少©©翠皂un的补un的补y勾,)=)勾,=)+f2矿 +儿(xi)'.,...(t)yi\
=骂1 儿(功=y- 1) +f心
加入一个新的函数第t轮的模型预测
t
轮的模型预测树的结构叶子的向甄儿(动=西,wET ,q:d {1,2,' T树的结构叶子的向甄1=,3lj云宫,l`qf11=,3lj云宫,l`qw2:;:;::Q_1 w3=-1叶子的个数 的L2平方Q1,3 (40.011)Leaf1 Leaf2 Leaf3w1=+2 w2=0.1 W3=-1现在还剩下一个问题,我们如何选择每一轮加入什么f呢?答案是非常直接的,选取一个f来使得我们的目标函数尽量最大地降低少©©翠皂少©©翠皂() =:l(i- 仁1) 十几立))+fl(!t)+=艺=1
三 三 亿)f心1
]国 (ft)+canst一般叫做残差目标Objt) =趴l - 1) +儿+fl(ft)+用泰勒展开来近似我们原来的目标泰勒展开:
m+ 江 )f(x)+ f'(x)凶 +少f”(x)凶泸定义:少=g伈—l)l(y小1),九=吩 l )l(yi,y()))::::::骂己[l(yt一1))+吵(实)+杻 f妇+(八+consant己[小(xi)+杻疗Xi)]+ft)e i = 8i)l(i,(- 1) ),从=笱l) l(yi,y())样本上遍历叶子节点上遍历少©©翠皂() 竺1=立1
gift()+执f妇)十9 (ft)9心 (m)十少九;也1 +叮,入卢=1 =骂=1 心iEj 9 )W j 十园(L记j 九十]三 Ti=Ii 9i 几=j hiOb(t) =骂(Ii 少叨+忙J hi十]+1'T=骂仇少(Hi+1'T带回原目标函数少©©翠皂少©©翠皂Obj代表了当我们脂定 我们以把它叫做结构(structurescore)样本号 梯度数据e1gt.e1心2g2h心23.,34g4 .h44
={l}=911:h1
12=G2=94H4==h4
I3=..3咽5G3=g2 +g3 +g&伪=场+如+h`5g6.h55
Obj =-贮 飞 卢+勹'这个分数越小,代表这个树的勹'加入新叶千节点引入的度代价'/加入新叶千节点引入的度代价Ga/
2 H吐入十肛入/
历 +H\
_入] T子树分数 \右子树分数
不分割我们可以拿到的分数对于每次扩展,我们还是 要枚举 所有可能的 分割方案,如何 高效 地枚 举所有的 分割昵我假设我枚举所有x<a这样的条件,对于某个特定的 分割迈仿们要计笋 a左边和 右边的导 数和。a@1J1 ,@= +g4
h2 h5 g3,lh3GR==92+g3+9线性判别分析(LDA线性判别分析(LDA)LinearDiscriminantAnalysis用途:数据预处理中的降维,分类任务历史:RonaldA.Fisher在1936年提出了线性判别方法目标:LDA关心的是能够最大化类间区分度的坐标轴成分将特征空间(数据集中的多维样本)投影到一个维度更小的k维子空间中,同时保持区分类别的信息LinearDiscriminantAnalysis原理:投影到维度更低的空间中,使得投影后的点,会形成按类别区分,一簇一簇的情况,相同类别的点,将会在投影后的空间中更接近方法LinearDiscriminantAnalysis监督性:LDA是“有监督”的,它计算的是另一类特定的方向投影:找到更合适分类的空间与PCA不同,更关心分类而不是方差数学原理原始数据: 变换数据:目标:找到该投影 LinearDiscriminantAnalysisLDA分类的一个目标是使得不同类别之间的距离越远越好,同一类别之中的距离越近越好均值:投影后的均值:分离:每类样例的 均值:投影后的均值:分离:投影后的两类样本中心点尽量 线性判别分析(LDA)LinearDiscriminantAnalysis只最大化J(w)就可以了?X1的方向可以最大化J(w),但是却分的不好散列值:样本点的密集程度,值越大,越分散,反之,越集中:同类之间应该越密集些:线性判别分析(LDA线性判别分析(LDA)LinearDiscriminantAnalysis目标函数::散列值公式展开:散列矩阵(scattermatrices):S1+S2:LinearDiscriminantAnalysis分子展开:𝑆𝐵称作类间散布矩阵:最终目标函数:LinearDiscriminantAnalysis分母进行归一化:如果分子、分母是都可以取任意值的,那就会使得有无穷解,我们将分母限制为长度为1拉格朗日乘子法:的逆:两边都乘以(w就是矩阵的特征向量了)的逆:主成分分析(PCA主成分分析(PCA)PrincipalComponentAnalysis用途:降维中最常用的一种手段目标:提取最有价值的信息(基于方差)问题:降维后的数据的意义?向量的表示及基变换:解释 :设向量B的模为1,则A与B的内积值等于A向B所在直线投影的矢量长度主成分分析(PCA)向量的表示及基变换::基:(1,0)和(0,1)叫做二维空间中的一组基主成分分析(PCA)基变换基是正交的(即内积为0,或直观说相互垂直)要求:线性无关主成分分析(PCA主成分分析(PCA)基变换变换:数据与一个基做内积运算,结果作为第一个新的坐标分量,然后与第二个基做内积运算,结果作为第二个新坐标的分量:数据(3,2)映射到基中坐标:基变换两个矩阵相乘的意义是将右边矩阵中的每一列列向量变换到左边矩阵中每一行行向量为基所表示的空间中去协方差矩阵方差:方向:如何选择这个方向(或者说基)才能尽量保留最多的原始信息呢?一种直观的看法是:希望投影后的投影值尽可能分散方差:寻找一个一维基,使得所有数据变换为这个基上的坐标表示后,方差值最大时):协方差(假设均值为0时):协方差如果单纯只选择方差最大的方向,后续方向应该会和方差最大的方向接近重合。解决方案:为了让两个字段尽可能表示更多的原始信息,我们是不希望它们之间存在(线性)相关性的协方差:可以用两个字段的协方差表示其相关性当协方差为0时,表示两个字段完全独立。为了让协方差为0,选择第二个基时只能在与第一个基正交的方向上选择。因此最终选择的两个方向一定是正交的。优化目标将一组N维向量降为K维(K大于0,小于N),目标是选择K个单位正交基,使原始数据变换到这组基上后,各字段两两间协方差为0,字段的方差则尽可能大协方差矩阵:矩阵对角线上的两个元素分别是两个字段的方差,而其它元素是a和b的协方差。优化目标协方差矩阵对角化:即除对角线外的其它元素化为0,并且在对角线上将元素按大小从上到下排列协方差矩阵对角化:优化目标实对称矩阵:一个n行n列的实对称矩阵一定可以找到n个单位正交特征向量实对称阵可进行对角化:根据特征值的从大到小,将特征向量从上到下排列,则用前K行组成的矩阵乘以原始数据矩阵X,就得到了我们需要的降维后的数据矩阵YPCA实例数据:协方差矩阵:特征值: 特征向量:对角化:降维:EM算法EM算法Expectation-Maximization:最大似然EM算法推导GMM(高斯混合模型)最大似然估计一个栗子:假如你去赌场,但是不知道能不能赚钱,你就在门口堵着出来一个人就问一个赚了还是赔了,如果问了5个人都说赚了,那么你就会认为,赚钱的概率肯定是非常大的。已知:(1)样本服从分布的模型,(2)观测到的样本求解:模型的参数总的来说:极大似然估计就是用来估计模型参数的统计学方法最大似然数学问题(100名学生的身高问题)样本集X={x1,x2,…,xN}N=100概率密度:p(xi|θ)抽到男生i(的身高)的概率θ是服从分布的参数独立同分布:同时抽到这100个男生的概率就是他们各自概率的乘积最大似然数学问题(100名学生的身高问题)最大似然函数: (对数是为了乘法转加法)什么样的参数 能够使得出现当前这批样本的概率最大已知某个随机样本满足某种概率分布,但是其中具体的参数不清楚,参数估计就是通过若干次试验,观察其结果,利用结果推出参数的大概值。问题又难了一步现在这100个人中,不光有男生,还有女生(2个类别,2种参数)男生和女生的身高都服从高斯分布,但是参数不同(均值,方差)用数学的语言描述:抽取得到的每个样本都不知道是从哪个分布抽取的求解目标:男生和女生对应的身高的高斯分布的参数是多少加入隐变量用Z=0或Z=1标记样本来自哪个分布,则Z就是隐变量。最大似然函数求解:在给定初始值情况下进行迭代求解EM算法两个硬币的初始假设的分布A:0.6几率正面B:0.5几率正面投掷出5正5反的概率:pA=C(10,5)*(0.6^5)*(0.4^5)pB=C(10,5)*(0.5^5)*(0.5^5)选择硬币A的概率:pA/(pA+pB)=0.45选择硬币B的概率1-pA=0.55EM算法EM算法EM算法推导问题:样本集{x(1),…,x(m)},包含m个独立的样本。其中每个样本i对应的类别z(i)是未知的,所以很难用最大似然求解。上式中,要考虑每个样本在各个分布中的情况。本来正常求偏导就可以了,但是现在log后面还有求和,这就难解了!EM算法推导:乘 :为嘛这么干呢?说白了就是要凑-Jensen不等式(Q(z)是Z的分布函数)Jensen不等式设f是定义域为实数的函数,如果对于所有的实数x。如果对于所有的实数x,f(x)的二次导数大于等于0,那么f是凸函数。如果f是凸函数,X是随机变量,那么:E[f(X)]>=f(E[X])实线f是凸函数,X有0.5的概率是a,有0.5的概率是bX的期望值就是a和b的中值了Jensen不等式Jensen不等式应用于凹函数时,不等号方向反向于由 是 的期望于假设 则:Jensen不等式可得结论:下界比较好求,所以我们要优化这个下界来使得似然函数最大优化下界迭代到收敛Jensen不等式如何能使得等式成立呢?(取等号):Jensen中等式成立的条件是随机变量是常数:分布函数:Q(z)是z的分布函数:所有的分子和等于常数C(分母相同)Q(z)求解由上式可得C就是p(xi,z)对z求和Q(z)代表第i个数据是来自zi的概率EM算法流程初始化分布参数θE-step:根据参数θ计算每个样本属于zi的概率(也就是我们的Q)M-Step:根据Q,求出含有θ的似然函数的下界并最大化它,得到新的参数θ不断的迭代更新下去GMM(高斯混合模型)数据可以看作是从数个GaussianDistribution中生成出来的GMM由K个Gaussian分布组成,每个Gaussian称为一个“Component”类似k-means方法,求解方式跟EM一样不断的迭代更新下去CDALEVELⅠCDALEVELⅠCDALEVELⅠCDALEVELⅠCDALEVELⅠCDALEVELⅠIM GENET 22Kcategoriesand14Mimagesh r s irh r s ird e t Mammal d Mammal d s lormtionIerterate Materials s t结果呢?4:1李世石惨败人工智能的时代已经来临CDALEVELⅠCDALEVELⅠCDALEVELⅠCDALEVELⅠ无人驾驶汽车:行人检测标志识别速度识别。。。黑科技:ImageTransferContent+Style=Interestingthing(假设我们有一系列的标签:狗,猫,汽车,飞机。。。)猫一张图片被表示成三维数组的形式,每个像素的值从0到255例如:300*100*3口\口\、乙二7匕]匕匕]3丐`0口usioIn 收集数据并给定标签训练一个分类器测试,评估``三今厂 ^Jf■矗i,'J^Jf■矗i,'J4,J^I't`,jf"温.护-I't`,jf"温.护-^.?.,\``,,',IIIl,,JJ,__一、、K=3,3个邻居是2个红色三1个蓝色正方形三,,JJ,__一、、
少数从属于多数,基于统计的方法,判定绿色的这个待分类K=5,5个邻居是2个红色三3个蓝色的正方形,还是个待分一。对于未知类别属性数据集中的点:计算已知类别数据集中的点与当前点的距离按照距离依次排序选取与当前点距离最小的K个点确定前K个点所在类别的出现概率返回前K个点出现频率最高的类别作为当前点预测分类。概述:KNN算法本身简单有效,它是一种lazy-learning算法。分类器不需要使用训练集进行训练,训练时间复杂度为0。KNN分类的计算复杂度和训练集中的文档数目成正比,也就是说,如果训练集中文档总数为n,那么KNN的分类时间复杂度为O(n)。K值的选择,距离度量和分类决策规则是该算法的三个基本要素问题:该算法在分类时有个主要的不足是,当样本不平衡时,如一个类的样本容量很大,而其他类样本容量很小时,有可能导致当输入一个新样本时,该样本的K个邻居中大容量类的样本占多数解决:不同的样本给予不同权重项 10类标签50000个训练数据10000个测试数据大小均为32*32髻巨言昙\嘈酝记录所有训练数据对于每一个测试数据找出与其L1距离最小的样本的标签,作为它的标签归言置g(Manhattan)distance L2(Euclidean)distanced1(I1,I2)=)-Iilf-IIp
d1(I心)』I)
If- If对于距离如何设定?对于K近邻的K该如何选择?如果有的话,其它的超参数该怎么设定呢?多次用测试数据试验,找到做好的一组参数组合?错误的的想法,测试数据只能最终用验证集验证集交差验证用来调节参数``三今厂 (_32
Cfioss•validationomk.,],9-t--09-t--03P0F”2一0,2F”2一0_
睿..l•..lk。.02-20k。
20 如 61!1 印 100 冒景主昙选取超参数的正确方法是:将原始训练集分为训练集和验证集,我们在验证集上尝试不同的超参数,最后保留表现最好那个如果训练数据量不够,使用交叉验证少噪音。评价算法。最近邻分类器能够在上得到将近40%储所有训练数据,并且在测试的时候过于耗费计算能力最后,我们知道了仅仅使用L1和L2景和颜色被分类,而不是语义主体分身。预处理你的数据:对你数据中的特征进行归一化(normalize),让其具有零平均值(zeromean)和单位方差(unitvariance)。如果数据是高维数据,考虑使用降维方法,比如PCA将数据随机分入训练集和验证集。按照一般规律,70%-90数据作为训练集在验证集上调优,尝试足够多的k值,尝试L1和L2两种范数计算方式。(不同的变换和原图具有相同的L2距离)(32x32x3)
每个类别的得分权重权重实例16231Istretch16231I20.2-10.2-1.51.3。2,10.00.250.2-0.3w
1.1I 3.2 1 -1.2
l61.954-96.8xfl61.954-96.8x
catsc1ebdogscoreshipscoreb carclassifie「airplaneclassifier「class望失三覃catcar,g
3.25.1-1.7
i.3 4.9 2.5210 -3'望失邑覃g-1.72.0-3.1i=; (,Sj —S-1.72.0-3.1catcarfrog
=max(O,5.1-3.2+1)+max(O,-1.7-3.2+1)=max(O,2.9)+max(O,-3.9)=2.9+0=2.9=max(O,1.3 -4.9+1)+max(O,2.0-4.9+1)=max(O,-2.6)+max(O,-1.9)=O+O=O=max(O,2.2-(-3.1)+1)+max(O,2.5-(-3.1)+1)=max(O,5.3)+max(O,5.'6)=5.3+5.'6=10.9望失三覃望失三覃,corescores「「la. ,,erorcorrect-1l,sf(x,W)==W兀L = 士区汇片严m x (,f(;)i-
Xi;W)1/i+I)尤1, 1,1,1]叭1, 0,0,OJ四0.250.25,0.25,0.2句正则化惩罚项[L2三胃亿gR(W)=江l l,兀1, 1,1, 1]W1 ==0,0,O]W2[0.25,0.25,0250.25]叶x= 扣=1多类别分类 Softmax的输出是概率```冈@量``Ig(z)=l-6 -4 -2 0 2 4 6Softmax的输出(归一化的分类概率)损失函数:交叉熵损失(cross-entropyloss)被称作softmax函数其输入值是一个向量,向量中元素为任意实数的评分值输出一个向量,其中每个元素值在0到1之间,且所有元素之和为1飘f[gcatcar
(=kX =平)=j e 伈;|Ii =P (Y = i|X = m)|3.21 i = - g亏 )frog -1.7@觅实例g-log()catcarfrog
3.25 1-1.7
,
I 24.5116 41010.18
n o rmaize卡
0.31- _i=-10 (0.3)=0.8910.870.00晕仇化ge.g.sf兀Softmaxe阴
rizationlossLi
-log(可言) )八ri=并i(,j - Si +1))八rL—责E卢Li+R(W) Fullloss巳、c:::::J 、匕3亡]巳、c:::::J 、匕3亡]DDo三、霄、霆置鬓皇/ x)
/位+h)·- f位)
defeval_numerical_gradient(i,x):''"''anaiveimplementationofnumericalgradientoffatx-fshouldbeafunctionthat takesasingleargumentlimd兀 h- O h
-xis thepoint (nupy「ray)oevaluatee gradient工fx=f(x)#evdlLJdLerunctIVa1ueaior1g1JidlµoinLgrad=np.zeros(x.shape)工h=0.00001IfIfiterateoveraHindexesinxt=n.p.nditer(x,flgs=['uti_index'Lofls=I'redrte'])1n,1hilenot it.finished:fl.evaluatefunctionatx+hix=it.multiindexold—value=x[ix]x[ix]=old_value+h#incrementbyhfxh=f{x)#t!'valutef(x+h)x[ix]=ldvalue#restor-erepreviousvalue(very)#computethe
partial
der.lvat1vegrad[ix]=(fxh-fx} /h#theslopeit.iternext()#steptonextdimensionreturngrad鬓度丁饕gwnile True..ei1htsg1rad =evalua
egradient(loss_fuJ data, eights)e1ght1 =匾stepsize *
ei1ghts_grad # perform param Bachsize通常是2的整数倍(32,64,128)训练网络时的LOSS值视化结果训练网络时的LOSS值视化结果学习享daita batch = s,,ldaita batch = s,,le_t raining_data(data, 256) # e25ei,ht,grd =evaluat,gradient(loss,fun, datbatch, )ei·hts = •- ste psize *eights,_:rad三言髻雪三言髻雪gxf= x 伈=详,max(0,sj- 1,+ 1 |xR(W)Ls(scores)R(W)Lw 三言髻雪g三言髻雪gf工Yzy)ze.g.X=-2,y=5,Z =-4|q =x +y 岂=岛=11
X -24 y 4
3 f -12 3|f==qz
时,
I
z-oo,彻,枷activations"localgradienf'activations"localgradienf'创侵f0.4三言髻雪gf(
1e-(0
16位)=1+ - sigmoidfunctione如(兀) e
( )( )1叩)))d兀 (1+e-x2(0.73)*(1-0.73)=0.2加法门单元:均等分配MAX门单元:给最大的饕经胃髦饕经胃髦gdendrites·
impulsescarriedtowardceUbody/,/
branchesminalnucleus axon xonimpulsescarried minalcellbody
ymc1I
axonfroma
synapsewoxo
(¥王+)WIX1
WiXi+
outputaxonactivationfunctionLi ==I:Li ==I:u max(O,Sj-Si +1)X I-R(W)L-R(W)Lw inputlayer
hiddenlayer1 hiddenlayer2
outputlayer线性方程:非线性方程:单层的神经网络:双层的神经网络:\h/people/karpathy/convnetjs/demo/classify2d.html正则化项在神经网络中的重要作用越多的神经元,就越能够表达能复杂的模型鬟活量覃鬟活量覃0 woaxonfromaneuron synaosendndcellcellbody11辽正 + b+)outputaxonactivationfunction鬟活量覃鬟活量覃Sigmoid6 伈/(1-6 -4 -2 0 2 4 6X I
. \ Ia闵 =1/(1+e勹'L 8 u L 1
x sgmoigate
,8x o \ / (,J|
—lO -5 lX I
\6 位-(O,x)'L8
彻 ,8北 6
gate I
1I0
斗斗
I
. - u ' `'5 l全零值初始化?丿灼勹伲气了g卷积神经网络组成:[INPUT-CONV-RELU-POOL-FC]输入层卷积层激活函数池化层全连接层 Input l。口匕口:":五0 ]l。口匕口12EEE121口尸尸12670 2 1267
(+pad
1) (7x7x3) Filter WO (3x3x3)o011飞o(:o011ooEEEoo。2门门门。2歹0 [:谓:谓1 ]
1 [:,T0 001—101[:"'
Output 巨 0[谓:谋巨 5 -474 —17。。。。10[:谓:伍1 ]1
(3x3x2))3x3x3(]]01-110w__120022102112200-1)3x3x3(]]01-110w__120022102112200000-1000
3 2 0255]1-21五__,__1w1 [255]1-21五__,__110—1 10111-111:,,.0 :,,.0 。。。10000
Bias 11 [:
(lxlxl)::,TO]11010100000001101010000000ooooooo2102ooooooo2102000112100工ut Volu卫三
(+pad
1) (7x7x3)
Filter WO (3x3x3)
Filter
W1 (3x3x3)
Output
(3x3x2)文[:" :,,O] 心O[:,,:,,O]
..
1 [
:乒O]
o[:,,:,,oo0oo01111口E E2221 1 0
口口口仁仁巨厂叮厂门rwO[:,,.:,,.1 ]ooo2ooo22
.“...
0 0 -110。。-1 110。。1 [ :,,.:,T1 ]0 0 1
3 汀474-174。。。。0 [:,T:,T1 ]3 2 022657510210211020ooo22657510210211020ooo文[:,T:0200200
—1iM1 [ :0—1 1011-11
—12 111:,TO]0。012:,TO]0。01210000
Bias 00010001 [:
(lxlxl)::,TO][: ":00010120100111020210000001012010011102021000000
toggle movement00000000000000..01,-..01,-_
(+pad
1) (7x7x3)
Filter WO (3x3x3)
Filter
Output
(3x3x2))3x3x3w文[:,.:,.)3x3x3w
TfNO[:,,.:,,.0 ]
1 [:,
0 [:,T:,T0 ]101111o101111oo
口匕口。210。210口门口
口口口 0 0_1021112门门口—仁E E _1021112门门口—
3 —5E4 —4 —7。。'11。。'11五__ooo2551-0001020o文[:,,.:,,.1 2551-0001020o121000 0 012100
0 2 0,
立0 [:谓:“ 1 ]。—-_ 于。
飞1 [:,T1。0 01。0-10'2,1_W1 '2,1_W10—1 11011-11
0 [:,T:267(『'1222123 2267(『'1222120100210221000(lxlxl)010021022100010100:,,.0 ]10100
Bias 1 [:,,.
(lxlxl)I00000文[ :,,.:,,.2 ]00000oooo0112010200120110202010000oooo01120102001201102020100000
toggleITLOVen归nt10000001000000输入=7x7Filter=3x3Pad=1Output=?输入大小为:W1xH1xD1需要指定的超参数:filter个数(K),filter大小(F),步长(S),边界填充(P)输出:..一..一一,._--·“:I|-'-;多中·'·''·-'--'-"-"'.r.`_192凶2••-,.. I.“-·'I\L -'书f一丘..一\!]"'--一,.--·`l2l02Maxpool128Maxpoo|ing忒而128[Krizhevskyetal.2012]1(simii)tt:
..型m` :5]IT or4 亡]1:611lststrie,d0]MAX,:3i「stsre2]M:lizatn「]:,i,x5lststrie,d2]MAX:3「stt]:lzanl
ide2]:43lststrie,d1]:43lststrie,d1]:,i3lststrie,d1]MAX,
3:,stt
ide2FC6:4096neurons[4096]FC7:4096neuronsFC8:1000neurons(classscores)ConvNetConfigurationA A-LRN B C D layen; layers 、 laycm layers 4 CaseStudy:VGGNet 1A A-LRN B C D layen; layers 、 laycm layers 4 nd,
conv3-64I
convJ-64
input(224x224RGBin1aI conv3-64
conv364Only3x3CONVstridepad1
LRN tonv3-凶 covcov-128conv3-128conv3-128conv3-128conv3-128conv3-12conv3-128conv3-128conv3-l28conv3-12and 2x2MAXPOOLstride2
maxpool
conv3-256
conv3-256
conv3-256 convl-2561-256conv3-256 conv3-256bestmodel
lIIconv3-51 51I nv512m3-512couv3-512couv3-5122convl-512top5errorinILSVRC2013->
maxpooIFC-4096FC-4096NehvorKTable2:Numberofparameters(inNehvorK
onv3-512top5error
I,-LN|lf3 1占1心1上:(] memory: *3K 1:o (tcountingON3:1]memor:**M 1:3*3*)4=ON3:1]memor:4**M 1:3*34)4=:4Imemory:*K 1:OON3:]memory:I 1ms:*3)18=ON3:]memory:I 1ms:*31)*8=POOL2:[56x56x128memory:「amsOON3:]memory:*6*Kp1s:(3*3*6=,ONV]memory:*6*Kp1s:(3)*6=,ONV]memory:*6*Kp1s:(3*3)*6=,POOL2:]memory:params:OON3:]memory:*Kp1s:(3*3)*2=ON3:]memory:*DKp1s:(3*3**2=ON3:i]mem「y:*Kp1s:(3*3**2=CONV3-512:]memory:14*14*512CONV3-512:]memory:14*14*512=1DOKp1s:(3*3**2=CONV3-512:]14*14*512=1DOKp1s:(3*3**2=CONV3-512:[14x14x512]memory:14*14*512=1OOKp1s:(3*3*)*2=:] memory: 77*=K「1:OFC:memory:6 1m:7*6=,FC:memory:6 1m:*46=FC:memory:1000params:40'96*1000=4,096,000TOTAL「y24M*4bytes......93MB/image「d~*2bwd),「ams:138Mparameters
t廿gurationB—13weigl1tlayers—put(224Xc一_,coonconvJ..convl..5l0
16wei吐tI19layerDCOiDeoonvj..52IJeoCOl:`:`门gLoadand]abel
“cat”... 一一嘈乒 CNN m1image
11mpute1- eesw1o u ch,g,g e
占72620aq2S312209.634630340916649q23455三B6675592S1778g68SS.4334E9637321363D070016442Dq53三jaJ19勹三心24.33心.B17532E227521672SjSEDq,6236109535632·-,2S3305,2363531-7三932,qqT5,293529352,-,E656OD•S3572g01OS'+3? 602153525,17E39.9q2GE.0534632E3323S96.52377704e955+C,Whatthecomputersees- Trnonransfr:e dVERYwidelyused:`:`门gHori
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年乌鲁木齐县带编教师招聘考试备考题库及答案解析
- 2026年乡城县带编教师招聘考试备考试题及答案解析
- 河南省许昌市2027年中考数学仿真试卷(含答案解析)
- 2026年海晏县带编教师招聘笔试参考题库及答案解析
- DB32/T 5307-2025 苏服码编码规范
- 2026年宝应县带编教师招聘考试备考试题及答案解析
- 2026年巧家县带编教师招聘考试参考题库及答案解析
- 2026年青阳县带编教师招聘考试模拟试题及答案解析
- 2026年五华县带编教师招聘考试备考试题及答案解析
- 2026年太白县带编教师招聘笔试模拟试题及答案解析
- 工程质量通病防治手册(2025修订)
- 物业礼仪服务培训
- 铁路劳动安全培训课程课件
- 服务心理学(第四版)课件 项目一 任务一 认 识 服 务 行 业
- 天然气中氦气含量测定规范
- 煤层气地质学课件
- 2022机电工程安装工艺细部节点做法
- DB44T 1242-2013 水产饲料添加剂β-1,3-D-葡聚糖
- 公司后勤安全培训课件
- 大象版心理健康六年级全册教学设计教案
- 2025年高考地理大题答题模板汇编
评论
0/150
提交评论