日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

Python神经网络集成技术Guide指南

發布時間:2023/11/28 生活经验 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python神经网络集成技术Guide指南 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Python神經網絡集成技術Guide指南

本指南將介紹如何加載一個神經網絡集成系統并從Python運行推斷。

提示

所有框架的神經網絡集成系統運行時接口都是相同的,因此本指南適用于所有受支持框架(包括TensorFlow、PyTorch、Keras和TorchScript)中的模型。

打包神經網絡集成系統

有關如何在所有支持的框架中創建Neuropod模型的示例,請參見基本介紹指南。

打包一個神經網絡集成系統

from neuropod.loader import load_neuropod

neuropod = load_neuropod(PATH_TO_MY_MODEL)

還可以使用load_ernood作為上下文管理器:

from neuropod.loader import load_neuropod

with load_neuropod(PATH_TO_MY_MODEL) as neuropod:

# Do something here

Pass

選項

還可以在加載模型時提供運行時選項。

要選擇在哪個設備上運行模型,可以提供一個visible_gpu參數。

這是這個神經網絡集成系統應該運行的GPU的索引(如果有的話)。可以是無整數,也可以是非負整數。將此設置為“無”將嘗試在CPU上運行此模型。

# Run on CPU

neuropod = load_neuropod(PATH_TO_MY_MODEL, visible_gpu=None)

# Run on the second GPU

neuropod = load_neuropod(PATH_TO_MY_MODEL, visible_gpu=1)

獲取模型的輸入和輸出

模型的輸入和輸出通過輸入和輸出屬性可用。

with load_neuropod(PATH_TO_MY_MODEL) as neuropod:

# This is a list of dicts containing the "name", "dtype", and "shape"# of the input

print(neuropod.inputs, neuropod.outputs)

推論

模型的推理方法用于運行推理。此方法的輸入是將輸入名稱映射到值的dict。這必須與加載模型的neuropod配置中的輸入規范匹配。

提示

這個dict中的所有鍵必須是字符串,所有值必須是numpy數組。

infer的輸出是將輸出名稱映射到值的dict。對其進行檢查,以確保其與已加載模型的neuropod配置中的規范匹配。這個dict中的所有鍵都是字符串,所有值都是numpy數組。

x = np.array([1, 2, 3, 4])

y = np.array([5, 6, 7, 8])

with load_neuropod(ADDITION_MODEL_PATH) as neuropod:

results = neuropod.infer({“x”: x, “y”: y})

# array([6, 8, 10, 12])
print results[“out”]
序列化
import numpy as np from neuropod import neuropod_native
# An array to serialize
tensor = np.arange(5)
# Convert a numpy array to a NeuropodTensor and serialize it
serialized_bytes = neuropod_native.serialize(tensor)
# Deserialize a string of bytes to a NeuropodTensor
# (and return it as a numpy array)
deserialized = neuropod_native.deserialize(serialized_bytes)
# array([0, 1, 2, 3, 4])
print(deserializ
ed)
序列化代碼在NUMPY數組和C++ NoopPotoStor對****象之間轉換(以零拷貝方式)。然后,使用C++序列化功能來序列化/反序列化

提示
序列化和反序列化工作在Python和C++之間。這意味著可以在C+
+中序列化張量,在Python中反序列化,反之亦然。

Warning

這個API的目標是支持臨時序列化。不能保證向后兼容,因此此API不應用于數據的長期存儲。

總結

以上是生活随笔為你收集整理的Python神经网络集成技术Guide指南的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。