? ? ? 我首先来讲一下我对于人工智能的看法,首先必须要说的是,人工智能是算法不是程序。因为程序只能按?#23637;?#21017;来运行,而人工智能可以按照自己的想法来运行。所以人工智能在本质上区别于我们日常生活中的电脑程序。

? ? ? 人工智能的算法刚开始是由程序构建的,但到了后期就并不仅仅是依靠我们所编写的代码运行的。而原始的代码属于学习代码。其次,在讲到人工智能的时候,就不得不提另外一个概念,那就是深度学习(Deep Learning)。

? ? ? 深度学习主要是从仿生学的角度模拟脑神经系统的层次结构,通过逐层抽象,深度挖掘数据的本质信息。从广义上讲,具有层级结构,低层级代表细节,高层级表示抽象的数据分析模型,都可以称之为深度学习。深度学习的概念从人工神经网络而来,因此通常指具有多层结构的神经网络。深度学习主要包括三种,有监督学习,无监督学习,强化学习,通常有监督学习的应用例如图像识别、语音识别等,无监督学习包括图像文本生成、机器作曲等,而强化学习最典型的例子就是前阵子很火的AlphaGo了,一句话总结就是愈战愈勇。

? ? ? 现在商业界用的最多的还是有监督学习,毕竟这种学习模式有章可循,应用起来也很容易,只要给定样本和标签,肯定有办法比较好的将它们一一?#25104;?#36215;来;无监督学习最典型的就是混?#32454;?#26031;分布了,用来集群发现,如用户群聚类划分;强化学习一般用于策略类问题,例如打游戏、控制机器人运动等,设定一个奖惩规则,它通过多次尝试最终表现的越来越好。无论是有监督学习、无监督学习、强化学习,都需要对问题特征分布的拟合,因此理论上都可以与神经网络挂钩。因此,只要掌握了各种神经网络的特点以后,再学习那些不是很困难。在神经网络的模型架构好了之后,重头戏就是参数的优化了。

? ? ? 这里最常见的就是梯度下降算法了,因此入门深度学习必须要掌握的就是梯度下降算法。梯度下降算法现在已经出来了很多变形,掌握它们之间的不同也是很有必要的。 梯度下降算法理解个大概也就差不多了,因为具体应用的时候选择最合适的去应用就行了。?#27604;?#21442;数优化,还包括学习率的选取、网络层数的确定、每层神经元个数的确定、dropout的比例以?#26696;?#20010;参数的初始化等等问题,都是需要我们仔细考量的。