隨機梯度下降(SGD)分類器和回歸器

SGD主要應(yīng)用在大規(guī)模稀疏數(shù)據(jù)問題上,經(jīng)常用在文本分類及自然語言處理朗兵。假如數(shù)據(jù)是稀疏的膳音,該模塊的分類器可輕松解決如下問題:超過10^5 的訓(xùn)練樣本剂习、超過 10^5 的features胧奔。利用梯度來求解參數(shù)逊移。

http://scikit-learn.org/stable/supervised_learning.html#supervised-learning
再看sklearn的官網(wǎng)的時候看到這么一部分

image.png

隨機梯度下降分類器和回歸器预吆,還在奇怪龙填,隨機梯度下降難道不是一種求解參數(shù)的方法,難道可以用來做分類和回歸?問了老公岩遗,他也不清楚扇商,然后在網(wǎng)上搜搜資料,自己看看源碼里怎么說的宿礁。
原來案铺,隨機梯度下降分類器并不是一個獨立的算法,而是一系列利用隨機梯度下降求解參數(shù)的算法的集合梆靖。

SGDClassifier(分類):

入?yún)ⅲ?/p>

loss:損失函數(shù)控汉,str,default: 'hinge'返吻,默認 'hinge'姑子,表示線性SVM(linearSVM)。The possible options are 'hinge', 'log', 'modified_huber',
'squared_hinge', 'perceptron', or a regression loss: 'squared_loss', 'huber', 'epsilon_insensitive', or 'squared_epsilon_insensitive'测僵。
'log'街佑,表示邏輯回歸(logistic regression)
'modified_huber'表示另一種平滑的損失函數(shù),它帶來了對異常點和概率估計的容忍捍靠。
'squared_hinge'和hinge類似沐旨,但是它的懲罰項是平方。
'perceptron' 是感知算法使用的線性損失函數(shù)榨婆。
還有一些其他的損失函數(shù)磁携,被設(shè)計用作回歸,但是也可以用作分類良风。詳情參見SGDRegressor的相關(guān)描述颜武。

penalty:懲罰項(也就是正則化項)。str拖吼×凵希可選項為'none', 'l2', 'l1', or 'elasticnet'。默認'l2'吊档,它是線性SVM模型的標準化正則項篙议。“l(fā)1”和“elasticnet”可能會給模型(特征選擇)帶來稀疏性怠硼,而“l(fā)2”是無法實現(xiàn)的鬼贱。

alpha : float,乘以正則化項的常數(shù)香璃,默認0.0001这难,當(dāng)設(shè)置為'optimal'時,也可以用來計算學(xué)習(xí)率葡秒。

l1_ratio : float姻乓,彈性網(wǎng)絡(luò)的混合參數(shù)嵌溢,0 <= l1_ratio <= 1。當(dāng)l1_ratio=0時蹋岩,相當(dāng)于L2懲罰項赖草。l1_ratio=1時秒梳,為L1懲罰項喧半。默認0.15.

fit_intercept : bool,是否對截距進行估計蠕蚜。如果是False, 則認為數(shù)據(jù)已經(jīng)處于中心了扣囊,默認為True.

max_iter : int, optional乎折,可選。訓(xùn)練數(shù)據(jù)的最大傳遞次數(shù)(也稱為epochs)侵歇。它只會影響fit方法的行為笆檀,而不影響 partial_fit。默認為5(0.19版本)盒至。在0.21版本中酗洒,默認為1000,或者tol不是None.

tol : float or None, optional枷遂,可選樱衷。停止準則。如果非None酒唉,當(dāng)(loss > previous_loss - tol)時矩桂,迭代就會停止。默認為None(0.19版本)痪伦。在0.21版本中侄榴,默認為1e-3。

shuffle : bool, optional网沾,可選癞蚕。訓(xùn)練數(shù)據(jù)是否在每個epoch之后被重新洗牌(shuffle)默認為True。

verbose : integer, optional辉哥,可選桦山。冗余的水平。

epsilon : float醋旦,epsilon-敏感損失函數(shù)中的Epsilon恒水,僅當(dāng) loss為'huber', 'epsilon_insensitive','squared_epsilon_insensitive'時。對于'huber'來說饲齐,確定閾值對于確定預(yù)測的準確性已經(jīng)沒有那么重要了钉凌。對于'epsilon_insensitive'來說,如果它們小于這個閾值捂人,那么當(dāng)前預(yù)測和正確標簽之間的任何差異都會被忽略御雕。

n_jobs : integer, optional矢沿,可選。計算機用于OVA (One Versus All, for multi-class problems) 的計算線程數(shù)饮笛。. -1 表示 'all CPUs'. 默認1.

random_state:和其他算法一樣咨察,隨機種子论熙。

learning_rate : string, optional福青,可選。學(xué)習(xí)率脓诡。
- 'constant': eta = eta0
- 'optimal': eta = 1.0 / (alpha * (t + t0)) [default]
- 'invscaling': eta = eta0 / pow(t, power_t)

eta0 : double无午,當(dāng)learning_rate為'constant'或者'invscaling'時的初始學(xué)習(xí)率。默認值為0.0祝谚。如果learning_rate='optimal'則這個參數(shù)沒有用宪迟。

