例如,某个模型做出40次正确预测和10次错误预测预测的准确率为:
其中:
因此,该模型的准确性为:
accuracy=(TP+TN)/(TP+TN+FP+FN)accuracy=(0+36500)/(0+36500+25+0)=0.9993=99.93%虽然99.93%的准确率似乎是一个非常可观的百分比,但它并不具备预测能力。
常用的激活函数包括:
激活函数的曲线图绝不是单条直线。例如,ReLU激活函数的曲线图包含两条直线:
S型激活函数的曲线图如下所示:
例如,下图显示了一个分类器模型,用于区分正类别(绿色椭圆形)与负类别(紫色矩形)完美呈现。这种不切实际的完美模型AUC为1.0:
而下图则展示了分类器的生成随机结果的模型。此模型的AUC为0.5:
是,上述模型的AUC为0.5,而不是0.0。
大多数模型都处于这两种极端之间。例如,以下模型在一定程度上区分了正类别和负类别,曲线下面积的曲线在0.5到1.0之间:
曲线下面积是上图中灰色区域的面积。在这种不寻常的情况中,该区域只是灰色区域的长度(1.0)乘以灰色区域的宽度(1.0)。产品则1.0和1.0的曲线下面积正好为1.0,这是AUC得分。
另一方面,不能区分类别的分类器的ROC曲线如下所示。此灰色区域的面积为0.5。
更典型的ROC曲线大致如下所示:
手动计算此曲线下的面积可能非常艰巨,因此,程序通常会计算大多数AUC值。
曲线下面积是分类器更确信随机选择的正例实际上是正例,随机选择的负例为正例。
神经网络通常包含跨多个隐藏层的多个神经元。其中每个神经元以不同的方式影响整体损失。反向传播算法确定是增加还是减少权重应用于特定神经元。
几年前,机器学习从业者必须编写代码来实现反向传播算法。现在,TensorFlow等现代机器学习API可以为您实现反向传播算法了。哎呀!
下面是常用的批量大小策略:
1.对某些事物、人或事物有成见、偏见或偏爱或群组的效果这些偏差会影响收集和数据的解释、系统设计以及用户如何互动与系统集成。此类偏差的形式包括:
2.抽样或报告过程中引入的系统错误。此类偏差的形式包括:
相对于原点的截距或偏移。偏差是机器学习模型,由两个模型中的以下:
例如,在下面的公式中,偏差为b:
在简单的二维直线中,偏差仅表示“y截距”。例如,下图中线条的偏差为2。
存在偏差是因为并非所有模型都从原点(0,0)开始。例如:假设一个游乐园的门票价格为2欧元,客户入住每小时0.5欧元。因此,映射总费用偏差为2,因为最低成本为2欧元。
例如,以下两个机器学习模型各自执行了二元分类:
例如,不要将体温连续浮点特征,您可以切断温度范围离散分区,例如:
模型将以相同方式处理同一分桶中的每个值。对于例如,值13和22都位于温带分区中,因此模型会以相同的方式处理这两个值。
增加存储分区数会使模型的复杂程度增加,增加模型必须学习的关系数量。例如,冷水桶、温带水桶和温水水桶基本上三个不同的特征进行训练。如果您决定将也就是冷冻和热量,您的模型都需要使用五个独立的特征进行训练。
您如何知道要创建多少个存储分区,或者每个存储分区的范围应该是什么?通常需要相当多的回答。
通过将traffic-light-state表示为分类特征,模型可以学习red、green和yellow对驱动程序行为的不同影响。
两种常见的分类模型是:
逻辑回归模型会输出一个介于0到1之间的原始值。然后,执行以下操作:
例如,假设分类阈值为0.8。如果原始值为0.9,则模型会预测为正类别。如果原始值为0.7,则模型会预测负类别。
随着模型或数据集的发展,工程师有时也会改变分类阈值。当分类阈值发生变化时,正类别预测可能会突然变成负类别反之亦然。
以一个二元分类疾病预测模型为例。假设当系统在第一年运行时:
因此,系统会诊断正类别。(患者喘气,“糟糕!我病了!”)
一年后,值现在可能如下所示:
因此,系统现在将该患者重新分类为负类别。(“祝您有愉快的一天!我没有生病。”)同一患者。诊断结果不同。
负例和正例标签的比率为100,000:1,因此属于分类不平衡的数据集。
相比之下,下面的数据集没有分类不平衡,因为负例标签的比率相对接近于1:
多类别数据集也有可能是类别不平衡的。例如,以下多类别分类数据集也有类别不平衡,这是因为一个标签的样本数量远远多于另外两个:
例如,假设特定特征的值小于0.5%不在40–60之间。在这种情况下,您可以执行以下操作:
上述混淆矩阵显示以下内容:
再举一个例子,混淆矩阵可以揭示经过训练的模型识别手写数字时,往往会将4错误地预测为9,或者错误地预测了1而非7。
如果后续无法训练,则模型会收敛改进模型。
DataFrame类似于表格或电子表格。数据中的每一列DataFrame有一个名称(标题),每一行都由一个唯一编号。
DataFrame中的每一列都采用类似于二维数组的结构,只是您可以为每个列分配自己的数据类型。
原始数据的集合,通常(但并非专门)整理到一个以下格式:
深度模型也称为“深度神经网络”。
例如,具有五个隐藏层和一个输出层的神经网络深度为6。
频繁或不断地处理某件事。术语“动态”和“在线”是机器学习中的同义词。以下是动态和在线在机器中的常见用法正在学习:
包含73,000个元素的数组非常长。如果没有添加嵌入层训练将非常耗时,72,999个零相乘。也许您会选择嵌入层,共12个维度因此,嵌入层会逐渐学习每个树种的新嵌入向量。
例如,假设存在以下情况:
因此,一个周期需要20次迭代:
1epoch=(N/batchsize)=(1,000/50)=20iterations
例如,假设您正在训练模型来确定天气状况对学生考试分数的影响。以下是三个有标签的示例:
下面是三个无标签样本:
模型错误的实际负例所占的比例预测了正类别。以下公式计算的是正面率:
例如,请考虑使用“情绪预测”该模型以下4个存储分区中的其中一个:
并表示以下三个分区之一中的风速:
如果没有特征组合,线性模型会根据每个特征前面七个不同的存储分区例如,模型会使用freezing,而不依赖于训练,例如,windy。
或者,您也可以创建一个包含温度和风速。此合成特征有以下12种可能:值:
得益于特征组合,模型可以学习情绪差异介于freezing-windy天到freezing-still天之间。
如果您通过两个地图项创建合成地图项,而这两个地图项都包含大量产生的特征组合将有大量可能的组合。例如,如果一个特征有1,000个分桶,另一个特征有2,000个分桶,生成的特征组合有2,000,000个存储分区。
特征组合主要用于线性模型,很少使用和神经网络。
此过程涉及以下步骤:
每个样本都为特征向量提供不同的值,因此下一个示例的特征向量可能如下所示:
[0.0,0.0,1.0,0.0,0.0]再举一个例子,假设您的模型由三个特征组成:
在这种情况下,每个样本的特征向量将用乘以9的值。根据上述列表中的示例值,则特征向量为:
0.01.00.00.00.00.00.01.08.3
在机器学习中,模型的预测会影响同一模型或其他模型的训练数据。例如,一个模型推荐的电影会影响用户观看的电影影响后续的电影推荐模型。
您使用训练集中的样本训练模型。因此,模型会学习训练集中数据的特征。泛化实质上会询问您的模型能否根据样本做出良好的预测不属于训练集中的句子。
梯度下降法的年代比机器学习晚得多。
真人秀。
实际发生的事情。
我们根据标准答案评估模型质量。但是,标准答案并不总是完全、真实、可靠例如,您可以考虑使用以下示例展示了标准答案的潜在缺陷:
L0正则化有时称为L0正则化。
$$L_1loss=\sum_{i=0}^n|y_i-\hat{y}_i|$$
$$L_2loss=\sum_{i=0}^n{(y_i-\hat{y}_i)}^2$$
对比有标签样本与无标签样本。
例如,下图显示了一个输入层、两个隐藏层和一个输出层:
两个或多个变量之间的关系,这些变量可以单独表示通过加法和乘法得出的结果。
线性关系的曲线图是一条直线。
线性模型遵循以下公式:
y'=7+(-2.5)(x1)+(-1.2)(x2)+(1.4)(x3)假设某个特定示例包含以下值:
y'=7+(-2.5)(4)+(-1.2)(-10)+(1.4)(5)y'=16线性模型不仅包括仅使用线性方程进行预测,而且可以使用线性方程的更广泛的模型集用作预测公式中的一个组成部分。例如,逻辑回归会对原始图片进行后处理,预测(y')以生成0到1之间的最终预测值,。
一种同时满足以下两个条件的机器学习模型:
例如,假设某个逻辑回归模型计算垃圾邮件或非垃圾邮件的概率。在推理期间,假设模型预测值为0.72。因此,模型正在估算:
逻辑回归模型使用以下两步式架构:
与任何回归模型一样,逻辑回归模型可以预测数字。然而,这个数字通常成为二元分类的一部分。如下所示:
以下公式用于计算对数损失:
某些事件的发生几率的对数。
如果事件是二元概率,则几率指的是成功概率(p)与成功概率的比率失败(1-p)。例如,假设指定事件的90%成功概率和失败概率为10%。在此示例中几率的计算公式如下:
损失曲线可以绘制以下所有类型的损失:
训练的目标是尽可能减小损失函数的回车。
存在许多不同类型的损失函数。选择合适的损失函数。例如:
机器学习也指程序或系统。
相较于基于模型的预测,损失。
您可以保存、恢复模型或制作模型副本。
如下所示的代数函数是一个模型:
f(x,y)=3x-5xy+y2+17上述函数将输入值(x和y)映射到输出。
同样,如下所示的编程函数也是一个模型:
defhalf_of_greater(x,y):if(x>y):return(x/2)elsereturn(y/2)调用程序会将参数传递给前面的Python函数,而Python函数生成输出(通过return语句)。
一名人类程序员手动编写一个编程函数。相比之下,机器学习模型会逐步学习自动训练期间的GRU状态。
一个根据Iris数据集训练的模型,用于根据新示例预测鸢尾花类型执行多类别分类。
在聚类问题中,多类别分类是指两个集群中。
神经网络中的每个神经元都连接到下一层中的所有节点。例如,在上图中,请注意三个神经元在第一个隐藏层中,分别与Transformer模型中的两个神经元第二个隐藏层。
在计算机上实现的神经网络有时称为人工神经网络,大脑和其他神经系统中存在的神经网络。
一些神经网络可以模拟极其复杂的非线性关系不同特征和标签之间的差异。
下图突出显示了两个神经元及其输入。
神经网络中的神经元会模仿大脑中神经元的行为,神经系统的其他部分。
无法只表示两个或多个变量之间的关系通过加法和乘法得出的结果。线性关系可以用一条线来表示nonlinear关系以一条线表示例如,假设有两个模型映射到单个标签。左侧的模型是线性模型而右侧的模型为非线性模型:
从广义上讲,转换变量实际范围的过程转换为标准的值范围,例如:
例如,假设一个模型生成本地天气预报(预测)。每个模型运行后,系统会缓存所有本地天气预报。天气应用会检索天气预报从缓存中移除
离线推理也称为静态推理。
将分类数据表示为向量,其中:
独热编码通常用于表示字符串或标识符,具有一组有限的可能值。例如,假设某个分类特征名为Scandinavia有五个可能的值:
独热编码可以表示这五个值中的每个值,如下所示:
得益于独热编码,模型可以学习。
通过数字编码,模型可以解读原始数字并尝试利用这些数字进行训练。然而,冰岛实际上并不是因此模型会得出一些奇怪的结论。
“最终版本”是神经网络的一层。输出层包含预测结果。
下图显示了一个带输入的小型深度神经网络,、两个隐藏层和一个输出层:
过拟合就好比严格遵循您最喜欢的建议教师。您很可能会在该老师的课程中取得成功,但可能“过拟合”能够积极采纳该教师的想法,类。同时,多名教师给出的建议将帮助你更好地适应新情况。
要测试的类。
例如,癌症模型中的正类别可以是“肿瘤”。在电子邮件分类器中,正类别可以是“垃圾邮件”。
不可否认,你是在同时测试正面和负面效果类。
运行模型后调整模型的输出。后处理可用于强制执行公平性约束,自己修改模型的过程。
模型的输出。例如:
用于粗略在数据集内无法直接提供的标签的数据。
例如,假设您必须训练模型来预测员工压力水平。您的数据集包含很多预测特征,未包含名为压力水平的标签。信心十足,拿出“工作场所事故”用作压力水平。毕竟,承受高压力的员工会而不是让员工平静下来真的吗?可能是工作场所事故实际上是出于多种原因的。
再举个例子,假设您要将isitraining设为布尔值标签。但您的数据集不包含雨水数据。如果您就可以创建一些人物照片遮阳伞作为“在下雨吗?”的代理标签。你说的是不是一个合适的代理标签?有可能,但某些文化背景的人相比下雨,人们更有可能带伞防晒。
代理标签通常并不完善。请尽可能选择实际标签,代理标签。也就是说,如果没有实际标签,请选择代理标签,选择最不严重的候选代理标签。
例如:
以下是ReLU的一个曲线图:
两种常见的回归模型类型是:
并非所有输出数值预测结果的模型都是回归模型。在某些情况下,数字预测实际上只是一种分类模型恰好具有数字类名称的事件。例如,预测数字邮政编码属于分类模型,而不是回归模型。
正则化还可以定义为对模型复杂度的惩罚。
正则化有违常理。通常增加正则化训练损失增加了,这令人感到困惑,因为最大限度地减少训练损失的目标是什么?
实际上,不行。目标不是最大限度减少训练损失。我们的目标是能够对真实示例做出出色的预测。值得注意的是,虽然增加正则化会增加训练损失,这通常有助于模型基于真实示例进行更好的预测。
其中正则化是指任何正则化机制,包括:
使用检索增强生成的常见动机包括:
ROC曲线的形状表明二元分类模型的能力来区分正类别和负类别。例如,假设二元分类模型完全全部正类别中的权重:
上述模型的ROC曲线如下所示:
相比之下,下图则显示了原始逻辑回归也就是无法区分负类别和负类别的正类别:
此模型的ROC曲线如下所示:
与此同时,在现实世界中,大多数二元分类模型正类别和负类别都在一定程度上,但通常并不完美。因此,典型的ROC曲线介于以下两个极端之间:
理论上,ROC曲线上最接近(0.0,1.0)的点可识别理想的分类阈值。不过,现实生活中的一些其他问题影响对理想分类阈值的选择。例如:假负例比假正例更能带来痛苦。
一个数学函数,将输入值限制在受限范围内,通常为0到1或-1到+1。也就是说,您可以将任意数字(二、一百万、负十亿)加S型函数,则输出值仍然会限制范围。S型激活函数的曲线图如下所示:
S型函数在机器学习中有多种用途,包括:
针对输入数x的S型函数使用以下公式:
Softmax也称为完整softmax。
softmax方程如下所示:
例如,假设输入矢量为:
[1.2,2.5,1.8]因此,softmax按如下方式计算分母:
因此,每个元素的softmax概率为:
因此,输出矢量为:
$\sigma$中三个元素的总和为1.0。哎呀!
在机器学习中,数量惊人的特征是稀疏特征。分类特征通常是稀疏特征。例如,某森林内有300种可能的树种,可能只是“枫树”。或者,在数以百万计的视频库中可能存在的视频,那么可能只用一个示例只有“Casablanca”
仅存储稀疏特征中非零元素的位置。
您可以使用独热矢量来表示每个样本中的树种。独热矢量将包含一个1(用来表示以及35个0(表示有35个树种,因此,独热表示法的maple可能如下所示:
或者,稀疏表示法则直接确定特定物种。如果maple位于位置24,则使用稀疏表示法的maple可能只是:
24请注意,稀疏表示法比独热表示法更紧凑表示。
假设模型中的每个样本都必须代表单词,英语句子中这些单词的顺序。英语大约有17万个单词,地图项包含大约170,000个元素。大多数英语句子都使用在这170,000个字词中是极小的比例,但单个样本几乎肯定是稀疏数据。
请思考以下句子:
Mydogisagreatdog您可以使用独热矢量的变体来表示此句子。在此变体中,向量中的多个单元格可以包含非零值。此外,在这个变体中,单元格可以包含整数而不是一个。尽管“我的”“是”“a”和“优秀”仅显示在这个句子中,出现一次单词“dog”出现两次。使用表示此句子中字词的独热矢量可生成以下内容包含170,000个元素的矢量:
同一句子的稀疏表示法则是:
0:126100:245770:158906:191520:1如果您感到困惑,请点击该图标。术语“稀疏表示法”由于存在数据稀疏性,表示法本身不是稀疏向量。更确切地说,是这种表示法实际上是稀疏向量的密集表示法。同义词索引表示法比“稀疏表示法”。
某件事只执行一次,而不是一直进行。术语“静态”和“离线”是同义词。以下是静态和离线在机器中的常见用法正在学习:
按照传统,数据集中的样本分为以下三个不同的子集:
理想情况下,数据集中的每个样本都应仅属于前面的子集。例如,一个示例不应属于训练集和验证集。
传统上,您需要将数据集中的样本分成以下三个样本:不同的子集: