linearclassifier
Class LinearClassifier

java.lang.Object
  extended by linearclassifier.LinearClassifier

public class LinearClassifier
extends Object

This library implements linear classification for numerical data. It accepts two labeled data sets, each element of which can contain two or more floats as data. Once trained, LinearClassifier can predict which of the two original sets any new piece of test data will fall into. LinearClassifier also includes tools for displaying data in the 2D case. See the 2D example for details:


Field Summary
 ArrayList<Float> maxs
           
 ArrayList<Float> mins
           
 ArrayList<PVector> outputScales
           
 ArrayList<ArrayList<Float>> set1
           
 ArrayList<ArrayList<Float>> set2
           
static String VERSION
           
 
Constructor Summary
LinearClassifier(PApplet parent)
           
 
Method Summary
 float dotProduct(ArrayList<Float> v1, ArrayList<Float> v2)
           
 void drawSet1()
           
 void drawSet2()
           
 ArrayList<Float> getAverage(ArrayList<ArrayList<Float>> set)
           
 PVector getCenterPoint()
           
 int getDataSize()
           
 ArrayList<Float> getScaledPoint(ArrayList<Float> p)
           
 ArrayList<Float> getScaledPoint(PVector p)
           
 ArrayList<Float> getSet1Average()
           
 ArrayList<Float> getSet2Average()
           
 PVector getUnscaledPoint(ArrayList<Float> p)
           
 PVector getUnscaledPoint(PVector p)
           
 boolean isInSet1(ArrayList<Float> p)
           
 boolean isInSet1(PVector p)
           
 boolean isInSet2(ArrayList<Float> p)
           
 boolean isInSet2(PVector p)
           
 void loadSet1(ArrayList<ArrayList<Float>> set)
           
 void loadSet2(ArrayList<ArrayList<Float>> set)
           
 PVector pToV(ArrayList<Float> p)
           
 void scaleData(ArrayList<Float> data, int min, int max)
           
 void scaleData(int min, int max)
           
 void setOutputScale(ArrayList<PVector> outputScales)
           
 void setOutputScale(float min, float max)
           
 ArrayList<Float> vToP(PVector v)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

VERSION

public static final String VERSION
See Also:
Constant Field Values

set1

public ArrayList<ArrayList<Float>> set1

set2

public ArrayList<ArrayList<Float>> set2

maxs

public ArrayList<Float> maxs

mins

public ArrayList<Float> mins

outputScales

public ArrayList<PVector> outputScales
Constructor Detail

LinearClassifier

public LinearClassifier(PApplet parent)
Method Detail

setOutputScale

public void setOutputScale(ArrayList<PVector> outputScales)

setOutputScale

public void setOutputScale(float min,
                           float max)

getDataSize

public int getDataSize()

loadSet1

public void loadSet1(ArrayList<ArrayList<Float>> set)

loadSet2

public void loadSet2(ArrayList<ArrayList<Float>> set)

drawSet1

public void drawSet1()

drawSet2

public void drawSet2()

getScaledPoint

public ArrayList<Float> getScaledPoint(PVector p)

getScaledPoint

public ArrayList<Float> getScaledPoint(ArrayList<Float> p)

getUnscaledPoint

public PVector getUnscaledPoint(ArrayList<Float> p)

getUnscaledPoint

public PVector getUnscaledPoint(PVector p)

dotProduct

public float dotProduct(ArrayList<Float> v1,
                        ArrayList<Float> v2)

getCenterPoint

public PVector getCenterPoint()

isInSet1

public boolean isInSet1(PVector p)

isInSet1

public boolean isInSet1(ArrayList<Float> p)

vToP

public ArrayList<Float> vToP(PVector v)

pToV

public PVector pToV(ArrayList<Float> p)

isInSet2

public boolean isInSet2(ArrayList<Float> p)

isInSet2

public boolean isInSet2(PVector p)

getSet1Average

public ArrayList<Float> getSet1Average()

getSet2Average

public ArrayList<Float> getSet2Average()

scaleData

public void scaleData(int min,
                      int max)

scaleData

public void scaleData(ArrayList<Float> data,
                      int min,
                      int max)

getAverage

public ArrayList<Float> getAverage(ArrayList<ArrayList<Float>> set)


Processing library LinearClassifier by Greg Borenstein. (C) 2012