名词解释

人工智能【Artificial Intelligence】:

1)有监督学习【supervised learning】:

事先需要准备好要输入数据(训练样本)与真实的输出结果(参考答案),然后通过计算机的学习得到一个预测模型,再用已知的模型去预测未知的样本,这种方法被称为有监督学习。这也是是最常见的机器学习方法。简单来说,就像你已经知道了试卷的标准答案,然后再去考试,相比没有答案再去考试准确率会更高,也更容易。

2)无监督学习【unsupervised learning】:

在没有“参考答案”的前提下,计算机仅根据样本的特征或相关性,就能实现从样本数据中训练出相应的预测模型

3)半监督学习

4)强化学习

5)预测结果

  1:回归&分类:有监督学习可以划分为:回归问题和分类问题。如果预测结果为连续的则是回归问题,为离散的通常为分类问题。

  2:聚类:无监督学习是一种没有“参考答案”的学习形式,它通过在样本之间的比较、计算来实现最终预测输出,比如聚类问题。将相似的样本聚合在一起后,然后进行分析

6)准确率和召回率

准确率和召回率是每个模型都会去看的指标。

  准确率 = 选出的正确信息条数 / 选出的信息总条数
  召回率= 选出正确信息条数 / 样本中的信息条数
举个栗子,我们有100个苹果有90个是好的,10个是坏的。

我们弄了一个算法来找出坏的苹果。我们判断85个是好的,15个是坏的。其中85个好的里面,有2个是坏的;15个坏的里面有7个是好的。

那么准确率是多少呢? 准确率= 8/15 = 53.33%

召回率是多少呢? 召回率= 8/10 = 80%

7)F值(F-Score)

我们希望准确率越高越好,同时召回率也越高越好,但事实上这两者在某些情况下有矛盾的。比如极端情况下,我们只选出一个结果,且是准确的,那么准确率就是100%,但是召回率就很低;而如果我们把所有样本都选上,那么召回率是100%,但是准确率就会很低。

如果有一个指标,能综合准确率和召回率就好了,于是就有了F值。

F 值= 准确率召回率2/(准确率+召回率)
上面选苹果的例子,F值= 0.53330.82 /(0.5333+0.8) = 63.99%

8)ROC和AUC

ROC(Receiver Operating Characteristic)曲线和AUC常被用来评价一个二值分类器(binary classifier)的好坏。

在了解ROC和AUC之前,我们需要先知道一些概念:

针对一个二分类问题,将实例分成正类(postive)或者负类(negative)。但是实际中分类时,会出现四种情况:

(1)若一个实例是正类并且被预测为正类,即为真正类(True Postive TP)-

(2)若一个实例是正类,但是被预测成为负类,即为假负类(False Negative FN)

(3)若一个实例是负类,但是被预测成为正类,即为假正类(False Postive FP)

(4)若一个实例是负类,但是被预测成为负类,即为真负类(True Negative TN)

TP:正确的正样本数目
FN:漏报,没有找到本来为正的数目
FP:误报,错误找出的正样本数目
TN:正确拒绝的负样本数目

假设采用逻辑回归分类器,其给出针对每个实例为正类的概率,那么通过设定一个阈值如0.6,概率大于等于0.6的为正类,小于0.6的为负类。
对应的就可以算出一组(FPR,TPR),在平面中得到对应坐标点。随着阈值的逐渐减小,越来越多的实例被划分为正类,但是这些正类中同样也掺杂着真正的负实例,即TPR和FPR会同时增大。阈值最大时,对应坐标点为(0,0),阈值最小时,对应坐标点(1,1)。

你可以理解为,x轴是我们要付出的代价,而Y轴是我们在付出这个代价的时候,获得的收益。我们希望Y越大越好,X越小越好。

AUC是Area Under roc Curve,也就是处于roc曲线下的面积大小,AUC的值介于0.5到1.0之间,较大的AUC代表了较好的表现。
因为我们如果随机选择,那么就是一条(0,0)到(1,1)的直线,正因为我们做出了许多努力(设计算法、调整参数、吧啦吧啦)所以我们的AUC可以大于0.5,AUC越大,代表我们可以在付出较小的代价的情况下,获得较大收益。

9)

Precision(查准率,精确率),Recall(查全率,召回率),Accuracy(准确率)。下面提到这三个名词都用英文表示。
从一个例子入手:我们训练了一个识猫模型,送一张图片给模型,模型就能告诉你该图片是否有猫。目标是找出所有有猫图片。
下面送100张有猫的图片,和100张无猫的图片给模型。假设预测的结果如下:

下面定义四个参数:

————————————————
版权声明:本文为CSDN博主「沙振宇」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u014597198/article/details/83501249

机器学习:

1)假设函数【Hypothesis Function】:y=f(x)其中 x 表示输入数据,而 y 表示输出的预测结果,而这个结果需要不断的优化才会达到预期的结果,否则会与实际值偏差较大

2)损失函数【Loss Function】:目标函数,简写为 L(x),这里的 x 是假设函数得出的预测结果“y”,如果 L(x) 的返回值越大就表示预测结果与实际偏差越大,越小则证明预测值越来越“逼近”真实值,这才是机器学习最终的目的。因此损失函数就像一个度量尺,让你知道“假设函数”预测结果的优劣,从而做出相应的优化策略。

