OpenCV 4.12.0
開源計算機視覺
載入中...
搜尋中...
無匹配項
cv::ml::LogisticRegression 類參考抽象

實現邏輯迴歸分類器。 更多...

#include <opencv2/ml.hpp>

cv::ml::LogisticRegression 協作圖

公共型別

列舉  方法 {
  BATCH = 0 ,
  MINI_BATCH = 1
}
 訓練方法。 更多...
 
列舉  RegKinds {
  REG_DISABLE = -1 ,
  REG_L1 = 0 ,
  REG_L2 = 1
}
 正則化型別。 更多...
 
- 繼承自 cv::ml::StatModel 的公共型別
列舉  標誌 {
  UPDATE_MODEL = 1 ,
  RAW_OUTPUT =1 ,
  COMPRESSED_INPUT =2 ,
  PREPROCESSED_INPUT =4
}
 

公共成員函式

virtual Mat get_learnt_thetas () const =0
 此函式返回按行排列的已訓練引數。
 
virtual int getIterations () const =0
 
virtual double getLearningRate () const =0
 
virtual int getMiniBatchSize () const =0
 
virtual int getRegularization () const =0
 
virtual TermCriteria getTermCriteria () const =0
 
virtual int getTrainMethod () const =0
 
virtual float predict (InputArray samples, OutputArray results=noArray(), int flags=0) const CV_OVERRIDE=0
 預測輸入樣本的響應並返回 float 型別。
 
virtual void setIterations (int val)=0
 
virtual void setLearningRate (double val)=0
 
virtual void setMiniBatchSize (int val)=0
 
virtual void setRegularization (int val)=0
 
virtual void setTermCriteria (TermCriteria val)=0
 
virtual void setTrainMethod (int val)=0
 
- 繼承自 cv::ml::StatModel 的公共成員函式
virtual float calcError (const Ptr< TrainData > &data, bool test, OutputArray resp) const
 計算訓練或測試資料集上的誤差。
 
virtual bool empty () const CV_OVERRIDE
 如果 演算法 為空(例如,在最開始或讀取不成功後),則返回 true。
 
virtual int getVarCount () const =0
 返回訓練樣本中變數的數量。
 
virtual bool isClassifier () const =0
 如果模型是分類器,則返回 true。
 
virtual bool isTrained () const =0
 如果模型已訓練,則返回 true。
 
virtual bool train (const Ptr< TrainData > &trainData, int flags=0)
 訓練統計模型。
 
virtual bool train (InputArray samples, int layout, InputArray responses)
 訓練統計模型。
 
- 繼承自 cv::Algorithm 的公共成員函式
 Algorithm ()
 
virtual ~Algorithm ()
 
virtual void clear ()
 清除演算法狀態。
 
virtual String getDefaultName () const
 
virtual void read (const FileNode &fn)
 從檔案儲存中讀取演算法引數。
 
virtual void save (const String &filename) const
 
void write (const Ptr< FileStorage > &fs, const String &name=String()) const
 
virtual void write (FileStorage &fs) const
 將演算法引數儲存到檔案儲存中。
 
void write (FileStorage &fs, const String &name) const
 

靜態公共成員函式

static Ptr< LogisticRegressioncreate ()
 建立空模型。
 
static Ptr< LogisticRegressionload (const String &filepath, const String &nodeName=String())
 從檔案中載入並建立一個序列化的 LogisticRegression
 
- 繼承自 cv::ml::StatModel 的靜態公共成員函式
template<typename _Tp >
static Ptr< _Tptrain (const Ptr< TrainData > &data, int flags=0)
 使用預設引數建立並訓練模型。
 
- 繼承自 cv::Algorithm 的靜態公共成員函式
template<typename _Tp >
static Ptr< _Tpload (const String &filename, const String &objname=String())
 從檔案中載入演算法。
 
template<typename _Tp >
static Ptr< _TploadFromString (const String &strModel, const String &objname=String())
 從字串載入演算法。
 
template<typename _Tp >
static Ptr< _Tpread (const FileNode &fn)
 從檔案節點讀取演算法。
 

附加繼承成員

- 繼承自 cv::Algorithm 的保護成員函式
void writeFormat (FileStorage &fs) const
 

詳細描述

實現 Logistic 迴歸分類器。

另請參見
邏輯迴歸

成員列舉文件

◆ 方法

訓練方法。

列舉器
BATCH 
MINI_BATCH 

使用此方法時,將 MiniBatchSize 設定為正整數。

◆ RegKinds

正則化型別。

列舉器
REG_DISABLE 

正則化已停用。

REG_L1 

L1 範數

REG_L2 

L2 範數

成員函式文件

◆ create()

static Ptr< LogisticRegression > cv::ml::LogisticRegression::create ( )
static
Python
cv.ml.LogisticRegression.create() -> retval
cv.ml.LogisticRegression_create() -> retval

建立空模型。

建立帶有給定引數的邏輯迴歸模型。

◆ get_learnt_thetas()

