ประเภทเงื่อนไข

บทนี้จะเน้นไปที่conditionsประเภทต่างๆ ที่ใช้ในการสร้างแผนผังการตัดสินใจ

เงื่อนไขตามแนวแกนเทียบกับแบบเอียง

เงื่อนไข ที่ปรับแนวแกนมีเพียงฟีเจอร์เดียว เงื่อนไขแบบเฉียงเกี่ยวข้องกับหลายลักษณะ ตัวอย่างเช่น เงื่อนไขที่จัดตามแกนมีดังนี้

num_legs ≥ 2

แม้ว่าต่อไปนี้จะเป็นเงื่อนไขที่ต้องพบภายหลัง

num_legs ≥ num_fingers

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

รหัส YDF
ใน YDF ต้นไม้การตัดสินใจจะได้รับการฝึกด้วยเงื่อนไขที่จัดแนวแกนโดยค่าเริ่มต้น คุณเปิดใช้แผนผังเอียงการตัดสินใจได้ด้วยพารามิเตอร์ split_axis="SPARSE_OBLIQUE"

เงื่อนไขที่ปรับแนวแกนคือ "num_legs >= 3" เงื่อนไขแบบเอียงคือ "num_legs + น้ำหนัก * 5 >= 12"

รูปที่ 4 ตัวอย่างเงื่อนไขที่ปรับแนวแกนและเงื่อนไขแบบเอียง

 

การสร้างกราฟ 2 เงื่อนไขก่อนหน้าจะทำให้มีการแยกพื้นที่ของฟีเจอร์ต่อไปนี้

กราฟน้ำหนักเทียบกับ num_legs เงื่อนไขตามแกนจะไม่ละเว้นน้ำหนัก ดังนั้นจึงเป็นเพียงเส้นแนวตั้ง เงื่อนไขเอียงแสดงเส้นที่ลาดเอียงเชิงลบ

รูปที่ 5 การแยกพื้นที่ของฟีเจอร์สำหรับเงื่อนไขในรูปที่ 4

 

เงื่อนไขแบบไบนารีกับนอนไบนารี

เงื่อนไขที่มีผลลัพธ์ที่เป็นไปได้ 2 ผลลัพธ์ (เช่น จริงหรือเท็จ) เรียกว่าเงื่อนไขไบนารี ต้นไม้การตัดสินใจที่มีเงื่อนไขไบนารีเท่านั้นจะเรียกว่าต้นไม้การตัดสินใจแบบไบนารี

เงื่อนไขที่ไม่ใช่ไบนารีมีผลลัพธ์ที่เป็นไปได้มากกว่า 2 รายการ ดังนั้น เงื่อนไขที่ไม่ใช่ไบนารีจะมีกำลังเลือกปฏิบัติมากกว่าเงื่อนไขไบนารี การตัดสินใจที่มีเงื่อนไขที่ไม่ใช่ไบนารีอย่างน้อย 1 เงื่อนไขเรียกว่าแผนผังการตัดสินใจแบบนอนไบนารี

การเปรียบเทียบของแผนผังการตัดสินใจแบบไบนารีกับแบบไม่ใช่ไบนารี แผนผังการตัดสินใจแบบไบนารีมีเงื่อนไขไบนารี 2 เงื่อนไข แผนผังการตัดสินใจแบบไม่ใช่ไบนารีมีเงื่อนไขแบบไม่ใช่ไบนารี 1 เงื่อนไข

รูปที่ 6: แผนผังการตัดสินใจแบบไบนารีเทียบกับแบบนอนไบนารี

 

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

ประเภทเงื่อนไขที่พบบ่อยที่สุดคือเงื่อนไขเกณฑ์ซึ่งแสดงดังนี้

featurethreshold

เช่น

num_legs ≥ 2

แต่มีเงื่อนไขประเภทอื่นๆ เงื่อนไขไบนารีประเภทอื่นๆ ที่ใช้กันโดยทั่วไปมีดังนี้

 

ตารางที่ 2. เงื่อนไขไบนารีที่พบบ่อย

ชื่อ สภาพสินค้า ตัวอย่าง
เงื่อนไขเกณฑ์ $\mathrm{feature}_i \geq \mathrm{threshold}$ $\mathrm{num\_legs} \geq 2$
เงื่อนไขความเท่าเทียม $\mathrm{feature}_i = \mathrm{value}$ $\mathrm{species} = "cat"$
สภาพสินค้า $\mathrm{feature}_i \ใน \mathrm{collection}$ $\mathrm{species} \ใน \{``cat", "`dog", "bird"\}$
เงื่อนไขแบบเอียง $\sum_{i} \mathrm{weight}_i \mathrm{feature}_i \geq \mathrm{threshold}$ 5 \ \mathrm{num\_legs} + 2 \ \mathrm{num\_eyes} \geq 10$
ฟีเจอร์หายไป $\mathrm{feature}_i \mathrm{is} \mathrm{การดูแลระบบขาดหายไป}$ $\mathrm{num\_legs} \mathrm{is} \mathrm{การดูแลระบบขาดหายไป}$