当前位置:首页 > AI > 正文内容

从零开始学机器学习——聚类可视化

邻居的猫1个月前 (12-09)AI1027

首要给咱们介绍一个很好用的学习地址:https://cloudstudio.net/columns

在上一章节中,咱们对聚类的相关常识进行了全面的介绍,旨在为咱们打下坚实的理论根底。今日,咱们的首要任务是深入探讨数据可视化的技能和办法。在之前的学习中,咱们现已触摸过回归剖析中的可视化技能,而今日咱们将专心于聚类剖析的可视化。咱们将学习怎么运用散点图、同心圆等可视化东西,以更直观地舆解聚类成果。

数据可视化——聚类

今日咱们的方针是从一个特定的文件中读取和剖析数据。该文件包含了很多的歌曲信息,包含多个字段,例如歌曲名称、音乐门户、歌唱家、盛行度、可舞性、发布时刻等。在咱们的剖析进程中,咱们将首要过滤出这份数据中最为杰出的三大门户,并提取相关数据。接下来,咱们将深入探讨这三大门户在其他字段上的相关性,并剖析其数据散布状况。

需求留意的是,本章节并不计划过多评论聚类算法及其详细作用,咱们的重点将放在怎么运用可视化东西来展现和了解这些数据。这将有助于咱们更直观地捕捉到数据中的趋势和形式,从而为后续的剖析打下根底。

过滤数据

首要,咱们需求引进一些要害的依靠包:

!pip install seaborn

import matplotlib.pyplot as plt
import pandas as pd

df = pd.read_csv("../data/nigerian-songs.csv")
df.head()

接下来,咱们将对数据集进行开始检查,以了解其全体结构和内容。

image

运用以下指令,咱们能够全面检查数据的大致格局以及数据量等要害信息。

df.info()
df.isnull().sum()
df.describe()

df.info():快速了解数据的结构和列的类型。

df.isnull().sum():辨认哪些列存在缺失数据以及缺失的程度。

df.describe():首要用于数值型数据,供给了每列的根本计算特性,便于了解数据的散布状况。

咱们能够先检查一下describe办法输出的数据,这部分信息将为咱们供给重要的计算成果和数据散布状况。其他相关的内容咱们之前现已评论过,详细状况能够参阅附图。

image

数据挑选

接下来,咱们将对数据进行挑选,方针是提取出最盛行的三大音乐门户。为了完成这一方针,咱们将以artist_top_genre作为X轴,以便更明晰地调查数据的散布状况。以下是相应的代码:

import seaborn as sns

top = df['artist_top_genre'].value_counts()
plt.figure(figsize=(10,7))
sns.barplot(x=top[:5].index,y=top[:5].values)
plt.xticks(rotation=45)
plt.title('Top genres',color = 'blue')

如图所示,咱们提取出了前五个音乐门户,并成功辨认出其间的三个:afro dancehall、afropop以及nigerian pop。

image

请留意,因为在检查数据时未发现任何缺失值(即没有null数据),因而咱们决议不删去任何行,直接进行绘图。但是,假如你的数据会集存在缺失值,主张你在进行绘图之前,首要删去包含缺失值的行,以保证数据的完整性和图形的准确性。这样能够防止潜在的数据误差,保证剖析成果的可靠性。

df = df[(df['artist_top_genre'] == 'afro dancehall') | (df['artist_top_genre'] == 'afropop') | (df['artist_top_genre'] == 'nigerian pop')]
df = df[(df['popularity'] > 0)]
top = df['artist_top_genre'].value_counts()
plt.figure(figsize=(10,7))
sns.barplot(x=top.index,y=top.values)
plt.xticks(rotation=45)
plt.title('Top genres',color = 'blue')

咱们的数据挑选作业总算圆满完成。现在,咱们现已辨认出当时最受欢迎的三大门户,详细信息如图所示。

image

强相关性

同样地,让咱们再来检查一下热力求。这一部分内容咱们在回归剖析中现已详细解说过,因而在这里咱们将直接供给相关的代码。以下是详细的完成代码:

corrmat = df.corr(numeric_only=True)
f, ax = plt.subplots(figsize=(12, 9))
sns.heatmap(corrmat, vmax=.8, square=True)

依据图片所示的数据剖析,咱们能够清楚地看到,仅有表现出强相关性的变量是能量(energy)与响度(loudness)之间的联络。这一点并不令人惊奇,因为喧闹的音乐往往伴随着极高的生机和激烈的节奏感。

image

接下来,咱们将深入探讨一种新的可视化办法,以协助咱们更好地舆解聚类剖析中的数据散布状况。

数据散布

同心圆

接下来,咱们将依据受欢迎程度和可舞性这两个目标进行数据剖析,详细方法包含制作同心圆和散点图。这些图表将协助咱们更直观地舆解数据的散布和趋势。当然,你也能够挑选其他字段进行比照剖析,完全能够依据个人的喜爱和需求进行调整。

from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()
df.iloc[:, 6:8] = df.iloc[:, 6:8].apply(LabelEncoder().fit_transform)

