机器学习简介
前倾提示:本作品将会收录于专栏机器学习中,通过该专栏,我将为你讲述俄罗斯的机器学习精品课程,站在外国人角度是如何学习机器学习这个知识的,为保证严谨性部分会保留俄文或英文,谢谢观看!
机器学习简介
我确信今天没有人不知道机器学习和人工智能技术。似乎这门神秘的科学已经渗透到人类生活的各个领域:神经网络已经学会翻译几乎所有语言的文本;机器已经学会观察、分析照片和视频,甚至提高它们的质量;基于人工智能的银行算法决定谁应该获得贷款,谁不应该获得贷款;埃隆·马斯克的无人驾驶汽车正在加州的高速公路上行驶,而 Yandex 的无人驾驶汽车则在 Park Kultury 地铁站的郊区行驶。
这个列表几乎可以无限地延伸下去。但问题就在这里:每个人都明白机器学习技术在现代科学技术中是多么必要和有用,但几乎没有人对它们的工作原理有哪怕是大致的了解。但每一位研究人员都可以在自己的工作中应用它们,这将显著增加对它的兴趣,如果他们对ML的工作原理有所了解的话,就能取得更多突破性的成果。
我们的课程目标是向您介绍机器学习在从人文科学到自然科学的各个科学领域的应用示例,同时揭示算法如何工作的秘密。
今天我们来聊聊机器学习是一门什么样的科学,它分为哪些分支,这些分支之间有哪些显著的区别,以及机器学习算法的基本思想是什么。
我们走吧!

什么是机器学习?
我们先从标题分析的角度来探讨一下这个问题:
我想“机器”这个称号大家都很清楚——它意味着人类不断面临着无法通过传统方法实现自动化的常规和单调的任务。这类任务需要解决者花费大量的时间和精力,而且完成的工作并不能给他们带来任何乐趣或道德上的满足。人们希望学习如何使此类工作自动化,即将其委托给机器。
“training”这个词是什么意思?
我们通常怎么理解这个词?
假设一个孩子在学习字母时,他的学习内容包括什么?
他必须记住哪个字母对应哪个声音,然后开始重现这种对应关系。我们每个人是怎样实现这一目标的?
*通过反复试验!*每当孩子猜出字母和声音之间的对应关系时,他都会立即从成人那里得到直接的确认,或者通过看他们大声朗读给他听来确认。每当他犯一个错误,他都会受到相应的反驳,并被迫重新思考他的结论。
也就是说,本例中的学习由一系列按顺序构建的假设组成,试图找到一些隐藏的、以前未知的依赖关系。这种一致性是由于环境中的某些罚款和奖励而发生的。
这正是我们希望从自动化系统实现的目标:就像一个孩子学习阅读,从成年人那里得到对其假设的确认和反驳一样,我们的系统应该在数据中寻找复杂和未知的依赖关系,并从自身假设中获得确认和反驳。
机器学习分支
在数据中寻找未知的依赖关系是什么意思?这些是什么样的依赖关系,你的这些数据是什么样的?
事实证明,根据我们面临的任务类型以及初始数据的类型,机器学习分为 3 个分支:
- 监督学习
- 无监督学习
- 强化机器学习(强化学习)

监督机器学习
在这种情况下,我们会给出一组对象作为训练样本,我们可以用某种方式用数字来描述每个对象。每个对象都会被问到一个特定的问题,而训练集包含该问题的已知答案。该算法的目标是基于训练样本,了解如何根据对象的描述给出预先指定的问题的答案。
正式来说,
训练样本 D = { ( x i , y i ) } D = \{(x_i, y_i)\} D={(xi,yi)} 由对象 x i x_i xi - 标签 y i y_i yi 成对组成,并且存在一定的自然规律,连接 x x x 和 y y y: f ( x i ) = y i f(x_i) = y_i f(xi)=yi
我们不知道这个自然法则,但我们希望我们的算法能够猜测这个法则是什么,也就是说,我们希望构建一个算法 A A A,使得对于我们在自然界中可以找到的所有对象 x x x, A ( x ) = f ( x ) A(x) = f(x) A(x)=f(x)。
难的?
让我们通过一个例子来看一下!

