图解机器学习 | 逻辑回归算法详解

本文涉及的产品
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
模型训练 PAI-DLC,5000CU*H 3个月
交互式建模 PAI-DSW,每月250计算时 3个月
简介: 逻辑回归简单有效且可解释性强,是机器学习领域最常见的模型之一。本文讲解逻辑回归算法的核心思想,并讲解sigmoid函数、梯度下降、解决过拟合、线性/非线性切分等重要知识点。

ShowMeAI研究中心

作者:韩信子@ShowMeAI
教程地址http://www.showmeai.tech/tutorials/34
本文地址http://www.showmeai.tech/article-detail/188
声明:版权所有,转载请联系平台与作者并注明出处
收藏 ShowMeAI 查看更多


引言

本篇内容我们给大家介绍机器学习领域最常见的模型之一:逻辑回归。它也是目前工业界解决问题最广泛作为 baseline 的解决方案。逻辑回归之所以被广泛应用,因为其简单有效且可解释性强。

本文的结构如下:

  • 第1部分:回顾机器学习与分类问题。回顾机器学习中最重要的问题之一分类问题,不同的分类问题及数学抽象。
  • 第2部分:逻辑回归核心思想。介绍线性回归问题及逻辑回归解决方式,讲解逻辑回归核心思想。
  • 第3部分:Sigmoid 函数与分类器决策边界。介绍逻辑回归模型中最重要的 Sigmoid 变换函数,以及不同分类器得到的决策边界。
  • 第4部分:模型优化使用的梯度下降算法。介绍模型参数学习过程中最常使用到的优化算法:梯度下降。
  • 第5部分:模型过拟合问题与正则化。介绍模型状态分析及过拟合问题,以及缓解过拟合问题可以使用的正则化手段。
  • 第6部分:特征变换与非线性切分。介绍由线性分类器到非线性分类场景,对特征可以进行的变换如构建多项式特征,使得分类器得到分线性切分能力。

(本篇逻辑回归算法的部分内容涉及到机器学习基础知识,没有先序知识储备的宝宝可以查看ShowMeAI的文章 图解机器学习 | 机器学习基础知识)。

1.机器学习与分类问题

1)分类问题

分类问题是机器学习非常重要的一个组成部分,它的目标是根据已知样本的某些特征,判断一个样本属于哪个类别。分类问题可以细分如下:

  • 二分类问题:表示分类任务中有两个类别新的样本属于哪种已知的样本类。
  • 多类分类(Multiclass Classification)问题:表示分类任务中有多类别。
  • 多标签分类(Multilabel Classification)问题:给每个样本一系列的目标标签。

逻辑回归算法详解; 机器学习算法分类; 4-1

2)分类问题的数学抽象

从算法的角度解决一个分类问题,我们的训练数据会被映射成 equation?tex=n 维空间的样本点(这里的 equation?tex=n 就是特征维度),我们需要做的事情是对 equation?tex=n 维样本空间的点进行类别区分,某些点会归属到某个类别。

下图所示的是二维平面中的两类样本点,我们的模型(分类器)在学习一种区分不同类别的方法,比如这里是使用一条直线去对 equation?tex=2 类不同的样本点进行切分。

逻辑回归算法详解; 机器学习算法分类; 分类问题; 4-2

常见的分类问题应用场景很多,我们选择几个进行举例说明:

  • 垃圾邮件识别:可以作为二分类问题,将邮件分为你「垃圾邮件」或者「正常邮件」。
  • 图像内容识别:因为图像的内容种类不止一个,图像内容可能是猫、狗、人等等,因此是多类分类问题。
  • 文本情感分析:既可以作为二分类问题,将情感分为褒贬两种,还可以作为多类分类问题,将情感种类扩展,比如分为:十分消极、消极、积极、十分积极等。

2.逻辑回归算法核心思想

下面介绍本次要讲解的算法——逻辑回归( Logistic Regression)。逻辑回归是线性回归的一种扩展,用来处理分类问题。

1)线性回归与分类

分类问题和回归问题有一定的相似性,都是通过对数据集的学习来对未知结果进行预测,区别在于输出值不同

  • 分类问题的输出值是离散值(如垃圾邮件和正常邮件)。
  • 回归问题的输出值是连续值(例如房子的价格)。


