首页 > 代码库 > 什么是机器学习?
什么是机器学习?
机器学习听起来好像很厉害的一个词,一不小心就入坑了,毕业设计题目忍不住想往这方向上靠,然而自己什么都还不知道,完全是小白。
不过,无知则无畏,先了解到底什么是机器学习吧。
一般而言,我们让计算机帮我们完成一个任务,我们进行算法设计,进行编码,让计算机按照写好的指令一步步执行,将输入变换成输出。然而,对于有些任务,我们并不能提出一个明确的算法,比如垃圾邮件的识别,究竟什么是垃圾邮件,什么又不是,针对不同的人来说,又或者不同的场景来说得到的输出都是不同的。
幸运的是,我们有数据,我们可以有很多很多邮件,其中一些我们是明确知道它是垃圾邮件的,我们现在要做的就是从大量的数据中学到垃圾邮件有怎样的结构,也就是我们希望机器自动的为这一任务提取算法。这是我们经常会遇到的任务,我们可能真的没有算法,但是幸运的是我们有数据。我们每天都在产生海量的数据,但是只有分析这些数据,把它转换为可以利用的信息,存储的数据才有用,比如说用来做预测。我们相信数据的产生并不是随机的,我们可以构造一些近似来解释数据的某些部分,虽然不可能解释一切,但是能够发现其中的一些规律或模式。并且使用这些模式来预测,不远的将来,情况不会与收集样本数据有很大的不同,我们所做的预测很有可能是正确的。
数据挖掘就是机器学习方法在大型数据库中的应用,处理大量的数据来构建简单有用的模型,在金融业、银行分析、制造业、医疗梁旭、物理学、天文学、生物学等等都有广泛的应用。
机器学习也是人工智能的组成部分,处于变化环境中的系统必须具有学习能力,如果系统能够学习并且适应这些变化,系统的设计者就不必预见所有的情况并为它提供解决方案了。
机器学习还能帮助我们解决视觉、语音识别以及机器人方面的许多问题。比如人脸识别,我们无法解释我们是如何辨认一个人的,但是可以通过分析一个脸部图像的多个样本,学习程序捕捉到那个人特有的模式,然后在图像中检测这种模式,这就是模式识别的一个例子。
机器学习使用实例数据或过去的经验训练计算机,以优化某种性能标准。我们有依赖于某些参数的模型,而学习就是执行计算机程序,利用训练数据或以往经验来优化该模型的参数的。模型可以是预测性的,或者是描述性的,用于从数据中获取知识,也可以是而者兼备。在训练时,我们需要优化问题以及存储和处理通常所面对的海量数据的高效算法。一旦学习得到了一个模型,它的表示和用于推理的算法解也必须是高效的,在特定的应用中,学习或推理的算法效率,即它的空间复杂度和时间复杂度,可能与预测精度同样重要。
什么是机器学习?