高维数据可视化
来源:互联网 发布:mac照片怎么导入手机 编辑:程序博客网 时间:2024/06/06 21:03
tsne
- n_components 维数 (default: 2)
- perplexity 邻居个数(default: 30) 2~50
- early_exaggeration (default: 12) 控制原始空间中集群在低维空间中的紧密程度
- learning_rate (default: 200.0) 10~1000;如果学习率太高,数据可能看起来像一个“球”,任何一点与其最近的邻居大致相等。 如果学习率太低,大多数点可能会在密集的云中看起来很少,有很少的异常值。
- n_iter (default: 1000) 迭代次数,至少250
- n_iter_without_progress (default: 300) 在我们停止之前,最大的可执行次数,250之后开始算
- min_grad_norm (default: 1e-7) 梯度norm小于这个时,停止迭代
- metric (default:euclidean,option:precomputed,correlation)距离的度量方法,必须在scipy.spatial.distance.pdist下,或者是.PAIRWISE_DISTANCE_FUNCTIONS中列出的度量标准,默认为“欧几里德”
- init(default: “random”);‘random’, ‘pca’,PCA初始化不能与预计算的距离一起使用,并且通常比随机初始化更全面地稳定。
- verbose (default: 0)
- random_state(default: None)如果int随机种子; 如果没有是the RandomState instance。 请注意,不同的初始化可能会导致成本函数的不同局部最小值。
- method(default: ‘barnes_hut’)
- angle (default: 0.5,搭配barnes_hut使用) “角度”是从一个点测量的远距离节点的角度大小(在[3]中称为θ)。 如果这个大小低于’angle’,那么它将被用作其中包含的所有点的汇总节点。 该方法对0.2-0.8范围内的参数变化不太敏感。 角度小于0.2时,计算时间的增加迅速增加,角度越大,误差越大。
- fit(X[, y]) Fit X into an embedded space.
- fit_transform(X[, y]) Fit X into an embedded space and return that transformed output.
- get_params([deep]) Get parameters for this estimator.
- set_params(**params) Set the parameters of this estimator.
import tensorflow as tfimport mathfrom sklearn import datasetsfrom sklearn.manifold import TSNEimport numpy as npimport matplotlib.pyplot as plt#n_components 维数#iris_dataset = datasets.load_iris()features = []predict_label=[]data = open('xx.csv').read().split('\n')#print datafor i in range(len(data)): if (i % 1000 == 0): print i temp = [] str=data[i].split(',') if (len(str) == 19): for j in range(19): if (j < 16): temp.append(float(str[j])) if (j == 18): predict_label.append(float(str[j])) features.append(temp)features_np = np.array(features)predict_label_np=np.array(predict_label)model = TSNE(learning_rate=100, n_components=2, random_state=0, perplexity=5)tsne5 = model.fit_transform(features_np)model = TSNE(learning_rate=100, n_components=2, random_state=0, perplexity=30)tsne30 = model.fit_transform(features_np)model = TSNE(learning_rate=100, n_components=2, random_state=0, perplexity=50)tsne50 = model.fit_transform(features_np)#color_mapping = {0: sns.xkcd_rgb['bright purple'], 1: sns.xkcd_rgb['lime'], 2: sns.xkcd_rgb['ochre']}#colors = list(map(lambda x: color_mapping[x], predict_label_np))plt.figure(figsize=(30, 15))plt.subplot(311)#plt.scatter(tsne5[:, 0], tsne5[:, 1], c=colors)plt.scatter(tsne5[:, 0], tsne5[:, 1], c=predict_label_np)plt.title("perplexity=5")plt.subplot(312)plt.scatter(tsne30[:, 0], tsne30[:, 1], c=predict_label_np)plt.title("perplexity=30")plt.subplot(313)plt.scatter(tsne50[:, 0], tsne50[:, 1], c=predict_label_np)plt.title("perplexity=50")plt.show()plt.close()
参考文档
- 从SNE到t-SNE再到LargeVis
- Visualizing large-scale and high-dimensional data论文解析
- Visualizing Large-scale and High-dimensional Data
- 代码
- 官方接口文档
- 各种实现
阅读全文
0 0
- 高维数据可视化
- 【数据可视化】复杂高维多元数据的可视化
- 流形学习-高维数据的降维与可视化
- 流形学习-高维数据的降维与可视化
- 流形学习-高维数据的降维与可视化
- 浅谈高维数据可视化中的降维方法
- 流形学习-高维数据的降维与可视化
- 流形学习-高维数据的降维与可视化
- 高维数据的可视化 Visualizing data using t-SNE
- 把高维数据在二维平面可视化
- t-SNE高维数据可视化(python)
- Python数据可视化之高斯分布
- matplotlib模块数据可视化-等高线图
- Python数据可视化:正态分布(高斯分布)
- MATLAB特殊图形和高维可视化
- 【可视化】数据图表可视化
- 数据可视化
- 数据可视化
- java中for和foreach循环
- 多线程
- BZOJ 1419 DP 解题报告
- js中的四种调用,this、that
- C#中 Thread,Task,Async/Await,IAsyncResult 的那些事儿!
- 高维数据可视化
- RecyclerView的案例和解析
- Android组件学习笔记(连接互联网)
- tf.contrib.layers.xavier_initializer
- BZOJ3503
- C++ typedef void *HANDLE
- 5倍经验日
- 设计模式学习笔记(0)-设计原则
- java基本数据类型的转换