{ "cells": [ { "cell_type": "markdown", "source": [ "## **从Spotify抓取的尼日利亚音乐分析**\n", "\n", "聚类是一种[无监督学习](https://wikipedia.org/wiki/Unsupervised_learning)方法,假设数据集是未标记的,或者其输入未与预定义的输出匹配。它使用各种算法对未标记的数据进行分类,并根据数据中识别出的模式提供分组。\n", "\n", "[**课前测验**](https://gray-sand-07a10f403.1.azurestaticapps.net/quiz/27/)\n", "\n", "### **简介**\n", "\n", "[聚类](https://link.springer.com/referenceworkentry/10.1007%2F978-0-387-30164-8_124)在数据探索中非常有用。让我们看看它是否能帮助发现尼日利亚观众消费音乐的趋势和模式。\n", "\n", "> ✅ 花一分钟思考一下聚类的用途。在现实生活中,聚类就像你有一堆洗好的衣服,需要将家人各自的衣物分类🧦👕👖🩲。在数据科学中,聚类发生在分析用户偏好或确定任何未标记数据集的特征时。聚类在某种程度上帮助我们从混乱中找到秩序,比如整理袜子抽屉。\n", "\n", "在专业环境中,聚类可以用于市场细分,例如确定哪些年龄段购买哪些商品。另一个用途是异常检测,比如从信用卡交易数据集中检测欺诈行为。或者,你可以用聚类来识别一批医学扫描中的肿瘤。\n", "\n", "✅ 花一分钟思考一下你在银行、电子商务或商业环境中可能遇到过的聚类应用。\n", "\n", "> 🎓 有趣的是,聚类分析起源于20世纪30年代的人类学和心理学领域。你能想象它可能是如何被使用的吗?\n", "\n", "另外,你可以用它来对搜索结果进行分组——例如按购物链接、图片或评论分组。当你有一个大型数据集需要简化并进行更细致的分析时,聚类技术非常有用,因此它可以在构建其他模型之前帮助了解数据。\n", "\n", "✅ 一旦你的数据被组织成聚类,你可以为其分配一个聚类ID。这种技术在保护数据集隐私时非常有用;你可以用聚类ID来引用数据点,而不是使用更具识别性的详细数据。你能想到其他使用聚类ID而不是聚类中其他元素来标识数据点的原因吗?\n", "\n", "### 开始学习聚类\n", "\n", "> 🎓 我们如何创建聚类与我们如何将数据点分组密切相关。让我们来解读一些术语:\n", ">\n", "> 🎓 ['传导性' vs. '归纳性'](https://wikipedia.org/wiki/Transduction_(machine_learning))\n", ">\n", "> 传导性推理是从观察到的训练案例中得出的,这些案例映射到特定的测试案例。归纳性推理是从训练案例中得出的,这些案例映射到一般规则,然后才应用于测试案例。\n", ">\n", "> 举个例子:假设你有一个部分标记的数据集。一些是“唱片”,一些是“CD”,还有一些是空白的。你的任务是为空白部分提供标签。如果你选择归纳方法,你会训练一个模型寻找“唱片”和“CD”,并将这些标签应用于未标记的数据。这种方法可能难以分类实际上是“磁带”的东西。而传导方法则更有效地处理这些未知数据,因为它会将相似的项目分组,然后为整个组应用一个标签。在这种情况下,聚类可能反映“圆形音乐物品”和“方形音乐物品”。\n", ">\n", "> 🎓 ['非平面' vs. '平面'几何](https://datascience.stackexchange.com/questions/52260/terminology-flat-geometry-in-the-context-of-clustering)\n", ">\n", "> 源于数学术语,非平面与平面几何指的是通过“平面”([欧几里得](https://wikipedia.org/wiki/Euclidean_geometry))或“非平面”(非欧几里得)几何方法测量点之间的距离。\n", ">\n", "> 在此上下文中,“平面”指的是欧几里得几何(部分被称为“平面”几何),而“非平面”指的是非欧几里得几何。几何与机器学习有什么关系?作为两个都以数学为基础的领域,必须有一种通用的方法来测量聚类中点之间的距离,这可以根据数据的性质以“平面”或“非平面”的方式进行。[欧几里得距离](https://wikipedia.org/wiki/Euclidean_distance)是通过两点之间线段的长度来测量的。[非欧几里得距离](https://wikipedia.org/wiki/Non-Euclidean_geometry)则沿曲线测量。如果你的数据在可视化时似乎不在一个平面上,你可能需要使用专门的算法来处理它。\n", "\n", "
\n",
" \n",
"
\n",
" \n",
"
\n",
" \n",
"