问题描述
- 什么是机器学习?
- 机器学习代码做什么?
- 当我们说机器学习时,它是修改自身的代码还是修改历史(数据库),其中将包含给定输入集的代码经验?
从本质上讲,它是教计算机根据某些数据进行和改进预测或行为的一种方法.这是什么数据"?好吧,这完全取决于问题.可能是机器人学习走路时从其传感器读取的信息,或者是某些输入的程序的正确输出.
思考机器学习的另一种方式是它是模式识别",即教程序对模式做出反应或识别模式的行为.
取决于您正在谈论的机器学习的类型.机器学习是一个巨大领域,具有数百种用于解决众多不同问题的算法-请参见 Wikipedia 了解更多信息;具体来说,请查看算法类型.
再次,这取决于.
Genetic Programming (实际上是在修改代码的一个示例),实际上,您可以将程序演化为完成一项任务(当然,该程序不会自行修改-但会修改其他计算机程序).
另一方面,神经网络会根据准备好的刺激自动修改其参数,并预期的反应.这样一来,他们就可以产生许多行为(理论上,他们可以产生 any 行为,因为只要有足够的时间,它们就可以以任意精度近似逼近任何函数).
我应该注意,您对术语数据库"的使用意味着机器学习算法通过记住"信息,事件或体验来工作.不一定(甚至经常!).
我已经提到过的神经网络仅保留近似值的当前状态",该状态会随着学习的进行而更新.神经网络没有记住发生了什么以及如何对它做出反应,而是建立了他们世界"的某种模型".该模型告诉他们如何对某些输入做出反应,即使这些输入是以前从未见过的.
最后一项功能-对以前从未见过的输入做出反应的能力-是许多机器学习算法的核心原则之一.想象一下,试图教计算机驾驶员在交通中驾驶高速公路.使用数据库"隐喻,您将必须精确地教计算机在可能的情况下如何处理.一个有效的机器学习算法将(希望!)能够学习不同状态之间的相似性,并对它们做出相似的反应.
状态之间的相似性可以是任何东西-甚至我们可能认为是平凡"的东西都可以使计算机真正崩溃!例如,假设计算机驾驶员了解到,当前面的汽车减速时,它必须减速.对于人类而言,用摩托车代替汽车不会改变任何东西-我们认识到摩托车也是车辆.对于机器学习算法,这实际上可能非常困难!数据库将必须分别存储有关汽车在前面和摩托车在前面的情况的信息.另一方面,机器学习算法可以从汽车示例中学习",并能够自动推广到摩托车示例.
- What is machine learning ?
- What does machine learning code do ?
- When we say that the machine learns, does it modify the code of itself or it modifies history (database) which will contain the experience of code for given set of inputs?
Essentially, it is a method of teaching computers to make and improve predictions or behaviors based on some data. What is this "data"? Well, that depends entirely on the problem. It could be readings from a robot's sensors as it learns to walk, or the correct output of a program for certain input.
Another way to think about machine learning is that it is "pattern recognition" - the act of teaching a program to react to or recognize patterns.
Depends on the type of machine learning you're talking about. Machine learning is a huge field, with hundreds of different algorithms for solving myriad different problems - see Wikipedia for more information; specifically, look under Algorithm Types.
Once again, it depends.
One example of code actually being modified is Genetic Programming, where you essentially evolve a program to complete a task (of course, the program doesn't modify itself - but it does modify another computer program).
Neural networks, on the other hand, modify their parameters automatically in response to prepared stimuli and expected response. This allows them to produce many behaviors (theoretically, they can produce any behavior because they can approximate any function to an arbitrary precision, given enough time).
I should note that your use of the term "database" implies that machine learning algorithms work by "remembering" information, events, or experiences. This is not necessarily (or even often!) the case.
Neural networks, which I already mentioned, only keep the current "state" of the approximation, which is updated as learning occurs. Rather than remembering what happened and how to react to it, neural networks build a sort of "model" of their "world." The model tells them how to react to certain inputs, even if the inputs are something that it has never seen before.
This last ability - the ability to react to inputs that have never been seen before - is one of the core tenets of many machine learning algorithms. Imagine trying to teach a computer driver to navigate highways in traffic. Using your "database" metaphor, you would have to teach the computer exactly what to do in millions of possible situations. An effective machine learning algorithm would (hopefully!) be able to learn similarities between different states and react to them similarly.
The similarities between states can be anything - even things we might think of as "mundane" can really trip up a computer! For example, let's say that the computer driver learned that when a car in front of it slowed down, it had to slow down to. For a human, replacing the car with a motorcycle doesn't change anything - we recognize that the motorcycle is also a vehicle. For a machine learning algorithm, this can actually be surprisingly difficult! A database would have to store information separately about the case where a car is in front and where a motorcycle is in front. A machine learning algorithm, on the other hand, would "learn" from the car example and be able to generalize to the motorcycle example automatically.
这篇关于什么是机器学习?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!