既然分类问题和回归问题有一定的相似性,那么我们能不能在回归的基础上进行分类呢

可以想到的一种尝试思路是,先用线性拟合,然后对线性拟合的预测结果值进行量化,即将连续值量化为离散值——即使用『线性回归+阈值』解决分类问题

我们来看一个例子。假如现在有一个关于肿瘤大小的数据集,需要根据肿瘤的大小来判定是良性(用数字 equation?tex=0 表示)还是恶性(用数字 equation?tex=1 表示),这是一个很典型的二分类问题。

逻辑回归算法详解; 算法核心思想; 线性回归+阈值; 4-3

如上图,目前这个简单的场景我们得到一个直观的判定:肿瘤的大小大于 equation?tex=5,即为恶性肿瘤(输出为 equation?tex=1 );肿瘤的大小等于 equation?tex=5,即为良性肿瘤(输出为 equation?tex=0 )。

下面我们尝试之前提到的思路,使用一元线性函数 equation?tex=h%28x%29%20%3D%20%5Ctheta_0%2B%5Ctheta_1x 去进行拟合数据,函数体现在图片中就是这条黑色直线。

逻辑回归算法详解; 算法核心思想; 线性回归+阈值; 4-4

这样分类问题就可以转化为:对于这个线性拟合的假设函数,给定一个肿瘤的大小,只要将其带入假设函数,并将其输出值和 equation?tex=0.5 进行比较:

  • 如果线性回归值大于 equation?tex=0.5,就输出 equation?tex=1 (恶性肿瘤)。
  • 如果线性回归值小于 equation?tex=0.5,就输出 equation?tex=0 (良性肿瘤)。

逻辑回归算法详解; 算法核心思想; 线性回归+阈值; 4-5

上图的数据集中的分类问题被完美解决。但如果将数据集更改一下,如图所示,如果我们还是以 equation?tex=0.5 为判定阈值,那么就会把肿瘤大小为 equation?tex=6 的情况进行误判为良好。

所以,单纯地通过将线性拟合的输出值与某一个阈值进行比较,这种方法用于分类非常不稳定。

2)逻辑回归核心思想

因为「线性回归+阈值」的方式很难得到鲁棒性好的分类器,我们对其进行拓展得到鲁棒性更好的逻辑回归( Logistic Regression,有些地方也叫做「对数几率回归」)。逻辑回归将数据拟合到一个logit函数中,从而完成对事件发生概率的预测。

如果线性回归的结果输出是一个连续值,而值的范围是无法限定的,这种情况下我们无法得到稳定的判定阈值。那是否可以把这个结果映射到一个固定大小的区间内(比如 equation?tex=0%20%5Csim%201 ),进而判断呢。

当然可以,这就是逻辑回归做的事情,而其中用于对连续值压缩变换的函数叫做 Sigmoid 函数(也称 Logistic 函数,S函数)。

逻辑回归算法详解; 算法核心思想; Sigmoid函数; 4-6

Sigmoid 数学表达式为:

equation?tex=S%28x%29%20%3D%20%5Cdfrac%7B1%7D%7B1%2Be%5E%7B-x%7D%7D

可以看到 equation?tex=S 函数的输出值在 equation?tex=0equation?tex=1 之间。

3. Sigmoid 函数与决策边界

刚才大家见到了 Sigmoid 函数,下面我们来讲讲它和线性拟合的结合,如何能够完成分类问题,并且得到清晰可解释的分类器判定「决策边界」。

1)分类与决策边界

决策边界就是分类器对于样本进行区分的边界,主要有线性决策边界(linear decision boundaries)和非线性决策边界(non-linear decision boundaries),如下图所示。

逻辑回归算法详解; Sigmoid函数; 分类与决策边界; 4-7

2)线性决策边界生成

那么,逻辑回归是怎么得到决策边界的呢,它与 Sigmoid 函数又有什么关系呢?

如下图中的例子:

如果我们用函数 equation?tex=g 表示 Sigmoid 函数,逻辑回归的输出结果由假设函数 equation?tex=h_%7B%5Ctheta%7D%28x%29%3Dg%5Cleft%28%5Ctheta_%7B0%7D%2B%5Ctheta_%7B1%7D%20x_%7B1%7D%2B%5Ctheta_%7B2%7D%20x_%7B2%7D%5Cright%29 得到。

