梯度下降算法2024 年 8 月 29 日 | 阅读 3 分钟 梯度下降是一种优化算法,用于最小化许多机器学习算法的成本函数。梯度下降算法用于更新学习模型的参数。 以下是梯度下降的不同类型:
使用的变量设 'k' 为训练数据集的数量。 设 'j' 为数据集中特征的数量。 如果 p == k,则小批量梯度下降的行为将与批量梯度下降类似。(其中 'p' 是批量梯度下降) 批量梯度下降使用的算法设 hθ(a) 为线性回归的假设。则成本函数将由下式给出: 设 Σ 表示从 t = 1 到 k 的所有训练数据集的总和。 Gtrain(θ) = (1/2k) Σ (hθ(a(t)) - b(t))2 Repeat { θg = θg - (learning rate/k) * Σ (hθ(a(t)) - b(t))ag(t) For every g = 0 …j } 其中 ag(t) 代表 t th 训练数据集的 gth 特征。假设如果 'k' 非常大(例如,700 万个训练数据集),则批量梯度下降将花费数小时甚至数天来完成过程。因此,对于大型训练数据集,不建议用户使用批量梯度下降,因为这会减慢机器学习的学习过程。 小批量梯度下降使用的算法假设 'p' 是一个批次中的数据集数量,其中 p < k。 设 p = 10 且 k = 100; 但是用户可以调整批次大小。这通常写成 2 的幂。
随机梯度下降使用的算法
Hence, Let (a(t), b(t)) be the training dataset Cost(θ, (a(t), b(t))) = (1/2) Σ (hθ(a(t)) - b(t))2 Gtrain(θ) = (1/k) Σ Cost (θ, (a(t), b(t))) Repeat { For t = 1 to k{ Θg = θg - (learning rate) * Σ (hθ(a(t)) - b(t))ag(t) For every g = 0 …j } } 结论在本教程中,我们讨论了梯度下降的不同算法及其变体。 |
Python 简介在代码中引发异常时会返回 Traceback。如果我们第一次看到 Traceback 或不知道它传达的信息,那么它的输出可能会令人难以抗拒。但是,Traceback 在...
阅读 13 分钟
在本教程中,我们将编写 Python 程序来计算可能三角形的数量。我们给出了一个未排序的数组,我们需要确定可以使用无序正整数数组中的三个不同值创建多少个三角形。一个三角形...
7 分钟阅读
我们偶尔会遇到需要在字符对(第二个)之后添加特定字符的情况。当处理需要添加特殊字符(例如逗号或其他符号)的数据时,尤其是在...中,可能会出现这种情况。
阅读 3 分钟
在本文中,我们将讨论 Python win32 进程。我们还将逐一讨论其方法。基本上,Win32 进程是 Python 中的一个方法。此模块提供了扩展的 Win32 进程创建和管理功能。Create 方法创建进程对象(...
阅读9分钟
让我们了解一种使用 NumPy 在 Python 中生成带有浮点数点数组的勒让德多项式范德蒙德矩阵的良好方法。示例:当我们给出一个数组作为输入时,则该数组为:[-1.67 0.81 -3.57 1.6 2.8] 结果:[[ 1.00000e+00...
阅读 4 分钟
引言 人工智能领域取得了巨大的进步,导致了各种算法的开发来处理复杂的任务。其中一个算法是 LightGBM,它是 Light Gradient Boosting Machine 的缩写。LightGBM 因其效率、速度和处理大规模数据集的能力而广受欢迎。
阅读 6 分钟
?PostgreSQL 支持两种类型的数据来处理时间戳:timestamp 和 timestamptz。Timestamp 数据类型允许我们创建不基于时区的 时间戳。类似地,timestamptz 可以帮助我们创建带时区的时间戳。可以存储日期……
阅读 2 分钟
在本教程中,我们将学习如何检查给定的数字是否为斐波那契数。在这里,我们有一个数字“n”,我们必须检查它是否为斐波那契数。斐波那契数列的起始数字是:0, 1, 1, 2, 3,...
阅读 3 分钟
Blender是一款功能强大的开源3D创作软件,允许用户创建各种3D模型、动画和视觉效果。它包含一个Python API,使开发人员能够自动化和扩展Blender的功能。Blender的Python API是一个全面的模块库...
7 分钟阅读
在下一个教程中,我们将通过 Python 中的 Semaphore 来理解多线程同步。让我们开始理解。理解 Semaphore Semaphore 是一种同步构造。Semaphore 为线程提供了对有限数量资源的同步访问。Semaphore 可以被视为一个...
阅读 4 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India