3)优化方法:假设函数和损失函数之间的沟通桥梁。常用的优化方法有很多,比如共轭梯度法、梯度下降法、牛顿法和拟牛顿法

 4)拟合:“拟合”就是把平面坐标系中一系列散落的点,用一条光滑的曲线连接起来,因此拟合也被称为“曲线拟合”。拟合的曲线一般用函数进行表示,但是由于拟合曲线会存在许多种连接方式,因此就会出现多种拟合函数。很多和数学相关的编程语言都内置计算拟合曲线的函数,比如 MATLAB 、Python Scipy

 5)过拟合【overfitting】:模型的泛化能力较差,也就是过拟合的模型在训练样本中表现优越,但是在验证数据以及测试数据集中表现不佳。主要是因为训练时样本过少,特征值过多导致的

 6)欠拟合【underfitting】:“曲线”不能很好的“拟合”数据。在训练和测试阶段,欠拟合模型表现均较差,无法输出理想的预测结果。造成欠拟合的主要原因是由于没有选择好合适的特征值

拟合

                 4)拟合                               5)过拟合                             6)欠拟合

7)神经网络

  1:循环神经网络(Recurrent Neural Network,RNN):深度学习之循环神经网络(RNN)循环神经网络之LSTM和GRU

     2:卷积神经网络(Convolutional Neural Network,CNN):深度学习之卷积神经网络(CNN)

8)算法

  1:线性回归算法【Linear Regression】:用线性模型来解决回归问题

  2:Logistic回归算法(分类问题):又叫做逻辑回归算法,或者 LR 算法(Logistic Regression)

  3:K 最近邻分类算法【K-Nearest-Neighbor】:有监督学习分类算法的一种。所谓 K 近邻,就是 K 个最近的邻居。比如对一个样本数据进行分类,我们可以用与它最邻近的 K 个样本来表示它,这与俗语“近朱者赤,近墨者黑”是一个道理。在 scikit-learn 中 KNN 算法的 K 值是通过 n_neighbors 参数来调节的,默认值是 5。

  4:朴素贝叶斯分类算法sklearn实现朴素贝叶斯

  5:决策树分类算法sklearn决策树分类算法应用

9)软标签(soft label)和硬标签(hard label)

  软标签:是一个teacher模型预测出来的,类似logits的概率值,是浮点数

  硬标签:硬标签直接就是整数,就是对应概率最大的位置的索引,例如soft是0.82, hard就是1, https://arxiv.org/abs/1511.06335

10)Scikit-learn:简称 sklearn 是基于 Python 语言实现的机器学习算法库

      sklearn 中常用的算法库:

  • ·linear_model:线性模型算法族库,包含了线性回归算法,以及 Logistic 回归算法,它们都是基于线性模型。
  • .naiv_bayes:朴素贝叶斯模型算法库。
  • .tree:决策树模型算法库。
  • .svm:支持向量机模型算法库。
  • .neural_network:神经网络模型算法库。
  • .neightbors:最近邻算法模型库。

  一:结合线性回归简要概述使用过程

1:从 sklearn 库中导入线性模型中的线性回归算法
from sklearn import linear_model
2:训练线性回归模型,使用  fit() 喂入训练数据
model = linear_model.LinearRegression()
model.fit(x, y)
3:对训练好的模型进行预测,调用 predict() 预测输出结果, “x_”为输入测试数据
model.predict(x_)

  使用 sklearn 算法库实现线性回归就是这么简单,不过上述代码只是一个基本的框架,要想真正的把这台“机器”跑起来,我们就得给它喂入数据,因此准备数据集是必    不可少的环节。数据集的整理也是一门专业的知识,会涉及到数据的收集、清洗,也就是预处理的过程,比如均值移除、归一化等操作

  1:准备数据

# 使用numpy准备数据集
import numpy as np
# 准备自变量x,-3到3的区间均分间隔30份数
x = np.linspace(3,6.40)
#准备因变量y,这一个关于x的假设函数
y = 3 * x + 2

  2:实现算法

复制代码
#使用matplotlib绘制图像,使用numpy准备数据集
import  matplotlib.pyplot as plt
import numpy as np
from sklearn import linear_model
#准备自变量x,生成数据集,3到6的区间均分间隔30份数
x = np.linspace(3,6.40)
#准备因变量y,这一个关于x的假设函数
y = 3 * x + 2
#由于fit 需要传入二维矩阵数据,因此需要处理x,y的数据格式,将每个样本信息单独作为矩阵的一行
x=[[i] for i in x]
y=[[i] for i in y]
# 构建线性回归模型
model=linear_model.LinearRegression()
# 训练模型,"喂入"数据
model.fit(x,y)
# 准备测试数据 x_,这里准备了三组,如下:
x_=[[4],[5],[6]]
# 打印预测结果
y_=model.predict(x_)
print(y_)
#查看w和b的
print("w值为:",model.coef_)
print("b截距值为:",model.intercept_)
#数据集绘制,散点图,图像满足函假设函数图像
plt.scatter(x,y)
plt.show()
复制代码

  3:通过线性回归得到的线性函数图像,如下所示:

  4:打印输出结果如下所示:

测试集输出结果:
[[14.]
[17.]
[20.]]

w值为: [[3.]]
b截距值为: [2.]

  在实际情况中,我们要面临的数据集要复杂的多,绝大多数情况不会这样理想,都会存在一些波动。在生成数据集的代码段内添加以下代码,如下所示:

#准备自变量x,生成数据集,3到6的区间均分间隔30份数
x = np.linspace(3,6.40)

