У меня есть набор данных, который имеет 9 классов для каждого из его точек данных.Для каждого из изображений, принадлежащих к набору данных, я передаю его в ResNet50 и извлекаю векторный элемент 2048, обрезая последнее позже.Я сохранил векторы функций ResNet50 для каждой строки для одной точки данных в текстовом файле в том же порядке, что и мой CSV-файл.
Я хочу рассчитать оценку Silouhette для каждого из этих классов в моем наборе данных.Я не уверен, как двигаться дальше с моей настройкой.У меня не так много кода, но вот стартер:
import pandas as pd
from sklearn.metrics import pairwise_distances
from sklearn import cluster, datasets, preprocessing, metrics
from sklearn.cluster import KMeans
df = pd.read_csv("master.csv")
labels = df['Q3 Theme1']
X = open('entire_dataset__resnet50_feature_vectors.txt')
X_Data = X.read()
print('Silhouette Score:', metrics.silhouette_score(X_Data, labels,
metric='cosine'))
Я получаю это в качестве вывода: https://pastebin.com/raw/hk2axdWL
Как я могу исправить этот код, чтобы я мог напечататьодин силуэтный балл?
Reshape your data either using array.reshape(-1, 1) if your data has a single feature or array.reshape(1, -1) if it contains a single sample.
Process finished with exit code 1
Я вставил сюда одну строку моего векторного векторного файла (файл .txt): https://pastebin.com/raw/hk2axdWL (состоит из 2048 чисел, разделенных пробелом)