t-SNE可视化模型的特征
不深究t-SNE的原理,直接调包“from sklearn.manifold import TSNE”完成可视化深度神经网络模型的特征。我这里只分两类上色,可以根据需要修改get_color函数,改color.append(colors[labels[i]])这样。
import numpy as np
import matplotlib
import matplotlib.pyplot as plt
import pandas as pd
from sklearn.manifold import TSNE
import joblib
import random
matplotlib.use('Agg')
#np.set_printoptions(threshold=np.inf)
num1, num_sum = 150, 350#根据样本的实际情况自己改数值,Y的维度也就是len(标签)=num_sum
num2 = num_sum - num1
def get_color(labels):colors=["#C05757","#3939EF"]#,"g","y","o"#根据情况自己改配色color=[]for i in range(num1):color.append(colors[0])for i in range(num2, num_sum):color.append(colors[1])return color#class_out是需要t-SNE可视化的特征,可以来自模型任意一层,我这里用的是最后一层
#feats = np.array(class_out)#t-SNE可视化的特征输入必须是np.array格式
#print(feats.shape)
#joblib.dump(feats, 'feat.pkl')#保存特征X = joblib.load('feat.pkl')#读取预保存的特征信息
Y = [i for i in range(num_sum)]
print(type(X))#必须是np.array
X_embedded = TSNE(n_components=2,init="pca").fit_transform(X)
print(X_embedded.shape)
colors=get_color(Y)#配置点的颜色
x=X_embedded[:,0]#横坐标
y=X_embedded[:,1]#纵坐标
plt.scatter(x,y,c=colors, linewidths=0.5, marker='o',edgecolors='k')#绘制散点图。
#plt.show()
plt.savefig("tsne.jpg")#保存图像
t-SNE可视化模型的特征相关推荐
- 收藏 | PyTorch模型训练特征图可视化(TensorboardX)
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:作者丨Pa ...
- R语言随机森林模型:计算随机森林模型的特征重要度(feature importance)并可视化特征重要度、使用少数重要特征拟合随机森林模型(比较所有特征模型和重要特征模型在测试集上的表现差异)
R语言随机森林模型:计算随机森林模型的特征重要度(feature importance)并可视化特征重要度.使用少数重要特征拟合随机森林模型(比较所有特征模型和重要特征模型在测试集上的表现差异) 目录
- R语言构建xgboost模型:特征重要度计算及解读、改善特征重要度数据的可解释性、特征重要度可视化
R语言构建xgboost模型:特征重要度计算及解读.改善特征重要度数据的可解释性.特征重要度可视化 目录
- R语言使用glmnet包拟合lasso-cox回归模型(生存时间和结果标签)、lasso-cox模型进行特征筛选、plot函数可视化cv.glmnet模型获得的最佳lambda曲线位置及其1个标准差线
R语言使用glmnet包拟合lasso-cox回归模型(包含生存时间和结果标签).使用lasso-cox模型进行特征筛选.plot函数可视化cv.glmnet模型获得的最佳lambda曲线位置及其1个 ...
- Python计算树模型(随机森林、xgboost等)的特征重要度及其波动程度:基于熵减的特征重要度计算及可视化、基于特征排列的特征重要性(feature permutation)计算及可视化
Python计算树模型(随机森林.xgboost等)的特征重要度及其波动程度:基于熵减的特征重要度计算及可视化.基于特征排列的特征重要性(feature permutation)计算及可视化 目录
- 利用lightgbm做learning to rank 排序,解析模型中特征重要度
向AI转型的程序员都关注了这个号???????????? 机器学习AI算法工程 公众号:datayx 去年实习时,因为项目需要,接触了一下Learning to Rank(以下简称L2R),感觉很 ...
- pytorch中使用TensorBoard进行可视化Loss及特征图
pytorch中使用TensorBoard进行可视化Loss及特征图 安装导入TensorBoard 安装TensorBoard pip install tensorboard 导入TensorBoa ...
- Caffe版Faster R-CNN可视化——网络模型,图像特征,Loss图,PR曲线
可视化网络模型 Caffe目前有两种常用的可视化模型方式: 使用Netscope在线可视化 Caffe代码包内置的draw_net.py文件可以可视化网络模型 Netscope能可视化神经网络体系 ...
- 特征筛选(2)——基于模型的特征筛选方法
[Kaggle]Telco Customer Churn 电信用户流失预测案例 第三部分导读 在案例的第二部分中,我们详细介绍了常用特征转化方法,其中有些是模型训练之必须,如自然数编码.独热编码, ...
最新文章
- win10 anaconda 下pcl库的安装
- 小计算器代码(C#)
- Handlebars的基本用法
- 人月神话_神话般的代码
- python画饼图-从零开始学Python可视化(五): 饼图及环形图
- Verilog inout 双向口使用和仿真
- [BUUCTF-pwn]——gyctf_2020_borrowstack
- Intellij Idea乱码解决方案都在这里了
- GNOME如何使用Git
- 使用Context和Hooks来管理状态
- tomcat中 JVM 内存溢出及合理配置
- 模板 - 数学 - 数论
- 不要重新发明轮子_请重新发明轮子
- 电视机与计算机共享,win7与智能电视怎么共享
- python语言小程序-微信小程序可以用Python语言编写吗?
- 养成良好的工作习惯(计划)
- matlab如何镜像处理图片,matlab实现图像镜像
- 论文阅读笔记--Monocular Human Pose Estimation: A Survey of Deep Learning-based Methods 人体姿态估计综述
- 保研浙大直博学姐亲身经验 浙大计算机夏令营 浙大计算机九推
- Python 爬虫QQ音乐