AI基本术语笔记

96
yuquanle
2017.10.07 20:46* 字数 7028

随着智能时代慢慢的到来,有一些基本概念都不知道真的是要落伍了,作为正在积极学习向上的青年,我想总结一份笔记,此份笔记会记录众多AI领域的术语和概念,当然,学一部分记录一部分,并且可能会夹杂着自己的一些理解,希望大家多多赐教。目录暂定以首字母的字典序排序。

A

准确率(accuracy)

分类模型预测准确的比例。

二分类问题中,准确率定义为:accuracy = (true positives + truenegatives)/all samples

多分类问题中,准确率定义为:accuracy = correct predictions/allsamples

激活函数(activation function)

一种函数,将前一层所有神经元激活值的加权和 输入到一个非线性函数中,然后作为下一层神经元的输入,例如ReLU或Sigmoid

AdaGrad

一种复杂的梯度下降算法,重新调节每个参数的梯度,高效地给每个参数一个单独的学习率。

AUC(曲线下面积)

一种考虑到所有可能的分类阈值的评估标准。ROC曲线下面积代表分类器随机预测真正类(Ture Positives)要比假正类(False Positives)概率大的确信度。

Adversarial example(对抗样本)

Adversarial Networks(对抗网络)

Artificial General Intelligence/AGI(通用人工智能)

Attention mechanism(注意力机制)

Autoencoder(自编码器)

Automatic summarization(自动摘要)

Average gradient(平均梯度)

Average-Pooling(平均池化)

B

反向传播(Backpropagation/BP)

神经网络中完成梯度下降的重要算法。首先,在前向传播的过程中计算每个节点的输出值。然后,在反向传播的过程中计算与每个参数对应的误差的偏导数。

基线(Baseline)

被用为对比模型表现参考的简单模型。基线帮助模型开发者量化模型在特定问题上的预期表现。

批量(Batch)

模型训练中一个迭代(指一次梯度更新)使用的样本集。

批量大小(Batch size)

一个批量中样本的数量。例如,SGD的批量大小为1,而mini-batch的批量大小通常在10-1000之间。批量大小通常在训练与推理的过程中确定,TensorFlow不允许动态批量大小

偏置(Bias)

与原点的截距或偏移量。偏置(也称偏置项)在机器学习模型中一般用b或者w0表示。例如,偏置项是以下公式中的b:y′=b+w_1x_1+w_2x_2+…w_nx_n

二元分类器(Binary classification)

一类分类任务,输出两个互斥类别中的一个。比如垃圾邮件检测。

词袋(Bag of words/Bow)

基学习器(Base learner)

基学习算法(Base learning algorithm)

贝叶斯网络(Bayesian network)

基准(Bechmark)

信念网络(Belief network)

二项分布(Binomial distribution)

玻尔兹曼机(Boltzmann machine)

自助采样法/可重复采样/有放回采样(Bootstrap sampling)

广播(Broadcasting)

C

类别(Class)

所有同类属性的目标值作为一个标签。

分类模型(classification)

机器学习模型的一种,将数据分离为两个或多个离散类别。

收敛(convergence)

训练过程达到的某种状态,其中训练损失和验证损失在经过了确定的迭代次数后,在每一次迭代中,改变很小或完全不变。换句话说就是,当对当前数据继续训练而无法再提升模型的表现水平的时候,就称模型已经收敛。在深度学习中,损失值下降之前,有时候经过多次迭代仍保持常量或者接近常量,会造成模型已经收敛的错觉。

凸函数(concex function)

一种形状大致呈字母U形或碗形的函数。然而,在退化情形中,凸函数的形状就像一条线。例如,以下几个函数都是凸函数:

L2损失函数

Log损失函数

L1正则化函数

L2正则化函数

凸函数是很常用的损失函数。因为当一个函数有最小值的时候(通常就是这样),梯度下降的各种变化都能保证找到接近函数最小值的点。类似的,随机梯度下降的各种变化有很大的概率(虽然无法保证)找到接近函数最小值的点。

