机器学习笔记【Week8】

发布于:2025-06-10 ⋅ 阅读:(21) ⋅ 点赞:(0)

一、无监督学习

  • 无监督学习:与监督学习不同,数据没有标签,训练集仅包含输入特征,没有输出标签。
  • 任务:让算法发现数据的内在结构,比如聚类。
  • 应用场景
    • 市场细分:将客户分成不同群体,做个性化营销。
    • 社交网络分析:找关系密切的人群。
    • 计算机集群资源优化:根据协作频率重新分配资源。
    • 天文学研究:星系形成研究等。

二、K-均值算法

  • K-均值简介:最常用的聚类算法,把数据分为 K 个簇。

  • 算法步骤

    1. 随机选择K个聚类中心(centroids)。
    2. 对每个样本,将其归类到最近的聚类中心。
    3. 更新每个簇的聚类中心为该簇所有点的均值。
    4. 重复步骤 2 和 3 直到聚类中心不再变化。
  • 伪代码

    Repeat {
      for i = 1 to m:
        c(i) := index of closest cluster centroid to x(i)
      for k = 1 to K:
        μ_k := mean of points assigned to cluster k
    }
    

三、优化目标

  • 代价函数(畸变函数)
    J ( c ( 1 ) , … , c ( m ) , μ 1 , … , μ K ) = 1 m ∑ i = 1 m ∥ x ( i ) − μ c ( i ) ∥ 2 J(c^{(1)}, \dots, c^{(m)}, \mu_1, \dots, \mu_K) = \frac{1}{m} \sum_{i=1}^m \| x^{(i)} - \mu_{c^{(i)}} \|^2 J(c(1),,c(m),μ1,,μK)=m1i=1mx(i)μc(i)2

  • 目标是最小化所有样本到其最近聚类中心的距离平方和。

  • 每次迭代通过更新簇分配和簇中心,保证代价函数单调递减。

四、随机初始化

  • 先随机选择 K 个训练样本作为初始聚类中心。
  • K-均值可能陷入局部最小值,结果依赖初始化。
  • 常用做法:多次运行 K-均值算法,选择代价函数最小的结果。

五、选择聚类数

  • 无最佳选择 K 的方法,需结合实际应用场景判断。
  • 肘部法则(Elbow Method)
    • 运行不同 K 值的 K-均值,计算代价函数(畸变值)。
    • 画出 K 值与代价函数的曲线,寻找 “肘部” 点(代价函数下降趋势变缓处)。
    • “肘部” 对应的K值常作为较合理的聚类数。

参考资料

相似度/距离计算方法

  • 闵可夫斯基距离(Minkowski distance)
    D ( x , y ) = ( ∑ i = 1 n ∣ x i − y i ∣ p ) 1 / p D(x,y) = \left( \sum_{i=1}^n |x_i - y_i|^p \right)^{1/p} D(x,y)=(i=1nxiyip)1/p

    • 欧式距离是 p = 2 p=2 p=2 特例。
  • 杰卡德相似系数(Jaccard similarity)
    J ( A , B ) = ∣ A ∩ B ∣ ∣ A ∪ B ∣ J(A,B) = \frac{|A \cap B|}{|A \cup B|} J(A,B)=ABAB

  • 余弦相似度(Cosine similarity)
    cos ⁡ ( θ ) = x ⋅ y ∥ x ∥ ∥ y ∥ \cos(\theta) = \frac{x \cdot y}{\|x\| \|y\|} cos(θ)=x∥∥yxy

  • Pearson相关系数

    • 测量两个变量的线性相关性。

聚类的衡量指标

  • 均一性(Homogeneity)
    一个簇中只包含单一类别的样本。
  • 完整性(Completeness)
    同一类别的样本尽可能被归为同一簇。
  • V-measure
    均一性和完整性的调和平均。
  • 轮廓系数(Silhouette Coefficient)
    衡量聚类的紧密度和分离度,值范围 [-1,1],越接近1越合理。
  • ARI (Adjusted Rand Index)
    衡量两个聚类结果的相似度。

六、数据压缩

  • 目的:减少特征数量,降低存储和计算成本。
  • 示例:长度用厘米和英寸两个特征,冗余,可以降至一个维度。
  • 降维可以简化模型,去除冗余信息,提高算法效率。

七、数据可视化

  • 高维数据难以直观展示,降维到2维或3维方便可视化。
  • 注意:降维后新特征的意义需要人为解释。

八、主成分分析问题(PCA)

  • 目标:找到方向向量,使数据投影到该方向时,投影误差最小。
  • 投影误差指数据点到该方向向量垂直距离的平方和。
  • PCA与线性回归区别:
    • PCA最小化投影误差,不做预测。
    • 线性回归最小化预测误差。
  • PCA可用于数据压缩,保持最大数据方差。

九、主成分分析算法

  • 步骤
    1. 均值归一化:对每个特征减去均值,除以标准差。
    2. 计算协方差矩阵 Σ = 1 m ∑ i = 1 m x ( i ) x ( i ) T \Sigma = \frac{1}{m} \sum_{i=1}^m x^{(i)} x^{(i)T} Σ=m1i=1mx(i)x(i)T
    3. 奇异值分解(SVD) 计算特征向量矩阵 U U U
    4. 选取前 k k k 个特征向量构成矩阵 U reduce U_{\text{reduce}} Ureduce,用于降维。
    5. 新数据表示: z ( i ) = U reduce T x ( i ) z^{(i)} = U_{\text{reduce}}^T x^{(i)} z(i)=UreduceTx(i)

十、选择主成分的数量

  • 选择使得保留的方差比例满足一定阈值(例如 95%)。

  • 计算投影后的方差占总方差比例:
    ∑ i = 1 k S i i ∑ i = 1 n S i i ≥ threshold \frac{\sum_{i=1}^k S_{ii}}{\sum_{i=1}^n S_{ii}} \geq \text{threshold} i=1nSiii=1kSiithreshold