对于图中的例子,我们暂时取参数 equation?tex=%5Ctheta_%7B0%7D%E3%80%81%5Ctheta_%7B1%7D%20%E3%80%81%5Ctheta_%7B2%7D 分别为 equation?tex=-3equation?tex=1equation?tex=1,那么对于图上的两类样本点,我们代入一些坐标到 equation?tex=h_%7B%5Ctheta%7D%28x%29,会得到什么结果值呢。

逻辑回归算法详解; Sigmoid函数; 线性决策边界生成; 4-8

  • 对于直线上方的点 equation?tex=%5Cleft%20%28%20x_%7B1%7D%2C%20%20x_%7B2%7D%20%5Cright%20%29 (例如 equation?tex=%5Cleft%20%28%20100%2C%20%20100%20%5Cright%20%29 ),代入 equation?tex=-3%2B%20x_%7B1%7D%2B%20x_%7B2%7D,得到大于 equation?tex=0 的取值,经过 Sigmoid 映射后得到的是大于 equation?tex=0.5 的取值。
  • 对于直线下方的点 equation?tex=%5Cleft%20%28%20x_%7B1%7D%2C%20%20x_%7B2%7D%20%5Cright%20%29 (例如 equation?tex=%5Cleft%20%28%200%2C%20%200%20%5Cright%20%29 ),代入 equation?tex=-3%2B%20x_%7B1%7D%2B%20x_%7B2%7D,得到小于 equation?tex=0 的取值,经过 Sigmoid 映射后得到的是小于 equation?tex=0.5 的取值。

如果我们以 equation?tex=0.5 为判定边界,则线性拟合的直线 equation?tex=-3%2B%20x_%7B1%7D%2B%20x_%7B2%7D%20%3D%200 变换成了一条决策边界(这里是线性决策边界)。

3)非线性决策边界生成

其实,我们不仅仅可以得到线性决策边界,当 equation?tex=h_%7B%5Ctheta%7D%28x%29 更复杂的时候,我们甚至可以得到对样本非线性切分的非线性决策边界(这里的非线性指的是无法通过直线或者超平面把不同类别的样本很好地切分开)。

如下图中另外一个例子:如果我们用函数 equation?tex=g 表示 Sigmoid 函数,逻辑回归的输出结果由假设函数 equation?tex=h_%7B%5Ctheta%7D%28x%29%3Dg%5Cleft%28%5Ctheta_%7B0%7D%2B%5Ctheta_%7B1%7D%20x_%7B1%7D%2B%5Ctheta_%7B2%7D%20x_%7B2%7D%2B%5Ctheta_%7B3%7D%20x_%7B1%7D%5E%7B2%7D%2B%5Ctheta_%7B4%7D%20x_%7B2%7D%5E%7B2%7D%5Cright%29 得到。

对于图中的例子,我们暂时取参数 equation?tex=%5Ctheta_%7B0%7D%20%E3%80%81%5Ctheta_%7B1%7D%20%E3%80%81%5Ctheta_%7B2%7D%20%E3%80%81%5Ctheta_%7B3%7D%20%E3%80%81%5Ctheta_%7B4%7D 分别为 equation?tex=-1equation?tex=0equation?tex=0equation?tex=1equation?tex=1,那么对于图上的两类样本点,我们代入一些坐标到 equation?tex=h_%7B%5Ctheta%7D%28x%29,会得到什么结果值呢。

逻辑回归算法详解; Sigmoid函数; 非线性决策边界生成; 4-9

  • 对于圆外部的点 equation?tex=%5Cleft%20%28%20x_%7B1%7D%2C%20%20x_%7B2%7D%20%5Cright%20%29 (例如 equation?tex=%5Cleft%20%28%20100%2C%20%20100%20%5Cright%20%29 ),代入 equation?tex=%5Ctheta_%7B0%7D%2B%5Ctheta_%7B1%7D%20x_%7B1%7D%2B%5Ctheta_%7B2%7D%20x_%7B2%7D%2B%5Ctheta_%7B3%7D%20x_%7B1%7D%5E%7B2%7D%2B%5Ctheta_%7B4%7D%20x_%7B2%7D%5E%7B2%7D,得到大于 equation?tex=0 的取值,经过 Sigmoid 映射后得到的是大于 equation?tex=0.5 的取值。
  • 对于圆内部的点 equation?tex=%5Cleft%20%28%20x_%7B1%7D%2C%20%20x_%7B2%7D%20%5Cright%20%29 (例如 equation?tex=%5Cleft%20%28%200%2C%20%200%20%5Cright%20%29 ),代入 equation?tex=%5Ctheta_%7B0%7D%2B%5Ctheta_%7B1%7D%20x_%7B1%7D%2B%5Ctheta_%7B2%7D%20x_%7B2%7D%2B%5Ctheta_%7B3%7D%20x_%7B1%7D%5E%7B2%7D%2B%5Ctheta_%7B4%7D%20x_%7B2%7D%5E%7B2%7D,得到小于 equation?tex=0 的取值,经过 Sigmoid 映射后得到的是小于 equation?tex=0.5 的取值。

