@Override public AbstractMinimizerBasedParameterCostMinimizer<ResultType,EvaluatorType> clone() { @SuppressWarnings("unchecked") AbstractMinimizerBasedParameterCostMinimizer<ResultType,EvaluatorType> clone = (AbstractMinimizerBasedParameterCostMinimizer<ResultType,EvaluatorType>) super.clone(); clone.setObjectToOptimize( ObjectUtil.cloneSafe( this.getObjectToOptimize() ) ); clone.setResult( ObjectUtil.cloneSafe( this.getResult() ) ); clone.setCostFunction( ObjectUtil.cloneSafe( this.getCostFunction() ) ); return clone; }
@Override public AbstractMinimizerBasedParameterCostMinimizer<ResultType,EvaluatorType> clone() { @SuppressWarnings("unchecked") AbstractMinimizerBasedParameterCostMinimizer<ResultType,EvaluatorType> clone = (AbstractMinimizerBasedParameterCostMinimizer<ResultType,EvaluatorType>) super.clone(); clone.setObjectToOptimize( ObjectUtil.cloneSafe( this.getObjectToOptimize() ) ); clone.setResult( ObjectUtil.cloneSafe( this.getResult() ) ); clone.setCostFunction( ObjectUtil.cloneSafe( this.getCostFunction() ) ); return clone; }
@Override public AbstractMinimizerBasedParameterCostMinimizer<ResultType,EvaluatorType> clone() { @SuppressWarnings("unchecked") AbstractMinimizerBasedParameterCostMinimizer<ResultType,EvaluatorType> clone = (AbstractMinimizerBasedParameterCostMinimizer<ResultType,EvaluatorType>) super.clone(); clone.setObjectToOptimize( ObjectUtil.cloneSafe( this.getObjectToOptimize() ) ); clone.setResult( ObjectUtil.cloneSafe( this.getResult() ) ); clone.setCostFunction( ObjectUtil.cloneSafe( this.getCostFunction() ) ); return clone; }
@SuppressWarnings("unchecked") public ResultType learn( Collection<? extends InputOutputPair<? extends Vector, Vector>> data ) { this.getCostFunction().setCostParameters( data ); this.setResult( (ResultType) this.getObjectToOptimize().clone() ); Vector parameters = this.getResult().convertToVector(); this.getAlgorithm().setInitialGuess( parameters ); EvaluatorType internalFunction = this.createInternalFunction(); InputOutputPair<Vector,Double> bestParameters = this.getAlgorithm().learn( internalFunction ); this.getResult().convertFromVector( bestParameters.getInput() ); return this.getResult(); }
@SuppressWarnings("unchecked") public ResultType learn( Collection<? extends InputOutputPair<? extends Vector, Vector>> data ) { this.getCostFunction().setCostParameters( data ); this.setResult( (ResultType) this.getObjectToOptimize().clone() ); Vector parameters = this.getResult().convertToVector(); this.getAlgorithm().setInitialGuess( parameters ); EvaluatorType internalFunction = this.createInternalFunction(); InputOutputPair<Vector,Double> bestParameters = this.getAlgorithm().learn( internalFunction ); this.getResult().convertFromVector( bestParameters.getInput() ); return this.getResult(); }
@SuppressWarnings("unchecked") public ResultType learn( Collection<? extends InputOutputPair<? extends Vector, Vector>> data ) { this.getCostFunction().setCostParameters( data ); this.setResult( (ResultType) this.getObjectToOptimize().clone() ); Vector parameters = this.getResult().convertToVector(); this.getAlgorithm().setInitialGuess( parameters ); EvaluatorType internalFunction = this.createInternalFunction(); InputOutputPair<Vector,Double> bestParameters = this.getAlgorithm().learn( internalFunction ); this.getResult().convertFromVector( bestParameters.getInput() ); return this.getResult(); }