#准备因变量y,这一个关于x的假设函数
y = 3 * x + 2

# 添加代码,扰乱点的分布
x = x + np.random.rand(40)

  利用 NumPy 的 random. rand() 随机生成 0 - 1 之前的波动数值,从而改变数据点的分布情况,如下所示

   虽然做标签散乱分布,但是使用线性回归算法学习依然可以得到线性函数,此时 w 与 b 的输出结果如下所示

w值为: [[2.68673744]]
b截距值为: [0.80154335]

  绘制最佳拟合直线,程序代码如下:

复制代码
#使用matplotlib绘制图像,使用numpy准备数据集
import  matplotlib.pyplot as plt
import numpy as np
from sklearn import linear_model

#准备自变量x,生成数据集,-3到3的区间均分间隔30份数
x = np.linspace(3,6,40)

#准备因变量y,这一个关于x的假设函数
y=3 * x + 2
x = x + np.random.rand(40)
#由于fit 需要传入二维矩阵数据,因此需要处理x,y数据格式,将每个样本信息单独作为矩阵的一行 x
=[[i] for i in x] y=[[i] for i in y] model=linear_model.LinearRegression() model.fit(x,y) #准备测试数据 x_,这里准备了三组,如下: x_=[[4],[5],[6]] # 打印预测结果 y_=model.predict(x_) print(y_) #查看w和b的 print("w值为:",model.coef_) print("b截距值为:",model.intercept_) #数据集绘制,散点图,图像满足函假设函数图像 plt.scatter(x,y) #绘制最佳拟合直线 plt.plot(x_,y_,color="red",linewidth=3.0,linestyle="-") plt.legend(["func","Data"],loc=0) plt.show()
复制代码

  函数图像如下所示

  二:sklearn应用Logistic回归算法

  1:什么是范数?:范数又称为“正则项”

      1》L1范数:表示向量中每个元素绝对值的和

   

    此时两个绝度值符号,是符合范数规定的,两个绝对值符号表示范数。

    2》L2范数:向量中每个元素的平方和的平方根

      :

     2:回归类算法

            

   3:实现Logistic回归

    sklearn 库中自带了许多种类的内建数据集,比如波士顿房价数据集,手写数字识别数据集,鸢尾花数据集,糖尿病数据集等,这些数据集对我们学习机器学习算法提供了很好的帮助,节省了我们收集、整理数据集的时间。下面我们以鸢尾花数据集对 Logistic 回归算法进行简单的应用。

复制代码
#logistic算法
#从 scikit-learn库导入线性模型中的logistic回归算法
from sklearn.linear_model import LogisticRegression
#导入sklearn 中的自带数据集 鸢尾花数据集
from sklearn.datasets import load_iris
# skleran 提供的分割数据集的方法
from sklearn.model_selection import train_test_split

#载入鸢尾花数据集
iris_dataset=load_iris()

# data 数组的每一行对应一朵花,列代表每朵花的四个测量数据,分别是:花瓣的长度,宽度,花萼的长度、宽度
print("data数组类型: {}".format(type(iris_dataset['data'])))
# 前五朵花的数据
print("前五朵花数据:\n{}".format(iris_dataset['data'][:5]))

#分割数据集训练集,测试集
X_train,X_test,Y_train,Y_test=train_test_split(iris_dataset['data'],iris_dataset['target'],random_state=0)

#训练模型
#设置最大迭代次数为3000,默认为1000.不更改会出现警告提示
log_reg = LogisticRegression(max_iter=3000)
#给模型喂入数据
clm=log_reg.fit(X_train,Y_train)

#使用模型对测试集分类预测,并打印分类结果
print(clm.predict(X_test))
#最后使用性能评估器,测试模型优良,用测试集对模型进行评分
print(clm.score(X_test,Y_test))
复制代码

    输出结果如下

复制代码
data 数组类型: <class 'numpy.ndarray'>

前五朵花数据:
[[5.1 3.5 1.4 0.2]
[4.9 3.  1.4 0.2]
[4.7 3.2 1.3 0.2]
[4.6 3.1 1.5 0.2]
[5.  3.6 1.4 0.2]]

测试集划分结果:

[2 1 0 2 0 2 0 1 1 1 2 1 1 1 1 0 1 1 0 0 2 1 0 0 2 0 0 1 1 0 2 1 0 2 2 1 0 2]

模型评分:
0.9736842105263158
复制代码

scikit-learn 中的 train_test_split 函数可以打乱数据集,并对其进行拆分。该函数默认将 75% 的行数据及对应标签作为训练集,另外 25% 数据作为测试集。

注意:75% 和 25% 这两个数值可以根据实际的情况做相应的调整。

最后,我们对 Logistic 算法做一下简单总结:首先 Logistic 算法适用于分类问题,该算法在处理二分类问题上表现优越,但在多分类(二个以上)问题上容易出现欠拟合。Logistic 算法除了适用于回归分类问题,还可以作为神经网络算法的激活函数(即 Sigmoid 函数)。

NLP【Natural Language Processing】

1)分词(Segment):中英文都存在分词的问题,不过相对来说,英文单词与单词之间本来就有空格进行分割,所以处理起来相对方便。但是中文书写是没有分隔符的,所以分词的问题就比较突出。分词常用的手段可以是基于字典的最长串匹配,据说可以解决85%的问题,但是歧义分词很难。另外就是当下主流的统计机器学习的办法,利用HMM/CRF这一类的模型解决

  • tokenization:分词器:原始raw text叫语料,字典中的单独词叫token,可能是单词,也可能是词语,取决于字典,tokenization是把raw text变成token的过程,假如英语就是把句子用空格切分,每个单词就叫token
  • detokenization:分词还原:就是还原,把分词还原成句子,或者把分词后得到的id还原成原来的句子