两个凸函数相加(比如,L2损失函数+L1正则化函数)后仍然是凸函数。

深度模型通常是非凸的。出乎意料的是,以凸优化的形式设计的算法通常都能在深度网络上工作的很好,虽然很少能找到最小值。

成本(cost)

loss的同义词。深度学习模型一般都会定义自己的loss函数。

交叉熵(cross-entropy)

多类别分类问题中对Log损失函数的推广。交叉熵量化两个概率分布之间的区别。

条件熵(Conditional entropy)

条件随机场(Conditional random field/CRF)

置信度(Confidence)

共轭方向(Conjugate directions)

共轭分布(Conjugate distribution)

共轭梯度(Conjugate gradient)

卷积神经网络(Convolutional neural network/CNN)

余弦相似度(Cosine similarity)

成本函数(Cost Function)

曲线拟合(Curve-fitting)

D

数据集(data set)

样本的集合

深度模型(deep model)

一种包含多个隐藏层的神经网络。深度模型依赖于其可训练的非线性性质。和宽度模型对照(wide

model)。

dropout正则化(dropout

regularization)

训练神经网络时一种有用的正则化方法。dropout正则化的过程是在单次梯度计算中删去一层网络中随机选取的固定数量的单元。删去的单元越多,正则化越强。

数据挖掘(Data mining)

决策树/判定树(Decision

tree)

深度神经网络(Deep neural network/DNN)

狄利克雷分布(Dirichlet distribution)

判别模型(Discriminative model)

下采样(Down sampling)

动态规划(Dynamic programming)

E

早期停止法(early stopping)

一种正则化方法,在训练损失完成下降之前停止模型训练过程。当验证数据集(validation

data set)的损失开始上升的时候,即泛化表现变差的时候,就该使用早期停止法了。

嵌入(embeddings)

一类表示为连续值特征的明确的特征。嵌入通常指将高维向量转换到低维空间中。

例如,将一个英语句子中的单词以以下任何一种方式表示:

1.拥有百万数量级(高维)的元素的稀疏向量,其中所有的元素都是整数。向量的每一个单元(维度)表示一个单独的英语单词,单元中的数字表示该单词在一个句子中出现的次数。由于一个句子中的单词通常不会超过50个,向量中几乎所有的单元都是0。少量的非零的单元将取一个小的整数值(通常为1)表示句子中一个单词的出现次数。

2.拥有数百个(低维)元素的密集向量,其中每一个元素取0到1之间的浮点数。

在TensorFlow中,嵌入是通过反向传播损失训练的,正如神经网络的其它参量一样。

经验风险最小化(empirical risk minimization,ERM)

选择能最小化训练数据的损失的模型函数的过程。和结构风险最小化(structual

risk minimization)对照。

集成(ensemble)

多个模型预测的综合考虑。可以通过以下一种或几种方法创建一个集成方法:

设置不同的初始化;

设置不同的超参量;

设置不同的总体结构。

深度和广度模型是一种集成。

样本(example)

一个数据集的一行内容。一个样本包含了一个或多个特征,也可能是一个标签。参见标注样本(labeled

example)和无标注样本(unlabeled example)。

F

假负类(false negative,FN)

被模型错误的预测为负类的样本。例如,模型推断一封邮件为非垃圾邮件(负类),但实际上这封邮件是垃圾邮件。

假正类(false positive,FP)

被模型错误的预测为正类的样本。例如,模型推断一封邮件为垃圾邮件(正类),但实际上这封邮件是非垃圾邮件。

假正类率(false positive rate,FP rate)

ROC曲线(ROC curve)中的x轴。FP率的定义是:假正率=假正类数/(假正类数+真负类数)

特征工程(feature engineering)

在训练模型的时候,决定哪些特征是有用的,然后将记录文件和其它来源的原始数据转换成上述特征的过程。