power_t : double。逆縮放學(xué)習(xí)率的指數(shù)[默認值0.5 ]

class_weight:dict(字典), {class_label: weight} or "balanced" or None, optional交惯,可選參數(shù)次泽。為class_weight擬合參數(shù)而預(yù)設(shè)。權(quán)重和類別有關(guān)系席爽。如果不給定的話意荤,所有的類別的權(quán)重都被設(shè)定為1。在"balanced" 模式下只锻,將利用y的值玖像,自動調(diào)整權(quán)重,和類別的頻率成反比齐饮。
n_samples / (n_classes * np.bincount(y))

warm_start : bool, optional捐寥,布爾型,可選祖驱,熱啟動握恳。當(dāng)設(shè)置為true時,將重用之前調(diào)用的結(jié)果來擬合作為初始化的值捺僻。否則將擦除之前調(diào)用的結(jié)果睡互。

average : bool or int, optional布爾型或int型,可選陵像。當(dāng)設(shè)置為true時就珠,計算SGD權(quán)重的均值,并將結(jié)果存儲在coef_ 屬性中醒颖。如果設(shè)置為比1大的int型妻怎,當(dāng)樣本的總數(shù)大于average設(shè)定的這個數(shù)是,求平均的過程將會開始泞歉。比如 average=10將會在10個樣本后開始平均逼侦。

可調(diào)用的屬性:

coef_ : array, shape (1, n_features) if n_classes == 2 else (n_classes,
n_features)各個feature被分配給的權(quán)重匿辩。

intercept_ : array, shape (1,) if n_classes == 2 else (n_classes,)截距,決策函數(shù)中的常數(shù)榛丢。

n_iter_ : int铲球,達到停止標準的實際迭代次數(shù)。對于多分類擬合來說晰赞,它是每一個二元擬合的最大值稼病。

loss_function_ : 具體的損失函數(shù) LossFunction

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市掖鱼,隨后出現(xiàn)的幾起案子然走,更是在濱河造成了極大的恐慌,老刑警劉巖戏挡,帶你破解...
    沈念sama閱讀 218,451評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件芍瑞,死亡現(xiàn)場離奇詭異,居然都是意外死亡褐墅,警方通過查閱死者的電腦和手機拆檬,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,172評論 3 394
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來妥凳,“玉大人竟贯,你說我怎么就攤上這事』猓” “怎么了澄耍?”我有些...
    開封第一講書人閱讀 164,782評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長晌缘。 經(jīng)常有香客問我齐莲,道長,這世上最難降的妖魔是什么磷箕? 我笑而不...
    開封第一講書人閱讀 58,709評論 1 294
  • 正文 為了忘掉前任选酗,我火速辦了婚禮,結(jié)果婚禮上岳枷,老公的妹妹穿的比我還像新娘芒填。我一直安慰自己,他們只是感情好空繁,可當(dāng)我...
    茶點故事閱讀 67,733評論 6 392
  • 文/花漫 我一把揭開白布殿衰。 她就那樣靜靜地躺著,像睡著了一般盛泡。 火紅的嫁衣襯著肌膚如雪闷祥。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,578評論 1 305
  • 那天傲诵,我揣著相機與錄音凯砍,去河邊找鬼箱硕。 笑死,一個胖子當(dāng)著我的面吹牛悟衩,可吹牛的內(nèi)容都是我干的剧罩。 我是一名探鬼主播,決...
    沈念sama閱讀 40,320評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼座泳,長吁一口氣:“原來是場噩夢啊……” “哼惠昔!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起钳榨,我...
    開封第一講書人閱讀 39,241評論 0 276
  • 序言:老撾萬榮一對情侶失蹤舰罚,失蹤者是張志新(化名)和其女友劉穎纽门,沒想到半個月后薛耻,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,686評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡赏陵,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,878評論 3 336
  • 正文 我和宋清朗相戀三年饼齿,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蝙搔。...
    茶點故事閱讀 39,992評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡缕溉,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出吃型,到底是詐尸還是另有隱情证鸥,我是刑警寧澤,帶...
    沈念sama閱讀 35,715評論 5 346
  • 正文 年R本政府宣布勤晚,位于F島的核電站枉层,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏赐写。R本人自食惡果不足惜鸟蜡,卻給世界環(huán)境...
    茶點故事閱讀 41,336評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望挺邀。 院中可真熱鬧揉忘,春花似錦、人聲如沸端铛。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,912評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽禾蚕。三九已至您朽,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間夕膀,已是汗流浹背虚倒。 一陣腳步聲響...
    開封第一講書人閱讀 33,040評論 1 270
  • 我被黑心中介騙來泰國打工美侦, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人魂奥。 一個月前我還...
    沈念sama閱讀 48,173評論 3 370
  • 正文 我出身青樓菠剩,卻偏偏與公主長得像,于是被迫代替她去往敵國和親耻煤。 傳聞我的和親對象是個殘疾皇子具壮,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,947評論 2 355

推薦閱讀更多精彩內(nèi)容