Unterschied zwischen Gruppen bewerten

Hallo,

ich arbeite gerade an einem Projekt bei welchem ich u.A. die Unterschiede zwischen zwei Gruppen auf Grund der enthaltenen Subklassen bewerten muss.

Eine Gruppe hat verschiedene Member und diese Member haben auch eine unterschiedliche Frequenz.

Ein Member kann sowohl in Gruppe A als auch in Gruppe B oder nur in einer von beiden vorkommen.

Gruppe A

0.5 x Member A
0.3 x Member B
0.2 x Member C

Gruppe B

0.4 x Member B
0.3 x Member A
0.2 x Member D
0.1 x Member E
0.1 x Member C

Darüber hinaus habe ich eine Funktion, die den Unterschied zwischen zwei Membern beurteilen kann. Denn es könnte hier im Beispiel so sein, dass die Member D und E dem Member C sehr ähnlich sind, nicht aber A und B.

Nun möchte ich einen Score erzeugen, anhand dessen ich dann feststellen kann ob Gruppe A ähnlicher zu Gruppe B ist oder zu Gruppe C, …

Wie bewerte ich also die Unterschiede ?
Nochmal: Es können unterschiedliche Member, mit unterschiedlichen Frequenzen vorkommen und nicht alle Member sind gleich weit voneinander entfernt.

Jemand eine Idee ?