作家
登录

小白学CNN以及Keras的速成

作者: 来源: 2017-08-25 15:49:31 阅读 我要评论

要进修神经收集当然有很多门路,网上不少的大年夜牛写了很多攻略,有的推许大年夜理论到工程完成深度进修,有的欲望大年夜工程出发发明问题,解决问题。各类各样的方法都有不合的人去测验测验,攻略也是一大年夜推,这使得不少的小白直接倒在了选择材料的路上,一向在补先修常识,待到热忱停止就放弃了进修,连卷积收集都不知道是什么,大年夜大年夜地袭击了大年夜家的进修热忱。今天,sherlock在这里给大年夜家推荐一个进修材料,包管你可以或许快速入门cnn,出去装逼也可以或许和别人聊几句。

这个材料是什么呢,就是大年夜名鼎鼎的standford的cs231n这门课程。CS231n Convolutional Neural Networks for Visual Recognitionstanford大年夜学确切算是深度进修和人工智能范畴异常牛逼的黉舍。

神经收集

废话不多说,开端进修我们的神经收集。

这是一张脑神经的图片,神经收集的创造也是由此开端的,这就是所谓的一个神经元,膳绫擎有各类接收突触,然后经由过程一个脑神经来接收,最后获得输出的结不雅。

那么竽暌股这张脑神经图可以或许抽象出来的神经收集是什么呢?就是下面这个神经收集模型。

这个怎么懂得呢?就是输入一个向量,然后给向量的每一个元素分派一个权重,然后经由过程权重乞降获得一个结不雅,然后将这个结不雅输入一个激活函数,获得最后的输出结不雅。

接下来我们就来实现一下最简单的Lenet,应用mnist手写子体作为练习集。

激活函数又是什么鬼?激活函数的出现是因为人脑的构造,人脑琅绫擎接收信息获得结不雅这个过程长短线性的,比如你看到一样器械,你弗成能保存这个器械的全部特点,你会重点不雅察你感兴趣的处所,这就长短线性的,也就是说须要一个非线性变更将输入的结不雅变换为非线性的结不雅。如今常用的非线性函数就是Relu(x) = max(x, 0),就是将小于0的部分去掉落,只保存大年夜于0的部分。

这就是单位的输入和输出,将这些单位合在一路就是一个神经收集。

这就是简单的一层收集,也可以由独裁收集

这琅绫擎的input layer就是所谓的单个练习集的维数,将所有的练习集输入就可以开端练习一个神经收集。

Keras实现简单的神经收集

知道了神经收集的根本构造和道理,我们就可以开端应用keras去实现一个简单的神经收集。

  1. import keras 
  2.  
  3. from keras.models import Sequential 
  4.  
  5. from keras.layers import Dense 
  6.  
  7. import numpy as np 

导入须要的package  

  1. x=np.array([[0,1,0],[0,0,1],[1,3,2],[3,2,1]]) 
  2.  
  3. y=np.array([0,0,1,1]).T 

设定输入的x和y

  1. simple_model=Sequential() 
  2.  

  3.   推荐阅读

      MySQL高可用数据库内核深度优化的四重定制

    【51CTO晃荡】8.26 带你与清华大年夜学、搜狗、京东大年夜咖们一路商量基于算法的IT运维实践 一、UDB高可用数据库架构 UDB以虚拟IP、HAProxy、单节点UDB数据库搭建双节点高可用架构:>>>详细阅读


    本文标题:小白学CNN以及Keras的速成

    地址:http://www.17bianji.com/lsqh/36937.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)