• <noscript id="e0iig"><kbd id="e0iig"></kbd></noscript>
  • <td id="e0iig"></td>
  • <option id="e0iig"></option>
  • <noscript id="e0iig"><source id="e0iig"></source></noscript>
  • 【TensorFlow實戰Google深度學習框架】學習筆記(tensorflow入門)

    tensorflow三要素

    • 計算模型:計算圖(graph)
    • 數據模型:張量(tensor)
    • 運行模型:會話(session)

    用tensorflow實現神經網絡

    1、前向傳播算法介紹

    在這里插入圖片描述
    在這里插入圖片描述
    在這里插入圖片描述
    在這里插入圖片描述
    在這里插入圖片描述
    在這里插入圖片描述
    在這里插入圖片描述
    在這里插入圖片描述

    2、用tensorflow構建前向神經網絡-代碼

    #%%
    import tensorflow as tf
    from numpy.random import RandomState
    
    #%% [markdown]
    # #### 1. 定義神經網絡的參數,輸入和輸出節點。
    
    #%%
    batch_size = 8
    w1= tf.Variable(tf.random_normal([2, 3], stddev=1, seed=1))
    w2= tf.Variable(tf.random_normal([3, 1], stddev=1, seed=1))
    x = tf.placeholder(tf.float32, shape=(None, 2), name="x-input")
    y_= tf.placeholder(tf.float32, shape=(None, 1), name='y-input')
    
    #%% [markdown]
    # #### 2. 定義前向傳播過程,損失函數及反向傳播算法。
    
    #%%
    a = tf.matmul(x, w1)
    y = tf.matmul(a, w2)
    y = tf.sigmoid(y)
    cross_entropy = -tf.reduce_mean(y_ * tf.log(tf.clip_by_value(y, 1e-10, 1.0))
                                    + (1 - y_) * tf.log(tf.clip_by_value(1 - y, 1e-10, 1.0)))
    train_step = tf.train.AdamOptimizer(0.001).minimize(cross_entropy)
    
    #%% [markdown]
    # ####  3. 生成模擬數據集。
    
    #%%
    rdm = RandomState(1)
    X = rdm.rand(128,2)
    Y = [[int(x1+x2 < 1)] for (x1, x2) in X]
    
    #%% [markdown]
    # #### 4. 創建一個會話來運行TensorFlow程序。
    
    #%%
    with tf.Session() as sess:
        init_op = tf.global_variables_initializer()
        sess.run(init_op)
        
        # 輸出目前(未經訓練)的參數取值。
        print(sess.run(w1))
        print(sess.run(w2))
        print("\n")
        
        # 訓練模型。
        STEPS = 5000
        for i in range(STEPS):
            start = (i*batch_size) % 128
            end = (i*batch_size) % 128 + batch_size
            sess.run([train_step, y, y_], feed_dict={x: X[start:end], y_: Y[start:end]})
            if i % 1000 == 0:
                total_cross_entropy = sess.run(cross_entropy, feed_dict={x: X, y_: Y})
                print("After %d training step(s), cross entropy on all data is %g" % (i, total_cross_entropy))
        
        # 輸出訓練后的參數取值。
        print("\n")
        print(sess.run(w1))
        print(sess.run(w2))
    #%%
    
    版權聲明:本文為weixin_39916966原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
    本文鏈接:https://blog.csdn.net/weixin_39916966/article/details/88080513

    智能推薦

    深層神經網絡--Tensorflow實戰google深度學習框架

    1.深度學習與深層神經網絡   維基百科對深度學習的精確定義為:一類通過多層非線性變換對高復雜性數據建模算法的合集。因為深層神經網絡時實現“多層非線性變換”最常用的一種方法,深度學習有兩個非常重要的特性---多層和非線性。 多層:是因為可以具備組合特征提取的功能,可以有效的提取人類不能手動提取的很多特征。 非線性:只通過線性變換,任意層的全連接神經網絡和單層網絡模型的表達能...

    Tensorflow【實戰Google深度學習框架】TFLearn大寶劍

    文章目錄 1.前言 2.安裝TFLearn(win10) 3.使用TFLearn實現線性回歸 1.前言 如果你了解過TensorFlow框架,會發現這個深度學習庫需要我們自己定義所有的計算節點,通過將圖片進行卷積處理、建立卷積網絡、建立池化層網絡、建立全連接層等步驟,實現一個卷積神經網絡,讓人頭大。 而TFLearn是一個建立在TensorFlow之上的模塊化的、透明的深度學習庫,比TensorF...

    TensorFlow實戰Google深度學習框架(1)——概念

    TensorFlow基本概念 1.TensorFlow計算模型——計算圖 Tensor:張量,可以簡單理解為多維數組 flow:流,張量間通過計算相互轉化過程 TensorFlow是一個通過==計算圖==形式來描述編程的系統。每一個計算都是計算圖上的一個節點,節點之間的邊描述了計算間的依賴關系。 計算圖的使用 Tensorflow程序分為兩個階段: 1. 定義計算圖中的所有...

    《TensorFlow:實戰Google深度學習框架(第二版)》筆記【7-12章】

    第七章 圖像數據處理 本章介紹如何對圖像進行預處理使得模型盡可能不被無關因素(亮度、對比度等)所影響,同時使用多線程處理提高效率。 TFRecord輸入數據格式 tf提供了一種統一的格式存儲數據,TFRecord。第六章中花朵分類使用了字典存儲數據,這種方式擴展性很差。TFRecord可以有效地記錄來源更加復雜、信息更加豐富的數據。 TFRecord的數據都是通過tf.train.Example ...

    《TensorFlow:實戰Google深度學習框架(第二版)》筆記【1-6章】

    本書PDF 密碼: uj6t 代碼:https://github.com/caicloud/tensorflow-tutorial 第一章:深度學習簡介 在大部分情況下,在訓練數據達到一定數量之前,越多的訓練數據可以使邏輯回歸算法對未知郵件做出的判斷越精準。之所以說在大部分情況下,是因為邏輯回歸算法的效果除了依賴于訓練數據,也依賴于從數據中提取的特征。假設從郵件中抽取的特征只有郵件發送的時間,那么...

    猜你喜歡

    04.深層神經網絡------《Tensorflow實戰Google深度學習框架》筆記

    一、深度學習與深層神經網絡     維基百科對深度學習的定義:一類通過多層非線性變換對高復雜性數據建模算法的合集。又由于深層神經網絡是實現“多層非線性變換”最常用的一種方法,所以在實際中基本上可以認為深度學習就是深層神經網絡的代名詞。深度學習有兩個非常重要的特性-----多層和非線性。 1、線性模型的局限性     在線性模型中,模型...

    08.循環神經網絡------《Tensorflow實戰Google深度學習框架》筆記

    循環神經網絡簡介 循環神經網絡的主要用途是處理和預測序列數據。在之前介紹的全連接神經網絡或卷積神經網絡模型中,網絡結構都是從輸入層到隱含層再到輸出層,層與層之間是全連接或部分連接的,但每層之間的節點是無連接的。考慮這樣一個問題,如果要預測句子的下一個單詞是什么,一般需要用到當前單詞以及前面的單詞,因為句子中前后單詞并不是獨立的。比如,當前單詞是“很”,前一個單詞是&ldqu...

    07.圖像數據處理------《Tensorflow實戰Google深度學習框架》筆記

    轉自:https://blog.csdn.net/Koala_Tree/article/details/78021375 一、TFRecord輸入數據格式 TensorFlow讀取數據,總共有三種方法: 供給數據(Feeding):在TensorFlow程序運行的過程中,使用Python代碼來供給數據; 從文件讀取數據:在TensorFlow圖的起始,讓一個輸入管線從文件中讀取數據; 預加載數據:...

    TensorFlow實戰Google 深度學習框架——代碼筆記4 深層神經網絡

    04-1 自定義損失函數 After 0 training step(s), w1 is: [[-0.81031823] [ 1.4855988 ]] After 1000 training step(s), w1 is: [[0.01247114] [2.138545 ]] After 2000 training step(s), w1 is: [[0.45567423] [2.1706069 ...

    HTML中常用操作關于:頁面跳轉,空格

    1.頁面跳轉 2.空格的代替符...

    精品国产乱码久久久久久蜜桃不卡