成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > 基于tensorflow __init__、build 和call的使用小結(jié)

基于tensorflow __init__、build 和call的使用小結(jié)

熱門標(biāo)簽:電銷機器人系統(tǒng)廠家鄭州 螳螂科技外呼系統(tǒng)怎么用 正安縣地圖標(biāo)注app 400電話申請資格 舉辦過冬奧會的城市地圖標(biāo)注 阿里電話機器人對話 地圖地圖標(biāo)注有嘆號 qt百度地圖標(biāo)注 遼寧智能外呼系統(tǒng)需要多少錢

1.介紹

在使用tf構(gòu)建網(wǎng)絡(luò)框架的時候,經(jīng)常會遇到__init__、build 和call這三個互相搭配著使用,那么它們的區(qū)別主要在哪里呢?

1)__init__主要用來做參數(shù)初始化用,比如我們要初始化卷積的一些參數(shù),就可以放到這里面

2)call可以把類型的對象當(dāng)做函數(shù)來使用,這個對象可以是在__init__里面也可以是在build里面

3)build一般是和call搭配使用,這個時候,它的功能和__init__很相似,當(dāng)build中存放本層需要初始化的變量,當(dāng)call被第一次調(diào)用的時候,會先執(zhí)行build()方法初始化變量,但后面再調(diào)用到call的時候,是不會再去執(zhí)行build()方法初始化變量

2.代碼

class RB(tf.keras.layers.Layer): 
 def __init__(self, num_filters, *args, **kwargs):
 self.num_filters = num_filters
 super(RB, self).__init__(*args, **kwargs)
 #按需求添加卷積
 def build(self, input_shape):
 #按需求添加卷積
 self._layers = [
 ]
 super(RB, self).build(input_shape)
 
 def call(self, tensor):
 for layer in self._layers:
  tensor = layer(tensor) 
class DecodeNet(tf.keras.layers.Layer):
 
 def __init__(self, num_filters, *args, **kwargs):
 self.num_filters = num_filters
 super(DecodeNet, self).__init__(*args, **kwargs)
 self.rb_block0 = RB(self.num_filters)
 self.rb_block1 = RB(self.num_filters)
 self.rb_block2 = RB(self.num_filters)
 
 def build(self, input_shape):
 self._layers = [
  RB(self.num_filters),
  RB(self.num_filters),
  RB(self.num_filters),
 ]
 super(DecodeNet, self).build(input_shape)
 
 def call(self, tensor):
 tensor = self.rb_block0(tensor)
 tensor = self.rb_block1(tensor)
 for layer in self._layers:
  tensor = layer(tensor)
 tensor = self.rb_block2(tensor)
 return tensor

補充:Python類中的__init__() 和 self 的解析

1、Python中self的含義

self,英文單詞意思很明顯,表示自己,本身。

此處有幾種潛在含義:

1.這里的自己,指的是,實例Instance本身。

2.同時, 由于說到“自己”這個詞,都是和相對而言的“其他”而說的;而此處的其他,指的是,類Class,和其他變量,比如局部變量,全局變量等。

此處的self,是個對象(Object),是當(dāng)前類的實例。

因此,對應(yīng)的self.valueName 和 self.function()中的valueName:表示self對象,即實例的變量。與其他的,Class的變量,全局的變量,局部的變量,是相對應(yīng)的。

function:表示是調(diào)用的是self對象,即實例的函數(shù)。與其他的全局的函數(shù),是相對應(yīng)的。

2、Python中為何要有self

那就是:

在類的代碼(函數(shù))中,需要訪問當(dāng)前的實例中的變量和函數(shù)的,即,訪問Instance中的:

對應(yīng)的變量(屬性,property):Instance.ProperyNam,去讀取之前的值和寫入新的值

調(diào)用對應(yīng)函數(shù)(function):Instance.function(),即執(zhí)行對應(yīng)的動作

-> 而需要訪問實例的變量和調(diào)用實例的函數(shù),當(dāng)然需要對應(yīng)的實例Instance對象本身

-> 而Python中就規(guī)定好了,函數(shù)的第一個參數(shù),就必須是實例對象本身,并且建議,約定俗成,把其名字寫為self

-> 所以,我們需要self(需要用到self)

而如果沒有用到self,即代碼中,去掉self后,那種寫法所使用到的變量,實際上不是你所希望的,不是真正的實例中的變量和函數(shù),而是的訪問到了其他部分的變量和函數(shù)了。甚至?xí)捎跊]有合適的初始化實例變量,而導(dǎo)致后續(xù)無法訪問的錯誤。

