public class QMContainer
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private java.util.ArrayList<java.lang.String> |
damagedcriteriaQM |
(package private) java.util.HashMap<java.lang.String,java.lang.Double> |
MapQualities |
static int |
NUMBER_OF_CLASSES |
private java.util.HashMap<java.lang.Integer,java.lang.String> |
QualityIdentifier |
(package private) TestRunResult |
run |
(package private) SemanticInterpreterGrid |
sGrid |
(package private) java.util.HashMap<java.lang.String,java.lang.Double> |
UnitMAXQualities |
(package private) java.util.HashMap<java.lang.String,java.lang.Double> |
UnitMINQualities |
(package private) java.util.HashMap<java.lang.String,double[][]> |
UnitQualities |
(package private) java.util.HashMap<java.lang.String,int[][]> |
UnitQualitiesClassified |
java.util.ArrayList<java.lang.String> |
UnitQualityMeasureNames |
Constructor and Description |
---|
QMContainer(TestRunResult run) |
Modifier and Type | Method and Description |
---|---|
void |
classifyUnits(java.lang.String Name)
Puts all the Values of the QM identified with "Name" in "Classes" 1-5 (strong - very weak)
|
void |
clearDamagedCriteriaList() |
double[] |
compareQualities(java.lang.String Name1,
java.lang.String Name2,
Unit[] Region,
int type)
Compares the 2 QM with each other,i.e looks through all units (only in the Region if region != NULL) and looks
for similar values at the same Units (TRY: Enlarge the search radius to a certain neighbourhood radius (1))
|
boolean |
createQualityMeasureImage(java.lang.String outputDir,
java.lang.String filename,
java.lang.String Name)
creates an image visualizing the Quality Measure "Name" of this SOM the image is saved under the given path and
name, although a prefix run_runId_ is added to the image name
|
QMConfigurationProfile |
getActualConfiguration(java.lang.String qualifier,
Unit[] units,
int type)
Returns an array with the actual identification configuration , of how the qualifier QM behaves
|
java.util.ArrayList<java.lang.String> |
getClassFileDependantQualities() |
java.lang.String |
getClassIdentifier(int c)
Returns the string representation of the given int value
FIXME: refactor this! |
int[][] |
getClassifiedUnits(java.lang.String Name)
Returns the int [] of classified units for identifier Name
|
java.util.ArrayList<Unit> |
getComparedQMRegionOccurances(java.lang.String Name1,
java.lang.String Name2,
Unit[] Region,
int type)
Returns an array of Units, witch have Intersection of QM Name1 & Name 2 with the given type of operation
|
java.lang.Double |
getMapQualities(java.lang.String Name)
Returns the map qualities of the given quality measure
|
int |
getMaximumClassifiedRegionValue(Unit[] region,
java.lang.String Name)
Returns the maximum of the selected classified Region
|
Unit[] |
getMaxUnit(java.lang.String Name,
Unit[] Area)
returns the maximal Value of the quality measure with "Name"as identifier
|
int |
getMinimumClassifiedRegionValue(Unit[] region,
java.lang.String Name)
Returns the minimum of the selected classified Region
|
Unit[] |
getMinUnit(java.lang.String Name,
Unit[] Area)
returns the minimal Value of the quality measure with "Name"as identifier
|
private SemanticNode |
getNode(int[] c)
returns the Semantic Node for given coordinates.
|
int |
getNumberOfClassifiedUnits(java.lang.String Name,
int clss)
Computes the number of classified units for the given class and identifier
|
QMConfigurationProfile |
getOriginalConfiguration(java.lang.String qualifier,
int type)
Returns an array with the original identification configuration , of how the qualifier QM should behave on
MAXIMUM / MINIMUM Value
|
java.lang.String |
getQualityIdentifier(int quality_list_index)
Returns a String Representation of the Meaning of the Position of the ArrayList Array
|
double |
getUnitMAXQualities(java.lang.String Name) |
double |
getUnitMINQualities(java.lang.String Name) |
double[][] |
getUnitQualities(java.lang.String Name) |
boolean |
hasHighDensity(Unit u)
Tests whether the Unit U is having a High Mapped Input Density.
This is made upon an assumption, we say a unit is highly dense when the average value of the first 15% of units with highest values is equal or above that value that |
boolean |
hasLowDensity(Unit u)
Returns true if the Unit has a low density
|
java.lang.Boolean |
hasMixedClasses(Unit u)
Returns whether there are mixed classes on the Unit.
|
java.lang.Boolean |
hasNeighboringEmptyUnits(Unit u)
* Returns true if 8-fold neighbourhood shows any Units with no Inputs.
|
java.lang.Boolean |
hasSingleClass(Unit u) |
java.util.ArrayList<SemanticClass> |
isOnClusterEdge(Unit u)
returns a ArrayList with all classes for witch unit u resembles a Cluster Edge Unit for those classes.
|
boolean |
isOnMapEdge(Unit u)
tests whether a unit is on the edge of the map
FIXME: this should go to GrowingLayer |
void |
putMapQualities(java.lang.String Name,
double measure) |
void |
putUnitQualities(java.lang.String Name,
double[][] units) |
void |
setsGrid(SemanticInterpreterGrid sGrid)
Sets the SemanticGrid for calculations PLEASE NOTE: only the "Master- Grid can be set here" -> wich is the Grid
over the full Map, inluding all ClassReports
|
void |
writeQualityIdentifier() |
java.util.HashMap<java.lang.String,double[][]> UnitQualities
java.util.HashMap<java.lang.String,java.lang.Double> UnitMAXQualities
java.util.HashMap<java.lang.String,java.lang.Double> UnitMINQualities
java.util.HashMap<java.lang.String,java.lang.Double> MapQualities
java.util.HashMap<java.lang.String,int[][]> UnitQualitiesClassified
public java.util.ArrayList<java.lang.String> UnitQualityMeasureNames
SemanticInterpreterGrid sGrid
private java.util.ArrayList<java.lang.String> damagedcriteriaQM
private java.util.HashMap<java.lang.Integer,java.lang.String> QualityIdentifier
TestRunResult run
public static int NUMBER_OF_CLASSES
public QMContainer(TestRunResult run)
public void putUnitQualities(java.lang.String Name, double[][] units)
public double[][] getUnitQualities(java.lang.String Name)
public void putMapQualities(java.lang.String Name, double measure)
public Unit[] getMaxUnit(java.lang.String Name, Unit[] Area)
Area
- null if whole grid is admitted, != null ifi want a Part onlypublic Unit[] getMinUnit(java.lang.String Name, Unit[] Area)
Area
- != null if i want area selection, null if whole gridpublic void classifyUnits(java.lang.String Name)
public int[][] getClassifiedUnits(java.lang.String Name)
public int getNumberOfClassifiedUnits(java.lang.String Name, int clss)
public java.lang.Double getMapQualities(java.lang.String Name)
public boolean createQualityMeasureImage(java.lang.String outputDir, java.lang.String filename, java.lang.String Name)
outputDir
- the path to the output dir where the image shall be saved (must exists, is neither checked nor
created)filename
- the name under which the image (together with the prefix run_[runId]_ ) is savedpublic double getUnitMAXQualities(java.lang.String Name)
public double getUnitMINQualities(java.lang.String Name)
public java.lang.String getClassIdentifier(int c)
public int getMaximumClassifiedRegionValue(Unit[] region, java.lang.String Name)
region
- null if whole GridName
- QM Identifierpublic int getMinimumClassifiedRegionValue(Unit[] region, java.lang.String Name)
region
- null if whole GridName
- QM Identifierpublic double[] compareQualities(java.lang.String Name1, java.lang.String Name2, Unit[] Region, int type)
type
- 1 = Max-Max, 2 = Min-Min, 3 = Max-Min, 4 = Min-Max Compares according to Min /Max Values return a
Array [0] gives the percentage of similarity, [1] gives the absolute difference in strength between
max/min 1/2, [2] the region of intersection(1-9)public java.util.ArrayList<Unit> getComparedQMRegionOccurances(java.lang.String Name1, java.lang.String Name2, Unit[] Region, int type)
public void setsGrid(SemanticInterpreterGrid sGrid)
public QMConfigurationProfile getOriginalConfiguration(java.lang.String qualifier, int type)
qualifier
- the QMtype
- 1= max, 2 = Minpublic QMConfigurationProfile getActualConfiguration(java.lang.String qualifier, Unit[] units, int type)
qualifier
- the QMunits
- the units witch are testedtype
- 1 = MAX, 2 = MINpublic boolean hasHighDensity(Unit u)
public boolean hasLowDensity(Unit u)
public java.lang.Boolean hasMixedClasses(Unit u)
public java.lang.Boolean hasSingleClass(Unit u)
public boolean isOnMapEdge(Unit u)
GrowingLayer
public java.util.ArrayList<SemanticClass> isOnClusterEdge(Unit u)
public java.lang.Boolean hasNeighboringEmptyUnits(Unit u)
GrowingLayer
private SemanticNode getNode(int[] c)
public java.lang.String getQualityIdentifier(int quality_list_index)
quality_list_index
- gives a Description to the Index of the quality List below quality_list[0] = high
Density quality_list[1] = low Density quality_list[2] = mixed classes quality_list[3] = one class
quality_list[4] = Units on Map edges quality_list[5] = Units not on Map edges quality_list[6] = Having
neighboring empty units quality_list[7] = having no neighboring empt unist quality_list[8] = Units on
Cluster edges quality_list[9] = Units in Clusters quality_list[10] = Big Distance of mapped Vectors to
Prototype vector. quality_list[11] = Small Distance of mapped Vectors to Prototype vector.
quality_list[12] = Big average Distance of mapped Vectors compared to each other. quality_list[13] =
Small average Distance of mapped Vectors compared to each other. quality_list[14] = Input Vectors
equally distributed over the Map quality_list[15] = Input Vectors not equally distributed over the Map
quality_list[16] = Intra Cluster Distances == 0, Inter Cluster Distances != 0 quality_list[17] = Intra
Cluster Distances != 0, Inter Cluster Distances == 0public java.util.ArrayList<java.lang.String> getClassFileDependantQualities()
public void clearDamagedCriteriaList()
public void writeQualityIdentifier()