# Changeset 2594 for trunk/yat/statistics/AUC.h

Ignore:
Timestamp:
Oct 30, 2011, 3:36:17 AM (11 years ago)
Message:

improve docs for ROC and sister class AUC. closes #144

File:
1 edited

### Legend:

Unmodified
 r2119 namespace statistics { /// /// @brief Class calculating Area Under ROC Curve /// /** \brief Area Under ROC Curve Class calculates area under curve from values, Target, and possibly weights. If weights are left out, unity weights are assumed. The area under curve is defined as \f[ \frac{\sum_{i,j} I(x_i^+-x_j^-) w_i^+w_j^-} {\sum_{i,j} w_i^+w_j^-} \f] where \f{eqnarray*}{ &0; &x<0 \\ I(x) = &0.5; &x=0 \\ &1; &x>0 \f} Complexity of calculating the AUC is \f$N \log N \f$. */ class AUC : public Score { public: /// /// \brief Defaul Constructor /// \brief Default Constructor /// \param absolute if true max(AUC, 1-AUC) is used /// AUC(bool absolute=true); /// Function taking \a value, \a target (+1 or -1) and vector /// defining what samples to use. The score is equivalent to /// Mann-Whitney statistics. /// @return the area under the ROC curve. If the area is less /// than 0.5 and absolute=true, 1-area is returned. Complexity is /// \f$N\log N \f$ where \f$N \f$ is number of samples. /// /** \return area under the ROC curve. */ double score(const classifier::Target& target, const utility::VectorBase& value) const; /** Function taking values, target, weight and a vector defining what samples to use. The area is defines as \f$\frac{\sum w^+w^-}{\sum w^+w^-}\f$, where the sum in the numerator goes over all pairs where value+ is larger than value-. The denominator goes over all pairs. If target is equal to 1, sample belonges to class + otherwise sample belongs to class -. @return wheighted version of area under the ROC curve. If the area is less than 0.5 and absolute=true, 1-area is returned. Complexity is \f$N^2 \f$ where \f$N \f$ is number of samples. /** \return area under the ROC curve. */ double score(const classifier::Target& target, const classifier::DataLookupWeighted1D& value) const; /** Function taking values, target, weight and a vector defining what samples to use. The area is defines as \f$\frac{\sum w^+w^-}{\sum w^+w^-}\f$, where the sum in the numerator goes over all pairs where value+ is larger than value-. The denominator goes over all pairs. If target is equal to 1, sample belonges to class + otherwise sample belongs to class -. @return wheighted version of area under the ROC curve. If the area is less than 0.5 and absolute=true, 1-area is returned. Complexity is \f$N^2 \f$ where \f$N \f$ is number of samples. /** \return area under the ROC curve. */ double score(const classifier::Target& target, typedef std::multimap > MultiMap; double score(const MultiMap&) const; };