此文章基于ubuntu16.04
先在這里貼上官方教程
https://github.com/tensorflow/tensorflow/tree/master/tensorflow/go
注意 安裝go版的tensorflow時一定要先安裝C版tensorflow且要部署好go語言
c版tensorflow官方教程
(Go 版本 TensorFlow 依賴于 TensorFlow C 語言庫)
按照官方的指導就可以,沒什么坑,最好是官方指定位置,否則后面可能會有坑!
安好后執(zhí)行這個命令
go get -d github.com/tensorflow/tensorflow/tensorflow/go
可能會出現(xiàn)go get 找不到 google.golang.org/protobuf/×××××××××× 這類問題
此時我們可以使用git clone命令,執(zhí)行如下代碼“https://github.com/protocolbuffers/protobuf-go.git”,將下載內(nèi)容放入protobuf文件夾中,即把下載下來中的內(nèi)容全部替換到出問題的protobuf目錄,這可能是之前代碼換地址導致的問題
執(zhí)行如下命令(下載下來后記得把文件替換,或者直接改名字把protobuf-go改成protobuf換目錄)
git clone https://github.com/protocolbuffers/protobuf-go.git
如果找不到相應的目錄可以用如下命令獲取
git clone https://github.com/grpc/grpc-go.git $GOPATH/src/google.golang.org/grpc
git clone https://github.com/golang/net.git $GOPATH/src/golang.org/x/net
git clone https://github.com/golang/text.git $GOPATH/src/golang.org/x/text
go get -u github.com/golang/protobuf/{proto,protoc-gen-go}
git clone https://github.com/google/go-genproto.git $GOPATH/src/google.golang.org/genproto
如果找不到包
"github.com/tensorflow/tensorflow/tensorflow/go/genop/internal/proto/github.com/tensorflow/tensorflow/tensorflow/go/core" in any of: /home/go/src/github.com/tensorflow/tensorflow/tensorflow/go/genop/internal/proto/github.com/tensorflow/tensorflow/tensorflow/go/core (from $GOROOT)
此時我們可以執(zhí)行以下命令嘗試解決問題
cd $GOPATH/src/github.com/tensorflow/tensorflow/tensorflow/go
git checkout r1.11
go get github.com/tensorflow/tensorflow/tensorflow/go
也可以在 StackOverflow 上通過搜索和提問來獲取可能的解決方法。
如果go get成功 即不報錯,可用如下命令測試
go test github.com/tensorflow/tensorflow/tensorflow/go
Hello World
安裝完 Go 版本 TensorFlow 之后,在 hello_tf.go 文件中輸入下面的代碼:
package main
import (
tf "github.com/tensorflow/tensorflow/tensorflow/go"
"github.com/tensorflow/tensorflow/tensorflow/go/op"
"fmt"
)
func main() {
// Construct a graph with an operation that produces a string constant.
s := op.NewScope()
c := op.Const(s, "Hello from TensorFlow version " + tf.Version())
graph, err := s.Finalize()
if err != nil {
panic(err)
}
// Execute the graph in a session.
sess, err := tf.NewSession(graph, nil)
if err != nil {
panic(err)
}
output, err := sess.Run(nil, []tf.Output{c}, nil)
if err != nil {
panic(err)
}
fmt.Println(output[0].Value())
}
通過調(diào)用下面的命令來運行 hello_tf.go:
go run hello_tf.go
Hello from TensorFlow version number
這個程序可能會輸出類似下面的警告信息,你可以忽略它們:
W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library
wasn't compiled to use *Type* instructions, but these are available on your
machine and could speed up CPU computations.
參考
[1]: https://blog.csdn.net/jj546630576/article/details/88179569
[2]: https://www.cnblogs.com/personblog/p/13084723.html
[3]: https://blog.csdn.net/qq_38431572/article/details/103671986
到此這篇關(guān)于go版tensorflow安裝教程詳解的文章就介紹到這了,更多相關(guān)go安裝tensorflow內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- Tensorflow安裝問題: Could not find a version that satisfies the requirement tensorflow
- 查看已安裝tensorflow版本的方法示例
- 在Anaconda3下使用清華鏡像源安裝TensorFlow(CPU版)
- tensorflow安裝成功import tensorflow 出現(xiàn)問題
- TensorFlow2.1.0最新版本安裝詳細教程