LearnKit
Installation
Add this line to your application's Gemfile:
gem 'learn_kit'
And then execute:
$ bundle
Or install it yourself as:
$ gem install learn_kit
K-Nearest Neighbors
Initialize classificator with data set consists from labels and features:
data_set = { label1: [[-1, -1], [-2, -1], [-3, -2]], label2: [[1, 1], [2, 1], [3, 2], [-2, -2]] }
clf = LearnKit::Knn.new(data_set: data_set)
Predict label for new feature:
clf.predict(k: 3, algorithm: 'brute', weight: 'uniform', point: [-1, -2])
k - number of nearest neighbors
algorithm - algorithm for calculation of distances, one of the [brute]
weight - method of weighted neighbors, one of the [uniform|distance]
point - new feature for prediction
Naive Bayes
Gaussian
Initialize classificator with data set consists from labels and features:
data_set = { label1: [[-1, -1], [-2, -1], [-3, -2]], label2: [[1, 1], [2, 1], [3, 2], [-2, -2]] }
clf = LearnKit::NaiveBayes::Gaussian.new(data_set: data_set)
Make fit of test data:
clf.fit
Predict label for new feature:
clf.predict([-1, -2])
Or show probability for all labels:
clf.predict_proba([-1, -2])
Calculate accuracy for test data:
clf.score