35 lines
		
	
	
		
			805 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			805 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
var data = load('test-data-iris.json')
 | 
						|
 | 
						|
var datac = ml.preprocess(data,'xmy',{features:['length','width','petal_length','petal_width'],
 | 
						|
                                      target:'species'});
 | 
						|
// print(datac)
 | 
						|
var labels = [
 | 
						|
  'setosa',
 | 
						|
  'versicolor',
 | 
						|
  'virginica'
 | 
						|
]
 | 
						|
var x = datac.x;
 | 
						|
var y = datac.y;
 | 
						|
 | 
						|
var t0=time()
 | 
						|
var model = ml.learn({
 | 
						|
    algorithm:ml.ML.RF,
 | 
						|
    labels:labels,
 | 
						|
    numTrees:5,
 | 
						|
    maxDepth:10,
 | 
						|
    numTries:10,
 | 
						|
    weakType:false,
 | 
						|
    x:x, 
 | 
						|
    y:y,
 | 
						|
  });
 | 
						|
  
 | 
						|
var t1=time()
 | 
						|
var result = ml.classify(model,x).map(ml.best).map(function (r,i) { r.y=y[i]; return r } )
 | 
						|
var t2=time()
 | 
						|
print(result)
 | 
						|
var correct=0,wrong=0;
 | 
						|
result.forEach(function (r) { if (r.value==r.y) correct++; else wrong++ });
 | 
						|
print('Correct='+correct+', wrong='+wrong);
 | 
						|
print(toJSON(model).length)
 | 
						|
print(t1-t0,t2-t1)
 |