亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

TensorFlow隱藏操作探索(張量操作和定制模型算法)

 更新時(shí)間:2023年11月07日 11:18:29   作者:煉丹俠  
這篇文章主要為大家介紹了TensorFlow隱藏操作探索(張量操作和定制模型算法),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

1.張量和操作

tensorflow對(duì)張量的操作實(shí)際上和numpy差不多,不夠有所差距,numpy的數(shù)據(jù)可以隨時(shí)被修改,但是tensorflow的數(shù)據(jù)要分情況。

(1).使用tf.Constant()

a = tf.Constant([[1,2,3],[4,5,6]])

這個(gè)矩陣就是2*3的矩陣,但是它無(wú)法被修改,只能讀取。
除了不能修改,其實(shí)和numpy的使用方法
比如查看它的大小也可以用:a.shape
索引方式也一樣,這里不做過(guò)得描述

(2).tensorflow提供的數(shù)據(jù)操作函數(shù)

比如加法: a + 10 可以使用函數(shù) tf.add(a, 10);

矩陣的乘法為tf.matmul(),它提供的函數(shù)和numpy都差不多,但是有些不一樣

比如求和.tf.reduce_sum(),求均值為tf.reduce_mean(),求最大值tf.reduce_max();

numpy也可以用于tensorflow中,轉(zhuǎn)換為張量。

(3)類(lèi)型轉(zhuǎn)換

tensorflow中有個(gè)很麻煩的東西,整形+浮點(diǎn)型會(huì)失敗,float32和float64相加也會(huì)失敗,它不會(huì)自動(dòng)執(zhí)行類(lèi)型轉(zhuǎn)換,需要你手動(dòng)操作。

tf.cast()可以用來(lái)進(jìn)行轉(zhuǎn)換,比如把a(bǔ)轉(zhuǎn)為float64類(lèi)型的
tf.cast(a, tf.float64)

(4).變量

tf.Constant無(wú)法被改變,固定好深度學(xué)習(xí)的參數(shù)后,可以使用這個(gè)類(lèi)型的變量,但是如果需要對(duì)它進(jìn)行訓(xùn)練,則必須要使用tf.Variable

我們對(duì)tf.Variable的修改也需要使用特定的函數(shù)assign

a[0,0].assign(10)

這樣a的第一個(gè)值就變?yōu)榱?0,這個(gè)就相當(dāng)于a[0,0] = 10

麻煩就是這個(gè)啦,必須通過(guò)相應(yīng)的函數(shù)來(lái)操作;

(5).其他數(shù)據(jù)結(jié)構(gòu)

tensorflow還有其他數(shù)據(jù)結(jié)構(gòu),比如稀疏張量(tf.SparseTensor),張量數(shù)組(tf.TensorArrray),不規(guī)則張量(tf.RaggedTensor),字符串張量(tf.string)等等

2.定制模型和算法

(1)自定義損失函數(shù)

