In der Humanwissenschaft der statistischen Anwendung des statistischen Tests der ersten Klasse im Jahr 2019 gab es ein Problem hinsichtlich der Anfangswertabhängigkeit der k-Mittel-Methode. Um jedoch zu bestätigen, dass k-Mittel tatsächlich vom Anfangswert abhängen, Ich habe Python-Code für einen supereinfachen Fall geschrieben.
Stellen Sie den Status wie folgt ein. Zu klassifizierende Menge: Eine Menge, deren Elemente (endliche Zahlen) reelle Zahlen sind. Anzahl der Cluster: 2.
python
print("Geben Sie zuerst die Anzahl der Elemente in der kategorisierten Menge ein.")
n = int(input())
print("Geben Sie dann die Elemente des Sets ein, das Sie klassifizieren möchten.")
a = [float(input()) for _ in range(n)]
print("Geben Sie als Nächstes zwei Anfangswerte ein.")
b = [float(input()) for _ in range(2)]
A = []
B = []
'''
print(A)
print(B)
'''
for i in range(n):
if abs(b[0] - a[i]) <= abs(b[1] - a[i]):
A.append(a[i])
else:
B.append(a[i])
if len(A) == 0 or len(B) == 0:
print("Der erste Cluster ist")
print(A)
print("Der zweite Cluster ist")
print(B)
else:
c = sum(A)/len(A)
d = sum(B)/len(B)
while c != b[0] or d != b[1]:
b[0] = c
b[1] = d
A = []
B = []
for i in range(n):
if abs(b[0] - a[i]) <= abs(b[1] - a[i]):
A.append(a[i])
else:
B.append(a[i])
c = sum(A)/len(A)
d = sum(B)/len(B)
print("Der erste Cluster ist")
print(A)
print("Der zweite Cluster ist")
print(B)
Im Folgenden finden Sie zwei Beispiele für die Ausführung dieses Codes mit unterschiedlichen Anfangswerten.
Es wurde also bestätigt, dass der endgültige Cluster anders sein wird, wenn der Anfangswert tatsächlich geändert wird. ∩ (・ ω ・) ∩ Sie müssen vorsichtig sein, wenn Sie eine Clusteranalyse mit der k-mean-Methode durchführen.
Recommended Posts