2)词性标注(Label):基于机器学习的方法里,往往需要对词的词性进行标注。标注的目的是,表征词的一种隐状态,隐藏状态构成的转移就构成了状态转移序列。例如:苏宁易购/n 投资/v 了/u 国际米兰/n。其中,n代表名词,v代表动词,n,v都是标注。以此类推。
 
3)命名实体识别(Named Entity Recognition):本质上还是标注问题的一种。只不过把标注细化了。比如,苏宁/cmp_s 易购/cmp_e 是/v B2C/n 电商/n。我们把苏宁易购 标注成cmp_s和cmp_e,分别表征公司名的起始和结束。这样,当遇上苏宁/云商/易购这种场景时,也可以完整得识别出它是一个公司名称。如果,按照传统的标注方式,苏宁/cmp 易购/cmp这样笼统地标注可能会有问题。
 
4)句法分析(Syntax Parsing):句法分析往往是一种基于规则的专家系统。当然也不是说它不能用统计学的方法进行构建,不过最初的时候,还是利用语言学专家的知识来构建的。句法分析的目的是解析句子的中各个成分的依赖关系。所以,往往最终生成的结果,是一棵句法分析树。句法分析可以解决传统词袋模型不考虑上下文的问题。比如,张三是李四的领导;李四是张三的领导。这两句话,用词袋模型是完全相同的,但是句法分析可以分析出其中的主从关系,真正理清句子的关系。
 
5)指代消解(Anaphora Resolution):中文中代词出现的频率很高,它的作用的是用来表征前文出现过的人名、地名等词。例如,苏宁易购坐落在南京,这家公司目前位于中国B2C市场前三。在这句话中,其实“苏宁易购”这个词出现了2次,“这家公司”指代的就是苏宁易购。但是出于中文的习惯,我们不会把“苏宁易购”再重复一遍。
 
6)情感识别(Emotion Recognition):所谓情感识别,本质上是分类问题。情感基本可以分类2类或者3类。正面、负面,有时再加上非正非负。一般来说,在电商企业,情感识别可以分析商品评价的好坏,以此作为下一个环节的评判依据。通常的做法,可以基于词袋模型+分类器,或者现在流行的词向量模型+RNN。经过测试后者比前者准确率略有提升。
 
7)纠错(Correction):自动纠错在搜索技术中利用得很多。由于用户的输入出错的可能性比较大,出错的场景也比较多。所以,我们需要一个纠错系统。具体做法有很多,可以基于N-Gram进行纠错,数据结构上,字典树、有限状态机可以考虑。
 
8)问答系统(QA System):这是一种类似机器人的人工智能系统。比较著名的有,IBM Watson,Google Allo,苹果Siri,微软小冰等等。问答系统往往需要语音识别、合成,自然语言理解、知识图谱等多项技术的配合才会实现得比较好。个人认为,QA系统是NLP从业者一个较难做好的产品。

9)信息抽取:实体抽取(命名实体识别,Named Entity Recognition)、关系抽取(Relation Extraction)和事件抽取(Event Extraction)

  关系抽取从实现的算法来看,主要分为四种:

  1、手写规则(Hand-Written Patterns);

  2、监督学习算法(Supervised Machine Learning);

  3、半监督学习算法(Semi-Supervised Learning,比如Bootstrapping和Distant Supervision【远程监督算法】);

  4、无监督算法。

  目前已实现的三中抽取方式与注意事项:

 

10)远程监督【distant supervision】:论文:Distant supervision for relation extraction without labeled data(最早的将远程监督学习用于关系抽取,是一篇开山之作);论文地址:https://www.aclweb.org/anthology/P09-1113.pdf。假如一个句子中出现了两个实体,且这两个实体之间存在关系,那么就认为这句话体现了这种关系。“知道两个实体之间存在某个关系”是依赖一个外部知识库告诉我们的,所以叫做远程监督,是通过知识库作为监督信号进行标注的。所以,这种思想,就叫远程监督。

  远程监督:大多数机器学习技术都需要一组训练数据。收集训练数据的传统方法是让人们标签一组文档。例如,对于婚姻关系,人类标注者可以将“比尔·克林顿”和“希拉里·克林顿”对标签为正的训练样本。这种方法在时间和金钱上都是昂贵的,并且如果我们的语料库很大,将无法产生足够的数据供我们的算法使用。而且由于人为错误,因此产生的训练数据极有可能是噪音的。生成训练数据的另一种方法是远距离监督(远程监督)。在远距离监督中,我们利用一个已经存在的数据库来收集要提取的关系的样本。然后,我们使用这些样本自动生成我们的训练数据。例如,包含巴拉克·奥巴马和米歇尔·奥巴马已婚的事实。我们考虑到这一事实,然后将出现在同一句子中的每对“巴拉克·奥巴马”和“米歇尔·奥巴马”都标签为我们婚姻关系的一个正例子。这样,我们可以轻松生成大量(可能是噪音的)训练数据。运用远距离监督来获得特定关系的正样本很容易,但是产生负样本比较难.即用知识库KG来获取2个实体之间的关系。

预训练模型(Pre-trained Language Models)

