go语言 TensorFlow for Go - Go语言中文社区

go语言 TensorFlow for Go


 go语言有着很好的潜力,最近TensorFlow提供了go语言的API.这些API特别适合加载Python中创建的模型,并在Go应用程序中执行它们。不过这些API还没有很稳定,目前也只是支持Linux,Mac OSX平台..

安装

本文以MacOSX安装为例

一 . Mac OS X上安装TensorFlow

安装TensorFlow有几种方式可以选择:

1 . 安装pip
$ sudo easy_install pip

已经安装过了可以忽略.py2,和py3冲突解决方法请百度

2 . 安装virtualenv
 $ sudo pip install --upgrade virtualenv 
3. 创建virtualenv环境

创建文件夹 :$ mkdir ~/tensorflow
如果你电脑装了python2.7,执行

 $ virtualenv --system-site-packages ~/tensorflow

如果你电脑装了python3.x,执行

$ virtualenv --system-site-packages -p python3 ~/tensorflow
4 . 激活virtualenv环境
$ source ~/tensorflow/bin/activate

你会发现你的终端变成了这个样子

(tensorflow)$ 
5 . 安装TensorFlow 和所有激活TensorFlow所需要的包

如果你电脑装了python2.7,执行

(tensorflow)$ pip install --upgrade tensorflow 

如果你电脑装了python3.x,执行

 (tensorflow)$ pip3 install --upgrade tensorflow 

附图:下载比较慢
这里写图片描述

二 . 安装TensorFlow for Go

前文说到的TensorFlow要安装好.

1. 下载并解压TensorFlow C库文件 到/usr/local/lib

执行以下命令:

$ TF_TYPE="cpu" # Change to "gpu" for GPU support

$ TARGET_DIRECTORY='/usr/local'

$ curl -L  "https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-${TF_TYPE}-$(go env GOOS)-x86_64-1.3.0.tar.gz" |
 sudo tar -C $TARGET_DIRECTORY -xz

第三条语句比较长..

2 . C库安装后,下载合适的包和依赖

执行

$ go get github.com/tensorflow/tensorflow/tensorflow/go
3 . 确认TensorFlow forGO 已经生效
$ go test github.com/tensorflow/tensorflow/tensorflow/go

示例

创建一个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())
}

运行 hello_tf.go

go run hello_tf.go


----------
运行结果:
Hello from TensorFlow version 1.3.0

同时运行结果中可能会产生一些警告,我们可以忽略.运行截图
这里写图片描述

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/u010824081/article/details/78111442
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-02-24 22:15:21
  • 阅读 ( 1910 )
  • 分类:Go

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