如果我们以 equation?tex=0.5 为判定边界,则线性拟合的圆曲线 equation?tex=-1%2Bx_%7B1%7D%5E2%2Bx_%7B2%7D%5E2%3D0 变换成了一条决策边界(这里是非线性决策边界)。

4.梯度下降与优化

1)损失函数

前一部分的例子中,我们手动取了一些参数 equation?tex=%5Ctheta 的取值,最后得到了决策边界。但大家显然可以看到,取不同的参数时,可以得到不同的决策边界。

哪一条决策边界是最好的呢?我们需要定义一个能量化衡量模型好坏的函数——损失函数(有时候也叫做「目标函数」或者「代价函数」)。我们的目标是使得损失函数最小化。

我们如何衡量预测值和标准答案之间的差异呢?最简单直接的方式是数学中的均方误差。它的计算方式很简单,对于所有的样本点 equation?tex=x_%7Bi%7D,预测值 equation?tex=h_%7B%5Ctheta%7D%28x_%7Bi%7D%29 与标准答案 equation?tex=y_%7Bi%7D 作差后平方,求均值即可,这个取值越小代表差异度越小。

equation?tex=MSE%3D%5Cfrac%7B1%7D%7Bm%7D%20%5Csum_%7Bi%3D1%7D%5E%7Bm%7D%5Cleft%28f%5Cleft%28x_%7Bi%7D%5Cright%29-y_%7Bi%7D%5Cright%29%5E%7B2%7D

均方误差对应的损失函数:均方误差损失(MSE)在回归问题损失定义与优化中广泛应用,但是在逻辑回归问题中不太适用。 Sigmoid 函数的变换使得我们最终得到损失函数曲线如下图所示,是非常不光滑凹凸不平的,这种数学上叫做非凸的损失函数(关于损失函数与凸优化更多知识可以参考ShowMeAI的文章 图解AI数学基础 | 微积分与最优化),我们要找到最优参数(使得函数取值最小的参数)是很困难的。

逻辑回归算法详解; 梯度下降与优化; 均方差损失函数; 4-10

解释:在逻辑回归模型场景下,使用MSE得到的损失函数是非凸的,数学特性不太好,我们希望损失函数如下的凸函数。凸优化问题中,局部最优解同时也是全局最优解,这一特性使得凸优化问题在一定意义上更易于解决,而一般的非凸最优化问题相比之下更难解决。

我们更希望我们的损失函数如下图所示,是凸函数,我们在数学上有很好优化方法可以对其进行优化。

逻辑回归算法详解; 梯度下降与优化; 均方差损失函数; 4-11

在逻辑回归模型场景下,我们会改用对数损失函数(二元交叉熵损失),这个损失函数同样能很好地衡量参数好坏,又能保证凸函数的特性。对数损失函数的公式如下:

equation?tex=J%28%5Ctheta%29%3D-%5Cfrac%7B1%7D%7Bm%7D%5Cleft%5B%5Csum_%7Bi%3D1%7D%5E%7Bm%7D%20y%5E%7B%28i%29%7D%20%5Clog%20h_%7B%5Ctheta%7D%5Cleft%28x%5E%7B%28i%29%7D%5Cright%29%2B%5Cleft%281-y%5E%7B%28i%29%7D%5Cright%29%20%5Clog%20%5Cleft%281-h_%7B%5Ctheta%7D%5Cleft%28x%5E%7B%28i%29%7D%5Cright%29%5Cright%29%5Cright%5D