下面,就通過代碼,來演示,如果去掉self,或者沒有合理的使用self,會出現(xiàn)哪些錯誤。

3、首先來看一下__init__()和self對象

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author: antcolonies 
class Person(object):
 def __init__(self, name, lang, website):
  self.name = name
  self.lang = lang
  self.website = website
 
  print('self: ', self)
  print('type of self: ', type(self))
'''
未實例化時,運行程序,構(gòu)造方法沒有運行
''' 
p = Person('Tim', 'English', 'www.universal.com') 
'''實例化后運行的結(jié)果
self: __main__.Person object at 0x00000000021EAF98>
type of self: class '__main__.Person'>
'''

可以看出self為實例變量p,是一個Person類型的對象。

class Dog(object):  
 def __init__(self,name,dog_type):
  self.name = name
  self.type = dog_type 
 def sayhi(self):
  print("hello,I am a dog, my name is ",self.name) 
 
d = Dog('LiChuang',"京巴")   # 實例化
d.sayhi()

以下是d = Dog('LiChuang',"京巴")實例化的示意圖:

4、如果沒有在__init__中初始化對應(yīng)的實例變量的話,導(dǎo)致后續(xù)引用實例變量會出錯

如下代碼,完整的演示了,如果沒有在類Class的最初的__init__函數(shù)中,正確的初始化實例變量,則會導(dǎo)致后續(xù)沒有變量可用,因而出現(xiàn)AttributeError的錯誤:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author: antcolonies 
name = 'whole global name'
'''
注:此處全局的變量名,寫成name,只是為了演示而用
實際上,好的編程風(fēng)格,應(yīng)該寫成gName之類的名字,
以表示該變量是Global的變量
''' 
class Person(object):
 def __init__(self, newPersonName):
  # self.name = newPersonName
  '''
  如果此處不寫成self.name
  那么此處的name,只是__init__函數(shù)中的局部臨時變量name而已
  和全局中的name,沒有半毛錢關(guān)系
  '''
  name = newPersonName
  '''
  此處只是為了代碼演示,而使用了局部變量name,
  不過需要注意的是,此處很明顯,由于接下來的代碼也沒有利用到此處的局部變量name
  則就導(dǎo)致了,此處的name變量,實際上被浪費了,根本沒有利用到
  '''
 def sayYourName(self):
  '''
  此處由于找不到實例中的name變量,所以會報錯:
  AttributeError: Person instance has no attribute 'name'
  '''
  print('My name is %s' %self.name)
 
def selfAndInitDemo():
 personInstance = Person('Tim')
 personInstance.sayYourName() 
if __name__ == '__main__':
 selfAndInitDemo()
 
''' 未使用self.name時拋異常
Traceback (most recent call last):
 File "E:/python14_workspace/s14/day06/test_1.py", line 18, in module>
 selfAndInitDemo()
 File "E:/python14_workspace/s14/day06/test_1.py", line 15, in selfAndInitDemo
 personInstance.sayYourName()
 File "E:/python14_workspace/s14/day06/test_1.py", line 11, in sayYourName
 print('My name is %s' %self.name)
AttributeError: 'Person' object has no attribute 'name'
'''

從上述代碼可見,由于在類的初始化(實例化)的__init__函數(shù)中,沒有給self.name設(shè)置值,使得實例中,根本沒有name這個變量,導(dǎo)致后續(xù)再去訪問self.name,就會出現(xiàn)AttributeError的錯誤了。

對應(yīng)的,如果寫成self.name,則意思就正確了,就是初始化的時候,給實例中新增加,并且正常設(shè)置了正確的值newPersionName了,所以后續(xù)再去通過self.name,就可以訪問到,當(dāng)前實例中正確的變量name了。

相應(yīng)的正確寫法的代碼如下:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author: antcolonies 
name = 'whole global name'
'''
注:此處全局的變量名,寫成name,只是為了演示而用
實際上,好的編程風(fēng)格,應(yīng)該寫成gName之類的名字,
以表示該變量是Global的變量
''' 
class Person(object):
 def __init__(self, newPersonName):
  self.name = newPersonName
  '''
  此處正確的,通過訪問self.name的形式,實現(xiàn)了:
   1.給實例中,增加了name變量
   2.并且給name賦了初值,為newPersionName
  '''
 def sayYourName(self):
  '''
  此處由于開始正確的初始化了self對象,使得其中有了name變量,
  所以此處可以正確訪問了name值了
  '''
  print('My name is %s' %self.name)
 
def selfAndInitDemo():
 personInstance = Person('Tim')
 personInstance.sayYourName()
 