想象一下,您是一位艺术史学家,毕生致力于研究高尚的绘画艺术。在您的职业生涯中,您见过许多不同作家的画作。于是,一批包装好的画作被送到了您的博物馆,由这座城市一位著名的艺术赞助人进行展览。您可以愉快地工作:该藏品包括杰出的前卫至上主义者卡西米尔·马列维奇、海洋画家伊凡·艾瓦佐夫斯基和肖像画家卡尔·布留洛夫的画作。您的任务非常简单 - 将每幅画带到各自的房间,无需打开包装。
但问题在于:快递人员没有在包裹上注明这些画作的名字和作者。但他们确实提供了这些画作的描述,并在每幅画上写了三个问题的答案:
1)画中有大海的形象吗?
2)图片描述的详细吗?
3)画中有人物形象吗?
你是一位非常有经验的艺术评论家,所以你并没有绝望,因为这个描述足以让你几乎准确地确定应该把这些画放在哪个大厅!
海洋画家艾瓦佐夫斯基的绝大部分画作当然都描绘了大海,描绘出了最细微的细节。
至上主义者马列维奇拒绝表现人们熟悉的形式,因此他的作品多为抽象形式,有时还结合对现实物体不太详细的描绘。
肖像画家布留洛夫在画布上描绘人物。
这样,您无需打开包装就能确定哪幅画属于哪位艺术家。
在我们的案例中,一个物体的特征描述、一个训练样本、一个自然规律和一个算法是什么?
每幅画的特色描述是对提出的3个问题的答案。我们对每张图片询问他们并得到正确答案。也就是说, x i = ( 是 / 否,是 / 否,是 / 否 ) x_i = (是/否,是/否,是/否) xi=(是/否,是/否,是/否)
在这些问题中,我们要确定的标记是艺术家的姓氏。即 y i ∈ { A i v a z o v s k y , M a l e v i c h , B r y u l l o v } y_i \in \{Aivazovsky, Malevich, Bryullov\} yi∈{Aivazovsky,Malevich,Bryullov}
我们的算法是一位艺术评论家。他一生都在学习鉴别绘画作品,注意绘画作品的特征,并能根据提出的问题识别艺术家。
自然法则是包装内的画作和作者之间的真实对应性,这是艺术评论家试图猜测的。
训练样本包括他一生中见过的所有画作:
他仔细检查了每幅画,记录了必要的细节,然后有机会接近这幅画并可靠地找出这幅画的作者是谁。也就是说,在训练阶段,算法可以获得正确的答案,但在工作阶段却不能。

监督学习又分为许多不同的任务。我们对其中两个感兴趣:回归恢复问题和分类问题。
这些问题之间的关键区别就是我们试图预测的内容。
分类任务
我们的任务是将可用的对象分成几组或几类。这些类别可能非常不同,但它们有一个共同点:每个对象的标签
y
y
y 属于某个有限集。
也就是说,我们为每个对象
x
x
x 选择
N
N
N 个标签中的一个。
示例:
- 将文本分为正面和负面
- 垃圾邮件过滤器
- 对图像中的手写数字进行分类
- 绘画类型的定义

为判断绘画风格而训练的特殊模型的输出如下:
- 立体主义 95%
- 表现主义 0%
- 印象派 0%
- 真实感 0%
- 摘要 3%
用同样的方法,你可以确定任何绘画的风格:

