个人机器学习见解

前言:

对于不同的人,对机器学习的看法不一样。首先这里给出一篇大佬对机器学习的看法(强烈推荐)。

https://www.cnblogs.com/subconscious/p/4107357.html

这篇文章介绍了互联网界与机器学习大牛结合的趋势,以及使用机器学习的相关应用,可以帮助对与学习机器学习的人较为清晰的理解一下几点内容:

  1. 什么是机器学习?
  2. 机器学习是如何定义的?
  3. 机器学习的范围?
  4. 机器学习有哪些方法?
  5. 机器学习的应用?
  6. 机器学习与深度学习的关系?
  7. 机器学习与人工智能的关系?
  8. 作者对人工智能的思考?

这篇文章基本上可以当做机器学习的科普读物。当然也解决了我心中一直苦苦追寻得不到的结果,比如一直搞不清楚机器学习与数据挖掘、统计学习、深度学习和人工智能等这些之间的关系。
但是,这篇文章并没有介绍机器学习中具体的算法分类(有监督、无监督、半监督、强化学习)和一些常用的具体算法,此外,对于算法的基本思想、底层实现、算法评估、算法选择、算法改进等深一步的知识并未提及。所以,在接下来的日子,我将对这些疑问通过不断地学习,一步一步的了解,并去实现。

个人对机器学习的见解

很多人在学习机器学习的过程中基本上都是使程序封装好的库函数(算法),所以很多人人为机器学习就是在调库。

1. 不反对调库

首先,就我来说,我是并不反对调库的。事实上,在我们真正的生产环境中,无论是出于对效率的考虑、还是出于对稳定性的追求,调库本身是没有任何问题的。真正应该反对的是对那些只会调库的,却对自己所调用的库函数API没有深入理解。这就好比事实上我们在实现一个加法运算:a+b时,本身可以利用变量a去加上变量b。但是,通常我们并不会去这样进行运算,而是利用已有的函数(np.sum())来进行完成的,我们只需要考虑在什么时候利用这两种解决办法来高效的解决所需要解决的问题。所以,这就需要我们对这些解决办法的内部实现原理有深入的了解。

2. 深入算法代码内部

机器学习中有许多的算法,每一种算法都有其特定的思想和应用场景。对于如何选择算法就要对其内部思想和原理进行详细理解,所以需要深入算法代码内部,从底层试着实现它(需要强大的数学知识)。所以在接下来的每一个具体算法中,尝试利用已有学习资料,试着实现这些底层实现代码,以便更好地帮助我们理解算法,甚至选择算法。

3. 改进算法

生活中的情况往往复杂多变,有时候我们很可能遇到现有的算法不能很好的解决这些问题的时候。在这种情况下,我们可能就会对原始的算法进行对这些特殊问题而进行的改进(创造是永远不可能创造的)。

以上就是个人对机器学习的见解,最后附上黄海广博士开设公众号里面的一篇文章。

机器学习入门的百科全书-2018年“机器学习初学者”公众号文章汇总
https://mp.weixin.qq.com/s/5BqOEbpzqH1wO2yB0Qfs_w

发布了23 篇原创文章 · 获赞 61 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_40195360/article/details/84999685