tensorflow学习笔记(1)

  (1)tf中的图

  

  图中就是一个计算图,一个计算过程。                                       图中的constant是个常量

  计算图只描述过程,不执行。

  (2)tf中的会话

  那么怎么计算呢?

  tensorflow有个会话是专门用来计算的

import tensorflow as tf
x=tf.constant([[1.0,2.0]])
w=tf.constant([[3.0],[4.0]]) y=tf.matmul(x,w) print(y) with tf.Session() as sess:
print(sess.run(y))

  这里定义了个矩阵相乘的运算,并用会话结构  with tf.session() as sess:计算

  打印结果为 1*3+2*4=11没毛病

   (3)tf中的变量

  tf中遍历就是神经元上的参数或者说是权重w,我们要改变的就是这个参数。

  

  seed是随机数种子,不加的话每次生成的都不一样

  除了正太分布tf还提供均匀分布,还有零矩阵和1矩阵的初始化,还有填充矩阵和constant矩阵的初始化方法

  

  

  变量的初始化:在sess.run()中使用tf.global_variablies_initializer()

  如

init_op=tf.global_varibles_initializer()
sess.run(init_op)

   

  (4)tf.placeholder

  这是个占位的作用,可以理解为申明定义变量

  如x=tf.placeholder(tf.float32,shape=(1,2))这是声明

  然后喂入一组数据

  sess.run(y,feed_dict={x:[[0.5,0.6]]})

  喂入多组数据

  x=tf.placeholder(tf.float32,shape=(None,2))#none表示不限样本数

  sess.run(y,feed_dict={x:[[0.1,0.2],[0.2,0.3],[0.4,0.5]]})

  (5)神经网络四部曲

  1.准备数据和提取特征值输入神经网络

  2.搭建NN结构,先搭建图然后运算(前向传播)(计算输出)

  3.大量数据喂入NN,迭代优化参数(权重和偏置)(NN反向传播算法)

  4.用训练好的模型分类预测

  (5)这里实现一个简单2层网络模型

  

# -*- coding: utf-8 -*-
import tensorflow as tf
#两层神经网络(全连接过程) #初始化特征值和参数
x=tf.constant([[0.7,0.5]])
w1=tf.Variable(tf.random_normal([2,3],stddev=1,seed=1))
w2=tf.Variable(tf.random_normal([3,1],stddev=1,seed=1)) #定义前向传播过程
a=tf.matmul(x,w1)
y=tf.matmul(a,w2) #用会话计算结果
with tf.Session() as sess:
init_op=tf.global_variables_initializer()
sess.run(init_op)
print(sess.run(y))

  运行结果如下

  

  这是喂入多组数据的方法

  这里的特征值我们已经固定,我们也可以先用placeholdr占位,然后再sess.run()里面喂入feed_dict={xxx}

  

  

  

