Я использую алгоритм K-средних в python sklearn.cluster.
Я знаю, что из-за инициализации результаты могут каждый раз отличаться. Но я также знаю, что при достаточном количестве прогонов результаты не должны быть такими разными каждый раз.
Но дело в компьютере № 1, он выдает кластер № 1 каждый раз, когда я запускаю его. А для компьютера № 2 он выдает кластер № 2 при каждом его запуске.
Проблема в том, что кластер № 1 и кластер № 2 не совпадают. Код и данные точно такие же, как я копирую и вставляю их.
Они незначительно отличаются, но достаточно различаются, чтобы вызвать проблемы во всем моем алгоритме.
компьютер № 1 и Компьютер № 2 использует как GPU, так и CPU. Но компьютер # 1 гораздо более мощный с точки зрения вычислительной мощности.
код ниже
from sklearn.preprocessing import StandardScaler
from sklearn.cluster import KMeans
sc = StandardScaler()
X_sc = sc.fit_transform(X)
kmeans = KMeans(n_clusters = 5, init = 'k-means++', max_iter=300, n_init=10, random_state = 0)
X_k = kmeans.fit_predict(X_sc)
X_k отличается для разных компьютеров. то же самое каждый раз для отдельного компьютера.