ห้องสมุดเพื่อนร่วมงานของเครื่องเรียนรู้คุณสมบัติด้านวิศวกรรมและการเลือกสำหรับแบบจำลองที่อธิบายได้: หลักสูตรที่สองสำหรับนักวิทยาศาสตร์ด้านข้อมูล
โมดูล MetaheuristicsFs ช่วยในการระบุการรวมกันของคุณสมบัติที่ให้ผลลัพธ์ที่ดีที่สุด กระบวนการค้นหาชุดค่าผสมที่ดีที่สุดเรียกว่า 'การเลือกคุณสมบัติ' ห้องสมุดนี้ใช้อัลกอริธึมที่ใช้ metaheuristic เช่นอัลกอริทึมทางพันธุกรรมการหลอมจำลองการเพิ่มประสิทธิภาพอาณานิคมมดและการเพิ่มประสิทธิภาพฝูงอนุภาคเพื่อทำการเลือกคุณสมบัติ
พารามิเตอร์การเรียนรู้ของเครื่อง: สิ่งเหล่านี้เป็นเรื่องธรรมดาสำหรับอัลกอริทึมทั้งหมด
columns_list : ชื่อคอลัมน์แสดงอยู่ใน X_TRAIN_DATAFRAME และ X_TEST ซึ่งจะใช้เป็นรายการอินพุตสำหรับการค้นหารายการคุณสมบัติที่ดีที่สุด
data_dict : การฝึกอบรม X และ Y และข้อมูลทดสอบที่มีให้ในรูปแบบพจนานุกรม ด้านล่างเป็นตัวอย่างของข้อมูลการตรวจสอบข้าม 5 พับด้วยปุ่ม {0: {'x_train': x_train_dataframe, 'y_train': y_train_array, 'x_test': x_test_dataframe, 'y_test': y_test_array} 1: {'x_train': x_train_dataframe, 'y_train': y_train_array, 'x_test': x_test_dataframe, 'y_test': y_test_array}, 2: {'x_train': x_train_dataframe, 'y_train': y_train_array, 'x_test': x_test_dataframe, 'y_test': y_test_array}, 3: {'x_train': x_train_dataframe, 'y_train': y_train_array, 'x_test': x_test_dataframe, 'y_test': y_test_array}, 4: {'x_train': x_train_dataframe, 'y_train': y_train_array, 'x_test': x_test_dataframe, 'y_test': y_test_array}}}
หากคุณมีข้อมูลรถไฟและทดสอบเท่านั้นและไม่ต้องการทำการตรวจสอบข้ามให้ใช้รูปแบบพจนานุกรมด้านบนด้วยคีย์เดียวเท่านั้น
use_validation_data : ไม่ว่าคุณต้องการใช้ข้อมูลการตรวจสอบความถูกต้องเป็นบูลีนจริงหรือเท็จ ค่าเริ่มต้นเป็นจริง หากเป็นเท็จผู้ใช้ไม่จำเป็นต้องให้ x_validation_dataframe และ y_validation_dataframe
x_validation_dataframe : DataFrame มีคุณสมบัติของชุดข้อมูล Validatoin ค่าเริ่มต้นคือ Pandas DataFrame เปล่า
y_validation_dataframe : DataFrame ที่มีตัวแปรตามตัวแปรของชุดข้อมูลการตรวจสอบความถูกต้อง ค่าเริ่มต้นคือ Pandas DataFrame เปล่า
model : โมเดลวัตถุ มันควรมี. ฟิตและ. การทำนายแอตทริบิวต์
cost_function_improvement : วัตถุประสงค์คือการเพิ่มขึ้นหรือลดต้นทุนในระหว่างการทำซ้ำครั้งต่อไป สำหรับการถดถอยควร 'ลดลง' และสำหรับการจำแนกประเภทควรเป็น 'เพิ่ม'
cost_function : ฟังก์ชั่นต้นทุนสำหรับการค้นหาค่าใช้จ่ายระหว่างค่าจริงและค่าที่คาดการณ์ขึ้นอยู่กับปัญหาการถดถอยหรือการจำแนกประเภท ฟังก์ชั่นต้นทุนควรยอมรับ 'จริง' และ 'คาดการณ์' เป็นอาร์เรย์และค่าใช้จ่ายในการส่งคืนสำหรับทั้งคู่
average : เฉลี่ยที่จะใช้ สิ่งนี้มีประโยชน์สำหรับการวัด clasification เช่น 'f1_score', 'jaccard_score', 'fbeta_score', 'precision_score', 'dearch_score' และ 'ROC_AUC_SCORE'
พารามิเตอร์อัลกอริทึมทางพันธุกรรม (GeneticalGorithMFs) พารามิเตอร์
generations : จำนวนรุ่นที่จะเรียกใช้อัลกอริทึมทางพันธุกรรม 100 เป็น Deafult
population : จำนวนโครโมโซมแต่ละตัว 50 เป็นค่าเริ่มต้น ควรเก็บไว้เป็นจำนวนต่ำหากจำนวนการเปลี่ยนแปลงที่เป็นไปได้และการรวมกันของชุดคุณสมบัติมีขนาดเล็ก
prob_crossover : ความน่าจะเป็นของครอสโอเวอร์ 0.9 เป็นค่าเริ่มต้น
prob_mutation : ความน่าจะเป็นของการกลายพันธุ์ 0.1 เป็นค่าเริ่มต้น
run_time : จำนวนนาทีในการรันอัลกอริทึม นี่คือการตรวจสอบระหว่างรุ่น ในช่วงเริ่มต้นของแต่ละรุ่นจะมีการตรวจสอบหากรันไทม์เกินเวลาที่จัดสรร หากเวลาดำเนินการกรณีเกินขีด จำกัด ที่ให้ผลลัพธ์ที่ดีที่สุดจากรุ่นที่ดำเนินการจนถึงขณะนี้เป็นเอาต์พุต ค่าเริ่มต้นคือ 2 ชั่วโมง คือ 120 นาที
พารามิเตอร์การเลือกคุณลักษณะการหลอม (SimulatedAncealingFs)
temperature : อุณหภูมิเริ่มต้นสำหรับการหลอม ค่าเริ่มต้นคือ 1500
iterations : จำนวนครั้งที่จำลองการหลอมจำลองจะค้นหาวิธีแก้ปัญหา ค่าเริ่มต้นคือ 100
n_perturb : จำนวนชุดคุณลักษณะเวลาจะถูกรบกวนในการทำซ้ำ ค่าเริ่มต้นคือ 1
n_features_percent_perturb : เปอร์เซ็นต์ของคุณสมบัติที่จะถูกรบกวนในระหว่างการก่อกวนแต่ละครั้ง ค่าอยู่ระหว่าง 1 ถึง 100
alpha : ปัจจัยการลดอุณหภูมิ ค่าเริ่มต้นคือ 0.9
run_time : จำนวนนาทีในการรันอัลกอริทึม นี่คือการตรวจสอบระหว่างรุ่น ในช่วงเริ่มต้นของแต่ละรุ่นจะมีการตรวจสอบหากรันไทม์เกินเวลาที่จัดสรร หากเวลาดำเนินการกรณีเกินขีด จำกัด ที่ให้ผลลัพธ์ที่ดีที่สุดจากรุ่นที่ดำเนินการจนถึงขณะนี้เป็นเอาต์พุต ค่าเริ่มต้นคือ 2 ชั่วโมง คือ 120 นาที
พารามิเตอร์การเพิ่มประสิทธิภาพของแอนอาณานิคม (AntcolonyOptimizationFs) พารามิเตอร์
iterations : จำนวนครั้งที่การเพิ่มประสิทธิภาพของอาณานิคมมดจะค้นหาวิธีแก้ปัญหา ค่าเริ่มต้นคือ 100
N_ants : จำนวนมดในการวนซ้ำแต่ละครั้ง ค่าเริ่มต้นคือ 100
evaporation_rate : อัตราการระเหย ค่าอยู่ระหว่าง 0 ถึง 1 ถ้ามีขนาดใหญ่เกินไปโอกาสที่จะสูงขึ้นในการหา Optima ทั่วโลก แต่มีราคาแพงในการคำนวณ หากอยู่ในระดับต่ำโอกาสในการค้นหา Optima ทั่วโลกจะน้อยลง ค่าเริ่มต้นจะถูกเก็บไว้เป็น 0.8
Q : ค่าสัมประสิทธิ์ฟีโรเมีนอัพเดต ค่าระหว่าง 0 ถึง 1 มันมีผลต่อความเร็วการบรรจบกัน หากมีขนาดใหญ่ ACO จะติดอยู่ที่ Optima ในท้องถิ่น ค่าเริ่มต้นจะถูกเก็บไว้เป็น 0.2
run_time : จำนวนนาทีในการรันอัลกอริทึม นี่คือการตรวจสอบระหว่างรุ่น ในช่วงเริ่มต้นของแต่ละรุ่นจะมีการตรวจสอบหากรันไทม์เกินเวลาที่จัดสรร หากเวลาดำเนินการกรณีเกินขีด จำกัด ที่ให้ผลลัพธ์ที่ดีที่สุดจากรุ่นที่ดำเนินการจนถึงขณะนี้เป็นเอาต์พุต ค่าเริ่มต้นคือ 2 ชั่วโมง คือ 120 นาที
พารามิเตอร์การเพิ่มประสิทธิภาพของอนุภาค
iterations : จำนวนครั้งที่การเพิ่มประสิทธิภาพฝูงอนุภาคจะค้นหาวิธีแก้ปัญหา ค่าเริ่มต้นคือ 100
swarmSize : ขนาดของฝูงในการทำซ้ำแต่ละครั้ง ค่าเริ่มต้นคือ 100
run_time : จำนวนนาทีในการรันอัลกอริทึม นี่คือการตรวจสอบระหว่างรุ่น ในช่วงเริ่มต้นของแต่ละรุ่นจะมีการตรวจสอบหากรันไทม์เกินเวลาที่จัดสรร หากเวลาดำเนินการกรณีเกินขีด จำกัด ที่ให้ผลลัพธ์ที่ดีที่สุดจากรุ่นที่ดำเนินการจนถึงขณะนี้เป็นเอาต์พุต ค่าเริ่มต้นคือ 2 ชั่วโมง คือ 120 นาที
Md Azimul Haque (2022) คุณลักษณะทางวิศวกรรมและการเลือกสำหรับแบบจำลองที่อธิบายได้: หลักสูตรที่สองสำหรับนักวิทยาศาสตร์ด้านข้อมูล Lulu Press, Inc.
pip install MetaHeuristicsFS