每天更新教程,记得关注《编程高手杰瑞》哦!

人工智能——深度学习

「人工智能」深度进修代码教程:简单线性回归拟合送源码_人工智能_等于 云服务

要说当前热度最高的领域,非人工智能领域莫属。
人工智能(Artificial Intelligence,AI)是指打算机像人一样拥有智能能力,是一个领悟打算机科学、统计学、脑神经学和社会科学的前沿综合学科,可以代替人类实现识别、认知,剖析和决策等多种功能。

人工智能的意义是:为机器授予人的智能,而机器学习是实现“为机器授予人的智能”的一种方法,深度学习则是一种实现机器学习的技能,准确来说,深度学习并不即是人工智能,它只是人工智能的一个子集而已。
目前用来实现深度学习的框架有谷歌的TensorFlow、Facebook的Torch、Keras、Mxnet,除此之外还有百度最近开源的PddlePaddle Fluid框架等。

本日杰瑞就利用TensorFlow深度学习框架教大家如何办理一个大略的线性回归拟合问题。

传授教化

我们须要用到tensorflow框架和numpy数学库,如果各位同学没有安装tensorflow框架和numpy数学库的话,可以随着以下步骤来安装。

利用pip命令进行安装:

在掌握台输入:pip install tensorflow命令即可安装tensorflow框架

在掌握台输入:pip install numpy即可安装numpy数学库

已安装完毕

首先导入tensorflow、numpy模块。

将要预测的表达式

我们预测的表达式为:y = x0.3 + 0.1,个中weights即是0.3,biases即是0.1,在这个模型中,我们须要预测出weights和biases的值,以是我们给出这样组演习数据[x1,x2,x3,x4……,x19,x20]、[y1,y2,y3,y4……,y19,y20],这两组数据里面,很明显我们能看得出里面的关系是:yi = xi0.3+0.1,但现在我们要做的是让机器能够从这两组数据里面学习到,weights即是0.3,biases即是0.1。

接下来,我们利用numpy天生我们须要的演习数据,在这里杰瑞利用numpy.random.rand()方法天生一个拥有100个元素的行向量。
numpy.random.rand()可以返回一个或一组服从“0~1”均匀分布的随机样本值。
随机样本取值范围是[0,1)。

下图便是天生的行向量:

开始设计网络构造

接下来我们开始设计网络构造,这个模型的网络构造非常大略,我们只要实现y=x0.3+0.1这个表达式就行了。
以是,杰瑞利用tensorflow.Variable()方法分别天生weights和biases。
把稳,在tensorflow中,所有的变量都须要用.Variable()方法声明,否则将无法正常利用。

这个是我们所利用的丢失函数表达式(末了将全体行向量求均匀值):

开始演习

构造设计完成之后就开始演习了,杰瑞在这里进行400次演习,然后每20步输出当前的weights和biases的值,从下图中可以看到,随着演习步骤的增加weights和biases越来越靠近0.3和0.1。

源码获取

先关注《编程高手杰瑞》并点赞该文章,私信关键字:“线性回归源码”即可获取源码。