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

สตรีมคืออะไร?


STREAM เป็นอัลกอริธึมการประมาณองค์ประกอบคงที่แบบส่งผ่านแต่ละรายการที่สร้างขึ้นสำหรับปัญหา k-medians ปัญหา k-medians คือการจัดคลัสเตอร์ N จุดข้อมูลลงใน k คลัสเตอร์หรือกลุ่ม เพื่อลดข้อผิดพลาด sum squared error (SSQ) ระหว่างจุดและศูนย์กลางคลัสเตอร์ที่ได้รับมอบหมายให้น้อยที่สุด แนวคิดคือการกำหนดจุดที่คล้ายคลึงกันให้กับคลัสเตอร์เดียวกัน โดยที่จุดเหล่านี้จะแตกต่างจากจุดในกลุ่มอื่น

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

สำหรับแต่ละบัคเก็ต bi , STREAM จัดกลุ่มคะแนนของบัคเก็ตออกเป็น k คลัสเตอร์ จากนั้นจะสรุปข้อมูลบัคเก็ตโดยเก็บเฉพาะข้อมูลเกี่ยวกับศูนย์ k โดยศูนย์คลัสเตอร์แต่ละแห่งจะถ่วงน้ำหนักตามจำนวนจุดที่กำหนดให้กับคลัสเตอร์

จากนั้น STREAM จะละทิ้งคะแนน โดยเก็บเฉพาะข้อมูลศูนย์เท่านั้น เนื่องจากมีการรวบรวมศูนย์เพียงพอ ศูนย์ถ่วงน้ำหนักจึงจัดกลุ่มเพื่อสร้างกลุ่มศูนย์คลัสเตอร์ O(k) อีกกลุ่มหนึ่ง ทำซ้ำเพื่อให้ทุกระดับสูงสุด m คะแนน วิธีการนี้ส่งผลให้ผ่านครั้งเดียว O(kN)-time, O(N ε )-space (สำหรับค่าคงที่ ε <1) อัลกอริทึมการประมาณค่าคงที่สำหรับสตรีมข้อมูล k-medians

STREAM เปลี่ยนคลัสเตอร์ k-median ที่มีคุณภาพด้วยพื้นที่และเวลาที่แน่นอน อย่างไรก็ตาม มันไม่คำนึงถึงวิวัฒนาการของบันทึกหรือความละเอียดของเวลา การจัดกลุ่มสามารถถูกครอบงำโดยข้อมูลที่เก่าและล้าสมัยของสตรีม คุณลักษณะของคลัสเตอร์อาจแตกต่างกันไปตามช่วงเวลาที่ได้รับการประเมิน และขอบเขตเวลาที่วัด

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

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

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

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