详细解答T-SNE程序中from sklearn.manifold import TSNE的数据设置,包括输入数据,绘制颜色的参数设置,代码复制可用!!

在这里插入图片描述

文章目录

  • 前言——TSNE是t-Distributed Stochastic Neighbor Embedding的缩写
  • 1、可运行的T-SNE程序
  • 2. 实验结果
  • 3、针对上述程序我们详细分析T-SNE的使用方法
    • 3.1 加载数据
    • 3.2 TSNE降维
    • 3.3 绘制点
    • 3.4 关于颜色设置,颜色使用的标签数据的说明c=y
  • 总结


前言——TSNE是t-Distributed Stochastic Neighbor Embedding的缩写

TSNE是t-Distributed Stochastic Neighbor Embedding的缩写,它是一个非线性降维算法。

TSNE的主要作用和优点如下:

  • 高维数据投影到低维空间,如二维或三维,实现高维数据的可视化。

  • 相比其他降维方法如PCA,TSNE在保留局部结构信息上的效果更好,尤其适用于高维稠密数据。

  • 它可以很好地区分数据中的簇结构,有利于观察不同类别或类型的数据分布情况

1、可运行的T-SNE程序

from sklearn.datasets import load_iris
from sklearn.manifold import TSNE
import matplotlib.pyplot as plt
import matplotlib
matplotlib.use('TkAgg')# 加载数据
iris = load_iris()
X = iris.data
y = iris.target# TSNE降维
tsne = TSNE(n_components=2, random_state=0)
X_tsne = tsne.fit_transform(X)# 绘制点
plt.scatter(X_tsne[:,0], X_tsne[:,1], c=y, marker='o', s=5)# 添加图例
plt.legend(iris.target_names)# 添加标题
plt.title("TSNE projection of the Iris dataset")plt.show()

2. 实验结果

在这里插入图片描述

3、针对上述程序我们详细分析T-SNE的使用方法

3.1 加载数据

  • load_iris()函数从sklearn.datasets模块加载鸢尾花数据集,
  • iris包含数据集的特征数据X标签数据y

3.2 TSNE降维

  • TSNE是一种非线性降维算法,用于高维数据的可视化。它可以将高维数据投影到二维或三维空间。

  • TSNE(n_components=2)实例化一个TSNE模型,降维后的维度数设为2

  • random_state=0固定随机数种子,使得结果可重复

  • fit_transform(X)对特征数据X进行降维,返回降维后的新特征X_tsne。

3.3 绘制点

  • X_tsne包含每个样本的二维坐标

  • plt.scatter以(x,y)坐标方式绘制每个点,c=y指定点的颜色

  • marker='o’设置点的形状为圆形

  • s=5控制点的大小

通过TSNE降维,高维数据X被投影到二维空间,得到低维表示X_tsne。然后根据X_tsne和y进行散点图绘制,就可以实现TSNE降维结果的可视化。这是TSNE的标准流程。

3.4 关于颜色设置,颜色使用的标签数据的说明c=y

c=y这行代码的含义和作用是:

  • c参数用于设置散点图中每个点的颜色。

  • y变量包含了样本的类别标签信息。对于鸢尾花数据集来说,y取值为0、1或2,分别表示三种花的类别

  • 当我们设置c=y时,就是根据每个样本在y中的类别标签值,来动态设置这个样本点在散点图中的颜色

  • 具体来说:

    • 如果一个样本的y值为0,那么这个点的颜色就会取颜色映射中的第一个颜色。

    • 如果y值为1,点颜色取第二个颜色。

    • 如果y值为2,点颜色取第三个颜色。

  • 这样每个类别的样本点就会使用不同的颜色来绘制,从而在可视化结果中清晰区分开各个类别。


总结

  • 在科研中,TSNE广泛应用于图像分类、自然语言处理等领域的数据降维和可视化。

  • 比如对神经网络分类结果进行TSNE降维,可以观察不同类别样本在特征空间中的分布,有助于分析模型表现。

  • 对文本语料进行TSNE降维,可以观察词汇在语义空间中的分布,帮助理解语义结构。

  • 对单细胞RNA-seq数据进行TSNE降维,可以观察不同类型细胞在表达空间中的分布,有助于发现新型细胞亚群。

所以总体来说,TSNE通过高效的降维和保留局部结构,有助于科研人员直观观察高维数据的内在结构,分析模型效果,发现数据中的新知识,从而推动科研工作的进展。它为数据可视化和理解提供了重要的工具支持。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/168250.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Centos Download

前言 CentOS Linux 是一个社区支持的发行版,源自 CentOS git for Red Hat Enterprise Linux (RHEL) 上免费提供给公众的源代码。因此,CentOS Linux 的目标是在功能上与 RHEL 兼容。CentOS 计划主要更改组件以删除上游供应商的品牌…

【微服务专题】SpringBoot自动配置源码解析

目录 前言阅读对象阅读导航前置知识笔记正文0、什么是自动配置0.1 基本概念0.2 SpringBoot中的【约定大于配置】0.3 从SpringMVC看【约定大于配置】0.4 从Redis看【约定大于配置】 一、EnableAutoConfiguration源码解析二、SpringBoot常用条件注解源码解析2.1 自定义条件注解2.…

java 反射和注解1-反射详解

反射和注解本就是一家人,注解离不开反射,这里先将反射的写法,本文涉到的注解暂时可以不不用理解 1,创建一个类 public class ReflexUser {public String name;private String namePrivate;protected String nameProtected;Strin…

Arduino库之 LedControl 库说明文档

LedControl 库最初是为基于 8 位 AVR 处理器的 Arduino 板编写的。用于通过MAX7219芯片控制LED矩阵和7段数码管。但由于该代码不使用处理器的任何复杂的内部功能,因此具有高度可移植性,并且应该在任何支持 和 功能的 Arduino(类似&#xff09…

模拟火车订票系统---python序列

if __name__ __main__:#创建车辆信息列表list["车次","出发站-到达站","出发时间","到达时间","历时","余票"]trainNumber[T40,T298,Z158,Z62]address[长春-北京,长春-北京,长春-北京,长春-北京]getTime[00:12,0…

简单介绍一下js中的构造函数、原型对象prototype、对象原型__proto__、原型链

构造函数 function Star (uname, age){this.uname unamethis.age agethis.sing function(){ log(唱歌~) }}let xzq new Star(薛之谦, 30)let ldh new Star(刘德华, 20)log(ldh) // { uname: 刘德华, age: 20, sing: f }ldh.sing() // 唱歌~log(ldh.sing xzq.sing) // fal…

DevEco Studio安装

HUAWEI DevEco Studio For OpenHarmony(以下简称DevEco Studio)是基于IntelliJ IDEA Community开源版本打造,面向OpenHarmony全场景多设备的一站式集成开发环境(IDE),为开发者提供工程模板创建、开发、编译…

服务器被入侵了怎么去排查

在当今数字化时代,网络安全问题变得越来越重要。其中,服务器被入侵是一种常见的安全威胁。当服务器被入侵时,我们需要采取一系列措施来排查和解决问题。本文将为您提供服务器被入侵后的排查步骤。 第一步:确认服务器被入侵 当发现…

C语言进阶之路-基本数据小怪篇

目录 一、学习目标: 二、数据基本类型 整型 浮点型 / 实型 字符 字符串 布尔型数据 三、重要的杂七杂八知识点 常量与变量 标准输入 sizeof运算符: 类型转换 数据类型的本质 整型数据尺寸 可移植性整型 拿下第一个C语言程序 总结 一、学…

web前端之引入svg图片、html引入点svg文件、等比缩放、解决裁剪问题、命名空间、object标签、阿里巴巴尺量图、embed标签、iframe标签

MENU 前言直接在页面编写svg使用img标签引入通过css引入使用object标签引入其他标签参考资料 前言 web应用开发使用svg图片的方式,有如下几种方式 1、直接在页面编写svg 2、使用img标签引入 3、通过css引入 4、使用object标签引入 直接在页面编写svg 在html页面直接…

LeetCode Hot100 101.对称二叉树

题目&#xff1a; 给你一个二叉树的根节点 root &#xff0c; 检查它是否轴对称。 代码&#xff1a; class Solution {public boolean isSymmetric(TreeNode root) {if(rootnull || (root.leftnull && root.rightnull)) {return true;}//用队列保存节点LinkedList<…

【网易云商】构建高效 SaaS 系统的技术要点与最佳实践

SaaS 是什么 定义 相信大家都对云服务中的 IaaS、PaaS、SaaS 早就有所耳闻&#xff0c;现在更是衍生出了 aPaaS、iPaaS、DaaS 等等的类似概念。对于 SaaS 也有各种各样的定义&#xff0c;本文给出的定义是&#xff1a; SaaS 是一种基于互联网提供服务和软件的交付模式&#xf…

水果编曲软件FL Studio21.2下载安装教程

简称FL&#xff0c;全称&#xff1a;Fruity Loops Studio&#xff0c;因此国人习惯叫它"水果"。目前最新版本(包括测试版本)是FL Studio21.2&#xff0c;它让你的计算机就像是全功能的录音室&#xff0c;大混音盘&#xff0c;非常先进的制作工具&#xff0c;让你的音…

工业以太网交换机未来发展中的几个趋势

随着工业自动化不断发展和智能制造的推进&#xff0c;工业以太网交换机在未来的应用中将面临更多的发展机遇和挑战。在工业以太网交换机的未来发展中&#xff0c;有几个方面将成为趋势。 网络虚拟化 随着工业自动化系统规模的不断扩展&#xff0c;网络虚拟化将成为未来的发展方…

四、防火墙-NAT Server

学习防火墙之前&#xff0c;对路由交换应要有一定的认识 NAT Server1.1.基本原理1.2.多出口场景下的NAT Server1.3.源进源出 —————————————————————————————————————————————————— NAT Server 一般对用户提供一些可访问的…

Python开发运维:Django 4.2.7 使用Celery 5.3.5 完成异步和定时任务

目录 一、实验 1.Django使用Celery完成异步和定时任务 二、实验 1. 如何查看Django版本 一、实验 1.Django使用Celery完成异步和定时任务 (1)安装Django (2)新建Django项目 (3)初始框架 (4)urls.py引用视图views from django.contrib import admin from django.urls imp…

CodeWhisperer 体验总结

CodeWhisperer 体验总结 | CodeWhisperer 是一款亚马逊新推出的通用代码生成器 可以实时进行代码数据的提供 还可以定义安全问题 CodeWhisperer 对个人用户是免费使用 企业用户需要订阅使用 亚马逊云科技开发者社区为开发者们提供全球的开发技术资源。这里有技术文档、开发案例…

Linux:配置Ubuntu系统的镜像软件下载地址

一、原理介绍 好处&#xff1a;从国内服务器下载APT软件&#xff0c;速度快。 二、配置 我这里配置的是清华大学的镜像服务器地址 https://mirrors.tuna.tsinghua.edu.cn/ 1、备份文件 sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak2、清空sources.list ec…

广告机/商业显示屏_基于MT8788安卓主板方案

安卓主板在广告机领域扮演着重要的角色。无论是在商场、车站、酒店、电梯、机场还是高铁站&#xff0c;LED广告机广泛应用&#xff0c;并通过不同方式进行播放和管理。 广告机/商业显示屏_基于MT8788安卓主板方案 基于MT8788安卓主板方案的广告机采用了联发科MT8788八核芯片方案…

国标直流充电枪9孔分别啥意思?

DC&#xff1a;直流电源正 DC-&#xff1a;直流电源负 PE&#xff1a;接地&#xff08;搭铁&#xff09;S&#xff1a;通讯CAN-H S-&#xff1a;通讯CAN-L CC1&#xff1a;充电连接确认 CC2&#xff1a;充电连接确认 A&#xff1a;12V A-&#xff1a;12V- 以上就是国标直流充电…