
机器学习算法
龙王.*?
向来心是看客心,奈何人是剧中人。
展开
-
LRN
发展时间点局部响应归一化这个方法流行于2012年的 AlexNet网络,它将这种方法付诸实践,验证了它的可行性。在caffe框架和tensorflow框架中,这都是经常和卷积、池化配合使用的方法。作用时间点:LRN一般是在激活、池化后进行的一中处理方法AlexNet网络的亮点由于网络的深度不小,抛弃原始的sigmoid激活函数,改用relu,且效果更好,避免后期梯度消失的问题在最后的几层全连接上使用了dropout方法,一定程度上避免过拟合现象抛弃原始的平均池化,全部改用最大值池化翻译 2020-11-13 22:01:44 · 428 阅读 · 0 评论 -
优化算法篇(三)——AdaGrad(自适应梯度算法)、RMSProp
目录前言python实现前言这前面两篇不同的是,这篇优化算法的学习率明面上是不断变换,且每个维度的学习率都尽相同。具体算法过程上图所示。可以发现它是通过累加平方梯度的方式,来改变学习率。这使得在平缓的地方,由于梯度值小,对应学习的下降幅度就会小;对于陡峭的地方,由于梯度值大。对应的学习率就会相对大幅下降,使得更加平缓,从而加快训练速度。缺点:AdaGrad会记录之前的所有梯度之和,这使得这个结果会越来越大,从而使得后面学习率会无限接近0,从而使得权值无法得到更新。为了改善这点,后面会介翻译 2020-11-12 17:16:43 · 6823 阅读 · 1 评论 -
优化算法篇(二)——Momentum
目录前言BGD 使用动量SGD 使用动量MBGD 使用动量总结前言Momentum是在前面简单的梯度下降上添加一个动量,从物理角度上看就是给了它一个惯性,使得在一直下落的路上,速度越来越快,而在遇到局部最优,有可能借着惯性冲出去。优点:使得物体的震荡减弱,更快地运动到最优解grad1=β∗grad0+(1−β)∗∂loss∂θjgrad_{1} = \beta*grad_{0} + (1- \beta)*\frac{\partial loss}{\partial\theta_{j}}grad1翻译 2020-11-12 16:05:18 · 2017 阅读 · 0 评论 -
优化算法篇(一)——BGD、SGD、MBGD
目录前言BGDpython实现SGDpython实现MBGDpython实现总结前言在优化之前,我们需要确定优化的目标,在机器学习或深度学习上,优化的目标一般都是损失函数。损失函数的种类很多,场景不同,选择也不同。这里,我们以简单的均方误差为例。下面以简单的线性回归函数为例。假定对m个n维样本进行拟合x = [x11x12...x1nx21x22...x2n.........xm1xm2...xmn]mn(1) \left[ \begin{matrix} x_{11} &x_{12翻译 2020-11-12 11:36:51 · 937 阅读 · 0 评论 -
CNN——epoch、iteration、batchsize
目录概念换算关系示例概念epoch训练时,使用所有数据集对模型进行一次完整的训练,称为一次epochbatch_size在训练集中选择一组样本用来更新权值,1batch包含的样本数目,通常设为2的n次幂,如64、125、256。网络较小使用256,较大使用64.iteration每迭代一次权值更新一次,一个batch训练时经过一次前向传播和后向传播。一个迭代就是完成一次epoch所需的batch个数。换算关系NumberofBatches=TrainingSetSi翻译 2020-09-29 21:38:52 · 3474 阅读 · 0 评论 -
手撕SVM——硬间隔
原理上面这幅图,存在两类线性可分的数据,在两个数据集之间存在无数个可进行分割的超平面,而SVM的目的是找到几何间隔最大的超平面,且这个超平面是唯一存在的。如上图的超平面WTX + b = 0,就是上图数据集的几何间隔最大超平面。推导过程假设给定一个特征空间上的训练数据集T = {(x1,y1),(x2,y2),…(xn,yn)}。其中xi∈\in∈Rn,yi∈\in∈{-1,+1}。设超平面为ω\omegaωTx + b = 0 ,则yi = ω\omegaω×\times×xi+ byi翻译 2020-08-25 18:31:50 · 323 阅读 · 0 评论 -
Python手写决策树算法
数据集准备web站点的用户在线浏览行为及最终购买行为,每个用户的在线浏览行为信息包括:每个用户的来源网站、用户的ip位置、是否阅读FAQ、浏览网页数目。目标分类为用户类型:游客、基本用户、高级用户算法支持模型数结构特征选择连续值处理缺失值处理剪枝ID3分类多叉树信息增益不支持不支持不支持C4.5分类多叉树信息增益比支持支持支持CART分类、回归二叉树基尼指数、均方差支持支持支持my_data=[['slashdot'翻译 2020-06-10 14:48:19 · 927 阅读 · 0 评论 -
机器学习算法(3:决策树算法)
一、决策树简介决策树是附加概率结果的一个树状的决策图,是直观的运用统计概率分析的图法。机器学习中决策树是一个预测模型,它表示对象属性和对象值之间的一种映射,一颗决策树是一棵有向无环树,它由若干个节点、分支、分裂谓词以及类别组成。树中的每一个节点表示对象属性的判断条件,其分支表示符合节点条件的对象。树的叶子节点表示对象所属的预测结果。原创 2017-07-30 12:27:39 · 814 阅读 · 0 评论 -
python机器学习(2:KNN算法)
1、KNN简介:knn算法是监督学习中分类方法的一种。它又被叫k近邻算法,是一个概念极其简单而分类效果又很优秀的分类算法。核心思想:在训练集中选出离输入的数据最近的k个数据,根据这k个数据的类别判断输入数据的类别,k个数据的类别判断方法可以是k个中出现次数最多的类别,也可以根据距离计算权重,再选出权重最大的类别,等等。准确率的制约:k值的大小和判断类别的方法原创 2017-07-17 14:54:36 · 605 阅读 · 0 评论 -
python机器学习(1:K_means聚类算法)
一、算法介绍 K-means算法是最简单的也是最著名的划分聚类算法,由于简洁和效率使得他成为所有聚类算法中最广泛使用的。算法的目的是使各个样本与所在均值的误差平方和达到最小(这也是评价K-means算法最后聚类效果的评价标准)这里小编给大家推荐两个不错的学习链接:网易公开课博客二、算法步骤解析(以二维点集为例)从平面中原创 2017-07-14 12:55:02 · 955 阅读 · 0 评论