TensorFlow for Go 설치

TensorFlow는 Python으로 만든 모델을 로드하고 Go 애플리케이션 내에서 실행하는 데 특히 유용한 Go API를 제공합니다.

지원되는 플랫폼

TensorFlow for Go는 다음 시스템에서 지원됩니다.

  • Linux, 64비트, x86
  • macOS, 버전 10.12.6(Sierra) 이상

설정

TensorFlow C 라이브러리

TensorFlow Go 패키지에 필요한 TensorFlow C 라이브러리를 설치합니다.

다운로드

TensorFlow Go 패키지 및 종속성을 다운로드하여 설치합니다.

go get github.com/tensorflow/tensorflow/tensorflow/go

설치의 유효성을 검사합니다.

go test github.com/tensorflow/tensorflow/tensorflow/go

빌드

예제 프로그램

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())
}

실행

예제 프로그램을 실행합니다.

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.

소스에서 빌드

TensorFlow는 오픈소스입니다. 안내에 따라 소스 코드에서 TensorFlow for Go를 빌드합니다.