Sha256: 94dcc6e045ac61da9f3e5bdddc5dac5c05a92d1366af5c362a718b5c08cda8a5

Contents?: true

Size: 902 Bytes

Versions: 1

Compression:

Stored size: 902 Bytes

Contents

require 'spec_helper'

describe "Basic usage" do
	before do
		@problem = Problem.new
		@parameter = SvmParameter.new
		@parameter.cache_size = 1 # mb

		# "eps is the stopping criterion (we usually use 0.00001 in nu-SVC,
		# 0.001 in others)." (from README)
		@parameter.eps = 0.001 

		@parameter.c = 10
	end

	it "has a nice API" do
		example = {11 => 0.11, 21 => 0.21, 101 => 0.99 }.to_example
		example.should == Node.features({11 => 0.11, 21 => 0.21, 101 => 0.99 })
	end

	it "is as in [PCI,217]" do
		examples = [ [1,0,1], [-1,0,-1] ].map {|ary| Node.features(ary) }
		labels = [1, -1]
		@problem.set_examples(labels, examples)

		model = Model.train(@problem, @parameter)

		pred = model.predict(Node.features(1, 1, 1))
		pred.should == 1.0

		pred = model.predict(Node.features(-1, 1, -1))
		pred.should == -1.0

		pred = model.predict(Node.features(-1, 55, -1))
		pred.should == -1.0
	end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rb-libsvm-1.0.1 spec/usage_spec.rb