1)BERT(Bidirectional Encoder Representations from Transformers)

  解释:它是一个基于Transformer结构的双向编码器。其结构可以简单理解为Transformer的encoder部分

  论文名称:BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding

  论文地址:https://arxiv.org/pdf/1810.04805.pdf

   最左边即为BERT,它是真正意义上的双向语言模型。双向对于语义表征的作用不言而喻,能够更加完整的利用上下文学习到语句信息。GPT是基于auto regression的单向语言模型,无法利用下文学习当前语义。ELMO虽然看起来像双向,但其实是一个从左到右的lstm和一个从右到左的lstm单独训练然后拼接而成,本质上并不是双向。 BERT主要分为三层,embedding层、encoder层、prediction层。

  BERT怎么预训练的:

    预训练任务一:遮蔽语言模型(MLM)

    MLM,masked language model,学习token间信息。类似于完形填空,对15%的经过word piece后的token,进行处理。其中80%设置为[MASK],10%随机替换为其他token,10%不变。利用双向上下文信息,来预测这些位置的词语如图:

    预训练任务二:下一句预测(NSP)

    NSP,next sequence prediction,学习语句间信息。一个二分类问题,给定两句话,判断seqB是否为seqA的下一句。构造的正负样本为 1:1。如图:

    两个任务共享Bert,使用不同的输出层,做Muti-Task。

  1》两个任务有哪些缺点和改进点呢,主要有

  1. MLM直接对单个token进行随机mask,丢失了短语和实体信息,这一点对中文尤其明显,百度ERNIE对其进行了改进
  2. MLM仅预测被mask的token,其他token没有参与到预测中。而GPT等语言模型可以对每个token进行预测。导致MLM训练效率偏低,训练时间过长。这一点BERT论文自己也提到了,ELECTRA围绕这一点进行了改进。
  3. NSP任务可以学到sequence level信息,但仅为一个二分类,且负样本构造过于简单,导致模型不能充分训练。之前BERT的消融分析中也看到了,NSP对下游任务的作用比MLM要小。SpanBERT、ALBERT、Roberta均提到了这一点,并进行了相关改进,或者干脆弃用NSP。

  2》对于任务一,对于在数据中随机选择 15% 的标记,其中80%被换位[mask],10%不变、10%随机替换其他单词,原因是什么?

  两个缺点:

  1、因为Bert用于下游任务微调时, [MASK] 标记不会出现,它只出现在预训练任务中。这就造成了预训练和微调之间的不匹配,微调不出现[MASK]这个标记,模型好像就没有了着力点、不知从哪入手。所以只将80%的替换为[mask],但这也只是缓解、不能解决

  2、相较于传统语言模型,Bert的每批次训练数据中只有 15% 的标记被预测,这导致模型需要更多的训练步骤来收敛。

2)预训练任务优化(ERNIE-百度、SpanBERT等

3)预训练方法优化(RoBERTa、T5

  RoBERTa

  论文名称:RoBERTa: A Robustly Optimized BERT Pretraining Approach

  论文地址:https://arxiv.org/abs/1907.11692

  创新:1- Dynamic Masking;2 -without NSP;3- 超参优化,增大batch size;4- 增大数据量;5 -文本编码

4)预训练模型结构优化(XLNet、ALBERT、ELECTRA)

5)模型轻量化(ALBERT、Q8BERT、DistillBERT、TinyBERT等)