if __name__ == '__main__':
 selfAndInitDemo() 
'''My name is Tim'''

5、在函數(shù)中,使用對應(yīng)的變量

雖然代碼是可以運行的,但是實際上卻是使用的,不是實例中的變量

有時候,雖然你寫的代碼,可以運行,但是使用到的變量,由于沒有加self,實際上是用到的不是實例的變量,而是其他的變量。

此類問題,主要和Python中的變量的作用域有關(guān),但是此處例子中,也和是否使用self有關(guān):

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author: antcolonies 
name = 'whole global name'
'''
注:此處全局的變量名,寫成name,只是為了演示而用
實際上,好的編程風(fēng)格,應(yīng)該寫成gName之類的名字,
以表示該變量是Global的變量
'''
class Person(object):
 name = 'class global name' 
 def __init__(self, newPersonName):
  # self.name = newPersonName
  '''
  此處,沒有使用self.name
  而使得此處的name,實際上仍是局部變量name
  雖然此處賦值了,但是后面沒有被利用到,屬于被浪費了的局部變量name
  '''
  name = newPersonName
 def sayYourName(self):
  '''
  此處,之所以沒有像之前一樣出現(xiàn):
  AttributeError: Person instance has no attribute 'name'
  那是因為,雖然當(dāng)前的實例self中,沒有在__init__中初始化對應(yīng)的name變量,實例self中沒有對應(yīng)的name變量
  但是由于實例所對應(yīng)的類Person,有對應(yīng)的name變量,所以也是可以正常執(zhí)行代碼的
  對應(yīng)的,此處的self.name,實際上是Person.name
  '''
  print('My name is %s' %self.name)
  print('Name within class Person is actually the global name: %s' %name)
  print("Only access Person's name via Person.name = %s" %(Person.name))
 
def selfAndInitDemo():
 personInstance = Person('Tim')
 personInstance.sayYourName()
 print('whole global name is %s' %name)
 
if __name__ == '__main__':
 selfAndInitDemo()
'''
My name is class global name
Name within class Person is actually the global name: whole global name
Only access Person's name via Person.name = class global name
whole global name is whole global name
'''

其中,可見,此處開始__init__中,沒有給self實例初始化對應(yīng)的name,

而后面的函數(shù)sayYourName中,雖然可以調(diào)用到self.name而沒有出現(xiàn)AttributeError錯誤,

但是實際上此處的值,不是所期望的,傳入的name,即"Tim",而是類中的name的值,即"class global name"。

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • python中的__init__ 、__new__、__call__小結(jié)
  • 解決Tensorflow安裝成功,但在導(dǎo)入時報錯的問題
  • tensorflow安裝成功import tensorflow 出現(xiàn)問題

