Apa pentingnya random_state di train_test_split? [duplikat]
Apa pentingnya random_state = 0 di baris ini ??
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.25, random_state = 0)
Jawaban
Keadaan acak adalah parameter untuk memperbaiki cara data diambil sampelnya. Oleh karena itu, jika Anda ingin mereproduksi model yang sama dengan yang Anda pilih nilainya random_state
dan saat Anda menjalankan kode, Anda akan mendapatkan pembagian data yang sama.
Contoh Anda memiliki a list1=[1,2,3,4]
, katakanlah Anda dapat menambahkannya random_state
untuk permutasi, untuk random_state=0
list1 akan [2,3,4,1]
, untuk random_state=2
itu bisa jadi [3,1,4,2]
dll ... hal yang sama untuk X_train
X_test
dll ...
Setiap nomor acak yang Anda masukkan akan memberikan pembagian yang berbeda.
random_state
cukup setel seed ke generator acak, sehingga pemisahan train-test Anda selalu deterministik. Jika Anda tidak menetapkan benih, itu berbeda setiap saat.
dokumentasi :
random_state
:int
,RandomState
instance atauNone
, opsional (default =None
)
Jikaint
,random_state
adalah seed yang digunakan oleh generator nomor acak; JikaRandomState
misalnya,random_state
adalah generator nomor acak; JikaNone
, generator nomor acak adalahRandomState
instance yang digunakan olehnp.random
.