Sha256: ddb34aa78cf8cfeaca9f68057c8eefe007022d0f52d6cb7747cdfd94322c752a

Contents?: true

Size: 847 Bytes

Versions: 4

Compression:

Stored size: 847 Bytes

Contents

module TensorStream
  class VariableScope
    include OpHelper
    attr_accessor :name, :reuse, :initializer
    attr_reader :used_names

    def initialize(name: nil, reuse: nil, initializer: nil)
      @name = name
      @reuse = reuse
      @initializer = initializer
      @used_names = []
    end

    def get_variable(name, dtype: nil, shape: nil, initializer: nil, trainable: true, collections: nil, validate_shape: false)
      raise TensorStream::ValueError, "validate_shape=true and initializer does not have a defined shape" if validate_shape && !shape.nil && initializer.is_a?(Tensor)

      i_var(dtype || :float32, nil, shape, self, collections: collections, name: name, initializer: initializer, trainable: trainable)
    end

    def register_name(name)
      @used_names << name unless @used_names.include?(name)
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
tensor_stream-1.0.0 lib/tensor_stream/variable_scope.rb
tensor_stream-1.0.0.pre.rc1 lib/tensor_stream/variable_scope.rb
tensor_stream-0.9.10 lib/tensor_stream/variable_scope.rb
tensor_stream-0.9.9 lib/tensor_stream/variable_scope.rb