sns.set_theme(style="ticks") 
g = sns.jointplot(
    data=df,
    x="popularity", y="danceability", hue="artist_top_genre",
    kind="kde",
)

因为数据散布和数据类型不一致,为了保证剖析的准确性和一致性,我决议将一切数据一致转换为整数格局。如图所示:

image

他的意图是成一个联合散布图,用于展现数据会集盛行度(popularity)和舞蹈性(danceability)之间的联络,一起经过不同色彩标识不同的音乐风格(artist_top_genre)

散点图

sns.FacetGrid(df, hue="artist_top_genre").map(plt.scatter, "popularity", "danceability",s=5) .add_legend()

一行代码即可调查其散点散布,如图所示:

image

一般来说,关于聚类剖析,运用散点图来展现数据的聚类作用对错常有用的,因而把握这种可视化技能对咱们了解数据的结构和形式至关重要。在接下来的课程中,咱们将使用经过过滤后的数据,选用 k-means 聚类算法来探究和辨认数据中以风趣方法堆叠的组。

总结

在本章节中,咱们深入探讨了数据可视化在聚类剖析中的使用。经过对歌曲信息数据集的剖析,咱们成功辨认了三大门户,并运用散点图和同心圆等可视化东西,直观地展现了数据的散布与趋势。可视化不只增强了咱们对数据的了解,还为后续的聚类剖析打下了坚实的根底。

经过这种方法,咱们不只能辨认出数据中的形式,还能为决议计划供给有力支撑。正如咱们所见,数据的可视化进程是一个探究性的旅程,它协助咱们在杂乱的数据中找到躲藏的联络和含义。接下来,咱们将使用 k-means 聚类算法,进一步发掘这些数据背面的故事。


我是尽力的小雨,一名 Java 服务端码农,潜心研究着 AI 技能的奥妙。我酷爱技能交流与共享,对开源社区充满热情。一起也是一位腾讯云创造之星、阿里云专家博主、华为如此享专家、掘金优异作者。

💡 我将不惜共享我在技能道路上的个人探究与经历,期望能为你的学习与生长带来一些启示与协助。

🌟 欢迎重视尽力的小雨!🌟

扫描二维码推送至手机访问。

版权声明:本文由51Blog发布,如需转载请注明出处。

本文链接:https://www.51blog.vip/?id=372

标签: 机器学习
分享给朋友:

“从零开始学机器学习——聚类可视化” 的相关文章

机器学习包括什么,机器学习概述

机器学习包括什么,机器学习概述

机器学习是人工智能的一个分支,它使计算机系统能够从数据中学习并做出决策,而不需要显式地进行编程。机器学习包括以下几个主要方面:1. 监督学习(Supervised Learning):在这种学习中,算法从标记的训练数据中学习,以便对未标记的数据进行预测。监督学习分为两类:回归和分类。回归任务是预测连...

机器学习 简历,如何让你的简历在众多候选人中脱颖而出

撰写机器学习相关的简历时,你需要突出你的技术技能、项目经验、教育背景以及任何相关的成就。以下是一个基本的机器学习简历示例,你可以根据自己的情况进行调整: | | 个人简介经验丰富的机器学习工程师,具备扎实的数学基础和编程技能,擅长使用机器学习算法解决实际问题。具备优秀的团队合作精神和良好的沟通能力...

机器学习 特征提取,关键步骤与应用

机器学习 特征提取,关键步骤与应用

机器学习中的特征提取是一个关键步骤,它涉及到从原始数据中提取出有用的信息,以便于模型能够更好地理解和预测数据。特征提取的目的是将原始数据转换成机器学习算法可以理解的格式,并减少数据的维度,同时保持数据中的关键信息。特征提取的方法有很多,常见的包括:1. 统计特征:例如均值、方差、最大值、最小值等。这...

新加坡国立机器学习,培养未来科技领袖的摇篮

新加坡国立机器学习,培养未来科技领袖的摇篮

新加坡国立大学(NUS)的机器学习项目主要集中在数据科学与机器学习理学硕士(Master of Science in Data Science and Machine Learning, DSML)上。这个项目是一个跨学科的研究生学位课程,旨在培养未来数据科学和人工智能领域的领导者。以下是该项目的详...

AI写ppt,高效与创意的完美结合

AI写ppt,高效与创意的完美结合

1. 确定PPT的主题和目标受众,以便AI为你生成更符合需求的内容。2. 提供关键信息点,例如:主要观点、论据、数据等,让AI为你组织内容。3. 选择合适的模板和设计风格,以提升PPT的美观度和易读性。4. 利用AI生成图片、图表等视觉元素,以丰富PPT内容。5. 根据实际情况,调整AI生成的文本,...

携程机器学习笔试,全面解析与备考建议

携程机器学习笔试,全面解析与备考建议

携程机器学习笔试通常包括选择题和编程题两部分,考察的内容主要涵盖以下几个方面: 选择题1. 线性代数:例如矩阵运算、向量空间等。2. 概率论:包括几何概型、概率分布等。3. 机器学习基础知识:例如Logistic Regression中的L1和L2范数的效果、极大似然估计、随机森林等。4. 深度学习...