《TensorFlow機器學習實戰指南》學習筆記四

2021-08-19 21:30:23 字數 1998 閱讀 9709

用tensorflow實現神經網路常見層,**如下:

import tensorflow as tf

import numpy as np

sess=tf.session()

#初始化資料

data_size=25

data_1d=np.random.normal(size=data_size)

x_input_1d=tf.placeholder(dtype=tf.float32,shape=[data_size])

#定義乙個卷積層函式

defconv_layer_ld

(input_1d,my_filter):

input_2d=tf.expand_dims(input_1d,0)

input_3d=tf.expand_dims(input_2d,0)

input_4d=tf.expand_dims(input_3d,3)

convolution_output=tf.nn.conv2d(input_4d,filter=my_filter,strides=[1,1,1,1],padding="valid")

return tf.squeeze(convolution_output)

#宣告乙個隨機過濾層,即卷積核

my_filter=tf.variable(tf.random_normal(shape=[1,5,1,1]))

#建立乙個卷積層

my_convolution_output=conv_layer_ld(x_input_1d,my_filter)

#建立乙個激勵函式並初始化

defactivation

(input_1d):

return tf.sigmoid(input_1d)

my_activation_output=activation(my_convolution_output)

#宣告乙個池化層函式

defmax_pool

(input_1d,width):

input_2d=tf.expand_dims(input_1d,0)

input_3d=tf.expand_dims(input_2d,0)

input_4d=tf.expand_dims(input_3d,3)

pool_output=tf.nn.max_pool(input_4d,ksize=[1,1,width,1],strides=[1,1,1,1],padding='valid')

return tf.squeeze(pool_output)

#建立乙個池化層

my_maxpool_output=max_pool(my_activation_output,width=5)

#宣告乙個全聯接層函式

deffully_connected

(input_layer,num_outputs):

weight_shape=tf.squeeze(tf.stack([tf.shape(input_layer),[num_outputs]]))

weight=tf.random_normal(weight_shape,stddev=0.1)

bias=tf.random_normal(shape=[num_outputs])

input_layer_2d=tf.expand_dims(input_layer,0)

full_output=tf.add(tf.matmul(input_layer_2d,weight),bias)

return tf.squeeze(full_output)

#建立乙個全連線層

my_full_output=fully_connected(my_maxpool_output,5)

#初始化變數

sess.run(tf.global_variables_initializer())

#輸出最終結果

print(sess.run(my_full_output,feed_dict=))

機器學習 TensorFlow安裝

環境準備 centos 7 python 2.7 root master uname a linux master 3.10.0 229.el7.x86 64 1 smp fri mar 6 11 36 42 utc 2015 x86 64 x86 64 x86 64 gnu linux root ...

機器學習筆記 TensorFlow

構建乙個簡單的 tensorflow 程式,使用該程式繪製乙個預設圖並建立乙個執行該圖的會話 tensorflow 的名稱源自張量,張量是任意維度的陣列。借助 tensorflow,您可以操控具有大量維度的張量。即便如此,在大多數情況下,您會使用以下乙個或多個低維張量 tensorflow指令會建立...

機器學習 TensorFlow初學

dot 陣列的點積 dot producta np.arange 0,9 out 45 array 0,1,2,3,4,5,6,7,8 b a 1 out 47 array 8,7,6,5,4,3,2,1,0 np.dot a,b out 48 84隨機數生成 這幾個都是用於生成隨機數tensor的...