public IModelDiscreteIterative <DomainType, LabelType> GenerateModelDiscrete(IDataSet <DomainType, LabelType> training_set) { ModelNearestNeighborKDTree <DomainType, DistanceType, LabelType> model = new ModelNearestNeighborKDTree <DomainType, DistanceType, LabelType>( this.DataContext, this.kdtree.Copy(), this.DistanceFunction, this.voting_system, this.neighbor_count); IList <Tuple <DomainType[], LabelType> > training_instances = new List <Tuple <DomainType[], LabelType> >(); for (int instance_index = 0; instance_index < training_set.InstanceCount; instance_index++) { training_instances.Add(new Tuple <DomainType[], LabelType>(training_set.GetInstanceFeatureData(instance_index), training_set.GetInstanceLabelData(instance_index)[0])); } model.Add(training_instances); return(model); }
public IModelDiscreteIterative <double, int> GenerateModelDiscreteIncremental(IDataSet <double, int> training_set) { ModelNearestNeighborListDefault model = new ModelNearestNeighborListDefault(training_set.DataContext); IList <Tuple <double[], int> > training_instances = new List <Tuple <double[], int> >(); for (int instance_index = 0; instance_index < training_set.InstanceCount; instance_index++) { training_instances.Add(new Tuple <double[], int>(training_set.GetInstanceFeatureData(instance_index), training_set.GetInstanceLabelData(instance_index)[0])); } model.Add(training_instances); return(model); }
public IModelDiscreteIterative <int, int> GenerateModelDiscreteIncremental(IDataSet <int, int> training_set) { //TODO check data context ModelNearestNeighborList <int, int, int> model = new ModelNearestNeighborList <int, int, int>(training_set.DataContext, new FunctionDistanceHamming()); IList <Tuple <int[], int> > training_instances = new List <Tuple <int[], int> >(); for (int instance_index = 0; instance_index < training_set.InstanceCount; instance_index++) { training_instances.Add(new Tuple <int[], int>(training_set.GetInstanceFeatureData(instance_index), training_set.GetInstanceLabelData(instance_index)[0])); } model.Add(training_instances); return(model); }
public IModelLabelIterative <double, double> GenerateModelLabelIterative(IDataSet <double, double> training_set) { //ModelNearestNeighborKDTreeDefault model = new ModelNearestNeighborKDTreeDefault(training_set.DataContext); ModelNearestNeighborKDTree <double, double, double> model = new ModelNearestNeighborKDTree <double, double, double>("ModelKNNIneterval", training_set.DataContext, new AlgebraRealFloat64(), new FunctionDistanceEuclidean()); IList <Tuple <double[], double> > training_instances = new List <Tuple <double[], double> >(); for (int instance_index = 0; instance_index < training_set.InstanceCount; instance_index++) { training_instances.Add(new Tuple <double[], double>(training_set.GetInstanceFeatureData(instance_index), training_set.GetInstanceLabelData(instance_index)[0])); } model.Add(training_instances); return(model); }