Вот простой компонент формата / цвета JSON, записанный в React:
const HighlightedJSON = ({ json }: Object) => {
const highlightedJSON = jsonObj =>
Object.keys(jsonObj).map(key => {
const value = jsonObj[key];
let valueType = typeof value;
const isSimpleValue =
["string", "number", "boolean"].includes(valueType) || !value;
if (isSimpleValue && valueType === "object") {
valueType = "null";
}
return (
{key}:
{isSimpleValue ? (
{`${value}`}
) : (
highlightedJSON(value)
)}
);
});
return {highlightedJSON(json)};
};
Посмотрите, как он работает в этой CodePen: https://codepen.io/benshope/pen/BxVpjo
Надеюсь, что это поможет!
Чтобы оценить ваши predicitons, вам нужно посмотреть метрику кластеризации , в том числе
Теперь возьмем показатель полноты, например,
Результат кластеризации удовлетворяет полноте, если все точки данных, являющиеся членами данного класса, являются элементами одного и того же кластера.
blockquote>Например
from sklearn.metrics.cluster import completeness_score print completeness_score([0, 0, 1, 1], [1, 1, 0, 0]) #Output : 1.0
Что похоже на то, что вы хотите. Для вас код будет completeten_score (pred, name_val). Здесь обратите внимание, что метка, назначенная точке данных, не важна, а важна их маркировка относительно друг друга.
Гомогенность, с другой стороны, фокусируется на качестве точек данных в одном кластере. В то время как V-мера определяется как
2 * (homogeneity * completeness) / (homogeneity + completeness)
Прочитайте официальную документацию здесь: Гомогенность, полнота и V-меру
Прежде всего, вы не классифицируете, вы кластеризуете данные. Классификация - это другой процесс.
Алгоритм K-Средств включает случайность при выборе начальных центров кластера. Установив random_state, вам удастся воспроизвести ту же кластеризацию, что и исходные кластерные центры. Однако это не устраняет вашу проблему. Вы хотите, чтобы кластер с id 0 был setosa, 1 был versicolor и т. Д. Это невозможно, потому что алгоритм K-Means не знает этих категорий, он только группирует цветы в зависимости от их сходства. Вы можете создать правило, чтобы определить, какой кластер соответствует какой категории. Например, вы можете сказать, что если более 50% цветов, принадлежащих кластеру, также относятся к категории setosa, то документы этого кластера следует сравнивать с набором документов в категории setosa.
Это лучший способ сделать это, о котором я могу думать. Однако это не так, как мы оцениваем качество кастинга, есть показатели, которые вы можете использовать, например, коэффициент силы. Надеюсь, я помог.