前馈神经网络(Feedforward Neural Networks/FNN)

G

泛化(generalization)

指模型利用新的没见过的数据而不是用于训练的数据作出正确的预测的能力。

广义线性模型(generalized linear model)

最小二乘回归模型的推广/泛化,基于高斯噪声,相对于其它类型的模型(基于其它类型的噪声,比如泊松噪声,或类别噪声)。广义线性模型的例子包括:

logistic回归

多分类回归

最小二乘回归

广义线性模型的参数可以通过凸优化得到,它具有以下性质:

最理想的最小二乘回归模型的平均预测结果等于训练数据的平均标签。

最理想的logistic回归模型的平均概率的预测结果等于训练数据的平均标签。

广义线性模型的能力局限于其特征的性质。和深度模型不同,一个广义线性模型无法「学习新的特征」。

梯度(gradient)

所有变量的偏导数的向量。在机器学习中,梯度是模型函数的偏导数向量。梯度指向最陡峭的上升路线。

梯度截断(gradient clipping)

在应用梯度之前先修饰数值,梯度截断有助于确保数值稳定性,防止梯度爆炸出现。

梯度下降(gradient descent)

通过计算模型的相关参量和损失函数的梯度最小化损失函数,值取决于训练数据。梯度下降迭代地调整参量,逐渐靠近权重和偏置的最佳组合,从而最小化损失函数。

图(graph)

在TensorFlow中的一种计算过程展示。图中的节点表示操作。节点的连线是有指向性的,表示传递一个操作(一个张量)的结果(作为一个操作数)给另一个操作。使用TensorBoard能可视化计算图。

高斯核函数(Gaussian kernel function)

高斯混合模型(Gaussian Mixture Model)

高斯过程(Gaussian Process)

泛化误差(Generalization error)

生成模型(Generative Model)

遗传算法(Genetic Algorithm/GA)

吉布斯采样(Gibbs sampling)

基尼指数(Gini index)

梯度下降(Gradient Descent)

H

启发式(heuristic)

一个问题的实际的和非最优的解,但能从学习经验中获得足够多的进步。

隐藏层(hidden layer)

神经网络中位于输入层(即特征)和输出层(即预测)之间的合成层。一个神经网络包含一个或多个隐藏层。

超参数(hyperparameter)

连续训练模型的过程中可以拧动的「旋钮」。例如,相对于模型自动更新的参数,学习率(learning

rate)是一个超参数。和参量对照。

硬间隔(Hardmargin)

隐马尔可夫模型(Hidden Markov Model/HMM)

层次聚类(Hierarchical clustering)

假设检验(Hypothesis test)

I

独立同分布(independently and identically

distributed,i.i.d)

从不会改变的分布中获取的数据,且获取的每个值不依赖于之前获取的值。i.i.d.是机器学习的理想情况——一种有用但在现实世界中几乎找不到的数学构建。例如,网页访客的分布可能是短暂时间窗口上的i.i.d;即分布不会在该时间窗口发生改变,每个人的访问都与其他人的访问独立。但是,如果你扩展了时间窗口,则会出现网页访客的季节性差异。

推断(inference)

在机器学习中,通常指将训练模型应用到无标注样本来进行预测的过程。在统计学中,推断指在观察到的数据的基础上拟合分布参数的过程。

输入层(input layer)

神经网络的第一层(接收输入数据)。

评分者间一致性(inter-rater agreement)

用来衡量一项任务中人类评分者意见一致的指标。如果意见不一致,则任务说明可能需要改进。有时也叫标注者间信度(inter-annotator agreement)或评分者间信度(inter-rater

reliability)。

增量学习(Incremental learning)

独立成分分析(Independent Component Analysis/ICA)

独立子空间分析(Independent subspace analysis)

信息熵(Information entropy)

信息增益(Information gain)

J

JS散度(Jensen-Shannon

Divergence/JSD)