该问题是计算机视觉领域分类问题的典型例子。在整个本课程以及深度学习课程中,我们会经常遇到这样的问题。
回归问题
我们的任务是预测从某个区间获取的某个值。即 y i ∈ [ a , b ] , a , b ∈ R y_i \in [a,b], a,b \in R yi∈[a,b],a,b∈R
示例:
- 预测汇率
- 预测从地图上某一点到另一点的平均旅行时间
- 预测房屋租金
无监督机器学习
对于无监督学习问题,我们有一个未标记的数据集。这意味着我们不会向样本提出任何问题,也不会收到任何答案。我们只是想构建我们的样本,从中获取一些有关其结构的信息。

这里我们还对两个独立的问题感兴趣。

聚类任务
让我们得到一个对象数组。我们的任务是识别这个数组中的集群结构。我们假设数据集包含几组对象,每组对象中的所有对象在某些特征上彼此相似,但彼此之间有所不同。
示例:
- 聚类问题经常取代分类问题(请注意,这两个问题在某些方面本质上是相似的)。例如,当有几类对象,且不同类的对象彼此之间有显著差异时,我们可能不会标记数据,而是使用聚类算法。
- 例如,将文本聚类为主题簇,
- 或者根据其所描绘的物体而绘制的图片。

降维任务
这项任务的含义有些不透明:它在各种信息系统中经常遇到,作为信息压缩和对抗“维数灾难”的一个元素。现在我们不会详细讨论这个问题,但我们肯定会在课程中遇到它,并讨论一些解决方法。
有哪些迹象?
我们一直在谈论作为我们数据集一部分的对象,但是对象到底是什么?
很明显,对象最初代表某种整体实体,但我们不能要求算法处理任意性质的对象。我们无法让计算机分析花卉标本馆或整个城市街区。为了教会计算机处理任意性质的对象,我们必须将这些对象形式化,即组成它们的属性描述。
对象的特征描述是关于该对象的一组信息,以某个值的特定向量(在本例中为一组数字)的形式呈现。
我们将这个向量的每个坐标称为一个特征。每个特征描述一个对象的一些特性。
例子
假设我们的对象是一辆汽车。
我们能用什么特征来描述它?
例如,这可能是有关汽车颜色、发动机功率、音响系统、最高速度、重量以及品牌的信息。
然后是一组特定的此类特征:
- 红色的
- 100 升/秒
- 有音响系统
- 150公里/小时
- 800公斤
- 梅赛德斯
将指定一些特定的汽车。
也就是说,我们用我们收集的有关该对象的一些信息来替换该对象,并将其写成数字序列。
你可能会问:这怎么可能,因为“绿色”、“有音响系统”、“奔驰”——这些都不是数字。这里该做什么?
让我们采取以下技巧:
假设我们知道我们感兴趣的汽车只能是特定的品牌和特定的颜色(世界上的品牌数量是有限的,就像汽车油漆的颜色数量是有限的一样,所以这个集合肯定不会是无限的)。
例如,颜色可以是绿色、红色和蓝色,品牌可以是梅赛德斯、标致和拉达。
让我们对这些颜色和品牌进行编号:
0.绿色 0.梅赛德斯
1.红色 1.标致
2.蓝色 2.拉达
现在我们可以放心地将“红色”特征替换为值 1,将“梅赛德斯”特征替换为值 0。我们不会写“有音响系统”,而会写 1,如果没有音响系统,我们会写 0
现在我们的汽车由以下向量给出,它完整地描述了它:
[ 1 , 100 , 1 , 150 , 800 , 0 ] [1, 100, 1, 150, 800, 0] [1,100,1,150,800,0]
这样的向量已经可以被发送去通过数值算法进行处理。
例子:Fisher 鸢尾花
Fisher 鸢尾花是最流行的数据集之一,常用于测试机器学习算法的性能。这个数据集非常简单。它是由英国著名统计学家罗纳德·费希尔和他的同事埃德加·安德森于20世纪初收集的。
该数据集包含三种不同类型鸢尾花的描述:
0 类(山鸢尾)

第 1 类(维吉尼亚鸢尾)

第 2 类(变色鸢尾)

