การจัดกลุ่มคืออะไร

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

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

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

กราฟแสดง 3 คลัสเตอร์
ภาพที่ 1: ตัวอย่างที่ไม่มีป้ายกํากับซึ่งจัดกลุ่มออกเป็น 3 คลัสเตอร์

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

การใช้งานคลัสเตอร์คืออะไร

คลัสเตอร์ใช้งานได้หลายอุตสาหกรรมหลายรูปแบบ แอปพลิเคชันทั่วไปสําหรับการจัดกลุ่มมีดังนี้

  • การแบ่งกลุ่มตลาด
  • การวิเคราะห์โซเชียลเน็ตเวิร์ก
  • การจัดกลุ่มผลการค้นหา
  • การถ่ายภาพทางการแพทย์
  • การแบ่งกลุ่มรูปภาพ
  • การตรวจจับความผิดปกติ

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

เช่น คุณอาจจัดกลุ่มรายการตามฟีเจอร์ต่างๆ ดังที่แสดงในตัวอย่างต่อไปนี้

ตัวอย่าง
  • จัดกลุ่มดาวตามความสว่าง
  • จัดกลุ่มสิ่งมีชีวิตตามข้อมูลทางยีนเข้ากับการจัดหมวดหมู่
  • จัดกลุ่มเอกสารตามหัวข้อ

จากนั้น แมชชีนเลิร์นนิงจะใช้รหัสคลัสเตอร์เพื่อลดความซับซ้อนของการประมวลผลชุดข้อมูลขนาดใหญ่ ดังนั้น เอาต์พุตของคลัสเตอร์จะเป็นข้อมูลฟีเจอร์สําหรับระบบ ML ดาวน์สตรีม

ที่ Google มีการใช้การจัดกลุ่มสําหรับการกระจายข้อมูลทั่วไป การบีบอัดข้อมูล และการคงความเป็นส่วนตัวในผลิตภัณฑ์ต่างๆ เช่น วิดีโอ YouTube, แอป Play และแทร็กเพลง

ภาพรวม

เมื่อตัวอย่างในคลัสเตอร์มีข้อมูลฟีเจอร์ไม่ครบ คุณสามารถอนุมาน ข้อมูลที่ขาดหายไปจากตัวอย่างอื่นๆ ในคลัสเตอร์ได้

ตัวอย่าง
วิดีโอที่เป็นที่นิยมน้อยกว่าอาจกระจุกตัวอยู่รวมกับวิดีโอที่ได้รับความนิยมมากกว่าเพื่อปรับปรุงวิดีโอแนะนํา

การบีบอัดข้อมูล

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

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

การเก็บรักษาความเป็นส่วนตัว

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

ตัวอย่าง
สมมติว่าคุณต้องการ เพิ่มประวัติวิดีโอสําหรับผู้ใช้ YouTube ลงในโมเดลของคุณ แทนที่จะอาศัย User-ID คุณสามารถจัดกลุ่มผู้ใช้และใช้รหัส ID แทนได้ โมเดลของคุณไม่สามารถเชื่อมโยงประวัติวิดีโอกับผู้ใช้บางรายได้ แต่ต้องเชื่อมโยงกับรหัสคลัสเตอร์ที่แทนกลุ่มผู้ใช้จํานวนมากเท่านั้น