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

การนับการสนับสนุนคืออะไร?


การนับจำนวนการสนับสนุนเป็นขั้นตอนในการตัดสินใจความถี่ของการปรากฏสำหรับชุดไอเท็มแต่ละรายการที่รอดจากขั้นตอนการตัดแต่งกิ่งของผู้สมัครของฟังก์ชัน apriori-gen

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

วิธีที่สองคือการแจกแจงชุดรายการที่รวมอยู่ในแต่ละธุรกรรมและต้องการให้รีเฟรชการนับการสนับสนุนของชุดรายการที่คัดเลือกเฉพาะ พิจารณาธุรกรรม t ที่มีห้ารายการ {I, 2, 3, 5 และ 6} มี (5 3) =10 ชุดขนาด 3 รวมอยู่ในรายการนี้

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

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

ตัวอย่างเช่น ให้ t :{1, 2, 3, 5 และ 6} ชุด 3 รายการทั้งหมดที่รวมอยู่ใน t ควรเริ่มต้นด้วยรายการที่ 1, 2 หรือ 3 ไม่สามารถใช้กับการสร้างชุดรายการที่ 3 ที่เริ่มต้นได้ กับข้อ 5 หรือ 6 เพราะมี 2 รายการใน t ที่มีป้ายกำกับสูงกว่าหรือเท่ากับ 5.

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

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

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

แต่ละโหนดภายในของทรีต้องการฟังก์ชันแฮชต่อไปนี้ h(p) :p mod 3 เพื่อกำหนดว่าสาขาใดของโหนดปัจจุบันจะต้องถูกติดตามต่อไป ตัวอย่างเช่น รายการที่ 1, 4 และ 7 ถูกแฮชไปยังแบรนช์เดียวกัน (เช่น แบรนช์ซ้ายสุด) เนื่องจากมีเศษเหลือที่คล้ายกันหลังจากแยกหมายเลขด้วย 3 ชุดไอเท็มที่เป็นตัวเลือกทั้งหมดจะถูกบันทึกไว้ที่โหนดปลายสุดของทรีแฮช