《深度学习:Java语言实现》一一2.2机器学习中的训练需求-阿里云开发者社区

开发者社区> 华章出版社> 正文

《深度学习:Java语言实现》一一2.2机器学习中的训练需求

简介: 本节书摘来自华章出版社《深度学习:Java语言实现》一 书中的第2章,第2.2节,作者:[日]巣笼悠辅(Yusuke Sugomori) 著 ,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

2.2机器学习中的训练需求
你已经知道机器学习是一种模式识别方法。它对给定数据中的模式进行识别和分类,进而找到合适的答案。仅仅只看字面的描述,它似乎相当简单,然而,事实并非如此,机器学习需要花费相当漫长的时间才能挖掘出未知数据,换句话说,它需要很长的时间才能构造出恰当的模型。为什么会这样呢?对数据进行分类整理有那么困难吗?它至少应该在各种处理之间安排一个“学习”阶段吧?
答案是:这当然很复杂。要想对数据进行恰当的分类是极其困难的。问题越复杂,越难找到一个完美的数据分类方法。这是因为,当你只是简单地提起“模式分类器”,它指的是几乎无穷的分类模式。我们看看下面这幅图片,它是一个非常简单的例子:

image

这幅图中有两种类型的数据,圆圈和三角形,以及一种未知的数据:正方形。你不知道该把正方形划归到二维坐标的哪一边去,因此,现在的任务就是找出正方形到底该属于哪一组。
你可能马上就意识到,应该要一个边界去划分这两种数据类型。如果知道如何设定这个边界,那你就知道该把这个正方形放到哪一组里了。很好,那么让我们先来确定这个边界。然而,实际上,清晰地定义这个边界并非那么容易。如果你想要设定一个边界,你需要考虑各种分界线,譬如下面这张图中所展示的那样:
image

此外,你会发现,随着划分边界的变化,正方形可能被分属于不同的群组或者模式。更进一步而言,我们可能还需要考虑边界非线性的情况。
机器学习中,机器在训练时所做的就是从这些可能的模式中选择最合适的边界。当逐个处理大量数据的时候,机器就是在自动学习模式的归类。换句话说,它要调整数学模型的参数,并最终决定边界是什么。由机器学习选择的边界被称之为“决策边界(Decision Boundary)”,它可能是线性的,也可能是非线性的。如果超平面对数据进行了最优分类的话,决策边界还有可能是超平面(Hyperplane)。数据的分布越复杂,决策边界越可能是非线性的,甚至是超平面的。一个典型的例子就是多维分类问题。我们在处理这样简单的一个问题时就面临了这样的困难,所以不难想象,解决更加复杂问题时将会消耗多长的时间。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:

华章出版社

官方博客
官网链接