tensorflow学习笔记(1)-基本语法和前向传播的更多相关文章

  1. tensorflow学习笔记——使用TensorFlow操作MNIST数据(1)

    续集请点击我:tensorflow学习笔记——使用TensorFlow操作MNIST数据(2) 本节开始学习使用tensorflow教程,当然从最简单的MNIST开始.这怎么说呢,就好比编程入门有He ...

  2. Tensorflow学习笔记2019.01.03

    tensorflow学习笔记: 3.2 Tensorflow中定义数据流图 张量知识矩阵的一个超集. 超集:如果一个集合S2中的每一个元素都在集合S1中,且集合S1中可能包含S2中没有的元素,则集合S ...

  3. tensorflow学习笔记——使用TensorFlow操作MNIST数据(2)

    tensorflow学习笔记——使用TensorFlow操作MNIST数据(1) 一:神经网络知识点整理 1.1,多层:使用多层权重,例如多层全连接方式 以下定义了三个隐藏层的全连接方式的神经网络样例 ...

  4. tensorflow学习笔记——自编码器及多层感知器

    1,自编码器简介 传统机器学习任务很大程度上依赖于好的特征工程,比如对数值型,日期时间型,种类型等特征的提取.特征工程往往是非常耗时耗力的,在图像,语音和视频中提取到有效的特征就更难了,工程师必须在这 ...

  5. TensorFlow学习笔记——LeNet-5(训练自己的数据集)

    在之前的TensorFlow学习笔记——图像识别与卷积神经网络(链接:请点击我)中了解了一下经典的卷积神经网络模型LeNet模型.那其实之前学习了别人的代码实现了LeNet网络对MNIST数据集的训练 ...

  6. tensorflow学习笔记——VGGNet

    2014年,牛津大学计算机视觉组(Visual Geometry Group)和 Google DeepMind 公司的研究员一起研发了新的深度卷积神经网络:VGGNet ,并取得了ILSVRC201 ...

  7. TensorFlow学习笔记10-卷积网络

    卷积网络 卷积神经网络(Convolutional Neural Network,CNN)专门处理具有类似网格结构的数据的神经网络.如: 时间序列数据(在时间轴上有规律地采样形成的一维网格): 图像数 ...

  8. Tensorflow学习笔记No.5

    tf.data卷积神经网络综合应用实例 使用tf.data建立自己的数据集,并使用CNN卷积神经网络实现对卫星图像的二分类问题. 数据下载链接:https://pan.baidu.com/s/141z ...

  9. Tensorflow学习笔记2:About Session, Graph, Operation and Tensor

    简介 上一篇笔记:Tensorflow学习笔记1:Get Started 我们谈到Tensorflow是基于图(Graph)的计算系统.而图的节点则是由操作(Operation)来构成的,而图的各个节 ...

随机推荐

  1. EntityFramework Code-First教程(一)

    前言:学习了EF框架这么久,还没有好好总结一番,正好遇到一国外的网站,发现不错,随即翻译过来,一是让自己复习一遍,二是供广大初学者学习,翻译过程中加入了一些自己的理解,如有错误,还请指出,多谢多谢.好 ...

  2. C#基础实例

    using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI ...

  3. spring(三)-事务管理

    1. Spring事务管理 事务管理:本质是使用spring管理事务,完成数据库对于事务的支持. 事务:一系列对数据库操作的集合,一个操作错误,所有都必须回滚,其特点是acid. (1)事务并发存在问 ...

  4. 如何在match中使用正则表达式

    这是在实现搜索功能的时候遇到的一个问题,在搜索的场景中,会根据搜索框中输入的内容,匹配出包含搜索内容的部分.简单模拟还原使用场景: 首先定义一个遍历 value 用来接收输入的内容 var value ...

  5. js bind的实现

    call,apply,bind都是用来挟持对象或者说更改this指向的,但是区别还是有的,call 传参是 fn.call(this,1,2,3) apply传参是 fn.apply(this,[1, ...

  6. ABAP术语-Interface Parameter

    Interface Parameter 原文:http://www.cnblogs.com/qiangsheng/archive/2008/02/26/1081800.html Parameter t ...

  7. ABAP术语-Company Code

    Company Code 原文:http://www.cnblogs.com/qiangsheng/archive/2008/01/16/1040816.html The smallest organ ...

  8. deepin系统无线网络卡死或者极慢的解决方案

    在初次安装deb或者fedara系列的桌面发行版的之后,经常会出现无线网络极慢甚至卡死的状况. 笔者在初次使用deepin系统的时候,也遇到同样的问题,很大程度上是由于没有安装对应的驱动. 下面给出对 ...

  9. Eclipse工具查看依赖的JDK、Maven源码方法

    一.Eclipse软件里查看JDK依赖源码 1.Window->Preferences->Java->Installed JREs 2.如图: 二.Eclipse软件里查看Maven ...

  10. Python3 operator模块关联代替Python2 cmp() 函数

    Python2 cmp() 函数 描述 cmp(x,y) 函数用于比较2个对象,如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1. Python ...