我是scikit-learn的常用用戶,我想了解一些關於SGD的「class_weight」參數的見解。什麼是class_weight參數在scikit-learn中的作用SGD
我能弄清楚,直到函數調用
plain_sgd(coef, intercept, est.loss_function,
penalty_type, alpha, C, est.l1_ratio,
dataset, n_iter, int(est.fit_intercept),
int(est.verbose), int(est.shuffle), est.random_state,
pos_weight, neg_weight,
learning_rate_type, est.eta0,
est.power_t, est.t_, intercept_decay)
https://github.com/scikit-learn/scikit-learn/blob/master/sklearn/linear_model/stochastic_gradient.py
在此之後它去sgd_fast,我不是很好的CPython的。你能否就這些問題給予一些關注。
- 我有一個偏於開發集的類,其中正面類是15k和負面類是36k。 class_weight會解決這個問題嗎?或者採取欠採樣將是一個更好的主意。我的數字越來越好,但很難解釋。
- 如果是,那麼它是如何做到的。我的意思是它應用於特徵懲罰或者它是優化函數的一個權重。我如何向外行解釋這一點?