神经网络中的各种损失函数介绍

作者: 人工智能遇见磐创 2019-10-08 15:39:54

 不同的损失函数可用于不同的目标。在这篇文章中,我将带你通过一些示例介绍一些非常常用的损失函数。这篇文章提到的一些参数细节都属于tensorflow或者keras的实现细节。

损失函数的简要介绍

损失函数有助于优化神经网络的参数。我们的目标是通过优化神经网络的参数(权重)来很大程度地减少神经网络的损失。通过神经网络将目标(实际)值与预测值进行匹配,再经过损失函数就可以计算出损失。然后,我们使用梯度下降法来优化网络权重,以使损失最小化。这就是我们训练神经网络的方式。

均方误差

当你执行回归任务时,可以选择该损失函数。顾名思义,这种损失是通过计算实际(目标)值和预测值之间的平方差的平均值来计算的。

例如,你有一个神经网络,通过该网络可以获取一些与房屋有关的数据并预测其价格。在这种情况下,你可以使用MSE(均方误差)损失。基本上,在输出为实数的情况下,应使用此损失函数。

神经网络中的各种损失函数介绍

二元交叉熵

当你执行二元分类任务时,可以选择该损失函数。如果你使用BCE(二元交叉熵)损失函数,则只需一个输出节点即可将数据分为两类。输出值应通过sigmoid激活函数,以便输出在(0-1)范围内。

例如,你有一个神经网络,该网络获取与大气有关的数据并预测是否会下雨。如果输出大于0.5,则网络将其分类为会下雨;如果输出小于0.5,则网络将其分类为不会下雨。即概率得分值越大,下雨的机会越大。

神经网络中的各种损失函数介绍

训练网络时,如果标签是下雨,则输入网络的目标值应为1,否则为0。

重要的一点是,如果你使用BCE损失函数,则节点的输出应介于(0-1)之间。这意味着你必须在最终输出中使用sigmoid激活函数。因为sigmoid函数可以把任何实数值转换(0–1)的范围。(也就是输出概率值)

如果你不想在最后一层上显示使用sigmoid激活函数,你可以在损失函数的参数上设置from logits为true,它会在内部调用Sigmoid函数应用到输出值。

多分类交叉熵

当你执行多类分类任务时,可以选择该损失函数。如果使用CCE(多分类交叉熵)损失函数,则输出节点的数量必须与这些类相同。最后一层的输出应该通过softmax激活函数,以便每个节点输出介于(0-1)之间的概率值。

例如,你有一个神经网络,它读取图像并将其分类为猫或狗。如果猫节点具有高概率得分,则将图像分类为猫,否则分类为狗。基本上,如果某个类别节点具有很高的概率得分,图像都将被分类为该类别。

神经网络中的各种损失函数介绍

为了在训练时提供目标值,你必须对它们进行一次one-hot编码。如果图像是猫,则目标向量将为(1,0),如果图像是狗,则目标向量将为(0,1)。基本上,目标向量的大小将与类的数目相同,并且对应于实际类的索引位置将为1,所有其他的位置都为零。

如果你不想在最后一层上显示使用softmax激活函数,你可以在损失函数的参数上设置from logits为true,它会在内部调用softmax函数应用到输出值。与上述情况相同。

稀疏多分类交叉熵

该损失函数几乎与多分类交叉熵相同,只是有一点小更改。

使用SCCE(稀疏多分类交叉熵)损失函数时,不需要one-hot形式的目标向量。例如如果目标图像是猫,则只需传递0,否则传递1。基本上,无论哪个类,你都只需传递该类的索引。

神经网络中的各种损失函数介绍

这些是最重要的损失函数。训练神经网络时,可能会使用这些损失函数之一。

下面的链接是Keras中所有可用损失函数的源代码。

(https://github.com/keras-team/keras/blob/c658993cf596fbd39cf800873bc457e69cfb0cdb/keras/backend/numpy_backend.py)

人工智能 损失函数 网络
上一篇:你的人脸数据都去了哪儿? 下一篇:制裁中国AI公司 美国打偏了吗?
评论
取消
暂无评论,快去成为第一个评论的人吧

更多资讯推荐

被寄予厚望的AI,到底是人工智能还是人工智障?

近几年,人工智能风头正盛,人们的衣食住行都离不开它,在我们的生活应用场景中也是十分常见如:刷脸支付、自动驾驶、AI辅导、语音助手等等,但近来人工智能频频出错,这不禁令人发问,他们真的是人工智能吗?又或是叫人工智障更加准确。

MiHomes科技资讯 ·  10h前
人工智能影响制造业的四种方式

这些年来,人工智能取得了很大的进步。它可以影响许多不同的行业,这主要是因为它改进了处理、算法和它所保存的数据量。

Cassie ·  18h前
机器人来帮“盲” 视觉障碍者重新看世界

当今社会是科技引领潮流的社会,随着科技的快速发展,机器人产业正迅速崛起。基于此,关爱视觉障碍者将收获利好,导盲机器人的发展势在必行。

林中易木 ·  19h前
教AI开发软件:IBM开源数据集Project CodeNet,含有1400万个代码示例

IBM已组建了一个庞大的源代码库,用于教机器学习程序学习编程。

小云 ·  20h前
15年内培育恐龙,马斯克难道想把恐龙也送上月球?

15年内可以育种和基因改良产生“超级外来物种”——恐龙,科幻电影中的侏罗纪公园指日可待。

子豪 ·  1天前
当BI遇到AI,看"最强大脑"如何帮我们做出决策?

人工智能和机器学习增强了商业智能系统和战略,为整个企业提供了决策背景和建议。

计算机世界 ·  1天前
超胆侠来了!「蝙蝠感知」AI让智能手机听声生成3D图像

格拉斯哥大学的计算机科学家和物理学家在《物理评论快报》杂志上发表的一篇论文中概述了这项研究,它可以应用于安全和医疗保健领域。

佚名 ·  1天前
Gartner 最新魔力象限报告显示 IBM 为全球企业级 AI 技术领导者

IBM 在 Gartner 2021年“云 AI 开发者服务魔力象限“和“数据科学与机器学习平台魔力象限”报告中均被评为领导者。

佚名 ·  1天前
Copyright©2005-2021 51CTO.COM 版权所有 未经许可 请勿转载