其中 equation?tex=y%5E%7B%28i%29%7D 表示样本取值,在其为正样本时取值为 equation?tex=1,负样本时取值为0,我们分这两种情况来看看:

逻辑回归算法详解; 梯度下降与优化; 对数损失函数 ; 4-12

equation?tex=%5Coperatorname%7BCost%7D%5Cleft%28h_%7B%5Ctheta%7D%28x%29%2C%20y%5Cright%29%3D%5Cleft%5C%7B%5Cbegin%7Barray%7D%7Bll%7D%20-%5Clog%20%5Cleft%28h_%7B%5Ctheta%7D%28x%29%5Cright%29%20%26%20%5Ctext%20%7B%20if%20%7D%20y%3D0%20%5C%5C%20-%5Clog%20%5Cleft%281-h_%7B%5Ctheta%7D%28x%29%5Cright%29%20%26%20%5Ctext%20%7B%20if%20%7D%20y%3D1%20%5Cend%7Barray%7D%5Cright.

  • equation?tex=y%5E%7B%28i%29%7D%3D0:当一个样本为负样本时,若 equation?tex=h_%7B%5Ctheta%7D%28x%29 的结果接近 equation?tex=1 (即预测为正样本),那么 equation?tex=-%20%5Clog%20%5Cleft%281-h_%7B%5Ctheta%7D%5Cleft%28x%5Cright%29%5Cright%29 的值很大,那么得到的惩罚就大。
  • equation?tex=y%5E%7B%28i%29%7D%3D1:当一个样本为正样本时,若 equation?tex=h_%7B%5Ctheta%7D%28x%29 的结果接近 equation?tex=0 (即预测为负样本),那么 equation?tex=-%20%5Clog%20%5Cleft%28h_%7B%5Ctheta%7D%5Cleft%28x%5Cright%29%5Cright%29 的值很大,那么得到的惩罚就大。

2)梯度下降

损失函数可以用于衡量模型参数好坏,但我们还需要一些优化方法找到最佳的参数(使得当前的损失函数值最小)。最常见的算法之一是「梯度下降法」,逐步迭代减小损失函数(在凸函数场景下非常容易使用)。如同下山,找准方向(斜率),每次迈进一小步,直至山底。

逻辑回归算法详解; 梯度下降与优化; 梯度下降; 4-13

梯度下降(Gradient Descent)法,是一个一阶最优化算法,通常也称为最速下降法。要使用梯度下降法找到一个函数的局部极小值,必须向函数上当前点对应梯度(或者是近似梯度)的反方向的规定步长距离点进行迭代搜索。

逻辑回归算法详解; 梯度下降与优化; 梯度下降; 4-14

上图中,equation?tex=%5Calpha 称为学习率(learning rate),直观的意义是,在函数向极小值方向前进时每步所走的步长。太大一般会错过极小值,太小会导致迭代次数过多。

逻辑回归算法详解; 梯度下降与优化; 梯度下降-学习率; 4-15

(关于损失函数与凸优化更多知识可以参考ShowMeAI的文章 图解AI数学基础 | 微积分与最优化,关于监督学习的更多总结可以查看ShowMeAI总结的速查表手册 AI知识技能速查 | 机器学习-监督学习

5.正则化与缓解过拟合

1)过拟合现象

在训练数据不够多,或者模型复杂又过度训练时,模型会陷入过拟合(Overfitting)状态。如下图所示,得到的不同拟合曲线(决策边界)代表不同的模型状态:

  • 拟合曲线1能够将部分样本正确分类,但是仍有较大量的样本未能正确分类,分类精度低,是「欠拟合」状态。
  • 拟合曲线2能够将大部分样本正确分类,并且有足够的泛化能力,是较优的拟合曲线。
  • 拟合曲线3能够很好的将当前样本区分开来,但是当新来一个样本时,有很大的可能不能将其正确区分,原因是该决策边界太努力地学习当前的样本点,甚至把它们直接「记」下来了。

逻辑回归算法详解; 正则化&缓解过拟合; 过拟合现象; 4-16

拟合曲线中的「抖动」,表示拟合曲线不规则、不光滑(上图中的拟合曲线3),对数据的学习程度深,过拟合了。

2)正则化处理

过拟合的一种处理方式是正则化,我们通过对损失函数添加正则化项,可以约束参数的搜索空间,从而保证拟合的决策边界并不会抖动非常厉害。如下图为对数损失函数中加入正则化项(这里是一个L2正则化项)