比如自定義一個(gè)Huber
def huber_fn(y_true, y_pred):`

error = tf.abs(y_true - y_pred);
    is_small_error = tf.abs(error) < 1#門(mén)限設(shè)置為1
    squared_loss = tf.abs(error)-0.5
    return tf.where(is_small_error, squared_loss, linear_loss)

可以在Keras模型中使用這個(gè)函數(shù)

model.compile(loss=huber_fn, opitimizer= 'adam');

(2)保存和加載自定義組件的模型

keras會(huì)保存函數(shù)的名字,每次加載的適合需要提供一個(gè)字典,將函數(shù)名稱(chēng)映射到實(shí)際函數(shù)。一般而言,當(dāng)加載包含自定義對(duì)象的模式時(shí),需要將名稱(chēng)映射到對(duì)象。

model = keras.models.load_model("model.h5", custom_objects = {'huber_fn':huber_fn})

如果需要更為靈活的函數(shù),設(shè)定上面函數(shù)的閾值,不僅僅等于1

def more_freedom_huber(limit = 1.0):

def huber_fn(y_true, y_pred):
            error = tf.abs(y_true - y_pred);
            is_small_error = tf.abs(error) < 1#門(mén)限設(shè)置為1
            squared_loss = tf.abs(error)-0.5
            return tf.where(is_small_error, squared_loss, linear_loss)
    return huber_fn
    model = keras.models.load_model("model.h5", custom_objects = {'huber_fn':more_freedom_huber(2.0)})

還可以通過(guò)繼承keras.losses.Loss類(lèi)的子類(lèi),然后實(shí)現(xiàn)get_config()方法來(lái)解決問(wèn)題

比如自定義激活函數(shù),初始化方法,正則化和約束。

如果函數(shù)需要和模型一起保存,必須繼承相應(yīng)的對(duì)象,比如keras.regularizers.Regularizer

以上就是TensorFlow隱藏操作探索(張量操作和定制模型算法)的詳細(xì)內(nèi)容,更多關(guān)于TensorFlow張量定制模型算法的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • python套接字socket通信

    python套接字socket通信

    這篇文章主要介紹了python套接字socket通信,python標(biāo)準(zhǔn)庫(kù)中內(nèi)置了底層網(wǎng)絡(luò)接口socket,以下代碼均默認(rèn)from?socket?import?*,下文很多詳細(xì)內(nèi)容需要的小伙伴可以參考一下
    2022-04-04
  • 如何解決Python讀取圖片路徑存在轉(zhuǎn)義字符的問(wèn)題

    如何解決Python讀取圖片路徑存在轉(zhuǎn)義字符的問(wèn)題

    這篇文章主要為大家詳細(xì)介紹了如何解決Python讀取圖片路徑時(shí)存在轉(zhuǎn)義字符的問(wèn)題,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以學(xué)習(xí)一下
    2023-07-07
  • python基礎(chǔ)之錯(cuò)誤和異常處理

    python基礎(chǔ)之錯(cuò)誤和異常處理

    這篇文章主要介紹了python錯(cuò)誤和異常處理,實(shí)例分析了Python中返回一個(gè)返回值與多個(gè)返回值的方法,需要的朋友可以參考下
    2021-10-10
  • python實(shí)現(xiàn)四人制撲克牌游戲

    python實(shí)現(xiàn)四人制撲克牌游戲

    這篇文章主要介紹了python實(shí)現(xiàn)四人制撲克牌游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • python 顯示數(shù)組全部元素的方法

    python 顯示數(shù)組全部元素的方法

    下面小編就為大家分享一篇python 顯示數(shù)組全部元素的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-04-04
  • Python代碼連接到 Chat GPT API的方法

    Python代碼連接到 Chat GPT API的方法

    Chat GPT 由于其獨(dú)特、近乎準(zhǔn)確且類(lèi)似人類(lèi)的響應(yīng),如今在互聯(lián)網(wǎng)上引起了過(guò)多的討論,本文討論如何通過(guò) Python 代碼連接到 Chat GPT API,感興趣的朋友一起看看吧
    2023-02-02
  • OpenCV 形態(tài)學(xué)變換的實(shí)現(xiàn)示例

    OpenCV 形態(tài)學(xué)變換的實(shí)現(xiàn)示例

    本文主要介紹了使用OpenCV進(jìn)行常見(jiàn)的形態(tài)學(xué)變換操作,這些操作在圖像預(yù)處理、特征提取等任務(wù)中非常有用,具有一定的參考價(jià)值,感興趣的可以了解一下
    2025-07-07
  • 在Tensorflow中查看權(quán)重的實(shí)現(xiàn)

    在Tensorflow中查看權(quán)重的實(shí)現(xiàn)

    今天小編就為大家分享一篇在Tensorflow中查看權(quán)重的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-01-01
  • Python?matplotlib可視化之繪制韋恩圖

    Python?matplotlib可視化之繪制韋恩圖

    韋恩圖可以清晰的反映不同組數(shù)據(jù)共有和各自獨(dú)有的部分,本文將詳細(xì)為大家介紹如下兩種python繪制venn圖策略:matplotlib_venn和pyvenn,需要的可以參考一下
    2022-02-02
  • Python函數(shù)中的函數(shù)(閉包)用法實(shí)例

    Python函數(shù)中的函數(shù)(閉包)用法實(shí)例

    這篇文章主要介紹了Python函數(shù)中的函數(shù)(閉包)用法,結(jié)合實(shí)例形式分析了Python閉包的定義與使用技巧,需要的朋友可以參考下
    2016-03-03

最新評(píng)論