W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
Interpreter
別名:>
定義在:tensorflow/lite/python/interpreter.py。
TF-Lite模型的解釋器推理。
__init__
__init__(
model_path=None,
model_content=None
)
構(gòu)造函數(shù)。
參數(shù):
可能引發(fā)的異常:
allocate_tensors
allocate_tensors()
get_input_details
get_input_details()
獲取模型輸入詳細(xì)信息。
返回:
輸入詳細(xì)信息列表。
get_output_details
get_output_details()
獲取模型輸出詳細(xì)信息
返回:
輸出詳細(xì)信息列表。
get_tensor
get_tensor(tensor_index)
獲取輸入張量的值(獲取副本)。
如果您想避免復(fù)制,請(qǐng)使用tensor()。
參數(shù):
返回:
一個(gè)numpy數(shù)組。
get_tensor_details
get_tensor_details()
獲取具有有效張量詳細(xì)信息的每個(gè)張量的張量詳細(xì)信息。
未找到有關(guān)張量的所需信息的張量不會(huì)添加到列表中。這包括沒有名字的臨時(shí)張量。
返回:
包含張量信息的詞典列表。
invoke
invoke()
調(diào)用解釋器。
在調(diào)用之前,請(qǐng)務(wù)必設(shè)置輸入大小,分配張量和填充值。
可能引發(fā)的異常:
reset_all_variables
reset_all_variables()
resize_tensor_input
resize_tensor_input(
input_index,
tensor_size
)
調(diào)整輸入張量的大小。
參數(shù):
可能引發(fā)的異常:
set_tensor
set_tensor(
tensor_index,
value
)
設(shè)置輸入張量的值。請(qǐng)注意,這將復(fù)制value的數(shù)據(jù)。
如果要避免復(fù)制,可以使用該tensor()函數(shù)獲取指向tflite解釋器中輸入緩沖區(qū)的numpy緩沖區(qū)。
參數(shù):
可能引發(fā)的異常:
tensor
tensor(tensor_index)
返回給出當(dāng)前張量緩沖區(qū)的numpy視圖的函數(shù)。
這允許在沒有副本的情況下讀寫這個(gè)張量。這更接近于C ++ Interpreter類接口的tensor()成員,因此得名。小心不要通過調(diào)用allocate_tensors()和invoke()來保持這些輸出引用。
用法:
interpreter.allocate_tensors()
input = interpreter.tensor(interpreter.get_input_details()[0]["index"])
output = interpreter.tensor(interpreter.get_output_details()[0]["index"])
for i in range(10):
input().fill(3.)
interpreter.invoke()
print("inference %s" % output())
注意這個(gè)函數(shù)如何避免直接生成numpy數(shù)組。將實(shí)際numpy視圖保持到數(shù)據(jù)的時(shí)間不能超過必要的時(shí)間是很重要的。如果你這樣做了,則無法再調(diào)用解釋器,因?yàn)榻忉屍骺赡軙?huì)調(diào)整大小并使引用的張量無效。NumPy API不允許底層緩沖區(qū)的任何可變性。
錯(cuò)誤:
input = interpreter.tensor(interpreter.get_input_details()[0]["index"])()
output = interpreter.tensor(interpreter.get_output_details()[0]["index"])()
interpreter.allocate_tensors() # This will throw RuntimeError
for i in range(10):
input.fill(3.)
interpreter.invoke() # this will throw RuntimeError since input,output
參數(shù):
返回:
一個(gè)函數(shù),可以在任何點(diǎn)返回指向內(nèi)部TFLite張量狀態(tài)的新numpy數(shù)組。永久保持該函數(shù)是安全的,但永久保持numpy陣列是不安全的。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: