Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

อธิบายว่าไลบรารี scikit-learn สามารถใช้แบ่งชุดข้อมูลเพื่อการฝึกอบรมและการทดสอบใน Python ได้อย่างไร


Scikit-learn หรือที่เรียกกันทั่วไปว่า sklearn เป็นไลบรารี่ใน Python ที่ใช้สำหรับวัตถุประสงค์ในการใช้อัลกอริธึมการเรียนรู้ของเครื่อง มีประสิทธิภาพและแข็งแกร่ง เนื่องจากมีเครื่องมือมากมายสำหรับสร้างแบบจำลองทางสถิติ

ซึ่งรวมถึงการจัดประเภท การถดถอย การจัดกลุ่ม การลดขนาด และอื่นๆ อีกมากมายด้วยความช่วยเหลือจากอินเทอร์เฟซที่ทรงพลังและเสถียรใน Python สร้างขึ้นบนไลบรารี Numpy, SciPy และ Matplotlib

ก่อนส่งข้อมูลอินพุตไปยังอัลกอริธึม Machine Learning จะต้องแบ่งออกเป็นชุดข้อมูลการฝึกอบรมและทดสอบ

เมื่อข้อมูลพอดีกับโมเดลที่เลือกแล้ว ชุดข้อมูลที่ป้อนเข้าจะได้รับการฝึกในโมเดลนี้ เมื่อการฝึกอบรมเกิดขึ้น ตัวแบบจะเรียนรู้จากข้อมูล

นอกจากนี้ยังเรียนรู้ที่จะสรุปข้อมูลใหม่ ระบบจะไม่ใช้ชุดข้อมูลทดสอบระหว่างการฝึกโมเดล

เมื่อปรับไฮเปอร์พารามิเตอร์ทั้งหมดและตั้งค่าน้ำหนักที่เหมาะสมแล้ว ชุดข้อมูลทดสอบจะถูกส่งไปยังอัลกอริธึมการเรียนรู้ของเครื่อง

นี่คือชุดข้อมูลที่ใช้ในการตรวจสอบว่าอัลกอริธึมสรุปข้อมูลใหม่ได้ดีเพียงใด มาดูกันว่าจะแยกข้อมูลโดยใช้ไลบรารี scikit-learn ได้อย่างไร

ตัวอย่าง

from sklearn.datasets import load_iris
my_data = load_iris()
X = my_data.data
y = my_data.target
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(
X, y, test_size = 0.2, random_state = 2
)
print("The dimensions of the features of training data ")
print(X_train.shape)
print("The dimensions of the features of test data ")
print(X_test.shape)
print("The dimensions of the target values of training data ")
print(y_train.shape)
print("The dimensions of the target values of test data ")
print(y_test.shape)

ผลลัพธ์

The dimensions of the features of training data
(120, 4)
The dimensions of the features of test data
(30, 4)
The dimensions of the target values of training data
(120,)
The dimensions of the target values of test data
(30,)

คำอธิบาย

  • นำเข้าแพ็คเกจที่จำเป็น
  • ชุดข้อมูลที่จำเป็นสำหรับสิ่งนี้จะถูกโหลดเข้าสู่สภาพแวดล้อมด้วย
  • คุณลักษณะและค่าเป้าหมายจะแยกออกจากชุดข้อมูล
  • ข้อมูลการฝึกอบรมและการทดสอบแบ่งออกเป็นอัตราส่วน 80 เปอร์เซ็นต์ และ 20 เปอร์เซ็นต์ตามลำดับ
  • ซึ่งหมายความว่า 20% ของข้อมูลจะถูกใช้เพื่อตรวจสอบว่าโมเดลสรุปข้อมูลใหม่ได้ดีเพียงใด
  • แยกส่วนเหล่านี้พร้อมกับขนาดของข้อมูลบนคอนโซล