sklearn邏輯回歸linear_model.logisticregression


sklearn.linear_model.logisticregression

(penlty='l2',dual=false,tol=0.0001,C=1.0,fit_intercept=true,intercept_scaling=1,class_weight=none,random_state=none,solver='liblinear',max_iter=100,multi_class='ovr',verbose=0,warm_star=false,n_jobs=1)

參數:

penalty:一個字符串,制定了正則化策略。

  • 如果為‘l2’,則優化目標函數為:
  • 如果為‘l1’,則優化目標函數為:

dual:一個布爾值。如果為true,則求解對偶形式(只是在penalty='l2',solver='liblinear'有對偶形式);

如果為false,則求原始形式。

C:一個浮點數,指定了懲罰系數的倒數。如果它的值越小,則正則化越大。

fit_intercept:一個布爾值,制定是否需要b值。如果為false,則不會計算b值(模型會假設數據已經中心化)

intercept_scaling:一個浮點數,只有當solver='liblinear'才有意義。

當采用fit_intercept時,相當於人造一個特征出來,該特征恆為1,其權重為b。

在計算正則化的時候,該人造特征也被考慮了。因此為了降低人造特征的影響,需要提供 intercept_scaling

class_weight:一個字典或者字符串'balanced'

如果為字典:則字典給出了每個分類的權重,如{class_label:weight}

如果為字符串’balanced‘:則每個分類的權重與該分類在樣品中出現的頻率成反比

如果未指定,則每個分類的權重為1

max_iter:一個整數,指定最大迭代數

random_state:一個整數或一個randomstate實例,或者none。

如果為整數,則它制定了隨機數生成器的種子

如果為randomstate實例,則指定了隨機生成器

如果為none,則使用默認的隨機數生成器

solver:一個字符串,指定了求解最優化問題的算法

’newton-cg':使用牛頓法

'lbfgs':使用l-bfgs擬牛頓法

‘liblinear’:使用liblinear

‘sag’  使用 Stochastic Average Gradient descent 算法

注:對於規模小的數據集,'liblearner'比較適用;對於規模大的數據集,'sag'比較適用。

'newton-cg'、'lbfgs'、'sag' 只處理penalty=‘12’的情況。

tol:一個浮點數,指定判斷迭代收斂與否的一個閾值

multi_class:一個字符串,指定對於多分類問題的策略

ovr :one-vs-rest策略

multinomial:直接采用多分類邏輯回歸策略

verbose:一個正數。用於開啟/關閉迭代中間輸出的日志

warm_start:一個布爾值。如果為true,使用前一次訓練結果訓練繼續,否則從頭開始

n_jobs:一個正數。指定任務並行時的cpu數量。如果-1則使用所有了用的cpu

返回值

corf_:權重向量

intercept:b值

n_iter:實際迭代次數

方法:

fix(X,y[,sample_weight]):訓練模型。
predict(X):用模型進行預測,返回預測值。
score(X,y[,sample_weight]):返回(X,y)上的預測准確率(accuracy)。
predict_log_proba(X):返回一個數組,數組的元素一次是 X 預測為各個類別的概率的對數值。 
predict_proba(X):返回一個數組,數組元素一次是 X 預測為各個類別的概率的概率值。
sparsify():將系數矩陣轉換為稀疏格式。
set_params(** params):設置此估計器的參數。
decision_function(X):預測樣本的置信度分數。
densify():將系數矩陣轉換為密集陣列格式。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM