สมมติว่าคุณพยายามเรียนรู้เกี่ยวกับอะไรสักอย่าง เช่น ดนตรี วิธีการหนึ่งอาจเป็นการมองหากลุ่มหรือคอลเล็กชันที่มีความหมาย คุณอาจจัดระเบียบเพลงตามแนวเพลง ขณะที่เพื่อนๆ อาจจัดระเบียบเพลงตามทศวรรษ วิธีจัดกลุ่มรายการต่างๆ ช่วยให้คุณเข้าใจมากขึ้นเกี่ยวกับเพลงแต่ละชิ้น คุณอาจเห็นว่าตนเองสนใจดนตรีพังก์ร็อกแบบเจาะลึก และแบ่งแนวเพลงออกเป็นหลายๆ แบบหรือใช้ดนตรีจากสถานที่ต่างๆ ในทางกลับกัน เพื่อนของคุณอาจพิจารณาเพลงจากช่วงทศวรรษ 1980 และทําความเข้าใจว่าเพลงในแนวเพลงต่างๆ ในตอนนั้นได้รับอิทธิพลจากสภาพภูมิอากาศทางสังคมอย่างไร ในทั้ง 2 กรณี คุณและเพื่อนได้เรียนรู้บางอย่างที่น่าสนใจเกี่ยวกับเพลง แม้ว่าจะใช้วิธีต่างๆ กันก็ตาม
และในแมชชีนเลิร์นนิงของเรา เราก็มักจะจัดกลุ่มตัวอย่างเป็นขั้นตอนแรกเพื่อทําความเข้าใจเรื่อง (ชุดข้อมูล) ในระบบแมชชีนเลิร์นนิง การจัดกลุ่มตัวอย่างที่ไม่มีป้ายกํากับจะเรียกว่าการจัดกลุ่ม
เนื่องจากตัวอย่างไม่มีป้ายกํากับ การจัดกลุ่มจึงอาศัยแมชชีนเลิร์นนิงที่ไม่มีการควบคุมดูแล หากตัวอย่างติดป้ายกํากับ การจัดกลุ่มจะกลายเป็นการแยกประเภท หากต้องการพูดคุยรายละเอียดเพิ่มเติมเกี่ยวกับวิธีการควบคุมดูแลและไม่มีการควบคุมดูแล โปรดดู ข้อมูลเบื้องต้นเกี่ยวกับการจัดกรอบปัญหาของแมชชีนเลิร์นนิง
คุณต้องจัดกลุ่มตัวอย่างที่คล้ายกันก่อนจึงจะจัดกลุ่มตัวอย่างที่คล้ายกันได้ คุณสามารถวัดความคล้ายคลึงระหว่างตัวอย่างได้โดยการรวมข้อมูลฟีเจอร์ของตัวอย่างเข้ากับเมตริก ซึ่งเรียกว่ามาตรวัดความคล้ายคลึงกัน เมื่อตัวอย่างแต่ละรายการกําหนดโดยฟีเจอร์ 1 หรือ 2 รายการ คุณจะวัดความคล้ายคลึงกันได้อย่างง่ายดาย ตัวอย่างเช่น คุณสามารถค้นหาหนังสือที่คล้ายกันจากผู้แต่งได้ เมื่อฟีเจอร์เพิ่มขึ้น การสร้างมาตรวัดความคล้ายคลึงกันก็ซับซ้อนมากขึ้น เราจะมาดูวิธีสร้างมาตรวัดความคล้ายคลึงกันในสถานการณ์ต่างๆ ในภายหลัง
การใช้งานคลัสเตอร์คืออะไร
คลัสเตอร์ใช้งานได้หลายอุตสาหกรรมหลายรูปแบบ แอปพลิเคชันทั่วไปสําหรับการจัดกลุ่มมีดังนี้
- การแบ่งกลุ่มตลาด
- การวิเคราะห์โซเชียลเน็ตเวิร์ก
- การจัดกลุ่มผลการค้นหา
- การถ่ายภาพทางการแพทย์
- การแบ่งกลุ่มรูปภาพ
- การตรวจจับความผิดปกติ
หลังจากจัดกลุ่มแล้ว ระบบจะกําหนดหมายเลขเป็นกลุ่มที่เรียกว่ารหัสคลัสเตอร์ ตอนนี้คุณสามารถจํากัดชุดฟีเจอร์ตัวอย่างทั้งหมดในรหัสคลัสเตอร์ได้แล้ว การแสดงตัวอย่างอันซับซ้อนโดยใช้รหัสคลัสเตอร์แบบง่ายๆ จะทําให้คลัสเตอร์มีประสิทธิภาพ การขยายคลัสเตอร์จะช่วยให้ข้อมูลรวมกันง่ายขึ้น ทําให้ชุดข้อมูลขนาดใหญ่ง่ายขึ้น
เช่น คุณอาจจัดกลุ่มรายการตามฟีเจอร์ต่างๆ ดังที่แสดงในตัวอย่างต่อไปนี้
ตัวอย่าง |
---|
|
จากนั้น แมชชีนเลิร์นนิงจะใช้รหัสคลัสเตอร์เพื่อลดความซับซ้อนของการประมวลผลชุดข้อมูลขนาดใหญ่ ดังนั้น เอาต์พุตของคลัสเตอร์จะเป็นข้อมูลฟีเจอร์สําหรับระบบ ML ดาวน์สตรีม
ที่ Google มีการใช้การจัดกลุ่มสําหรับการกระจายข้อมูลทั่วไป การบีบอัดข้อมูล และการคงความเป็นส่วนตัวในผลิตภัณฑ์ต่างๆ เช่น วิดีโอ YouTube, แอป Play และแทร็กเพลง
ภาพรวม
เมื่อตัวอย่างในคลัสเตอร์มีข้อมูลฟีเจอร์ไม่ครบ คุณสามารถอนุมาน ข้อมูลที่ขาดหายไปจากตัวอย่างอื่นๆ ในคลัสเตอร์ได้
ตัวอย่าง |
---|
วิดีโอที่เป็นที่นิยมน้อยกว่าอาจกระจุกตัวอยู่รวมกับวิดีโอที่ได้รับความนิยมมากกว่าเพื่อปรับปรุงวิดีโอแนะนํา |
การบีบอัดข้อมูล
ดังที่พูดถึงแล้ว คุณจะแทนที่ข้อมูลฟีเจอร์สําหรับตัวอย่างทั้งหมดในคลัสเตอร์ได้ด้วยรหัสคลัสเตอร์ที่เกี่ยวข้อง การแทนที่นี้จะช่วยลดความซับซ้อนของข้อมูลฟีเจอร์และประหยัดพื้นที่เก็บข้อมูล สิทธิประโยชน์เหล่านี้จะมีขนาดใหญ่เมื่อปรับขนาดเป็นชุดข้อมูลขนาดใหญ่ นอกจากนี้ ระบบแมชชีนเลิร์นนิงยังใช้รหัสคลัสเตอร์เป็นอินพุตแทนชุดข้อมูลฟีเจอร์ทั้งหมดได้ด้วย การลดความซับซ้อนของข้อมูลอินพุตช่วยให้โมเดล ML ฝึกได้ง่ายและรวดเร็วยิ่งขึ้น
ตัวอย่าง |
---|
ข้อมูลฟีเจอร์สําหรับวิดีโอ YouTube รายการเดียวอาจประกอบด้วยข้อมูลต่อไปนี้
|
การเก็บรักษาความเป็นส่วนตัว
คุณสามารถรักษาความเป็นส่วนตัวได้โดยการจัดกลุ่มผู้ใช้ และเชื่อมโยงข้อมูลผู้ใช้กับรหัสคลัสเตอร์แทนผู้ใช้บางราย คลัสเตอร์ต้องจัดกลุ่มผู้ใช้ให้เพียงพอเพื่อให้มั่นใจว่าจะเชื่อมโยงข้อมูลผู้ใช้กับผู้ใช้บางรายไม่ได้
ตัวอย่าง |
---|
สมมติว่าคุณต้องการ เพิ่มประวัติวิดีโอสําหรับผู้ใช้ YouTube ลงในโมเดลของคุณ แทนที่จะอาศัย User-ID คุณสามารถจัดกลุ่มผู้ใช้และใช้รหัส ID แทนได้ โมเดลของคุณไม่สามารถเชื่อมโยงประวัติวิดีโอกับผู้ใช้บางรายได้ แต่ต้องเชื่อมโยงกับรหัสคลัสเตอร์ที่แทนกลุ่มผู้ใช้จํานวนมากเท่านั้น |