回归预测|梯度下降详解

在了解梯度下降(Gradient Descent)之前,我们先要知道有关线性回归的基本知识,这样可以进一步的加深对梯度下降的理解,当然梯度下降(Gradient Descent)并不单单只能进行回归预测,它还可以进行诸如分类等操作。

关于线性回归的具体讲解本文不详细涉及,只简单列出几个相关公式。(关于线性回归可以看这篇 👉传送门)

翻译|Gradient Descent in Python

1
2
3
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
1
plt.style.use(['ggplot'])

当你初次涉足机器学习时,你学习的第一个基本算法就是 梯度下降 (Gradient Descent), 可以说梯度下降法是机器学习算法的支柱。 在这篇文章中,我尝试使用 `python` 解释梯度下降法的基本原理。一旦掌握了梯度下降法,很多问题就会变得容易理解,并且利于理解不同的算法。

如果你想尝试自己实现梯度下降法, 你需要加载基本的 \(python\) \(packages\) —— \(numpy\) and \(matplotlib\)

机器学习|层次聚类方法 (Python 语言描述)

在之前的文章中,我们学习了划分聚类方法,并着重介绍了其中的 K-Means 算法。K-Means 算法可以说是用处非常广泛的聚类算法之一,它非常好用。但是,当你使用过这种算法之后,你就会发现一个比较让人「头疼」的问题,那就是我们需要手动指定 K 值,也就是聚类的类别数量。

预先确定聚类的类别数量看起来是个小事情,但是在很多时候是比较麻烦的,因为我们可能在聚类前并不知道数据集到底要被聚成几类。例如,下面的示意图中,感觉聚成 2 类或者 4 类都是比较合理的。

使用 Mini Batch K-Means 进行图像压缩

针对一张成都著名景点:锦里的图片,通过 Mini Batch K-Means 的方法将相近的像素点聚合后用同一像素点代替,以达到图像压缩的效果。

机器学习|划分聚类之 K-Means 详解 (Python 语言描述)

划分聚类,顾名思义,通过划分的方式将数据集划分为多个不重叠的子集(簇),每一个子集作为一个聚类(类别)。

在划分的过程中,首先由用户确定划分子集的个数 `k`,然后随机选定 `k` 个点作为每一个子集的中心点,接下来通过迭代的方式:计算数据集中每个点与各个中心点之间的距离,更新中心点的位置;最终将数据集划分为 `k` 个子集,即将数据划分为 `k` 类。

而评估划分的好坏标准就是:保证同一划分的样本之间的差异尽可能的小,且不同划分中的样本差异尽可能的大。

机器学习|装袋和提升方法详解 (Python 语言描述)

前面的文章都是独立的讲解每一个分类器的分类过程,每一个分类器都有其独有的特点并非常适合某些数据。但在实际中,可能没有那样合适的数据,在应用前面的分类器时,可能会出现分类准确率低的问题。为解决这样的问题,集成学习便被提出,利用多个弱分类器结合的方式使得分类准确率提高。本次详细讲解了集成学习中十分经典的几个算法:装袋(Bagging)中的 Bagging tree 和随机森林(Ramdom Forest)以及 提升(Boosting)中的 Adaboost 和梯度提升树(GBDT)。

机器学习|决策树详解 (Python 语言描述)

决策树是一种特殊的树形结构,一般由节点和有向边组成。其中,节点表示特征、属性或者一个类,而有向边包含判断条件。决策树从根节点开始延伸,经过不同的判断条件后,到达不同的子节点。而上层子节点又可以作为父节点被进一步划分为下层子节点。一般情况下,我们从根节点输入数据,经过多次判断后,这些数据就会被分为不同的类别。这就构成了一颗简单的分类决策树。

机器学习|感知机和人工神经网络详解 (Python 语言描述)

人工神经网络是一种发展时间较早且十分常用的机器学习算法。因其模仿人类神经元工作的特点,在监督学习和非监督学习领域都给予了人工神经网络较高的期望。目前,由传统人工神经网络发展而来的卷积神经网络、循环神经网络已经成为了深度学习的基石。本篇文章中,我们将从人工神经网络的原型感知机出发,介绍机器学习中人工神经网络的特点及应用。

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×