import tensorflow as tf
import numpy as np
np.random.seed(42)
data_np = np.random.rand(200, 2).astype(np.float32) # используем numpy-массив для получения размера
data = tf.constant(data_np)
num_clusters = 3
random_idxs = np.random.choice(data_np.shape[0], size=num_clusters, replace=False) # берём shape у numpy-массива
initial_centroids = tf.Variable(tf.gather(data, random_idxs), dtype=tf.float32)
print("Индексы выбранных центроидов:", random_idxs)
print("Начальные центроиды:\n", initial_centroids.numpy())