逻辑回归算法详解; 正则化&缓解过拟合; 正则化处理; 4-17

equation?tex=J%28%5Ctheta%29%3D%5Cfrac%7B1%7D%7Bm%7D%20%5Csum_%7Bi%3D1%7D%5E%7Bm%7D%5Cleft%5B-y%5E%7B%28i%29%7D%20%5Clog%20%5Cleft%28h_%7B%5Ctheta%7D%5Cleft%28x%5E%7B%28i%29%7D%5Cright%29%5Cright%29-%5Cleft%281-y%5E%7B%28i%29%7D%5Cright%29%20%5Clog%20%5Cleft%281-h_%7B%5Ctheta%7D%5Cleft%28x%5E%7B%28i%29%7D%5Cright%29%5Cright%29%5Cright%5D%2B%5Cfrac%7B%5Clambda%7D%7B2%20m%7D%20%5Csum_%7Bj%3D1%7D%5E%7Bn%7D%20%5Ctheta_%7Bj%7D%5E%7B2%7D


其中 equation?tex=%5Clambda 表示正则化系数,表示惩罚程度,equation?tex=%5Clambda 的值越大,为使 equation?tex=J%28%5Ctheta%29 的值小,则参数 equation?tex=%5Ctheta 的绝对值就得越小,通常对应于越光滑的函数,也就是更加简单的函数,因此不易发生过拟合的问题。我们依然可以采用梯度下降对加正则化项的损失函数进行优化。

6.特征变换与非线性表达

1)多项式特征

对于输入的特征,如果我们直接进行线性拟合再给到 Sigmoid 函数,得到的是线性决策边界。但添加多项式特征,可以对样本点进行多项式回归拟合,也能在后续得到更好的非线性决策边界。

逻辑回归算法详解; 特征变换; 多项式特征 ; 4-18

多项式回归,回归函数是回归变量多项式。多项式回归模型是线性回归模型的一种,此时回归函数关于回归系数是线性的。

在实际应用中,通过增加一些输入数据的非线性特征来增加模型的复杂度通常是有效的。一个简单通用的办法是使用多项式特征,这可以获得特征的更高维度和互相间关系的项,进而获得更好的实验结果。

2)非线性切分

如下图所示,在逻辑回归中,拟合得到的决策边界,可以通过添加多项式特征,调整为非线性决策边界,具备非线性切分能力。

  • equation?tex=Z_%7B%5Ctheta%7D%28x%29equation?tex=%5Ctheta 是参数,当 equation?tex=Z_%7B%5Ctheta%7D%28x%29%20%3D%20%5Ctheta_%7B0%7D%20%2B%20%5Ctheta_%7B1%7Dx 时,此时得到的是线性决策边界;
  • equation?tex=Z_%7B%5Ctheta%7D%28x%29%20%3D%20%5Ctheta_%7B0%7D%20%2B%20%5Ctheta_%7B1%7Dx%20%2B%20%5Ctheta_%7B2%7Dx%5E2 时,使用了多项式特征,得到的是非线性决策边界。

逻辑回归算法详解; 非线性表达; 非线性切分; 4-19

目的是低维线性不可分的数据转化到高维时,会变成线性可分。得到在高维空间下的线性分割参数映射回低维空间,形式上表现为低维的非线性切分。

更多监督学习的算法模型总结可以查看ShowMeAI的文章 AI知识技能速查 | 机器学习-监督学习


视频教程

可以点击 B站 查看视频的【双语字幕】版本

frameLabelStart--frameLabelEnd

https://www.bilibili.com/video/BV1y44y187wN?p=4

机器学习【算法】系列教程

机器学习【实战】系列教程

ShowMeAI 系列教程推荐

ShowMeAI用知识加速每一次技术成长