对于每个样本,测量了四个特征:
1)萼片长度
2)萼片宽度
3)内花被片的长度(花瓣长度)
4)内花被片宽度(花瓣宽度)
记录每个实例的这些特征,表明其属于其中一个类,从而获得解决分类问题所需的数据集。
让我们采用这个数据集并应用一个简单的机器学习模型来分析它。
我们的工具:Sklearn
我们将在课程中使用的主库是针对 Python 实现的“Sklearn”库。 Sklearn 是任何机器学习专家的主要工具之一。 sklearn 实现了大量经典的机器学习算法,以及用于训练模型的基础设施。 sklearn 定期根据机器学习的最新研究和发展添加新的实验模块。
在下面的代码片段中,我们首先将使用 sklearn.datasets.load_iris 方法,它允许我们访问上面描述的数据集,其次将使用 sklearn.linear_model.LogisticRegression 类,它实现其中一种分类算法。我们将在几节课中学习这个算法,现在我们只会使用它。除了这些模块之外,我们还将使用 sklearn.metrics.accuracy_score 函数来评估预测的质量,并使用 sklearn.model_selection.train_test_split 函数将数据集分成训练和测试样本。我们将在后面的课程中详细介绍每个功能。
sklearn 有一个共同的符号:所有算法都在相应的类中实现。为了在具有正确答案向量
y
y
y的训练样本
X
X
X上训练模型,需要调用此类的.fit(X,y)方法。为了获得算法的预测,我们使用 .predict(X) 方法,如果我们想要获得将响应分配给特定类的概率分布,我们调用 .predict_proba(X)
因此,我们的算法如下:
- 首先,我们使用
load_iris函数加载数据集。我们将仔细研究该数据集并将其可视化; - 接下来,我们将使用“train_test_split”函数将数据集分成训练和测试部分。我们将在接下来的一次讲座中详细讨论为什么这种转变是必要的;
- 然后我们在训练集上训练算法并在测试集上测试其质量。
让我们开始吧!
# 从 sklearn 库以及 pandas 和 seaborn 导入必要的模块
import sklearn
import warnings
import pandas as pd
import seaborn as sns
sns.set_theme()
warnings.filterwarnings("ignore")
from sklearn.datasets import load_iris
from sklearn.metrics import accuracy_score
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
# 加载数据集
X, y = load_iris(return_X_y=True)
我们使用“sns.pairplot”工具将数据集可视化。作为可视化,我们将选择一种工具,使我们可以在与所有可能的特征对相对应的坐标中描绘所有数据集点。有关此工具的更多详细信息,请参阅链接。
"""
以下特征用于描述花朵:
1.外花被裂片的长度(英文萼片的长度);
2.萼片宽度;
3.内花被裂片的长度(花瓣长度);
4. 内花被裂片的宽度(花瓣宽度)。
"""
iris = pd.DataFrame(
{
"sepal length": X[:, 0],
"sepal width": X[:, 1],
"petal length": X[:, 2],
"petal width": X[:, 3],
"target": y,
}
)
sns.pairplot(data=iris, hue="target")

我们能否通过这样的特征描述来区分不同种类的花?
让我们尝试应用逻辑回归算法来做到这一点。
# 将样本分为训练和测试
X_train, x_test, y_train, y_test = train_test_split(X, y, train_size=0.8, shuffle=True)
# 模型训练
model = LogisticRegression().fit(X_train, y_train)
model
输出:

