• 2.19学习笔记|2.20学习笔记


    1.在VAE生成模型中,它包括推断和生成过程,那么如果通过一个训练集训练好了整个模型,是否可以将生成模型单独使用?也就是z随机生成,隐空间随机,那么生成的数据是可用的吗?生成的数据是有意义的吗?

    最简单的办法就是使用mnist生成数据,看生成的是否有规律了。

    这个是下列代码生成的结果:

     z是通过随机取样获得的,而不是在手写数据中学习到的,结果如下:

     效果很一般。

    想起来那篇论文是使用生成的数据:

    它是给定不同参数生成的数据集的。反正这里就是只要有模型参数,那么就能生成。那么在VAE中,有了模型参数,不就可以随机生成了吗?但是其实图像和RNA-seq是不同的?当然是ok的,但是这样的话就没有什么评价标准了啊。嗯是的。

    下面是训练好了模型之后,随机生成z然后进行生成过程:

     结果如下:

      2.如果用数据集A生成了B和C,那么都是可以的吗?B和C等会因为太过相似而只能选择其中一个吗?

    在splat中尝试使用同一个真实数据集,生成两次,使用不同的seed,看是否会生成同样的。

    http://www.bioconductor.org/packages/release/bioc/vignettes/splatter/inst/doc/splatter.html

    #我都在想些什么,,好像这没啥用啊。

    > set.seed(1)
    > sce <- mockSCE()
    > sce
    
    #我尝试使用同样的sce那么,生成的数据是一样一样的。
    > c0[1:5,1:5]
          Cell1 Cell2 Cell3 Cell4 Cell5
    Gene1    27    54   141    26   107
    Gene2     1    25     0     1     0
    Gene3   782   738   386   334   130
    Gene4    58    16    21    86     6
    Gene5    11    24    18    20    34
    > c1[1:5,1:5]
          Cell1 Cell2 Cell3 Cell4 Cell5
    Gene1    27    54   141    26   107
    Gene2     1    25     0     1     0
    Gene3   782   738   386   334   130
    Gene4    58    16    21    86     6
    Gene5    11    24    18    20    34

    当我设置不同的seed时,设置seed为20,然后mock生成的数据集的参数有差异,但是差异不是特别大,

    > c2[1:5,1:5]
              Cell_001 Cell_002 Cell_003 Cell_004 Cell_005
    Gene_0001        0        5        7      276       50
    Gene_0002       12        0        0        0        0
    Gene_0003       97      292       58       64      541
    Gene_0004        0        0        0      170       19
    Gene_0005      105      123      174      565     1061
    > c0[1:5,1:5]
          Cell1 Cell2 Cell3 Cell4 Cell5
    Gene1    27    54   141    26   107
    Gene2     1    25     0     1     0
    Gene3   782   738   386   334   130
    Gene4    58    16    21    86     6
    Gene5    11    24    18    20    34

    看来生成的数据还是有较大差异的,因为给的参数不同。

    3.由1我想到,那么scvi这么复杂,它是怎么训练的呢?训练过程是怎样的?

     batch_size为128,然后epoch默认为400,每一次epoch都会完整地训练一次数据:

     2-20学习记录————————————

    1.稀疏AE

    https://blog.csdn.net/u010278305/article/details/46881443

    对稀疏AE的主要都是针对特征提取,说它的特征提效果很好。

     从这个叙述中,我们可以看出,它主要是针对降维,只有当原始数据x存在的时候,降维才有意义,如果只将生成部分单独拿走,似乎没有什么意义。也就是现有的文章sparseAE都是用来做特征提取的,不是生成。。

    https://medium.com/@syoya/what-happens-in-sparse-autencoder-b9a5a69da5c6

    在损失函数中所加的另一项是正则化项,(是的,因为dropout就是对神经网络的正则化方法,能够防止过拟合。)

     随机失活的直观理解是,如果更少的隐层节点能够达到和原来一样的效果,那么说明这更少的隐层节点已经能够学到真正的特征。

    2.VAE的z生成

    z的生成我还以为是所有维度都是用同一个μ和σ的,刚才发现不是,z的每一个维度都需要用μ和σ,而这个是从网络中学习输入数据的,所以可能乱编就效果不好。

    而且用GAN做数据生成我也不了解啊。

    3.AE能用于数据生成吗?

  • 相关阅读:
    智能大数据分析平台用例
    Mapreduce实例——去重
    Mapreduce实例——求平均值
    智能大数据分析平台数据流图
    .net程序设计文件操作
    2021.11.17 Guns框架基本应用
    Guns框架基本知识
    2021.11.16 .net——Windows应用程序开发
    1129每日博客
    1126每日博客
  • 原文地址:https://www.cnblogs.com/BlueBlueSea/p/12334048.html
Copyright © 2020-2023  润新知