![](https://img-blog.csdnimg.cn/20190918140037908.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
机器学习
本专栏以吴恩达老师机器学习视频为蓝本,记录机器学习内容。
开门儿大弟子
这个作者很懒,什么都没留下…
展开
-
机器学习笔记(15)— 基本概念batch、batchsize、epoch、iteration
本文主要介绍机器学习中的四个基本概念,batch、batchsize、epoch、iteration,这几个概念对于初学者来说容易混淆。因此在次记录一下。深度学习中的优化算法就是梯度下降算法,通过该算法来进行参数的优化,参数的优化过程是通过计算损失函数来实现的。但是计算损失函数时如果每次都遍历整个数据集,会影响运行效率。为了解决这个问题,目前使用较多的是mini-batch梯度下降法。(关于梯度下降的内容,大家可以看我的这两篇文章。梯度下降法、梯度下降法的改进)。其中“梯度下降法的改进”一文中,指出了两种原创 2020-11-25 23:58:30 · 3824 阅读 · 0 评论 -
机器学习笔记(14)—工作流程
本文主要介绍机器学习的流程以及K折验证方法和ROC曲线评价方法。1.流程1.1定义问题首先你要确定,你需要解决的问题。确定输入数据的类型,明确需要预测的分类(二分类、多分类、标量回归、向量回归、聚类等等)。明确输入输出之后确定目标函数。在开发出模型之前,这些都只是假设,等待验证。比如你收集了包含输出X和目标Y的很多样例,并不意味着X包含足够多的信息来预测Y。例如非平稳问题,假设你想要构建一个服装推荐引擎,并在一个月(八月)的数据上训练,然后在冬天开始生成推荐结果。一个大问题是,人们购买服装的种类是随着原创 2020-08-20 10:36:51 · 132 阅读 · 0 评论 -
机器学习笔记(13)—梯度下降法的改进
本文介绍梯度下降法的改进算法,主要是随机梯度下降法和最小梯度下降法。1.随机梯度下降法随机梯度下降法:大数据集使用梯度下降法计算时间长。因此改进梯度下降法。假设目标函数和代价函数为:代价函数曲线如图所示。梯度下降法为:我们使用梯度下降法一直更新参数θ。但是,当m值很大时,计算量十分大,因为需要对m个样本进行求和。随机梯度下降法中的代价函数定义为:参数更新过程为:其中:2.mini-batch梯度下降法批量梯度下降法使用的所有样本的来更新参数,最小化梯度下降法是使用样本中的b原创 2020-07-25 15:20:35 · 608 阅读 · 0 评论 -
机器学习笔记(12)— K均值算法
本文主要介绍K均值的运行原理、代价函数、聚类数量的选择等内容。1.运行原理假如有以下数据集,并且要将其分为两类。首先使用生成两个聚类中心(图中的红蓝点)。之后该算法会计算每个样本点和两个聚类中心的距离,根据距离的远近把样本点分配给聚类中心。第一次聚类之后的结果如下:之后K-均值算法根据之前计算出来的距离移动聚类中心,移动之后的结果如下所示。之后重复之前的过程,完成聚类。通过以上例子,可知K-均值的计算过程是:首先随机初始化K个聚类中心。之后计算样本与K个聚类中心的距离,选择最近的聚原创 2020-07-18 17:01:18 · 658 阅读 · 0 评论 -
机器学习笔记(11)—支持向量机
本节主要介绍支持向量机的内容,主要包括损失函数,应用过程等。1.损失函数在前文的逻辑回归中,我们讲过逻辑回归的模型为:其图像为:由前文可知:如果分类结果为y=1,那么我们就希望损失函数的值接近于1,此时z >> 0;如果分类结果为y=0,那么我们就希望损失函数的值接近于0,此时z << 0;其COST项为:把h_θ (x)带入:当y=1时,其Cost项的曲线为:当损失值很小时,z项很大。这就是在逻辑回归中在y=1时,将z想设置为很大的原因。图中的棕色曲线原创 2020-06-13 18:40:24 · 451 阅读 · 0 评论 -
机器学习笔记(10)—方差和偏差
本节主要介绍如何利用偏差和方差发现训练过程中的问题。1.一些小问题模型选择是指选择合适的目标函数,选择特征来构造算法,选择合适的学习率λ。选择合适的目标函数:把数据集分为训练集(60%),验证集(20%),测试集(20%)。使用验证集检测训练集上得到的目标函数,之后在测试集上检验。2.方差和偏差图中的J_cv (θ)表示验证集的代价函数,J_train (θ)表示训练集的代价函数。横轴代表目标函数的最高次项。偏差问题是指在训练集和验证集上的误差均比较大,而且两者接近。方差问题是指在训练集上的误差原创 2020-06-13 18:17:50 · 231 阅读 · 0 评论 -
机器学习笔记(9)— 神经网络的参数初始化、架构选择、训练过程
本文主要介绍神经网络的参数初始化、架构选择、训练过程1.神经网络的参数初始化我们以下网络为例:在之前介绍回归时,我们设置为0,若在神经网络中设置参数也为0,那么:这意味着,每次使用梯度下降法,虽然把权值参数更新了,但是,每一个节点对于下一层网络的所有参数均是相同的。上一层网络把相同的函数输入了下一层网络,即下一层网络虽然有很多的节点,但是其实他们计算的函数都是相同的。这是高度冗余的现象。为了避免这中情况,我们使用随机初始化设置所有的参数。在随机初始化时要注意,参数仍然是一个接近0的随机数。2原创 2020-05-30 14:12:54 · 568 阅读 · 0 评论 -
机器学习笔记(8)— 反向传播(BP网络)
本文主要介绍反向传播的代价函数,应用过程,梯度检测等内容。1.反向传播我们使用反向传播计算导数项(为了求最小代价函数,可以对比梯度下降法导数的作用)。反向传播,就是对每一个节点求误差。根据反向传播的定义:其中,δ j^((i))代表第i层,第j个节点的误差,代表第i层,第j个节点的拟合结果,yi代表实际值。将上式写成向量形式为:我们以上边的4层网络为例:表示整个网络的误差,接下来我们要求第三层和第二层网络的误差:其中,以上就是反向传播。反向传播是指,从输出层开始计算误差,然后一层原创 2020-05-30 14:04:21 · 283 阅读 · 0 评论 -
机器学习笔记(7)— 神经网络
1.神经网络本文主要介绍神经网络定义,前向神经网络的推导,神经网络的特点等。2.神经网络的定义工神经网络(Artificial Neural Networks,简写为ANNs)也简称为神经网络(NNs)或称作连接模型(Connection Model),它是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。设计神经网络最初的目的是制造能够模拟大脑的机器。3.前向神经网络3.1两层网络原创 2020-05-24 16:36:43 · 549 阅读 · 0 评论 -
机器学习笔记(5)— 逻辑回归
1.二分类逻辑回归即分类问题,本文以二分类(将数据及分为两类)为例。主要讲解逻辑回归的数学模型,决策边界以及代价函数等。2.逻辑回归模型假设逻辑回归的目标函数为:其中:则目标函数为:其图像为:假设h_θ (x)≥0.5时预测的y=1, h_θ (x)<0.5时,预测的y=0。当h_θ (x)≥0.5时,即〖g(θ〗^T x)≥0.5,从图中我们可以看出z>0当时,满足〖g(θ〗^T x)≥0.5。因此,我们知道,当满足:预测的值y=1。3.决策边界假设目标函数为:原创 2020-05-22 18:23:20 · 255 阅读 · 0 评论 -
机器学习笔记(4)— 多特征变量
1.多特征变量本文主要介绍多特征变量的梯度下降法和特征缩放内容。2.多特征(多变量)多特征变量的目标函数为:假设x0 = 1,则目标函数为:把特征量x看作是一个向量:把特征量的参数也看做一个向量:所以目标函数可以表示为:多特征量的目标函数,又叫多元线性回归。3.多特征的梯度下降目标函数为:代价函数为:由上文可知所以代价函数为:单变量梯度下降法中:多变量梯度下降法类似:4.特征缩放特征缩放的目的是解决不同特征之间数值差异过大导致代价函数的等值线细长的问题原创 2020-05-21 14:29:26 · 1013 阅读 · 0 评论 -
机器学习笔记(3)— 向量和矩阵的计算
1.向量和矩阵本部分主要街上向量和矩阵的运算,数学原理不做介绍。主要介绍直接使用python的numpy库进行矩阵的简单计算。2矩阵计算主要是,加法、乘法、逆矩阵、转置的计算。import numpy as npa = np.array( [[1,2,3], [4, 5,6], [7,8,9]] )b = np.array( [[10,11,12], [13,14,15], [16原创 2020-05-19 12:01:30 · 297 阅读 · 0 评论 -
机器学习笔记(2)— 梯度下降法
本文主要介绍机器学习中的梯度下降法以及梯度下降与线性回归的结合部分。1.梯度下降法的思想根据上文介绍,我们知道了代价函数为:我们需要求代价函数的最小值,即:梯度下降法的思想是:(1)首先给定 θ0, θ1(这两值具体取多少不重要,通常是将 θ0, θ1均设置为0)(2)接下来不停改变这两个值,从而使J( θ0, θ1)取得最小值。2.梯度下降法的通俗解释图1如图1所示为代价函数与 θ0, θ1 两个参数的三维模型。纵轴代表代价函数的值,平面代表 θ0, θ1组成的平面。图2图原创 2020-05-16 17:21:23 · 734 阅读 · 2 评论 -
机器学习笔记(1)— 基本概念和线性回归
本专栏主要是依据吴恩达老师机器学习的视频内容总结的机器学习笔记。本次主要介绍结机器学习的基础概念,包括机器学习的概念以及有监督和无监督学习的概念,同时简单介绍线性回归。1.什么是机器学习计算机从程序经验E中学习,解决某一任务T,进行某一性能的度量P,通过P测定在T上的表现因经验E而提高。简单来说就是从大量的数据学习中,得到一个符合现实的规律模型,通过模型来预测某个数据的结果。2.什么是监督学习首先给算法一个包含正确答案的数据集,通过训练来调整目标函数的参数,使用目标函数获得更多的正确答案。监督学习中原创 2020-05-16 16:31:21 · 389 阅读 · 0 评论 -
机器学习笔记(6)正则化讲解
1.文章内容本文主要是为了讲解机器学习中正则化的内容,主要包括过拟合讲解,正则化抑制过拟合的数学推导等部分。再看本文内容之前,需要学习范数知识。2.过拟合如上如所示,其中红色虚线,代表欠拟合。即根据数据拟合出来的模型不能完全反应数据的变化情况。该数学模型为:绿色曲线代表拟合的情况正好可以反应数据的变化情况。该数学模型为:蓝色曲线代表过拟合,过拟合将所有的数据都拟合在同一个曲线上,但是这样就会使拟合出来的曲线复杂。该数学模型为:过拟合虽然可以将所有的数据拟合在一个精确模型中,在机器学习中,原创 2020-05-09 17:19:51 · 242 阅读 · 0 评论 -
机器学习笔记(6)— 预备知识-范数
本文范数说明本文中讲解的范数是为讲解正则化内容而做的铺垫,因此不涉及过多过难的范数讲解。主要讲解L-0, L-1, L-2,L- ∞等范数。1. L-P范数的定义公式中的w代表n维向量。2. L-0范数L0范数即为向量中非零元素的个数。 例如:w={2,10,99,0,50}则其L0范数为:3.L-1范数依据范数定义,则L1-范数为:若w为二维向量,即(w1,w2),则L-1范数表示为:令:则L-1范数的图像为:4.L-2范数依据范数定义,则L2范数为:若w为二原创 2020-05-09 16:06:27 · 439 阅读 · 0 评论