class ConfusionFit extends QoF with Error
The ConfusionFit
class provides functions for determining the confusion
matrix as well as derived Quality of Fit (QoF) measures such as pseudo R-squared,
sst, sse, accuracy, precsion, recall, specificity and Cohen's kappa coefficient.
- See also
analytics.Fit
------------------------------------------------------------------------------ Must call the 'confusion' method before calling the other methods. ------------------------------------------------------------------------------
- Alphabetic
- By Inheritance
- ConfusionFit
- Error
- QoF
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
ConfusionFit(y: VectoI, k: Int = 2)
- y
the actual class labels
- k
the number class values
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
accuracy: Double
Compute the accuracy of the classification, i.e., the fraction of correct classifications.
Compute the accuracy of the classification, i.e., the fraction of correct classifications. Note, the correct classifications 'tp_i' are in the main diagonal of the confusion matrix.
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clearConfusion(): Unit
Clear the total cummulative confusion matrix.
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native() @HotSpotIntrinsicCandidate()
-
def
confusion(yp: VectoI, yy: VectoI = y): MatriI
Compare the actual class 'y' vector versus the predicted class 'yp' vector, returning the confusion matrix 'cmat', which for 'k = 2' is
Compare the actual class 'y' vector versus the predicted class 'yp' vector, returning the confusion matrix 'cmat', which for 'k = 2' is
yp 0 1 ---------- y 0 | tn fp | 1 | fn tp | ----------
Note: ScalaTion's confusion matrix is Actual × Predicted, but to swap the position of actual 'y' (rows) with predicted 'yp' (columns) simply use 'cmat.t', the transpose of 'cmat'.
- yp
the precicted class values/labels
- yy
the actual class values/labels for full (y) or test (y_e) dataset
- See also
www.dataschool.io/simple-guide-to-confusion-matrix-terminology
-
def
contrast(yp: VectoI, yy: VectoI = y): Unit
Contract the actual class 'yy' vector versus the predicted class 'yp' vector.
Contract the actual class 'yy' vector versus the predicted class 'yp' vector.
- yp
the predicted class values/labels
- yy
the actual class values/labels for full (y) or test (y_e) dataset
-
def
diagnose(e: VectoD, yy: VectoD, yp: VectoD, w: VectoD = null, ym: Double = noDouble): Unit
Diagnose the health of the model by computing the Quality of Fit (QoF) measures, from the error/residual vector and the predicted & actual responses.
Diagnose the health of the model by computing the Quality of Fit (QoF) measures, from the error/residual vector and the predicted & actual responses. For some models the instances may be weighted.
- e
the m-dimensional error/residual vector (yy - yp)
- yy
the actual response vector to use (test/full)
- yp
the predicted response vector (test/full)
- w
the weights on the instances (defaults to null)
- ym
the mean of the actual response vector to use (test/full)
- Definition Classes
- ConfusionFit → QoF
- See also
Regression_WLS
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
f1_measure(p: Double, r: Double): Double
Compute the F1-measure, i.e., the harmonic mean of the precision and recall.
Compute the F1-measure, i.e., the harmonic mean of the precision and recall.
- p
the precision
- r
the recall
-
def
f1v: VectoD
Compute the micro-F1-measure vector, i.e., the harmonic mean of the precision and recall.
-
def
f_(z: Double): String
Format a double value.
-
def
fit: VectoD
Return the Quality of Fit (QoF) measures corresponding to the labels given above in the 'fitLabel' method.
Return the Quality of Fit (QoF) measures corresponding to the labels given above in the 'fitLabel' method.
- Definition Classes
- ConfusionFit → QoF
-
def
fitLabel: Seq[String]
Return the labels for the Quality of Fit (QoF) measures.
Return the labels for the Quality of Fit (QoF) measures. Override to add additional QoF measures.
- Definition Classes
- ConfusionFit → QoF
-
def
fitLabel_v: Seq[String]
Return the labels for the Quality of Fit (QoF) measures.
Return the labels for the Quality of Fit (QoF) measures. Override to add additional QoF measures.
-
def
fitMap: Map[String, String]
Build a map of quality of fit measures (use of
LinkedHashMap
makes it ordered).Build a map of quality of fit measures (use of
LinkedHashMap
makes it ordered).- Definition Classes
- QoF
-
def
fitMicroMap: Map[String, VectoD]
Return the Quality of Fit (QoF) vector micor-measures, i.e., measures for each class.
-
final
def
flaw(method: String, message: String): Unit
- Definition Classes
- Error
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
help: String
Return the help string that describes the Quality of Fit (QoF) measures provided by the
ConfusionFit
class.Return the help string that describes the Quality of Fit (QoF) measures provided by the
ConfusionFit
class. Override to correspond to 'fitLabel'.- Definition Classes
- ConfusionFit → QoF
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
kappa: Double
Compute Cohen's 'kappa' coefficient that measures agreement between actual 'y' and predicted 'yp' classifications.
Compute Cohen's 'kappa' coefficient that measures agreement between actual 'y' and predicted 'yp' classifications.
- See also
en.wikipedia.org/wiki/Cohen%27s_kappa
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
p_r_s(): Unit
Compute the micro-precision, micro-recall and micro-specificity vectors which have elements for each class i in {0, 1, ...
Compute the micro-precision, micro-recall and micro-specificity vectors which have elements for each class i in {0, 1, ... k-1}. -------------------------------------------------------------------------- Precision is the fraction classified as true that are actually true. Recall (sensitivity) is the fraction of the actually true that are classified as true. Specificity is the fraction of the actually false that are classified as false. -------------------------------------------------------------------------- Note, for 'k = 2', ordinary precision 'p', recall 'r' and specificity 's' will correspond to the last elements in the 'pv', 'rv' and 'sv' micro vectors.
-
def
pseudo_rSq: Double
Compute the Efron's pseudo R-squared value.
Compute the Efron's pseudo R-squared value. Override to McFadden's, etc.
-
def
summary(b: VectoD = null, show: Boolean = false): String
Produce a summary report with diagnostics and the overall quality of fit.
Produce a summary report with diagnostics and the overall quality of fit.
- b
the parameters of the model
- show
flag indicating whether to print the summary
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
tn_fp_fn_tp(con: MatriI = cmat): (Double, Double, Double, Double)
Return the confusion matrix for 'k = 2' as a tuple (tn, fp, fn, tp).
Return the confusion matrix for 'k = 2' as a tuple (tn, fp, fn, tp).
- con
the confusion matrix (defaults to cmat)
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
def
total_cmat(): MatriI
Return a copy of the total cummulative confusion matrix 'tcmat' and clear 'tcmat'.
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
Deprecated Value Members
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] ) @Deprecated
- Deprecated