神经网络与tensorflow实现

最近刚刚开始学神经网络这块,也还是有很多看不懂的地方,只能先说说看得懂的地方了。主要还是记录代码这块内容。另外这篇文章第一次使用markdown写的,排版有点乱,请见谅哈哈。


1.神经网络

1.1神经网络的原理

神经网络可以说是人工智能最重要的分支了,其原理就如同其名字一样,模仿的是人脑传递和处理信息的过程。其结构由多个神经元组成不同的神经层,而多个神经层构成神经网络,神经元的结构如下图:

这里写图片描述

其中x为输入信号,w为每个信号的权重,b为偏差,activationfuction为激活函数,整个神经元用数学公式表示则为:
这里写图片描述

f(x)即为激活函数。而由多个神经元便构成了神经层与神经网络:

这里写图片描述

整个神经网络的工作流程就是输入一系列信号,这些信号通过神经网络进行处理,最后得到我们的输出值。

1.2激活函数

激活函数的作用便是模拟人脑神经元的激活,即前一个神经元得到信息后将信息传递给部分其所连接的神经元,而这些神经元就被激活了,其它没有得到信息的神经元则为未激活状态。激活函数另一个重要的特征则为非线性,这是为了使神经网络能够实现非线性模型,从而使得模型的应用范围与效率大大提高。如果没有激活函数,那么无论拥有多少层网络,得到的模型依旧是线性的,比如在分类问题中,得到的便是线性分类器,它对于非线性分类的效果就不尽人意了,如下图::
这里写图片描述 这里写图片描述

对于左图幅图,我们可以使用线性分类器做出很好的分类,但是对于右图,线性分类器就做不到了,这也是为什么要引入激活函数的原因。除此之外,激活函数还有一个重要的特征为处处可微,其原因在于之后要提到的优化方法。激活函数有很多种,包括sigmoid,relu,tanh,softplus,等,这里只介绍一下即将要用到的relu。

Relu全名为Rectified Linear Unit,其函数形式如下:

这里写图片描述

这里写图片描述

1.3优化方法

神经网络要如何运用到人工智能中去呢,这便是优化或者训练的作用了。给定输入数据和相应期望输出,通过优化方法来调整网络中各项权值使得输出结果接近期望值,最终形成我们的模型来预测未知的值。嗯,这里又涉及到了复杂的数学原理和数学公式,有点绝望,暂时看不懂推导,只能大概

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值