其他

  1. SOTA:state-of-the-art:业界最新的性能,达到最新的模型性能
  2. FLOPS:floating point operations per second:每秒浮动计算数, 是衡量计算机计算性能的一个指标
  3. MLM:Masked language modeling, 掩盖语言建模, 也被叫做完形填空测试,cloze test,MLM的任务是根据占位符预测序列中的丢失token
  4. PLM: Pre-trained Language Models 预训练语言模型; 排列语言模型(Permutation Language Model) PLM, XLNet使用排列语言模型(PLM)
  5. LA-MLM:label-aware masked language model, 标签感知masked语言模型,分2个阶段Early Fusion早期融合和Late Supervision后期监督,它们的主要区别是早期融合阶段是把句子情感也作为输入,后期监督是把句子情感作为预测标签,监督训练句子情感。早期融合和后期监督的目的是让模型能够理解句子级情感和单词级情感和词性之间的内在联系。
  6. warm-up:调整学习率的方式,在warm-up步数之前的学习率是恒定或者按照一定规则变大,warm-up之后的步数指数方式衰减和线性衰减
  7. corruption损坏:破坏一个原有的句子,例如BERT的MLM的无监督目标,可以对一个句子进行丢弃,替换,交换,添加操作,改变原有语句,然后让模型预测原有句子或改变的部分
  8. 域内数据:就是一个领域的数据,例如新闻领域的文章和论文领域里的文章是不一样的,他们就是不同的域
  9. pre-train-then-fine-tune:首先预训练模型,然后微调模型,预训练模型一般用大量数据做无监督训练,微调模型是用少量数据有监督训练
  10. 零样本学习(zero-shot learning): 即使训练时没有看到目标训练集,也能进行进行模型预测,零次训练或推理,无须训练,直接进行预测或推理。是一种训练策略,它允许机器学习模型预测新的类别,而不需要为新的类别提供任何标注的样本。
  11. Few-Shot:少量训练样本进行学习,然后预测,类似于low-resource
  12. 图灵完备性(Turing Completeness):是针对一套数据操作规则而言的概念。数据操作规则可以是一门编程语言,也可以是计算机里具体实现了的指令集。当这套规则可以实现图灵机模型里的全部功能时,就称它具有图灵完备性。直白一点说,图灵完备性就是我给你一工具箱的东西,包括无限内存、if/else 控制流、while 循环; 简单来讲,一切可计算的问题都能计算,这样的虚拟机或者编程语言就叫图灵完备的;举个例子,如果有人说,我的东西是图灵完备的,也就意味着理论上它能够用来解决任何计算性的问题。
  13. 有限状态机(英语:finite-state machine,缩写:FSM)又称有限状态自动机(英语:finite-state automation,缩写:FSA),简称状态机,是表示有限个状态以及在这些状态之间的转移和动作等行为的数学计算模型。
  14. RE:relation extraction,neural relation extraction (NRE), 从一个句子中判断两个entity是否有关系,一般是一个二分类问题,指定某种关系。
  15. Entity Mentions:实体提及,就是句子中的实体, “New York City is good” New York City就是实体,或者实体提及, 就是实体的名字
  16. KGs: Knowledge Graph, 知识图谱
  17. Autograd: 自动微分是训练神经网络的一种机制,自动求导,计算梯度
  18. Segment:片段,或者称为句子a,句子b等,例如训练BERT时结构如,“[CLS] x1 [SEP] x2 [SEP]”,x1表示片段1,或句子a,x2表示片段2或句子b。
  19. Intrinsic tasks vs Downstream Tasks: 固有任务和下游任务,固有任务意思是预训练语言模型时的任务,下游任务是微调模型时的任务。
  20. WordPiece: 是在自然语言处理中使用的子词分割算法。BERT用的此方法。子词分词的一种方法。 用该语言中的各个字符初始化单词表,然后将单词表中最常见的符号组合迭代添加到单词表中。该过程是:1.用文本中的所有字符初始化单词清单。2.使用来自上一步的清单在训练数据上构建语言模型。 3. 通过组合当前单词清单中的两个单元, 将单词组装一个单词单元。 在添加到模型中时,从所有可能增加训练数据可能性中选择一个新的词单元。 4. 转到2,直到达到预定义的词单元限制或可能性增加低于某个特定阈值。
  21. NMT:Neural machine translation,神经机器翻译,利用深度神经网络执行的端到端的翻译,例如seq2seq的神经网络翻译。
  22. SMT: statistical machine translation,传统机器翻译的方法。
  23. non-segmented语言: 分段语言,即用空格分隔的语言,例如英语,非分段语言,例如中文,日语,韩语。
  24. NFD:Normalization Form Canonical Decomposition标准化形式规范分解,Unicode字符串标准化的一种算法,字符通过规范等价分解,并且多个组合字符按特定顺序排列
  25. NFC:Normalization Form Canonical Composition 标准化形式规范组合,Unicode字符串标准化的一种算法,字符被分解,然后通过规范对等重新组合。
  26. NFKD:Normalization Form Compatibility Decomposition: 标准化形式兼容性分解,字符通过兼容性分解,并且多个组合字符按特定顺序排列。
  27. NFKC: Normalization Form Compatibility Composition: 标准化形式兼容性组成,字符通过兼容性分解,然后通过规范对等重组。所有这些算法都是幂等转换,这意味着如果以相同算法再次处理,已经处于这些标准化形式之一的字符串将不会被修改。
  28. RBT3:由RoBERTa-wwm-ext 3层进行初始化,继续训练了1M步,RBT的名字是RoBERTa三个音节首字母组成,L代表large模型
  29. RBTL3: 3层RoBERTa-wwm-ext-base/large,由RoBERTa-wwm-ext-large 3层进行初始化,继续训练了1M步
  30. ONNX: Open Neural Network Exchange format,开放式神经网络交换格式,提高模型推理速度的中间模型格式,最高实现4倍的推理加速。
  31. ABSA: Aspect-based Sentiment Analysis, 给定句子中关心的情感的术语(aspect),即某个词在句子中表达的情感。等同于ALSC, Aspect level sentiment classification
  32. Sentiment Analysis (SA): 也称为Opinion Mining (OM)
  33. self-supervised: 类似于BERT的预训练模型的方式,也可以成为无监督,无监督表明我们确实没给BERT提供人工打标签,自监督表明它是用自己随机MASK部分token,然后预测被Mask的方式,所以叫做自监督。
  34. context-gloss:上下文的连贯性
  35. parse tree:分析树, 具体语法树(concrete syntax tree),是一个反映某种形式语言字符串的语法关系的有根有序树。分析树一般按照两种相反的法则生成,一种是依存语法,一种是短语结构语法。二分类选举树,binary constituency tree
  36. DRL:deep reinforcement learning
  37. 市场摩擦(英文:Market Friction):是指金融资产在交易中存在的难度。它可由交易一定数量某金融资产的最佳占用时间来测定,也可由即时交易所需要的价格让步(Price concession)来测定。
  38. inductive:归纳式学习,transductive和inductive的区别在于我们想要预测的样本,是不是我们在训练的时候已经见(用)过的。inductive learning就是只根据现有的ABC,用比如kNN距离算法来预测,在来一个新的数据的时候,还是只根据5个ABC来预测。
  39. transductive: 直推式学习,transductive learning直接以某种算法观察出数据的分布,这里呈现三个cluster,就根据cluster判定,不会建立一个预测的模型,如果一个新的数据加进来 就必须重新算一遍整个算法,新加的数据也会导致旧的已预测问号的结果改变
  40. NRE:Neural Relation Extraction Models 神经网络的关系抽取模型
  41. PCNN: PCNN(Piece-Wise-CNN)
  42. OMR: 光学音乐识别(OPTICAL MUSIC Recognition,OMR)是将乐谱的扫描图像转换为像MusicXML[9]或MIDI这样的符号代表的问题。这种解决方案有很多明显的实际应用。
  43. on-policy: 强化学习可以分为off-policy和on-policy的方法。off-policy RL算法意味着用于选择动作的行为策略与学习策略不同。相反,在on-policy RL算法中,行为策略与学习策略是相同的。此外,强化学习还可以分为基于价值的方法和基于策略的方法。在基于价值的RL中,agent更新价值函数来学习合适的策略,而基于策略的RL agent直接学习策略。
  44. Hierarchical reinforcement learning (HRL): 分层强化学习
  45. ALE: Atari Learning Environment
  46. rollout:(就相当于在一个棋局时尝试多次不同路径的走子)类似右图产生多条路径
  47. Imitation Learning: IL 模仿学习,模仿学习的思想很直观(intuitive)。我们在前面所介绍的Model-free, Model-based强化学习方法都是从零开始(from scratch)探索并学习一个使累计回报最大的策略(policy) [公式] 。 Imitation Learning的想法是,借助人类给出的示范(demonstration),可以快速地达到这个目的。
  48. Forward model:(st, at) → st+1. 前向模型。(st, at) → st+1. 这是在给定当前状态和所选动作的情况下预测下一个状态。这是目前最常见的模型类型,可用于前向规划。
  49. Backward/reverse model: st+1 → (st, at). 反向模型:st+1 →(st,at)。这个模型预测了哪些状态是某一特定状态的可能前兆。因此,我们可以在反向的方向上进行规划,例如,在prioritized sweeping中就使用了这种方法(Moore和Atkeson,1993)。
  50. Inverse model: (st, st+1) → at. 逆向模型。(st, st+1) → at. 逆向模型预测从一个状态到另一个状态需要哪种行动。例如,它被用于RRT规划中(LaValle,1998)。正如我们稍后将看到的那样,这个函数也可以作为表示学习的一部分。
  51. NP-hard: NP是指非确定性多项式(non-deterministic polynomial,缩写NP)。所谓的非确定性是指,可用一定数量的运算去解决多项式时间内可解决的问题。例如,著名的推销员旅行问题(Travel Saleman Problem or TSP):假设一个推销员需要从香港出发,经过广州,北京,上海,…,等 n 个城市, 最后返回香港。 任意两个城市之间都有飞机直达,但票价不等。假设公司只给报销 C 元钱,问是否存在一个行程安排,使得他能遍历所有城市,而且总的路费小于 C? 推销员旅行问题显然是 NP 的。因为如果你任意给出一个行程安排,可以很容易算出旅行总开销。但是,要想知道一条总路费小于 C 的行程是否存在,在最坏情况下,必须检查所有可能的旅行安排! 这将是个天文数字。
  52. P类问题:可以找到一个多项式时间复杂度的算法去解决的问题;
  53. NEXPTIME-complete:如果一个决策问题在NEXPTIME中,那么它就是NEXPTIME完整的,而且NEXPTIME中的每个问题都有一个多项式时间的多对一还原。换句话说,有一种多项式时间的算法可以将一个问题的实例转化为另一个问题的实例,而且答案相同。NEXPTIME-complete的问题可以被认为是NEXPTIME中最难的问题。我们知道NEXPTIME-complete问题不在NP中;根据时间层次定理,已经证明这些问题不能在多项式时间内被验证。 一组重要的NEXPTIME-complete问题与简洁电路有关。简明电路是一种简单的机器,用于在指数级的空间内描述图形。它们接受两个顶点数字作为输入,并输出它们之间是否有一条边。如果在自然表示法(如邻接矩阵)中解决一个图的问题是NP-完全的,那么在简洁电路表示法中解决同样的问题是NEXPTIME-完全的,因为输入是指数级的小(在一些温和的条件下,NP-完全性的减少是通过 “投影 “实现的)。[2][3] 作为一个简单的例子,为一个如此编码的图寻找一个汉密尔顿路径是NEXPTIME-完全的。
  54. MARL:Multi-Agent Reinforcement Learning 多agent强化学习
  55. annealed:退火,意思是超参数随着时间的逐渐变小,参数越来越小。例如强化学习中的Qleanring的Greedy系数。
  56. 优势函数:advantage function , 强化学习 优势函数(Advantage Function),优势函数表达在状态s下,某动作a相对于平均而言的优势。 从数量关系来看,就是随机变量相对均值的偏差。 使用优势函数是深度强化学习极其重要的一种策略,尤其对于基于policy的学习。优势函数其实就是将Q-Value“归一化”到Value baseline上,如上讨论的,这样有助于提高学习效率,同时使学习更加稳定;同时经验表明,优势函数也有助于减小方差,而方差过大导致过拟合的重要因素。Aπ(s,a)=Qπ(s,a) - Vπ(s)
  57. bitext:bidirectional text, 双向语料,即翻译的平行语料,例如中英文翻译语料库
  58. Dec-POMDP:一个完全合作的多agent任务可以被描述为一个分散的部分可观察马尔可夫决策过程(Dec-POMDP)
  59. CTDE:集中训练和分散执行(CTDE)Kraemer和Banerjee[2016]的范式允许学习过程利用额外的状态信息。CTDE允许学习算法访问所有局部行动观察直方图和全局状态,并共享梯度和参数。然后,在执行阶段,每个单独的agent只能访问其局部行动观察历史τi。
  60. tile-coding:强化学习理论扩展到了连续空间(连续空间的泛化)。tile-coding是连续空间强化学习问题中最实用和计算效率最高的工具。本质上,tile-coding是连续状态空间中的特征表示,tile-coding的主要优势之一是其计算效率。一个tiling的意思是一张大网,里面有划分成不同的小网,观察的像素会落到这个tiling中的小网内,就可以用这个小网内的坐标表示这个特征,多个tiling就是用多个小网内的坐标表示这个特征,就像self-attention的多头和卷积中的多个卷积核一样。https://towardsdatascience.com/reinforcement-learning-tile-coding-implementation-7974b600762b
  61. domain adaptation for machine translation (DAMT): 半监督领域适应翻译
  62. ROUGE-N:系统和参考摘要之间N-grams的重叠。
  63. ROUGE-1:指的是系统和参考摘要之间的unigram(每个字)的重叠情况。
  64. ROUGE-2:指的是系统和参考摘要之间的bigram重叠。
  65. ROUGE-L:基于最长共同子序列(LCS)的统计。最长共同子序列问题自然考虑到了句子层面的结构相似性,并自动识别序列中最长的共同出现的n-grams。
  66. ROUGE-W:基于加权的LCS统计,倾向于连续的LCSs。
  67. ROUGE-S:基于 Skip-bigram 的共现统计。Skip-bigram是指任何一对词在其句子中的序列。
  68. ROUGE-SU:基于 Skip-bigram 和 unigram 的共现统计。
  69. MTL: Multi-task learning
  70. SAN: 随机答案网络,用于问答系统,stochastic answer network, Stochastic answer networks for natural language inference
  71. MTPE: machine translation post-editing
  72. MBRL: model-based的强化学习
  73. CPM:Chinese Pretrained language Model 中文预训练模型
  74. prompt-tuning:(p-tuning)
  75. TrGCN: transformer图卷积网络
  76. NED:命名实体消歧named entity disambiguation
  77. ERD: Entity Relationship Diagram 实体关系图
  78. ELBO: Evidence Lower Bound,即证据下界,这里的证据指数据或可观测变量的概率密度。使用变分推断时,首先需要计算的便是ELBO。https://blog.csdn.net/qy20115549/article/details/93074519
  79. New Words Discovery: 新词发现
  80. ACSA: Aspect category sentiment analysis, 基于属性类别的情感分析
  81. ABSA: Aspect Based Sentiment Analysis, 基于属性的情感分析
  82. ATSA: 等同于ABSA,aspect术语情感分析
  83. capsule Network: 胶囊神经网络,是相对于CNN的改进,综合了CNN的优点的同时,考虑了CNN缺失的相对位置、角度等其他信息,从而使得识别效果有所提升。https://easyai.tech/ai-definition/capsule/
  84. MRR: Mean Reciprocal Rank, 是一个国际上通用的对 搜索算法 进行评价的机制,即第一个结果匹配,分数为1,第二个匹配分数为0.5,第n个匹配分数为1/n,如果没有匹配的句子分数为0,最终的分数为所有得分之和
  85. ER: entity recognition 实体识别
  86. EL: entity linking 实体链接
  87. ED: entity disambiguation 实体消歧
  88. EEs: emerging entities 新出现的实体
  89. EED: emerging entity discovery 新实体发现,通过对知识库中现有的候选实体进行鉴别,KB外的实体称为新出现的实体。
  90. BPR: Best Possible Recall
  91. CMD: Central Moment Discrepancy, 最先进的分布相似度指标,过匹配两个表示的顺序矩差来衡量它们之间的差异,类似KL散度,可以执行高阶矩的明确匹配,而不需要昂贵的距离和核矩阵计算。CMD距离随着两个分布的相似性而变小。
  92. 平凡解: trivial solution, 编码器函数近似于一个不相关的但不具代表性的模态向量,就会出现平凡解的情况,防止平凡解, 经常用于结构非常简单的对象(比如群或拓扑空间),有时亦会用明显或乏趣这两个词代替,但对非数学工作者来说,它们有时可能比其他更复杂的对象更难想象或理解。例如: 明显因数:对于每个正整数 n 来说,1、-1、n 和 -n 都是它的明显因数。 空集:不包含任何元素的集合; 平凡群:只含单位元的群;
  93. DETR: 端到端目标检测,End-to-end Object Detection with Transformer, 达到与Faster-RCNN等两阶段目标检测相当的性能。
  94. FGM: Factor Graph Model, 因子图模型,是概率图模型的一种
  95. IGL: Iterative Grid Labeling 迭代式网关标注方式
  96. TSA: Text Similarity Approach 文本相似性技术
  97. MLTC:multi-label text classification 多标签文本分类
  98. XMC: Extreme multi-label text classification 极端多标签文本分类, 寻求从一个极端大的标签集合中为给定的文本输入找到相关的标签。许多现实世界的应用可以被表述为XMC问题,如推荐系统、文档tagging和语义搜索。
  99. exposure bias: 暴露偏差:模型训练与预测过程之间的不匹配。在训练时每一个词输入都来自真实样本,但是在推断时当前输入用的却是上一个词的输入

 

posted on   Y-flower  阅读(1785)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示