• 稀疏表示--学习笔记


    1. 含义:找一个系数矩阵A以及一个字典矩阵B,使得B*A尽可能还原X,且A尽可能稀疏,        则A就是X的稀疏表示(将一个大矩阵变成两个小矩阵,达到压缩)(稀疏矩阵可以看做是特征表示)
    2. 应用:广泛应用于图像处理,模式识别和机器视觉
    3. 目的:从已有的字典中选择具有代表性的原子来表示输入图像,字典通常会是一个过完备的,所以编码后得到的向量通常只有少数几个元素是为零的,其他的都为0,所以向量称为稀疏编码。
    4. 稀疏编码学习:
      1. 目标:从给定的一组输入数据向量中学习一组基字典(每个数据向量都有稀疏线性权值与基的组合形式来表达)
      2. 学习字典的目标函数:通常不含有约束的优化问题更容易求解,所以将式子引入拉格朗日乘子:(x_i为第i个样本,B为字典矩阵,α为xi的稀疏表示,λ为大于0参数)
        1. 第一项的目标是字典矩阵与稀疏表示的线性组合尽可能还原样本;

        2. 第二项的目标是让表示尽可能稀疏;

        3. 使用L1范式的原因是L1范式正则化更容易获得稀疏解(图的引用在图中有水印)

          1. 左图L1正则化:L1有角点,所以很可能交汇点是其中一个角点(与一个坐标轴相交,对应坐标值为0,所以可以使变得稀疏)。

          2. 右图L2正则化:L2没有角点,交汇点不太可能在任何一个轴上

          3. 总结:L1正则化交点在轴上,所得的解一般只是在某个轴上有实数,另外的轴为0,从而得到稀疏解

        4. 字典学习求解策略:对字典B和样本稀疏表示A交替迭代优化
          1. 先初始化字典B
          2. 固定字典B对A进行优化
          3. 固定A对字典B进行优化
          4. 重复2,3,求得最终的A和B
      3. 无监督学习:
        1. 非概率模型:稀疏编码,自编码器,其他(如k-means)
        2. 概率(生成)模型:
          1. 可解释模型:
            1. nade:用于重建序列中的缺失值,通过读取前后部分来重建
            2. pixelrnn:使用LSTM来学习图像的分布(一次读取图像的一行,并使用一维卷积层对其进行处理,将激活值馈送到后续层中预测该行的像素,运行很慢)
          2.  不可解释模型(non-tractable models)
            1. boltzmann machines(玻尔兹曼机)(理解可参考逐步理解深度信念网络_Wsyoneself的博客-CSDN博客
            2. 变分自动编码器(VAE)
            3. 生成对抗网络
      4. 参考:稀疏表示学习_老司机的诗和远方的博客-CSDN博客

  • 相关阅读:
    性能测试 —— Jmeter定时器
    go入门学习笔记
    vector模拟(C++)和注意问题
    buuctf-[Zer0pts2020]Can you guess it?
    使用Qt验证RGB格式
    算法练习10——数组为空的最少操作次数
    CTP:关于cc和bindgen库及rust工程组织
    【JavaScript复习十】数组入门知识
    【ML】Numpy & Pandas的学习
    深度强化学习(六)(改进价值学习)
  • 原文地址:https://blog.csdn.net/weixin_45647721/article/details/126081360