语音谱图的TSNE散点图绘制

2024-04-19 22:14:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我有四类语音波形的频谱图。我想绘制TSNE散点图来可视化四个类中语音文件的分布。我怎么能用tsne呢?你知道吗


Tags: 文件可视化绘制语音频谱波形tsne
1条回答
网友
1楼 · 发布于 2024-04-19 22:14:25

假设你的光谱图数据是一组形状(n_points, n_dims)和相关标签。你知道吗

在这里我将产生地雷:

import matplotlib.pyplot as plt
import numpy as np
from sklearn.manifold import TSNE

n_points = 50
n_classes = 4
n_dims = 150

# Generate data
labels = np.random.randint(n_classes, size=n_points)
X = np.random.normal(size=(n_points, n_dims))
X = (X.transpose() + labels).transpose()

然后,您可以简单地对数据应用TSNE,使其成为二维并绘制它。你知道吗

# Do TSNE
X_embedded = TSNE(n_components=2).fit_transform(X)

# Plot
names = ['class_1', 'class_2', 'class_3', 'class_4']
for i in range(n_classes):
    X_label = X_embedded[np.where(labels == i)]
    plt.scatter(X_label[:, 0], X_label[:, 1], label=names[i])
plt.legend()

TSNE plot of the clusters

相关问题 更多 >