相关实践学习
使用PAI-EAS一键部署ChatGLM及LangChain应用
本场景中主要介绍如何使用模型在线服务(PAI-EAS)部署ChatGLM的AI-Web应用以及启动WebUI进行模型推理,并通过LangChain集成自己的业务数据。
机器学习概览及常见算法
机器学习(Machine Learning, ML)是人工智能的核心,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。 本课程将带你入门机器学习,掌握机器学习的概念和常用的算法。
目录
相关文章
|
30天前
|
机器学习/深度学习 人工智能 自然语言处理
【MM2024】阿里云 PAI 团队图像编辑算法论文入选 MM2024
阿里云人工智能平台 PAI 团队发表的图像编辑算法论文在 MM2024 上正式亮相发表。ACM MM(ACM国际多媒体会议)是国际多媒体领域的顶级会议,旨在为研究人员、工程师和行业专家提供一个交流平台,以展示在多媒体领域的最新研究成果、技术进展和应用案例。其主题涵盖了图像处理、视频分析、音频处理、社交媒体和多媒体系统等广泛领域。此次入选标志着阿里云人工智能平台 PAI 在图像编辑算法方面的研究获得了学术界的充分认可。
【MM2024】阿里云 PAI 团队图像编辑算法论文入选 MM2024
|
18天前
|
机器学习/深度学习 算法 Java
机器学习、基础算法、python常见面试题必知必答系列大全:(面试问题持续更新)
机器学习、基础算法、python常见面试题必知必答系列大全:(面试问题持续更新)
|
26天前
|
机器学习/深度学习 人工智能 算法
【玉米病害识别】Python+卷积神经网络算法+人工智能+深度学习+计算机课设项目+TensorFlow+模型训练
玉米病害识别系统,本系统使用Python作为主要开发语言,通过收集了8种常见的玉米叶部病害图片数据集('矮花叶病', '健康', '灰斑病一般', '灰斑病严重', '锈病一般', '锈病严重', '叶斑病一般', '叶斑病严重'),然后基于TensorFlow搭建卷积神经网络算法模型,通过对数据集进行多轮迭代训练,最后得到一个识别精度较高的模型文件。再使用Django搭建Web网页操作平台,实现用户上传一张玉米病害图片识别其名称。
50 0
【玉米病害识别】Python+卷积神经网络算法+人工智能+深度学习+计算机课设项目+TensorFlow+模型训练
|
1月前
|
机器学习/深度学习 算法 决策智能
【机器学习】揭秘深度学习优化算法:加速训练与提升性能
【机器学习】揭秘深度学习优化算法:加速训练与提升性能
|
30天前
|
机器学习/深度学习 算法 Python
探索机器学习中的决策树算法:从理论到实践
【10月更文挑战第5天】本文旨在通过浅显易懂的语言,带领读者了解并实现一个基础的决策树模型。我们将从决策树的基本概念出发,逐步深入其构建过程,包括特征选择、树的生成与剪枝等关键技术点,并以一个简单的例子演示如何用Python代码实现一个决策树分类器。文章不仅注重理论阐述,更侧重于实际操作,以期帮助初学者快速入门并在真实数据上应用这一算法。
|
6天前
|
机器学习/深度学习 人工智能 算法
探索机器学习中的决策树算法
【10月更文挑战第29天】本文将深入浅出地介绍决策树算法,一种在机器学习中广泛使用的分类和回归方法。我们将从基础概念出发,逐步深入到算法的实际应用,最后通过一个代码示例来直观展示如何利用决策树解决实际问题。无论你是机器学习的初学者还是希望深化理解的开发者,这篇文章都将为你提供有价值的见解和指导。
|
1月前
|
机器学习/深度学习 算法 知识图谱
【机器学习】逻辑回归原理(极大似然估计,逻辑函数Sigmod函数模型详解!!!)
【机器学习】逻辑回归原理(极大似然估计,逻辑函数Sigmod函数模型详解!!!)
|
1月前
|
机器学习/深度学习 算法 大数据
机器学习入门:梯度下降算法(下)
机器学习入门:梯度下降算法(下)
|
27天前
|
机器学习/深度学习 算法 数据处理
EM算法对人脸数据降维(机器学习作业06)
本文介绍了使用EM算法对人脸数据进行降维的机器学习作业。首先通过加载ORL人脸数据库,然后分别应用SVD_PCA、MLE_PCA及EM_PCA三种方法实现数据降维,并输出降维后的数据形状。此作业展示了不同PCA变种在人脸数据处理中的应用效果。
29 0
|
1月前
|
机器学习/深度学习 算法
【机器学习】逻辑回归介绍(逻辑回归应用场景,原理,损失及优化详解!!!)
【机器学习】逻辑回归介绍(逻辑回归应用场景,原理,损失及优化详解!!!)