怎做不下網站刷槍優(yōu)化網站的方法
scikit-learn庫學習之make_regression函數
一、簡介
make_regression
是scikit-learn庫中用于生成回歸問題數據集的函數。它主要用于創(chuàng)建合成的回歸數據集,以便在算法的開發(fā)和測試中使用。
二、語法和參數
sklearn.datasets.make_regression(n_samples=100, n_features=100, *, n_informative=10, n_targets=1, bias=0.0, effective_rank=None, tail_strength=0.5, noise=0.0, shuffle=True, coef=False, random_state=None)
n_samples
: int, 可選,樣本數量,默認值為100。n_features
: int, 可選,特征數量,默認值為100。n_informative
: int, 可選,有用特征的數量,默認值為10。n_targets
: int, 可選,目標變量的數量,默認值為1。bias
: float, 可選,偏置項,默認值為0.0。effective_rank
: int 或 None, 可選,矩陣的有效秩(生成具有指定有效秩的低秩矩陣)。tail_strength
: float, 可選,稀疏奇異值分解的尾部強度,默認值為0.5。noise
: float, 可選,噪聲的標準差,默認值為0.0。shuffle
: boolean, 可選,是否在生成樣本后對其進行洗牌,默認值為True。coef
: boolean, 可選,如果為True,則返回線性模型的系數,默認值為False。random_state
: int, RandomState instance 或 None, 可選,隨機數生成器的種子。
三、實例
3.1 生成具有默認參數的回歸數據集
import numpy as np
from sklearn.datasets import make_regression# 生成回歸數據集
X, y = make_regression()print("特征矩陣X:\n", X)
print("目標變量y:\n", y)
輸出:
特征矩陣X:[[ 0.22149882 -0.06453352 0.12052486 ... -0.82411415 0.23856925-0.16168211][-0.20101287 -0.44072967 -1.14649484 ... 0.63646684 -0.425003860.4671914 ]...[ 0.90505363 -0.53703078 0.50773971 ... 1.14990328 0.05411115-0.08363001]]
目標變量y:[-144.31924045 181.62052712 -48.9289649 ... 235.29125152223.43232493 102.79266155]
3.2 生成帶有噪聲和偏置的回歸數據集
import numpy as np
from sklearn.datasets import make_regression# 生成帶有噪聲和偏置的回歸數據集
X, y = make_regression(noise=10.0, bias=100.0)print("特征矩陣X:\n", X)
print("目標變量y:\n", y)
輸出:
特征矩陣X:[[ 1.24086241 0.00303736 1.17925455 ... -1.07069539 0.93889406-0.22232984][-0.74205332 0.65462794 0.14662052 ... -0.59564518 1.286698671.00484528]...[ 1.00952406 -0.34893754 0.04816599 ... 0.53224443 1.08944202-0.68298357]]
目標變量y:[ 97.85236613 57.67386596 143.4882752 ... -43.32816291-160.72606466 -91.79449558]
3.3 生成指定有效秩的回歸數據集
import numpy as np
from sklearn.datasets import make_regression# 生成指定有效秩的回歸數據集
X, y = make_regression(effective_rank=2)print("特征矩陣X:\n", X)
print("目標變量y:\n", y)
輸出:
特征矩陣X:[[-0.13033419 -0.11927356 -0.1261044 ... -0.11075221 -0.09502064-0.15613214][-0.12111371 -0.1146456 -0.1225812 ... -0.10441777 -0.09032011-0.14703234]...[-0.13796815 -0.12383917 -0.13535568 ... -0.11880625 -0.10313284-0.17030849]]
目標變量y:[-123.66530542 -143.25411773 -127.83807546 ... -145.23413153-131.64245155 -124.93295103]
四、注意事項
- 參數
n_samples
和n_features
決定了生成數據集的大小和維度。 n_informative
參數決定了有用特征的數量,這些特征對目標變量有顯著影響。noise
參數添加到目標變量中的噪聲,值越大,數據越不純。- 設置
random_state
參數以確保每次生成數據的一致性。 - 如果需要生成指定秩的矩陣,可以使用
effective_rank
參數。