我安裝了 TensorFlow (2.3) 的最新版本,在 Python 下運行良好,但在 Golang 下卻出現異常:...但不包含包 github.com/tensorflow/tensorflow/tensorflow/go/core/protobuf/for_core_protos_go_proto通過將版本更改為 1.15.0,我讓 TensorFlow 與 Golang 一起使用現在,我面臨以下問題:使用 TensorFlow 2.3 的 Python 代碼import tensorflow as tf df = pd.read_csv(data_path, sep=';')X = df[df.columns[:8]]y = df[df.columns[8:-1]]X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.3) model = tf.keras.Sequential()model.add(tf.keras.layers.Dense(8, activation='relu', name="inputNode"))model.add(tf.keras.layers.Dense(150, activation='relu'))model.add(tf.keras.layers.Dense(3, name="inferNode"))model.compile(loss='mean_squared_error', optimizer='adam', metrics=['accuracy'])model.fit(X_train, y_train, epochs=500) tf.keras.models.save_model(model=model, filepath='./', save_format='tf')使用 TensorFlow 1.15.0 的 Golang 代碼model, err := tf.LoadSavedModel("./", []string{"serve"}, nil)if err != nil { fmt.Printf("Error loading saved model: %s\n", err.Error()) return}defer model.Session.Close()data := [][]float32{make([]float32, 8)}data[0][0] = 1.0data[0][1] = 1.0data[0][2] = 1.0data[0][3] = 1.0data[0][4] = 1.0data[0][5] = 1.0data[0][6] = 1.0data[0][7] = 1.0tensor, _ := tf.NewTensor(data) result, err := model.Session.Run( map[tf.Output]*tf.Tensor{ model.Graph.Operation("inputNode_input").Output(0): tensor, // Replace this with your input layer name }, []tf.Output{ model.Graph.Operation("inferNode").Output(0), // Replace this with your output layer name }, nil,) if err != nil { fmt.Printf("Error running the session with input, err: %s\n", err.Error()) return} fmt.Printf("Result value: %v \n", result[0].Value())golang 拋出這個異常:-- FAIL: TestMlPredict (6.93s)panic: nil-Operation. If the Output was created with a Scope object, see Scope.Err() for details. [recovered] panic: nil-Operation. If the Output was created with a Scope object, see Scope.Err() for details.
2 回答

烙印99
TA貢獻1829條經驗 獲得超13個贊
實際上,我在我維護的 TensorFlow 的一個分支中修復了第一個問題,其中包含所有已編譯的 protobuf。fork 是包的依賴項galeone/tfgo
,它使用go mod
.
你試試
go get github.com/galeone/tfgo
您將能夠使用 tensorflow/go 和 tensorflow/op 包 + tfgo 的所有附加功能。
- 2 回答
- 0 關注
- 321 瀏覽
添加回答
舉報
0/150
提交
取消