標(biāo)簽:淘寶好評回訪 合肥 興安盟 阜新 信陽 隨州 昭通 濟源

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《基于tensorflow __init__、build 和call的使用小結(jié)》,本文關(guān)鍵詞  基于,tensorflow,init,build,和,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《基于tensorflow __init__、build 和call的使用小結(jié)》相關(guān)的同類信息!
  • 本頁收集關(guān)于基于tensorflow __init__、build 和call的使用小結(jié)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    蜜桃传媒av| 精人妻一区二区三区| 国产精品自产拍在线观| 伊人色综合一区二区三区影院视频| 美女一区二区久久| 国产精品久久久久一区二区国产| 欧美变态视频| 午夜高潮免费视频| 9191国语精品高清在线| 亚洲97av| 在线观看三级网站| 99热精品在线观看| 丁香婷婷久久| 欧美日韩精品高清| 国产精品无人区| seerx性欧美巨大| 成人有码在线视频| 国产日韩免费视频| 在线观看亚洲视频| 九九久久精品一区| 6080yy精品一区二区三区| 国产精品入口| 国产精品国码视频| 亚洲欧美综合v| 69xxx免费| 日韩成人综合网站| 无码少妇精品一区二区免费动态| 少妇激情一区二区三区视频| 日韩欧美的一区| 中文字幕在线播放日韩| 亚洲第一精品福利| 久久噜噜亚洲综合| 国产精品欧美亚洲777777| 欧美性20hd另类| jlzzjlzz国产精品久久| 精品国产高清自在线一区二区三区| 国产精品亚洲欧美导航| 91黄页在线观看| 亚洲少妇30p| 国产一区二区不卡老阿姨| 国产日本欧美一区二区三区在线| 亚洲制服丝袜在线播放| 4438x全国最大成人| 一区二区三区在线免费观看| 欧美a极品极品欧美| 91黑丝高跟在线| 国产婷婷色一区二区三区在线| 91在线观看网站| 一区二区三区网站| 国产福利拍拍拍| 中文字幕丰满乱子伦无码专区| 久久美女精品| 丝袜国产日韩另类美女| 91亚洲精品一区二区| 成人日韩视频| 中文字幕免费高清电视剧网站在线观看| 国产伦精品一区二区三区高清| 91av免费观看91av精品在线| 精品国产精品三级精品av网址| 国产亚洲欧美一区二区| 日韩精品一区二区三区免费观影| 国内外激情在线| 中文字幕一区二区三区久久网站| 日韩精品视频在线观看免费| 在线精品日韩| 亚洲高清网站| 久久久久精彩视频| 亚洲综合123| 国产无码精品久久久| 在线视频亚洲一区| av污在线观看| gogo人体高清视频| 日本免费一区二区三区最新| 亚洲美女少妇无套啪啪呻吟| 91一区二区视频| 国产成人福利短视频app| 日韩免费视频| 在线成人激情黄色| 福利片一区二区| 国产日韩在线观看视频| 欧美男男激情freegay| 91看片在线| 久久精品国产精品亚洲综合| 国产精品露脸自拍| 欧美在线精品一区| 老熟妇一区二区三区| 九九视频直播综合网| 欧美影院午夜播放| 免费观看欧美大片| 欧美高清视频在线高清观看mv色露露十八| 成人网在线免费观看| 97视频国产在线| www国产91| 久久国产精品成人免费观看的软件| 大尺度做爰床戏呻吟舒畅| 91成人在线免费观看| 97精品久久久中文字幕免费| 国产 中文 字幕 日韩 在线| 2020日本在线视频中文字幕| 全球中文成人在线| 久久精品视频在线| 欧美国产先锋| 欧美日韩国产探花| 日本欧美黄网站| 国产成人精品视频在线| 欧美精品啪啪| 奇米在线7777在线精品| 中文字幕一区二区三区四区五区人| 五月天亚洲综合小说网| 国产视频在线观看一区| www.com久久久| 制服丝袜日韩国产| 成人精品在线观看视频| 久久久久久久久精| 88久久精品| 福利视频网站导航| 从欧美一区二区三区| 美女一级全黄| av在线播放网站| 亚洲偷欧美偷国内偷| 成人av二区| 青青草国产成人99久久| 蜜臀av免费观看| 中文字幕人成乱码在线观看| 欧美.com| 久久久久久久一区二区三区| 精品久久久久久久久久| 成人区精品一区二区不卡| 免费成人在线看| 免费久久一级欧美特大黄| 久久精品在线视频| 色悠久久久久综合先锋影音下载| 国产在线精品一区二区不卡| www.av蜜桃| 欧美日韩精品一区| 91精品久久久久久久久久| 国产精品99久久久久久似苏梦涵| 国产乱子伦三级在线播放| 在线天堂www在线国语对白| 国产美女情趣调教h一区二区| 在线免费黄色毛片| 丝袜脚交免费网站xx| 日本一级在线观看| 欧美激情视频一区二区三区免费| 国产视频一区在线观看| 亚洲欧洲一区二区| 久久久av一区| 91极品女神私人尤物在线播放| 91久久久久久久久久久| 日韩视频一区二区三区在线播放| 黄色在线免费观看网站| 一本久久精品一区二区| 老熟妇高潮一区二区高清视频| 九色在线播放| 国产精品九九九九九九| jizz内谢中国亚洲jizz| 污视频在线观看免费| 我家有个日本女人| 国产福利资源| 久久成人国产精品| 午夜影院久久久| 精品乱色一区二区中文字幕| 国产精品粉嫩| 肉色超薄丝袜脚交| 91国产福利在线| 性做爰过程免费播放| 精品国产一区二区三区麻豆免费观看完整版| 欧美大肚乱孕交hd孕妇| seba5欧美综合另类| www.日本一区| 日韩高清中文字幕一区| 国产成在线观看免费视频| 秋霞成人午夜鲁丝一区二区三区| 五月开心婷婷久久| 免费看日批视频| av在线free| 99久久精品费精品国产风间由美| 天海翼视频在线观看| 黑粗硬长欧美在线视频免费的| 亚洲免费观看高清完整| 大型av综合网站| 精品人伦一区二区三电影| 欧美日韩中文字幕日韩欧美| 喷水一区二区三区| eeuss鲁丝片eeuss影院| 精品一区二区视频在线观看| 欧美日韩成人在线一区| 妞干网在线观看视频| 成人免费视屏| 国产视频911| 91精品国产高清一区二区三密臀| 欧美专区一区二区三区| 国产福利在线看| 91啪九色porn原创视频在线观看| 欧美www.| 国产精品成人一区二区三区电影毛片| 国产一卡二卡三卡四卡| 欧美丰满美乳xxⅹ高潮www| 四虎精品一区二区永久在线观看| 欧美日韩精品一区二区在线播放| 国产精品男人爽免费视频1| www.在线播放| 国产精品熟女一区二区不卡| 狠狠干狠狠搞| 激情av一区二区| 久久久精品视频国产| 亚洲啪啪综合av一区二区三区| 性xx无遮挡| 精品一区二区三区视频在线播放| 精品人妻一区二区三区蜜桃视频| 国产香蕉精品视频一区二区三区| 亚洲成人观看| 日韩精品―中文字幕| 成人福利视频网站| 人与人69性欧美三人交| 国产精品久久久久久亚洲伦| 精品国产伦一区二区三区观看说明| 欧美午夜丰满在线18影院| av黄色在线免费观看| 激情文学一区| 91九色蝌蚪porny| 久久久噜噜噜| 男女曰b免费视频| 午夜诱惑痒痒网| 久久精品一区二区国产| 最近2019中文字幕一页二页| 国产精品色婷婷在线观看| 国产z一区二区三区| 国产欧美日韩中文久久| 在线观看一二三区| 2014国产精品| 国产成人精品一区二三区四区五区| 久久精品国产综合精品| 欧美精品久久一区| a视频免费在线观看| 欧美14一18处毛片| 欧美国产日韩二区| 国产精品国产三级国产专区52| 国产成人自拍在线| 亚洲一本大道在线| 国产精品久久久久久久妇| 久久久久久女乱国产| 国产精品一区二区久久| 成人av在线资源| 欧美黑人巨大xxxx猛交| 中国视频免男男gay| 亚洲人成在线观看一区二区| 国产精品午夜一区二区| 精品视频www| 麻豆精品在线| 欧美一级欧美三级在线| jizzjizz免费| 欧美亚洲日本黄色| 欧美videosex性欧美黑吊| 国产一区二区三区亚洲| 国产精品护士白丝一区av| 91精品视频免费看| 日韩免费电影一区| 4kfree性满足欧美hd18| 欧美午夜影院| 影音先锋日韩精品| 最新av在线免费观看| 在线观看亚洲电影| www.大网伊人| 艳妇乳肉豪妇荡乳av| 黑人精品欧美一区二区蜜桃| 成人资源在线播放| 欧洲激情一区二区| 瑟瑟网站在线观看| 亚洲精品二三区| 在线影音av| 成人小视频在线看| 欧美亚洲黄色片| 刘玥91精选国产在线观看| 亚洲色图欧美视频| 超碰精品在线观看| 成年人在线免费| 久久九九久精品国产免费直播| 成人羞羞动漫| 日本电影一区二区| 成人美女视频| 国产欧美日本在线| 久久av在线播放| 97超碰国产一区二区三区| 色综合天天天天做夜夜夜夜做| 好吊色这里只有精品| 97色婷婷成人综合在线观看| 精品无吗乱吗av国产爱色| 老司机在线看片网av| av观看在线| 日韩欧美自拍| 在线亚洲欧美| 最近中文字幕免费mv2018在线| 日韩va亚洲va欧美va清高| 日韩国产欧美| 男女曰b免费视频| 天天操天天干天天插| 老牛影视av老牛影视av| 欧美激情区在线播放| 免费看日韩av| 日本少妇久久久| 四虎av在线| 在线播放一区二区三区| 37p粉嫩大胆色噜噜噜| 强开小嫩苞一区二区三区视频| 男人本色网站| 精品久久香蕉国产线看观看gif| 日韩精品在线免费观看| 国产51自产区| 在线观看中文字幕亚洲| 成人91在线| 国产3p在线播放| 主播福利视频一区| 久草福利资源在线| 57pao成人永久免费视频| 欧美视频免费播放| 天堂俺去俺来也www久久婷婷| 欧美一区二区三区成人片在线| 无码av中文一区二区三区桃花岛| 日韩av在线播放不卡| 一本久道久久综合狠狠爱亚洲精品| 久久精视频免费在线久久完整在线看| 欧美国产一区二区三区| 亚洲自拍欧美色图| 成年网站免费入口在线观看| 粗大的内捧猛烈进出在线视频| 日产精品久久久一区二区| 亚洲精品综合一区二区三区|