コード例 #1
0
 public Sequence(IReadOnlyList <IGraphData> data, IMiniBatch miniBatch, MiniBatchSequenceType sequenceType, int sequenceIndex)
 {
     _data          = data;
     _miniBatch     = miniBatch;
     _sequenceType  = sequenceType;
     _sequenceIndex = sequenceIndex;
 }
コード例 #2
0
 public SingleRowDataSource(float[] data, bool isSequential, MiniBatchSequenceType sequenceType, int sequenceIndex)
 {
     _data          = data;
     _sequenceIndex = sequenceIndex;
     _isSequential  = isSequential;
     _sequenceType  = sequenceType;
 }
コード例 #3
0
 public SingleRowMiniBatch(IDataSource dataSource, IGraphData data, bool isSequential,
                           MiniBatchSequenceType sequenceType, int sequenceIndex)
 {
     CurrentSequence = new Sequence(new[] { data }, this, sequenceType, sequenceIndex);
     DataSource      = dataSource;
     IsSequential    = isSequential;
 }
コード例 #4
0
 public Sequence(IReadOnlyList <IGraphData> data, IMiniBatch miniBatch, MiniBatchSequenceType sequenceType, int sequenceIndex)
 {
     Input         = data;
     MiniBatch     = miniBatch;
     Type          = sequenceType;
     SequenceIndex = sequenceIndex;
 }
コード例 #5
0
 public void Add(MiniBatchSequenceType type, IReadOnlyList <IGraphData> input, IGraphData output)
 {
     _sequence.Add(new Sequence {
         Input         = input,
         Target        = output,
         SequenceIndex = _sequence.Count,
         Type          = type,
         MiniBatch     = this
     });
 }
コード例 #6
0
        public ExecutionResult ExecuteSequential(int sequenceIndex, float[] input,
                                                 IExecutionContext executionContext, MiniBatchSequenceType sequenceType)
        {
            _lap.PushLayer();
            _dataSource = new SingleRowDataSource(input, true, sequenceType, sequenceIndex);
            var provider = new MiniBatchProvider(_dataSource, _lap.IsStochastic);

            executionContext.Add(provider.GetMiniBatches(1, mb => _Execute(executionContext, mb)));
            IGraphOperation operation;

            while ((operation = executionContext.GetNextOperation()) != null)
            {
                operation.Execute(executionContext);
                _ClearContextList();
            }

            var ret = _GetResults().Single();

            _lap.PopLayer();
            _dataSource = null;
            return(ret);
        }
コード例 #7
0
 public MiniBatch(IDataSource dataSource, IGraphData data, bool isSequential, MiniBatchSequenceType sequenceType, int sequenceIndex)
 {
     _sequence     = new Sequence(new[] { data }, this, sequenceType, sequenceIndex);
     _dataSource   = dataSource;
     _isSequential = isSequential;
 }