virtual Mat cv::ml::LogisticRegression::get_learnt_thetas ( ) const
純虛擬函式
Python
cv.ml.LogisticRegression.get_learnt_thetas() -> retval

此函式返回按行排列的已訓練引數。

對於二分類問題,它返回一個行矩陣。它返回邏輯迴歸的已學習引數,型別為 CV_32F 的矩陣。

◆ getIterations()

virtual int cv::ml::LogisticRegression::getIterations ( ) const
純虛擬函式
Python
cv.ml.LogisticRegression.getIterations() -> retval

Number of iterations.

另請參見
setIterations

◆ getLearningRate()

virtual double cv::ml::LogisticRegression::getLearningRate ( ) const
純虛擬函式
Python
cv.ml.LogisticRegression.getLearningRate() -> retval

學習率。

另請參見
setLearningRate

◆ getMiniBatchSize()

virtual int cv::ml::LogisticRegression::getMiniBatchSize ( ) const
純虛擬函式
Python
cv.ml.LogisticRegression.getMiniBatchSize() -> retval

指定在 Mini-Batch 梯度下降的每個步驟中使用的訓練樣本數量。僅在使用 LogisticRegression::MINI_BATCH 訓練演算法時使用。其值必須小於訓練樣本總數。

另請參見
setMiniBatchSize

◆ getRegularization()

virtual int cv::ml::LogisticRegression::getRegularization ( ) const
純虛擬函式
Python
cv.ml.LogisticRegression.getRegularization() -> retval

要應用的正則化型別。參見 LogisticRegression::RegKinds

另請參見
setRegularization

◆ getTermCriteria()

virtual TermCriteria cv::ml::LogisticRegression::getTermCriteria ( ) const
純虛擬函式
Python
cv.ml.LogisticRegression.getTermCriteria() -> retval

演算法的終止條件。

另請參見
setTermCriteria

◆ getTrainMethod()

virtual int cv::ml::LogisticRegression::getTrainMethod ( ) const
純虛擬函式
Python
cv.ml.LogisticRegression.getTrainMethod() -> retval

使用的訓練方法型別。參見 LogisticRegression::Methods

另請參見
setTrainMethod

◆ load()

static Ptr< LogisticRegression > cv::ml::LogisticRegression::load ( const String & filepath,
const String & nodeName = String() )
static
Python
cv.ml.LogisticRegression.load(filepath[, nodeName]) -> retval
cv.ml.LogisticRegression_load(filepath[, nodeName]) -> retval

從檔案中載入並建立一個序列化的 LogisticRegression

使用 LogisticRegression::saveLogisticRegression 序列化並存儲到磁碟。透過呼叫此函式並提供檔案路徑,可以再次從該檔案載入 LogisticRegression。可以選擇指定包含分類器的檔案的節點

引數
filepath序列化 LogisticRegression 的路徑
nodeName包含分類器的節點的名稱

◆ predict()

virtual float cv::ml::LogisticRegression::predict ( InputArray samples,
OutputArray results = noArray(),
int flags = 0 ) const
純虛擬函式
Python
cv.ml.LogisticRegression.predict(samples[, results[, flags]]) -> retval, results

預測輸入樣本的響應並返回 float 型別。

引數
samples預測演算法的輸入資料。矩陣 [m x n],其中每行包含一個被分類物件的變數(特徵)。資料型別應為 CV_32F。
結果預測標籤作為 CV_32S 型別的列矩陣。
flags未使用。

實現 cv::ml::StatModel

此函式的呼叫圖如下

◆ setIterations()

virtual void cv::ml::LogisticRegression::setIterations ( int val)
純虛擬函式
Python
cv.ml.LogisticRegression.setIterations(val) ->

另請參見
getIterations

◆ setLearningRate()

virtual void cv::ml::LogisticRegression::setLearningRate ( double val)
純虛擬函式
Python
cv.ml.LogisticRegression.setLearningRate(val) ->

另請參見
getLearningRate

◆ setMiniBatchSize()

virtual void cv::ml::LogisticRegression::setMiniBatchSize ( int val)
純虛擬函式
Python
cv.ml.LogisticRegression.setMiniBatchSize(val) ->

另請參見
getMiniBatchSize

◆ setRegularization()

virtual void cv::ml::LogisticRegression::setRegularization ( int val)
純虛擬函式
Python
cv.ml.LogisticRegression.setRegularization(val) ->

另請參見
getRegularization

◆ setTermCriteria()

virtual void cv::ml::LogisticRegression::setTermCriteria ( TermCriteria val)
純虛擬函式
Python
cv.ml.LogisticRegression.setTermCriteria(val) ->

另請參見
getTermCriteria

◆ setTrainMethod()

virtual void cv::ml::LogisticRegression::setTrainMethod ( int val)
純虛擬函式
Python
cv.ml.LogisticRegression.setTrainMethod(val) ->

另請參見
getTrainMethod

此類的文件是從以下檔案生成的