1
0
mirror of https://github.com/sjwhitworth/golearn.git synced 2025-04-26 13:49:14 +08:00
golearn/examples/averageperceptron/averageperceptionexample.go
2015-01-15 22:54:16 +00:00

35 lines
828 B
Go

package main
import (
"fmt"
base "github.com/sjwhitworth/golearn/base"
evaluation "github.com/sjwhitworth/golearn/evaluation"
perceptron "github.com/sjwhitworth/golearn/perceptron"
"math/rand"
)
func main() {
rand.Seed(4402201)
rawData, err := base.ParseCSVToInstances("../datasets/house-votes-84.csv", true)
if err != nil {
panic(err)
}
//Initialises a new AveragePerceptron classifier
cls := perceptron.NewAveragePerceptron(10, 1.2, 0.5, 0.3)
//Do a training-test split
trainData, testData := base.InstancesTrainTestSplit(rawData, 0.50)
fmt.Println(trainData)
fmt.Println(testData)
cls.Fit(trainData)
predictions := cls.Predict(testData)
// Prints precision/recall metrics
confusionMat, _ := evaluation.GetConfusionMatrix(testData, predictions)
fmt.Println(evaluation.GetSummary(confusionMat))
}