K

Kernel支持向量机(Kernel

Support Vector Machines/KSVM)

一种分类算法,旨在通过将输入数据向量映射到更高维度的空间使正类和负类之间的边际最大化。例如,考虑一个输入数据集包含一百个特征的分类问题。为了使正类和负类之间的间隔最大化,KSVM从内部将特征映射到百万维度的空间。KSVM使用的损失函数叫作hinge损失。

核方法(Kernel method)

核技巧(Kernel trick)

k折交叉验证/k倍交叉验证(K-fold cross validation)

K -均值聚类(K-Means

Clustering)

K近邻算法(K-Nearest

Neighbours Algorithm/KNN)

知识图谱(Knowledge graph)

知识库(Knowledge base)

知识表征(Knowledge Representation)

L

L1损失函数(L1 loss)

损失函数基于模型对标签的预测值和真实值的差的绝对值而定义。L1损失函数比起L2损失函数对异常值的敏感度更小。

L1正则化(L1

regularization)

一种正则化,按照权重绝对值总和的比例进行惩罚。在依赖稀疏特征的模型中,L1正则化帮助促使(几乎)不相关的特征的权重趋近于0,从而从模型中移除这些特征。

L2损失(L2 loss)

参见平方损失。

L2正则化(L2

regularization)

一种正则化,按照权重平方的总和的比例进行惩罚。L2正则化帮助促使异常值权重更接近0而不趋近于0。(可与L1正则化对照阅读。)L2正则化通常改善线性模型的泛化效果。

标签(label)

在监督式学习中,样本的「答案」或「结果」。标注数据集中的每个样本包含一或多个特征和一个标签。比如,在房屋数据集中,特征可能包括卧室数量、卫生间数量、房龄,而标签可能就是房子的价格。在垃圾邮件检测数据集中,特征可能包括主题、发出者何邮件本身,而标签可能是「垃圾邮件」或「非垃圾邮件」。

标注样本(labeled example)

包含特征和标签的样本。在监督式训练中,模型从标注样本中进行学习。

学习率(learning rate)

通过梯度下降训练模型时使用的一个标量。每次迭代中,梯度下降算法使学习率乘以梯度,乘积叫作gradient step。

学习率是一个重要的超参数。

最小二乘回归(least squares regression)

通过L2损失最小化进行训练的线性回归模型。

线性回归(linear regression)

对输入特征的线性连接输出连续值的一种回归模型。

logistic回归(logistic

regression)

