diff options
Diffstat (limited to 'tensorflow/go')
-rw-r--r-- | tensorflow/go/README.md | 29 | ||||
-rw-r--r-- | tensorflow/go/genop/generate.sh | 2 | ||||
-rw-r--r-- | tensorflow/go/op/wrappers.go | 30 | ||||
-rw-r--r-- | tensorflow/go/shape.go | 2 | ||||
-rw-r--r-- | tensorflow/go/tensor.go | 2 |
5 files changed, 33 insertions, 32 deletions
diff --git a/tensorflow/go/README.md b/tensorflow/go/README.md index a1b4255292..9c2fa60017 100644 --- a/tensorflow/go/README.md +++ b/tensorflow/go/README.md @@ -9,35 +9,6 @@ Construct and execute TensorFlow graphs in Go. > (`github.com/tensorflow/tensorflow/tensorflow/go`). ## Quickstart -1. Download and extract the TensorFlow C library, preferably into `/usr/local`. - GPU-enabled versions require CUDA 8.0 and cuDNN 5.1. For other versions, the - TensorFlow C library will have to be built from source (see below). - - - Linux: - [CPU-only](https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-linux-x86_64-1.1.0.tar.gz), - [GPU-enabled](https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-gpu-linux-x86_64-1.1.0.tar.gz) - - OS X - [CPU-only](https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-darwin-x86_64-1.1.0.tar.gz), - - The following shell snippet downloads and extracts into `/usr/local`: - - ```sh - TF_TYPE="cpu" # Set to "gpu" for GPU support - curl -L \ - "https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-${TF_TYPE}-$(go env GOOS)-x86_64-1.1.0.tar.gz" | - sudo tar -C /usr/local -xz - ``` - -2. `go get` this package (and run tests): - - ```sh - go get github.com/tensorflow/tensorflow/tensorflow/go - go test github.com/tensorflow/tensorflow/tensorflow/go - ``` - -3. Done! - -### Installing into locations other than `/usr/local` Refer to [Installing TensorFlow for Go](https://www.tensorflow.org/install/install_go) diff --git a/tensorflow/go/genop/generate.sh b/tensorflow/go/genop/generate.sh index d791e39c40..15ef3b9525 100644 --- a/tensorflow/go/genop/generate.sh +++ b/tensorflow/go/genop/generate.sh @@ -20,7 +20,7 @@ go get github.com/golang/protobuf/proto go get github.com/golang/protobuf/protoc-gen-go cd $(dirname $0) -for g in $(echo $GOPATH | sed "s/:/ /g"); do +for g in $(echo "${GOPATH//:/ }"); do TF_DIR="${g}/src/github.com/tensorflow/tensorflow" PROTOC="${TF_DIR}/bazel-out/host/bin/external/protobuf/protoc" if [ -x "${PROTOC}" ]; then diff --git a/tensorflow/go/op/wrappers.go b/tensorflow/go/op/wrappers.go index 8dd2931703..6675f1097e 100644 --- a/tensorflow/go/op/wrappers.go +++ b/tensorflow/go/op/wrappers.go @@ -14288,6 +14288,36 @@ func DecodeBase64(scope *Scope, input tf.Output) (output tf.Output) { return op.Output(0) } +// Computes hyperbolic sine of x element-wise. +func Sinh(scope *Scope, x tf.Output) (y tf.Output) { + if scope.Err() != nil { + return + } + opspec := tf.OpSpec{ + Type: "Sinh", + Input: []tf.Input{ + x, + }, + } + op := scope.AddOperation(opspec) + return op.Output(0) +} + +// Computes hyperbolic cosine of x element-wise. +func Cosh(scope *Scope, x tf.Output) (y tf.Output) { + if scope.Err() != nil { + return + } + opspec := tf.OpSpec{ + Type: "Cosh", + Input: []tf.Input{ + x, + }, + } + op := scope.AddOperation(opspec) + return op.Output(0) +} + // Computes hyperbolic tangent of `x` element-wise. func Tanh(scope *Scope, x tf.Output) (y tf.Output) { if scope.Err() != nil { diff --git a/tensorflow/go/shape.go b/tensorflow/go/shape.go index 114ab5decb..8d000cb9de 100644 --- a/tensorflow/go/shape.go +++ b/tensorflow/go/shape.go @@ -59,7 +59,7 @@ func (s Shape) NumDimensions() int { // // REQUIRES: 0 <= dim < s.NumDimensions() func (s Shape) Size(dim int) int64 { - if dim < 0 || dim > s.NumDimensions() { + if dim < 0 || dim >= s.NumDimensions() { return -1 } return s.dims[dim] diff --git a/tensorflow/go/tensor.go b/tensorflow/go/tensor.go index 34e797a2b3..4a60c736b5 100644 --- a/tensorflow/go/tensor.go +++ b/tensorflow/go/tensor.go @@ -270,7 +270,7 @@ func typeOf(dt DataType, shape []int64) reflect.Type { if ret == nil { panic(bug("DataType %v is not supported", dt)) } - for _ = range shape { + for range shape { ret = reflect.SliceOf(ret) } return ret |