تجميع الأصول بحسب تحركها معًا
المسافة تقول كم يبعد شيئان عن بعضهما. وفي الأصول يجب أن يعني القرب أنها تتحرك معًا، فنحوّل الارتباط إلى مسافة: . الارتباط التام يعطي مسافة ، وانعدام الارتباط يعطي ، والحركة المعاكسة تمامًا تعطي . وبخلاف تتصرف هذه الصيغة كمسافة حقيقية فيمكن تمريرها إلى أدوات التجميع. تحسب scipy.spatial.distance.pdist كل المسافات الزوجية دفعة واحدة، وتحوّل squareform بين جدول كامل والقائمة المدمجة التي تتوقعها دوال التجميع. ولإيجاد أقرب الجيران لنقطة بين كثيرات تكون scipy.spatial.cKDTree أسرع بكثير من المقارنة بكل نقطة.
يبدأ التجميع الهرمي بكل أصل وحده ويدمج مرارًا أقرب مجموعتين. وطريقة قياس المسافة بين مجموعتين هي قاعدة الربط. تستعمل single أقرب زوج بين المجموعتين وتستعمل complete أبعد زوج وتستعمل average متوسط كل المسافات المتقاطعة. وترجع hierarchy.linkage(distances, method) سجل الدمج كله مع ارتفاع كل دمج. ثم تقطع hierarchy.fcluster(Z, t, 'distance') الشجرة عند الارتفاع لإعطاء تسميات المجموعات، أو مع 'maxclust' إلى عدد مختار من المجموعات. وفي المالية تصير المجموعات خريطة للتنويع: أصول المجموعة الواحدة تحمل في الغالب الخطر نفسه فاقتناء خمسة منها ليس خمس رهانات.
- حوّل الارتباط إلى مسافة: تساوي للتوأمين و للمتعاكسين.
- الربط خيار: الربط المفرد والكامل والمتوسط قد تعطي ارتفاعات دمج مختلفة للبيانات نفسها.
- المجموعات تخطط التنويع: اختر عبر المجموعات لأن أصول المجموعة الواحدة تتشارك معظم خطرها.
المختبر: ما الذي يُقيَّم
- من الارتباط إلى المسافة10 نقطة
- من المسافة إلى الارتباط10 نقطة
- ارتفاع ربط متوسط15 نقطة
- ارتفاع ربط مفرد10 نقطة
- المجموعات بعد القطع10 نقطة
- ماذا تفعل كل روتين15 نقطة
- المجموعات والتنويع30 نقطة