将sigmoid函数应用于线性预测,在分类问题中为每个可能的离散标签值生成概率的模型。尽管logistic回归常用于二元分类问题,但它也用于多类别分类问题(这种情况下,logistic回归叫作「多类别logistic回归」或「多项式 回归」。

对数损失函数(Log Loss)

二元logistic回归模型中使用的损失函数。

损失

度量模型预测与标签距离的指标,它是度量一个模型有多糟糕的指标。为了确定损失值,模型必须定义损失函数。例如,线性回归模型通常使用均方差作为损失函数,而logistic回归模型使用对数损失函数。

隐狄利克雷分布(Latent Dirichlet Allocation/LDA)

潜在语义分析(Latent semantic analysis)

线性判别(Linear Discriminant Analysis/LDA)

长短期记忆(Long-Short Term Memory/LSTM)

M

机器学习(machine learning)

利用输入数据构建(训练)预测模型的项目或系统。该系统使用学习的模型对与训练数据相同分布的新数据进行有用的预测。机器学习还指与这些项目或系统相关的研究领域。

均方误差(Mean Squared Error/MSE)

每个样本的平均平方损失。MSE可以通过平方损失除以样本数量来计算。TensorFlow Playground展示「训练损失」和「测试损失」的值是MSE。

小批量(mini-batch)

在训练或推断的一个迭代中运行的整批样本的一个小的随机选择的子集。小批量的大小通常在10到1000之间。在小批量数据上计算损失比在全部训练数据上计算损失要高效的多。

机器翻译(Machine translation/MT)

马尔可夫链蒙特卡罗方法(Markov Chain Monte Carlo/MCMC)

马尔可夫随机场(Markov Random Field)

多文档摘要(Multi-document summarization)

多层感知器(Multilayer Perceptron/MLP)

多层前馈神经网络(Multi-layer feedforward neural

networks)

N

NaN trap

训练过程中,如果模型中的一个数字变成了NaN,则模型中的很多或所有其他数字最终都变成NaN。NaN是「Not a

Number」的缩写。

神经网络(neural network)

该模型从大脑中获取灵感,由多个层组成(其中至少有一个是隐藏层),每个层包含简单的连接单元或神经元,其后是非线性。

神经元(neuron)

神经网络中的节点,通常输入多个值,生成一个输出值。神经元通过将激活函数(非线性转换)应用到输入值的加权和来计算输出值。

归一化(normalization)

将值的实际区间转化为标准区间的过程,标准区间通常是-1到+1或0到1。例如,假设某个特征的自然区间是800到6000。通过减法和分割,你可以把那些值标准化到区间-1到+1。参见缩放。

numpy

Python中提供高效数组运算的开源数学库。pandas基于numpy构建。

Naive bayes|朴素贝叶斯

Naive Bayes Classifier|朴素贝叶斯分类器

Named entity recognition|命名实体识别

Natural language generation/NLG|自然语言生成

Natural language processing|自然语言处理

Norm|范数

O

目标(objective)

算法尝试优化的目标函数。

one-hot编码(one-hot

encoding)

一个稀疏向量,其中:

一个元素设置为1。

所有其他的元素设置为0。

独热编码常用于表示有有限可能值集合的字符串或标识符。例如,假设一个记录了15000个不同品种的植物数据集,每一个用独特的字符串标识符来表示。作为特征工程的一部分,你可能将那些字符串标识符进行独热编码,每个向量的大小为15000。

一对多(one-vs.-all)

给出一个有N个可能解决方案的分类问题,一对多解决方案包括N个独立的二元分类器——每个可能的结果都有一个二元分类器。例如,一个模型将样本分为动物、蔬菜或矿物,则一对多的解决方案将提供以下三种独立的二元分类器:

动物和非动物

蔬菜和非蔬菜

矿物和非矿物

过拟合(overfitting)

创建的模型与训练数据非常匹配,以至于模型无法对新数据进行正确的预测

Oversampling|过采样

P

pandas

一种基于列的数据分析API。很多机器学习框架,包括TensorFlow,支持pandas数据结构作为输入。参见pandas文档。

参数(parameter)

机器学习系统自行训练的模型的变量。例如,权重是参数,它的值是机器学习系统通过连续的训练迭代逐渐学习到的。可与超参数对照阅读。

性能(performance)

具有多种含义:

在软件工程中的传统含义:软件运行速度有多快/高效?

在机器学习中的含义:模型的准确率如何?即,模型的预测结果有多好?

困惑度(perplexity)

对模型完成任务的程度的一种度量指标。例如,假设你的任务是阅读用户在智能手机上输入的单词的头几个字母,并提供可能的完整单词列表。该任务的困惑度(perplexity,P)是为了列出包含用户实际想输入单词的列表你需要进行的猜测数量。

流程(pipeline)

机器学习算法的基础架构。管道包括收集数据、将数据放入训练数据文件中、训练一或多个模型,以及最终输出模型。

Principal component analysis/PCA|主成分分析、

Precision|查准率/准确率

Prior knowledge|先验知识

Q

Quasi Newton method|拟牛顿法

R

召回率(recall)

回归模型(regression model)

一种输出持续值(通常是浮点数)的模型。而分类模型输出的是离散值,如「day lily」或「tiger lily」。

正则化(regularization)

对模型复杂度的惩罚。正则化帮助防止过拟合。正则化包括不同种类:

L1正则化

L2正则化

dropout正则化

early stopping(这不是正式的正则化方法,但可以高效限制过拟合)

正则化率(regularization rate)

一种标量级,用lambda来表示,指正则函数的相对重要性。从下面这个简化的损失公式可以看出正则化率的作用:

minimize(loss function + λ(regularizationfunction))

提高正则化率能够降低过拟合,但可能会使模型准确率降低。

表征

将数据映射到有用特征的过程。

受试者工作特征曲线(receiver operating

characteristic/ROC Curve)

反映在不同的分类阈值上,真正类率和假正类率的比值的曲线。参见AUC。

Recurrent Neural Network|循环神经网络|

Recursive neural network|递归神经网络

Reinforcement learning/RL|强化学习

Re-sampling|重采样法

Representation learning|表征学习

Random Forest Algorithm|随机森林算法

S

缩放(scaling)

特征工程中常用的操作,用于控制特征值区间,使之与数据集中其他特征的区间匹配。例如,假设你想使数据集中所有的浮点特征的区间为0到1。给定一个特征区间是0到500,那么你可以通过将每个值除以500,缩放特征值区间。还可参见正则化。

scikit-learn

一种流行的开源机器学习平台。网址:www.scikit-learn.org

序列模型(sequence model)

输入具有序列依赖性的模型。例如,根据之前观看过的视频序列对下一个视频进行预测。

Sigmoid函数(sigmoid

function)

softmax

为多类别分类模型中每个可能的类提供概率的函数。概率加起来的总和是1.0。例如,softmax可能检测到某个图像是一只狗的概率为0.9,是一只猫的概率为0.08,是一匹马的概率为0.02。(也叫作full softmax)。

结构风险最小化(structural risk minimization/SRM)

这种算法平衡两个目标:

构建预测性最强的模型(如最低损失)。

使模型尽量保持简单(如强正则化)。

比如,在训练集上的损失最小化+正则化的模型函数就是结构风险最小化算法。更多信息,参见http://www.svms.org/srm/。可与经验风险最小化对照阅读。

监督式机器学习(supervised machine learning)

利用输入数据及其对应标签来训练模型。监督式机器学习类似学生通过研究问题和对应答案进行学习。在掌握问题和答案之间的映射之后,学生就可以提供同样主题的新问题的答案了。可与非监督机器学习对照阅读。

Similarity measure|相似度度量

Singular Value Decomposition|奇异值分解

oft margin|软间隔|[1]

Soft margin maximization|软间隔最大化

Support Vector Machine/SVM|支持向量机

T

张量(tensor)

TensorFlow项目的主要数据结构。张量是N维数据结构(N的值很大),经常是标量、向量或矩阵。张量可以包括整数、浮点或字符串值。

Transfer learning|迁移学习

U

无标签样本(unlabeled example)

包含特征但没有标签的样本。无标签样本是推断的输入。在半监督学习和无监督学习的训练过程中,通常使用无标签样本。

无监督机器学习(unsupervised machine learning)

训练一个模型寻找数据集(通常是无标签数据集)中的模式。

无监督机器学习最常用于将数据分成几组类似的样本。例如,无监督机器学习算法可以根据音乐的各种属性聚类数据。用这种方式收集的数据可以作为其他机器学习算法(如音乐推荐服务)的输入。聚类在难以获取真正标签的情景中非常有用。例如,在反欺诈和反滥用的情景中,聚类可以帮助人类更好地理解数据。

无监督机器学习的另一个例子是主成分分析(principal component

analysis,PCA)。如,将PCA应用于包含数百万购物车内容的数据集中时,就有可能发现有柠檬的购物车往往也有解酸剂。可与监督式机器学习对照阅读。

W

Word embedding|词嵌入

Word sense disambiguation|词义消歧

s'�l_��>u���(�

日记本