畅游人工智能之海--Keras教程前置篇二:浅谈AI和ML

畅游人工智能之海--Keras教程前置篇二:浅谈AI和ML

作者:cbz

​ 在分析keras之前,先跟大家分享一下AI领域的知识结构,然后看看keras到底处于怎样的位置。

​ 为了更加清晰地介绍这部分知识结构,小编简单绘制了一张结构图供大家参考。从人工智能出发,有机器学习(ML)、知识图谱(KG)、自然语言处理(NLP)、视听觉(CV)等研究方向。

​ 在这里列出来的都是现在比较热门的方向,特别是自然语言处理,鄙校有刘挺老师等一众优秀老师带队,也可谓是硕果累累。当然,在自然语言处理下还细分了很多有意思的方向,比如:机器翻译、问答系统等。对于外专业的同学,大家可能觉得,与NLP离的比较近的方向是视听觉信号处理(CV),因为这两个专业听起来多少跟器官都有点关系。可能吧,本人不是NLP也不是CV的,就不乱说了。说起专业的话,知识图谱可能离本人更近一些,毕竟知识图谱也算是大数据存储的一种主要形式,在搜索引擎以及知识推理等很多地方得以应用,以后会跟大家分享的。

1582310279492

​ 言归正传,这次的主题还是机器学习。提到机器学习,大家情不自禁地想到神经网络,那他们之间的关系到底是怎样的呢,keras与神经网络之间的关系又是怎样的呢?我们看着下面这张图一点一点说。

1582312522868

​ 就像图中画的那样,机器学习算法可以分为三个类别,然后不同的类别下又有不同类型的问题。监督学习分成了分类和回归两种,无监督学习分为聚类和关联分析两种问题。分类问题中有著名的SVM、XGBOOST,回归问题中有GMM等,聚类有K-Means,关联性分析有PCA等等。我们所熟知的神经网络(NN)就是监督学习的一种,但是由于其功能强大,能够拟合更多的复杂分布,所以有时候人们也会将神经网络单独列出,在这里意会即可。NN是监督学习模型,既能够解决分类问题,又能够在很大程度上解决回归问题。然后强化学习模型在NN的基础之上结合迭代公式进行拓展,在一些问题的解决上实现了更优的效果。不仅如此,很多NLP以及CV问题的解决也都依赖于NN的应用。鉴于其在人工智能领域的重要性,人们将这种用NN解决问题的过程统称称为深度学习。

​ 神经网络的实现有很多个,比如tensorflow、pytorch、mxnet。而此后的一个月里我们要跟大家分享的是另一个实现框架--keras,一起体验高度集成、充分模块化编程带来的便捷!

​ 机器学习的基本推导,我们就不再分析了,再讲一遍也是造轮子,而且还没有别人造的好。关于这块,推荐两个资源,一个是机器学习的[白板推导][https://space.bilibili.com/97068901?spm_id_from=333.788.b_765f7570696e666f.1 ],一个是吴恩达老师的[视频][ https://www.bilibili.com/video/av9912938?from=search&seid=3395241410425766789 ]。其实,看了第二个就差不多了,第一个看兴趣了。

​ 下次,就从一个例子开始!