BoostedTreesSparseCalculateBestFeatureSplit

คลาสสุดท้ายสาธารณะ BoostedTreesSparseCalculateBestFeatureSplit

คำนวณกำไรสำหรับแต่ละคุณสมบัติและส่งกลับข้อมูลการแยกที่ดีที่สุดเท่าที่เป็นไปได้สำหรับคุณสมบัตินั้น

ข้อมูลการแยกเป็นเกณฑ์ที่ดีที่สุด (รหัสที่เก็บข้อมูล) กำไรที่เพิ่มขึ้น และการสนับสนุนโหนดซ้าย/ขวาต่อโหนดสำหรับแต่ละคุณลักษณะ

อาจเป็นไปได้ว่าแต่ละฟีเจอร์ไม่สามารถแยกโหนดทั้งหมดได้ ดังนั้นรายการโหนดที่เป็นไปได้อาจแตกต่างกันระหว่างฟีเจอร์ต่างๆ ดังนั้นเราจึงส่งคืน `node_ids_list` สำหรับแต่ละฟีเจอร์ โดยมีรายการโหนดที่ฟีเจอร์นี้สามารถใช้เพื่อแยกได้

ในลักษณะนี้ เอาต์พุตคือการแยกที่ดีที่สุดต่อคุณลักษณะและต่อโหนด ดังนั้นจึงจำเป็นต้องรวมเข้าด้วยกันในภายหลังเพื่อสร้างการแยกที่ดีที่สุดสำหรับแต่ละโหนด (ในบรรดาคุณลักษณะที่เป็นไปได้ทั้งหมด)

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

คลาสที่ซ้อนกัน

ระดับ BoostedTreesSparseCalculateBestFeatureSplit.Options แอ็ตทริบิวต์ทางเลือกสำหรับ BoostedTreesSparseCalculateBestFeatureSplit

วิธีการสาธารณะ

BoostedTreesSparseCalculateBestFeatureSplit แบบคงที่
สร้าง (ขอบเขต ขอบเขต , ตัวดำเนิน การ <จำนวนเต็ม> nodeIdRange, ตัวดำเนิน การ <จำนวนเต็ม> statsSummaryIndices, ตัว ถูกดำเนิน การ <Float> statsSummaryValues, ตัวดำเนินการ <จำนวนเต็ม> statsSummaryShape, ตัวดำเนิน การ <Float> l1, ตัวดำเนินการ <Float> l2, ตัวถูก ดำเนินการ <Float> ต้นไม้ความซับซ้อน, ตัวดำเนินการ <Float > minNodeWeight, LogitsDimension แบบยาว, ตัวเลือก... ตัวเลือก)
วิธีการจากโรงงานเพื่อสร้างคลาสที่รวมการดำเนินการ BoostedTreesSparseCalculateBestFeatureSplit ใหม่
เอาต์พุต <จำนวนเต็ม>
คุณลักษณะขนาด ()
เทนเซอร์อันดับ 1 ระบุมิติฟีเจอร์ที่ดีที่สุดสำหรับแต่ละฟีเจอร์ที่จะแยกสำหรับแต่ละโหนด
เอาท์พุต <โฟลต>
กำไร ()
เทนเซอร์อันดับ 1 ระบุผลกำไรที่ดีที่สุดในการแยกแต่ละโหนด
เอาท์พุต <โฟลต>
leftNodeContribs ()
เทนเซอร์อันดับ 2 ระบุการมีส่วนร่วมของโหนดด้านซ้ายเมื่อแยกจากโหนดหลักไปยังทิศทางซ้ายตามเกณฑ์ที่กำหนดสำหรับแต่ละคุณลักษณะ
เอาต์พุต <จำนวนเต็ม>
รหัสโหนด ()
เทนเซอร์อันดับ 1 ระบุรหัสโหนดที่เป็นไปได้ที่สามารถแยกได้
เอาท์พุต <โฟลต>
rightNodeContribs ()
เทนเซอร์อันดับ 2 ที่มีรูปร่าง/เงื่อนไขเหมือนกับ left_node_contribs_list แต่เพียงว่าค่านั้นมีไว้สำหรับโหนดที่ถูกต้อง
BoostedTreesSparseCalculateBestFeatureSplit.Options แบบคงที่
splitType (สตริง splitType)
เอาท์พุต <สตริง>
splitWithDefaultDirections ()
เทนเซอร์อันดับ 1 ที่ระบุทิศทางที่จะไปหากข้อมูลหายไป
เอาต์พุต <จำนวนเต็ม>
เกณฑ์ ()
เทนเซอร์อันดับ 1 ระบุรหัสบัคเก็ตที่จะเปรียบเทียบกับ (เป็นเกณฑ์) สำหรับการแยกในแต่ละโหนด

วิธีการสืบทอด

วิธีการสาธารณะ

BoostedTreesSparseCalculateBestFeatureSplit สาธารณะ สร้าง (ขอบเขต ขอบเขต , ตัวดำเนิน การ <Integer> nodeIdRange, ตัวดำเนิน การ <Integer> statsSummaryIndices, ตัว ดำเนิน การ <Float> statsSummaryValues, ตัว ดำเนิน การ <Integer> statsSummaryShape, ตัวดำเนิน การ <Float> l1, ตัวดำเนินการ <Float> l2, ตัวถูก ดำเนินการ <Float > ต้นไม้ความซับซ้อน ตัวดำเนินการ <Float> minNodeWeight, LogitsDimension แบบยาว, ตัวเลือก... ตัวเลือก)

