52 lines
		
	
	
		
			1016 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1016 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
var dataset = [
 | 
						|
  {a: 1, b:2, y: 2},
 | 
						|
  {a: 3, b:1, y: 4},
 | 
						|
  {a: 5, b:2, y: 6},
 | 
						|
  {a: 7, b:1, y: 8},
 | 
						|
  {a: 9, b:2, y: 0},
 | 
						|
];
 | 
						|
 | 
						|
 | 
						|
var model = ml.learn({
 | 
						|
  algorithm:ml.ML.KNN2,
 | 
						|
  data:dataset, 
 | 
						|
  features : ["a","b"],
 | 
						|
  target : 'y'
 | 
						|
});
 | 
						|
var nearest = ml.classify(model,[{ a: 3, b:1}, { a:6, b:1}]);
 | 
						|
print(nearest);
 | 
						|
 | 
						|
// Categorical datat is not supported (due to interpolation feature)!
 | 
						|
dataset = [
 | 
						|
  {a: 1, b:2, y: 'yellow'},
 | 
						|
  {a: 3, b:1, y: 'green'},
 | 
						|
  {a: 5, b:2, y: 'yellow'},
 | 
						|
  {a: 7, b:1, y: 'red'},
 | 
						|
  {a: 9, b:2, y: 'blue'},
 | 
						|
];
 | 
						|
 | 
						|
model = ml.learn({
 | 
						|
  algorithm:ml.ML.KNN2,
 | 
						|
  data:dataset, 
 | 
						|
  features : ["a","b"],
 | 
						|
  target : 'y'
 | 
						|
});
 | 
						|
nearest = ml.classify(model,[{ a: 7, b:1}, { a:4, b:1}]);
 | 
						|
print(nearest);
 | 
						|
 | 
						|
 | 
						|
var x = [[0, 0, 0], [0, 1, 1], [1, 1, 0], [2, 2, 2], [1, 2, 2], [2, 1, 2]];
 | 
						|
var y = [0, 0.2, 0.4, 1, 1.2, 1.4];
 | 
						|
 | 
						|
model = ml.learn({
 | 
						|
  algorithm:ml.ML.KNN2,
 | 
						|
  x:x, 
 | 
						|
  y:y,
 | 
						|
});
 | 
						|
print(toJSON(model).length+' Bytes')
 | 
						|
 | 
						|
var test_data =[[0, 1, 0],
 | 
						|
                [2, 2, 3]];
 | 
						|
 | 
						|
print(ml.classify(model,test_data))
 |