2026/4/18 8:54:34
网站建设
项目流程
网站建设具备哪些技术人员,外贸网站建设网络公司,网站建设丩金手指排名壹陆,上海虹桥站人工智能之核心基础 机器学习
第八章 无监督学习概述 文章目录人工智能之核心基础 机器学习8.1 什么是无监督学习#xff1f;#x1f4cc; 定义#xff1a;从“没有答案”的数据中找规律8.2 无监督学习的三大核心任务1️⃣ 聚类#xff08;Clustering#xff09;——“物…人工智能之核心基础 机器学习第八章 无监督学习概述文章目录人工智能之核心基础 机器学习8.1 什么是无监督学习 定义从“没有答案”的数据中找规律8.2 无监督学习的三大核心任务1️⃣ 聚类Clustering——“物以类聚”2️⃣ 降维Dimensionality Reduction——“压缩信息保留精华”3️⃣ 异常检测Anomaly Detection——“揪出不合群的家伙”8.3 无监督学习的应用场景8.4 配套代码实现Scikit-learn 示例数据准备1️⃣ 聚类实战K-Means 用户分群2️⃣ 降维实战PCA 数据压缩与可视化3️⃣ 异常检测实战Isolation Forest 识别异常用户 本章总结 无监督学习的核心价值资料关注8.1 什么是无监督学习 定义从“没有答案”的数据中找规律监督学习老师告诉你每道题的正确答案标签你学着模仿。无监督学习给你一堆试卷但没有标准答案你要自己发现题目之间的规律、分组或结构。✅核心特点输入只有特征X XX没有标签y yy目标不是预测而是理解数据本身像“数据侦探”一样挖掘隐藏模式 举个生活例子你收到一箱混装水果苹果、橙子、香蕉没人告诉你哪个是哪个。你通过颜色、形状、大小把它们分成几堆——这就是聚类8.2 无监督学习的三大核心任务1️⃣ 聚类Clustering——“物以类聚”目标将相似的数据点分到同一组不相似的分开。✅ 输出每个样本的“群组编号”如用户A属于“高价值客户群”典型算法K-Means最常用层次聚类Hierarchical ClusteringDBSCAN能发现任意形状簇2️⃣ 降维Dimensionality Reduction——“压缩信息保留精华”目标把高维数据如1000个特征压缩成低维如2维同时尽量不丢失重要信息。✅ 用途可视化2D/3D画图去噪加速后续模型训练典型算法主成分分析PCA— 线性降维t-SNE — 非线性适合可视化UMAP — 更快、更现代的非线性降维3️⃣ 异常检测Anomaly Detection——“揪出不合群的家伙”目标找出与大多数数据显著不同的异常点Outliers。✅ 应用信用卡欺诈、设备故障、网络入侵典型方法基于统计如3σ原则基于聚类离群点不属于任何簇Isolation Forest专门为此设计One-Class SVM8.3 无监督学习的应用场景场景任务类型实际案例用户分群聚类电商将用户分为“价格敏感型”、“品牌忠诚型”等数据压缩降维将人脸图像从10,000维压缩到50维用于人脸识别异常值识别异常检测银行系统自动标记可疑交易推荐系统预处理聚类降维先对用户聚类再在群内做个性化推荐探索性数据分析EDA降维聚类快速了解数据分布和潜在结构关键价值在没有标签的情况下也能为业务提供洞察8.4 配套代码实现Scikit-learn 示例数据准备importnumpyasnpimportmatplotlib.pyplotaspltfromsklearn.datasetsimportmake_blobs,load_digits# 生成模拟用户数据收入 vs 消费X,_make_blobs(n_samples300,centers3,cluster_std1.5,center_box(-10,10),random_state42)plt.scatter(X[:,0],X[:,1],s30)plt.title(用户收入 vs 月消费无标签)plt.xlabel(标准化收入)plt.ylabel(标准化月消费)plt.show()1️⃣ 聚类实战K-Means 用户分群fromsklearn.clusterimportKMeans# 使用K-Means聚类假设分3群kmeansKMeans(n_clusters3,random_state42)y_predkmeans.fit_predict(X)# 可视化结果plt.scatter(X[:,0],X[:,1],cy_pred,cmapviridis,s30)plt.scatter(kmeans.cluster_centers_[:,0],kmeans.cluster_centers_[:,1],cred,markerx,s200,linewidths3,label聚类中心)plt.title(K-Means 用户分群结果)plt.legend()plt.show()# 输出每个用户属于哪一类0, 1, 或 2print(前5个用户的群组:,y_pred[:5])业务解读群0高收入高消费 → “高价值客户”群1低收入低消费 → “价格敏感型”群2高收入低消费 → “节俭型高净值客户”2️⃣ 降维实战PCA 数据压缩与可视化fromsklearn.decompositionimportPCAfromsklearn.datasetsimportload_digits# 加载手写数字64维 → 2维digitsload_digits()X_digitsdigits.data# shape: (1797, 64)# PCA降到2维pcaPCA(n_components2)X_pcapca.fit_transform(X_digits)# 可视化按真实标签着色仅用于观察效果plt.figure(figsize(8,6))plt.scatter(X_pca[:,0],X_pca[:,1],cdigits.target,cmaptab10,alpha0.6)plt.colorbar()plt.title(手写数字PCA降维2D可视化)plt.xlabel(第一主成分)plt.ylabel(第二主成分)plt.show()# 查看信息保留率print(前2个主成分保留方差比例:,pca.explained_variance_ratio_.sum())# ≈ 28%提示实际应用中可保留95%方差pcaPCA(n_components0.95)# 自动选择维度3️⃣ 异常检测实战Isolation Forest 识别异常用户fromsklearn.ensembleimportIsolationForest# 在用户数据中加入几个明显异常点X_with_outliersnp.vstack([X,[[20,20],[-15,-15],[18,-12]]])# 使用Isolation Forestiso_forestIsolationForest(contamination0.1,random_state42)outlier_labelsiso_forest.fit_predict(X_with_outliers)# 1正常, -1异常# 可视化plt.scatter(X_with_outliers[outlier_labels1,0],X_with_outliers[outlier_labels1,1],cblue,label正常用户,s30)plt.scatter(X_with_outliers[outlier_labels-1,0],X_with_outliers[outlier_labels-1,1],cred,label异常用户,s100,markerx)plt.title(异常用户检测Isolation Forest)plt.legend()plt.show()✅优势无需假设数据分布对高维数据有效 本章总结任务目标关键算法输出形式聚类分组相似样本K-Means, DBSCAN群组标签0,1,2…降维压缩特征维度PCA, t-SNE低维表示如2D坐标异常检测找出离群点Isolation Forest, One-Class SVM正常/异常标签 无监督学习的核心价值探索未知在没有先验知识时理解数据结构预处理利器为监督学习提供特征工程如聚类ID作为新特征自动化洞察无需人工标注直接生成业务分群建议掌握K-Means和PCA后可深入聚类评估指标轮廓系数、Calinski-Harabasz指数非线性降维t-SNE, UMAP半监督学习结合少量标签提升无监督效果资料关注公众号咚咚王giteehttps://gitee.com/wy18585051844/ai_learning《Python编程从入门到实践》《利用Python进行数据分析》《算法导论中文第三版》《概率论与数理统计第四版 (盛骤) 》《程序员的数学》《线性代数应该这样学第3版》《微积分和数学分析引论》《西瓜书周志华-机器学习》《TensorFlow机器学习实战指南》《Sklearn与TensorFlow机器学习实用指南》《模式识别第四版》《深度学习 deep learning》伊恩·古德费洛著 花书《Python深度学习第二版(中文版)【纯文本】 (登封大数据 (Francois Choliet)) (Z-Library)》《深入浅出神经网络与深度学习(迈克尔·尼尔森MichaelNielsen》《自然语言处理综论 第2版》《Natural-Language-Processing-with-PyTorch》《计算机视觉-算法与应用(中文版)》《Learning OpenCV 4》《AIGC智能创作时代》杜雨张孜铭《AIGC原理与实践零基础学大语言模型、扩散模型和多模态模型》《从零构建大语言模型中文版》《实战AI大模型》《AI 3.0》