最近开始学习数据分析课程中机器学习的部分。
So, what is machine learning?
根据我现在的理解,机器学习关键的步骤有两个,第一个是提炼出不同的features,第二是根据不同的feature来做分析,看能否找到相关性。
比如说现在很多音乐软件具有推荐新歌的功能。它们的原理是先设计出一些把歌曲的特点进行分类的方法。比如它们响度的强弱,节奏的快慢,年代和风格的区别等等。然后就尝试把喜欢的歌用不同的维度进行分类。比如画一张这样的图,横坐标是旋律,纵坐标是响度,旋律可以是从舒缓到迅速,然后把喜欢和不喜欢的歌放进这个图当中,每首歌在图上就是一个点。这些数据叫做training set。左上角表示很响但很舒缓的歌,左下角表示很轻柔而且很舒缓的歌,右上角是节奏很快而且很响的歌,右下角是节奏很快但是很轻柔的歌。那么如果这些点的分布是有规律的,就可以用算法找到喜欢的歌与不喜欢的歌之间的分界线。
当然可以设计用多个维度同时进行区分,算法可以设计得多种多样,但不管如何都是得到一个分界的东西,在三维是面,在更高的维度就难以可视化了。
这个面叫做decision surface。
有了这个面之后,就可以判断一首歌到底是喜欢的还是不喜欢的。
如图所示是一个无人车的例子,它表示两个维度,一个是bumpiness(可能是它们自己造的词),就是路面的颠簸程度,另一个是坡度。当坡度很小然后又很平坦时,车子的行驶速度当然就可以快了。所以无人车的程序就可以根据这个decision surface来判断到底是应该快还是慢。
领取专属 10元无门槛券
私享最新 技术干货