让我们对测试样本进行预测
preds = model.predict(x_test)
preds
输出:
array([1, 1, 1, 1, 0, 2, 2, 2, 1, 1, 2, 1, 0, 2, 2, 2, 2, 2, 1, 0, 0, 2,
1, 1, 2, 2, 2, 2, 1, 2])
而真实的答案是这样的:
y_test
输出:
array([2, 1, 2, 1, 0, 0, 0, 1, 2, 2, 1, 2, 0, 2, 0, 1, 2, 0, 1, 1, 0, 1,
2, 1, 0, 1, 1, 1, 0, 0])
我们需要检查我们的模型有多好。为此,我们将使用“accuracy_score”函数,该函数计算算法正确答案的比例。
acc = accuracy_score(y_test, preds)
acc
特征类型
请注意,在前面关于汽车的例子中,各个特征之间存在显著差异。他们一般是什么样的?
事实上,标志的种类相当多。为什么区分它们很重要?因为它们各自使用自己的方法来工作,彼此并不相似。
二元特征
二元特征是只能取 2 个值的特征。这种标志的一个例子是汽车内有音响系统。一般来说,它们通常被用作研究对象中某种东西的存在的标记。此外,还可以用二元属性来标记物体的一些极性特性——例如,生物性别(男性和女性)、北半球或南半球、粒子的正电荷或负电荷。
此类特征通常用值 0 和 1,或 -1 和 1 的组合来标记
类别特征
分类特征比二元特征稍微复杂一些。不同之处在于,分类特征可以从某个有限集合中取值。就像汽车的颜色或品牌。新闻文章的主题或学生的成绩也代表一个分类特征。
然而,分类特征本身分为两类:名义和等级。
对于名义特征,它们之间没有可比较性,除非进行比较是否相等。也就是说,“蓝色大于红色”这句话对我们来说毫无意义。我们无法比较哪种颜色更大、哪种颜色更小。
但是“少校比士官级别高”这个说法已经有了。军衔是相同的分类特征,但现在我们可以将它们相互比较,这将是有意义的。这就是为什么这种特征被称为等级特征。
可以使用原始特征空间的编号对分类特征进行编码。
持续
这是最容易理解的一类标志。我们测量、称重、计算某物,并得到一些能够描述我们物体的数字。这个数字将属于某个范围,也就是说,它将取自实数集合的一个连续子集。
一个例子是汽车的质量(它可以是正好 800 公斤,或者 799.54 公斤,802.345 公斤 - 并且完全没有任何限制)。
地理数据
这是地球表面的经纬度数据。
当然,由于此类迹象的特殊性,它们相当罕见,而且很难处理。它们通常出现在与物流直接相关的任务中。我们将在下面的某一次讲座中考虑这样一个问题的例子。
日期和时间数据
用于描述某些事件发生的时间或持续时间的特殊数据格式。很有可能,如果您有使用“pandas”库的经验,那么您就会熟悉“datetime”数据格式。这种格式对于处理时间序列、使用时间索引数据等非常方便。当然,这些迹象被视为一种单独的类型,也需要采取特殊的方法。
我们列出了主要的标志类型,但实际上还有更多。
什么是机器学习模型?
每个人都听说过机器学习专家精心训练的模型。这些是什么样的动物,能够被教导一些东西?
我们说,我们的最终目标是提出一个算法 A ( x ) A(x) A(x),它将非常类似于我们看不见的自然法则。这个算法应该是什么样的?我们自己决定。选择那些我们将从中获取算法的函数称为模型选择。
模型是依赖于一些参数的函数系列,我们将从这些参数中选择我们的算法。
例子:
让真实的未知依赖关系具有类似抛物线的形式。我们将从二次多项式集合中选择一个回归算法
A
(
x
)
=
a
x
2
+
b
x
+
c
A(x) = ax^2 + bx + c
A(x)=ax2+bx+c
这将是我们的模型。
当我们从给定的函数族中选择所有可能的函数中最好的一个时,它将成为我们的决策函数或算法。
机器学习问题陈述
现在我们可以正式建立一个机器学习问题并讨论解决方案背后的想法。
问题的正式陈述
机器学习任务是根据已知的一组先例构建解决问题的算法的任务。也就是说,我们必须根据已知的积累经验,学会在从未遇到过的情况下做出一些决策。
一般来说,这个问题的形式化如下:
1)让我们定义一些函数 L a ( x , y ) L_a(x, y) La(x,y),它允许我们根据与对象 x x x相关的正确答案 y y y来计算算法 a a a在处理该对象时的错误值。这样的函数被称为损失函数,或者损失函数
例子:
假设我们正在解决回归问题,对于对象 x x x,我们需要恢复某个值 y y y(例如, x x x 是汽车的特征描述, y y y 是其成本的值)。
假设存在某个算法 a ( x ) a(x) a(x),能够根据 x x x 预测预期值 y y y。
然后,损失函数的一个例子可以是预测值与真实值的偏差的模数: L a ( x , y ) = ∣ a ( x ) − y ∣ L_a(x,y) = |a(x) - y| La(x,y)=∣a(x)−y∣
简化为优化问题
2)让我们能够使用第 1 点中介绍的损失函数来测量算法 a a a 在处理任意对象 x x x 时的误差,前提是我们知道正确答案 y y y。我们的目标是什么?
显然,我们希望选择一种犯错误最少的算法,不仅是对我们给出的训练样本,而且一般来说对任何提供给它处理的对象。然而,由于没有关于所有可能对象 x x x 的信息,我们只能计算我们已知集合(即我们的训练样本)的预期误差。
3)作为训练样本上误差的期望,我们计算其上的损失函数的平均值。也就是说,我们的问题简化为最小化损失函数的平均值
1
N
∑
x
∈
X
L
a
(
x
,
y
x
)
→
min
a
\frac{1}{N}∑\limits_{x \in X}L_a(x, y_x) → \min\limits_a
N1x∈X∑La(x,yx)→amin
其中
N
N
N是训练集
X
X
X中的对象的数量。
事实证明,我们将机器学习的问题简化为优化(最小化)平均损失函数的问题。这个问题的解决在于最优化理论领域。在接下来的讲座中,我们将讨论一些优化理论的方法。
预期和经验风险
正式地说,我们希望最小化损失函数在所有可能对象的空间上的数学期望。对于熟悉古典概率论和测度论的人来说,我们注意到这个陈述可以写成如下形式:
R ( a ) = ∫ X L a ( x , y ) d P ( x ) → min a R(a) = ∫\limits_{X}L_a(x,y)dP(x) → \min\limits_{a} R(a)=X∫La(x,y)dP(x)→amin
这里, P ( x ) P(x) P(x)是在对象 X X X空间上引入的概率测度,反映了一些对象在现实中可能出现得更频繁,而一些对象出现得更少的事实。
表达式 R ( a ) R(a) R(a)被称为与算法 a a a相关的预期风险。当然,不可能计算出 R ( a ) R(a) R(a)的值,但是有方法可以估算出这个值。在 Vapnik V.N. 的书中和 Chervonenkis A.Ya. “模式识别理论(统计学习问题)”介绍了评估预期风险的历史形成方法。
我们将重点关注通过训练样本估计 R ( a ) R(a) R(a) 的最常见情况。
经验风险
Q
(
a
,
X
)
Q(a,X)
Q(a,X) 是通过计算训练样本上的样本数学期望来估计
R
(
a
)
R(a)
R(a):
Q
(
a
,
X
)
=
1
N
∑
x
∈
X
L
a
(
x
,
y
x
)
Q(a, X) = \frac{1}{N}∑\limits_{x \in X}L_a(x, y_x)
Q(a,X)=N1x∈X∑La(x,yx)
其中 N N N 是样本中的对象数量, y x y_x yx 是分配给对象 x x x 的正确答案。
最小化经验风险原则是解决先例学习问题的主要原则。也就是说,在这个公式中,机器学习问题被一个优化问题所取代:
Q
(
a
,
X
)
→
min
a
Q(a, X) → \min\limits_a
Q(a,X)→amin
注1.
我们假设我们寻找的算法
a
a
a不是完全任意的,而是属于某个多参数函数族,也就是说,我们正在考虑一个特定的机器学习模型
A
A
A。让该函数族由一组参数
Θ
Θ
Θ 参数化,则
Θ
∗
=
a
r
g
min
Θ
Q
(
a
Θ
,
X
)
Θ^* = arg \min\limits_{Θ}Q(a_{Θ}, X)
Θ∗=argΘminQ(aΘ,X)
其中
Θ
∗
Θ^*
Θ∗ 是最优参数,
a
Θ
∈
A
a_{Θ} \in A
aΘ∈A 是来自选定算法族
A
A
A 的算法,由参数集
Θ
Θ
Θ 参数化
注2.
在经验风险最小化方法中,必须投入大量精力来分析和评估训练样本的代表性,因为从最小化 R ( a ) R(a) R(a) 到最小化 Q ( a , X ) Q(a,X) Q(a,X) 的步骤本质上假设训练样本是“好的”。
机器学习的应用
以下简要摘录了现代俄罗斯企业实践中人工智能应用的一些例子:
- 俄罗斯联邦储蓄银行在生物识别系统中使用语音识别系统;
- 2019年,自动速记系统开始在俄罗斯法院运行;
- 亚马逊开发了一项从复杂的非结构化文本中提取医疗数据的服务;
- Mail.ru 云现在具有地标图像搜索功能;
- AI用于成品的自动质量控制。
著名服务中的机器学习
我们日常遇到的许多服务都使用机器学习技术!
- YouTube 上的视频推荐不是靠魔法获得的,而是要归功于与 ML 算法相关的非常具体的推荐系统!我们将在课程框架内考虑此类系统。
- 我们当中有使用最近2-3年生产的智能手机的用户吗?
我确信有!其中绝大多数都配有面部识别系统。您的脸部识别完全是由基于机器学习技术的计算机视觉算法完成的。现在,使用类似的系统,您也可以在地铁上付款。 - 那 Shazam 怎么样?这是一项不可或缺的服务,可以识别在街上或电影中突然播放的音乐,如果没有它,您根本无法发现它!语音、演讲(你好,Siri/Alice/Google/Marusya/选择你喜欢的)和音乐识别——所有这些都使我们能够进行机器学习!
现代趋势:在跨学科研究中使用机器学习!
这意味着你们每个人都可以在自己的科学领域使用这样的算法!
让我们介绍一些符号
在我们的课程中,我们经常需要反复讨论相同或非常相似的对象。这些对象包括机器学习算法、数据集、样本等等。现在,我们将就字母名称达成一致,这些字母名称将在各个讲座中表示相同的参数和对象,除非讲座另有规定,或者从上下文中可以明显看出有其他含义。
-
N N N - 我们通常表示数据集中的行数(或者,对应样本中的对象数);
-
M M M - 列数,即(特征)的数量;
-
a ( x ) a(x) a(x)通常表示机器学习算法 a a a应用于对象 x x x;
-
x x x(小)通常表示某个对象或者它的特征描述(也就是描述它的一个向量);
-
X X X(大)是一组对象或它们的特征描述的矩阵;
-
y y y 是相应对象的标签或一组对象的标签向量;
-
L a ( x , y ) L_a(x, y) La(x,y)是算法 a a a在对象 x x x上的损失函数值,对应的是正确答案 y y y的向量。我们通常不会写这么复杂的东西:从上下文中几乎总是可以清楚地知道我们正在讨论哪种算法,而且不言而喻, y y y 是我们拥有的样本中的答案。因此,我们将更多地写为 L ( x ) L(x) L(x),省略不必要的符号,并且在可以清楚讨论哪个具体对象 x x x 的情况下,我们通常可以将自己限制为符号 L L L;
-
Q ( x ) Q(x) Q(x) - 对象 x x x 处的损失函数的预期值。简单来说, Q ( x ) Q(x) Q(x)是对处理对象 x x x的误差的估计。

287

被折叠的 条评论
为什么被折叠?