วิธีการจากโรงงานเพื่อสร้างคลาสที่รวมการดำเนินการ BoostedTreesSparseCalculateBestFeatureSplit ใหม่

พารามิเตอร์
ขอบเขต ขอบเขตปัจจุบัน
nodeIdRange เทนเซอร์อันดับ 1 (รูปร่าง=[2]) เพื่อระบุช่วง [แรก, สุดท้าย) ของรหัสโหนดที่จะประมวลผลภายใน `stats_summary_list` โหนดจะถูกวนซ้ำระหว่างสองโหนดที่ระบุโดยเทนเซอร์ เช่นเดียวกับ `สำหรับ node_id ในช่วง (node_id_range[0], node_id_range[1])` (โปรดทราบว่าดัชนีสุดท้าย node_id_range[1] เป็นดัชนีเฉพาะ)
สถิติสรุปดัชนี เทนเซอร์ int64 อันดับ 2 ที่มีรูปร่างหนาแน่น [N, 4] (N ระบุจำนวนค่าที่ไม่ใช่ศูนย์) สำหรับการสรุปสถิติสะสม (การไล่ระดับสี/เฮสเซียน) ต่อโหนดต่อที่เก็บข้อมูลสำหรับแต่ละคุณลักษณะ มิติข้อมูลที่สองประกอบด้วยรหัสโหนด มิติคุณลักษณะ รหัสบัคเก็ต และค่าสถิติ stats dim คือผลรวมของมิติ logits และมิติ hessian มิติ hessian อาจเป็นมิติ logits หากใช้ hessian แบบทแยงมุม หรือบันทึกมิติ ^2 หากใช้ hessian แบบเต็ม
ค่าสถิติสรุป เทนเซอร์โฟลตอันดับ 1 ที่มีรูปร่างหนาแน่น [N] (N ระบุจำนวนค่าที่ไม่ใช่ศูนย์) ซึ่งระบุค่าสำหรับแต่ละองค์ประกอบใน summary_indices
สถิติสรุปรูปร่าง เทนเซอร์โฟลตอันดับ 1 ที่มีรูปร่างหนาแน่น [4] ซึ่งระบุรูปร่างที่หนาแน่นของเทนเซอร์แบบเบาบาง ซึ่งก็คือ [โหนดต้นไม้จำนวน ขนาดคุณลักษณะ ถังข้อมูลจำนวน สถิติสลัว]
l1 ปัจจัยการทำให้เป็นมาตรฐาน l1 ต่อน้ำหนักใบไม้ ตามตัวอย่าง
l2 ปัจจัยการทำให้เป็นมาตรฐาน l2 ต่อน้ำหนักใบ ตามตัวอย่าง
ต้นไม้ความซับซ้อน การปรับอัตราขยายต่อใบ
minNodeWeight ค่าเฉลี่ยขั้นต่ำของ hessians ในโหนดก่อนที่จะจำเป็นสำหรับโหนดที่จะพิจารณาการแยก
บันทึกมิติข้อมูล มิติของ logit เช่น จำนวนคลาส
ตัวเลือก มีค่าแอตทริบิวต์ทางเลือก
การส่งคืน
  • อินสแตนซ์ใหม่ของ BoostedTreesSparseCalculateBestFeatureSplit

สาธารณะ เอาท์พุท <จำนวนเต็ม> คุณลักษณะขนาด ()

เทนเซอร์อันดับ 1 ระบุมิติฟีเจอร์ที่ดีที่สุดสำหรับแต่ละฟีเจอร์ที่จะแยกสำหรับแต่ละโหนด

ผลผลิต สาธารณะ <Float> ได้รับ ()

เทนเซอร์อันดับ 1 ระบุผลกำไรที่ดีที่สุดในการแยกแต่ละโหนด

เอาท์พุท สาธารณะ <Float> leftNodeContribs ()

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

สาธารณะ ออก <จำนวนเต็ม> nodeIds ()

เทนเซอร์อันดับ 1 ระบุรหัสโหนดที่เป็นไปได้ที่สามารถแยกได้

เอาท์พุท สาธารณะ <Float> rightNodeContribs ()

เทนเซอร์อันดับ 2 ที่มีรูปร่าง/เงื่อนไขเหมือนกับ left_node_contribs_list แต่เพียงว่าค่านั้นมีไว้สำหรับโหนดที่ถูกต้อง

BoostedTreesSparseCalculateBestFeatureSplit.Options สาธารณะแบบคงที่ ( String splitType)

พารามิเตอร์
แยกประเภท สตริงที่ระบุว่า Op นี้ควรทำการแยกความไม่เท่าเทียมกันหรือการแยกความเท่าเทียมกัน

เอาท์ พุท สาธารณะ <String> splitWithDefaultDirections ()

เทนเซอร์อันดับ 1 ที่ระบุทิศทางที่จะไปหากข้อมูลหายไป อสมการทางซ้ายที่เป็นค่าเริ่มต้นจะส่งกลับ 0 อสมการทางขวาที่เป็นค่าเริ่มต้นจะส่งกลับ 1 ความเท่าเทียมทางขวาที่เป็นค่าเริ่มต้นจะส่งกลับ 2

เกณฑ์ เอาท์พุต สาธารณะ <จำนวนเต็ม> ()

เทนเซอร์อันดับ 1 ระบุรหัสบัคเก็ตที่จะเปรียบเทียบกับ (เป็นเกณฑ์) สำหรับการแยกในแต่ละโหนด