百科问答小站 logo
百科问答小站 font logo



如何将某个分布作为机器学习的特征? 第1页

  

user avatar   wenmiau 网友的相关建议: 
      

实际上这是非常常用的做法,比如我们要采用用户的历史行为数据作为特征,这类特征中有大量计数性的,并且时间不稳定。如果我们仅仅采用某个时间窗口内的数据,那数据噪声就会显得特别大,在最终模型中的数据贡献因此被削弱。

简单方法:

  1. 使用数据直方图作为特征。直方图也就是将数据分布范围划分为有限的区间,然后对区间内的数据进行计数。这样,每个区间可以单独作为一个新的特征,每个区间内的计数就是这个新特征的值。这种做法会导致特征数量大量增加,也会导致模型的训练变得不稳定,更难以收敛。
  2. 简化直方图特征。比如特征的均值、方差、最小值、最大值、中值等,或者人工划分更少的区间进行离散化。比如某个计数类特征,通常这类特征是非常长尾的[1],那么可以使用对数变换进行处理:
       -- sql cast(log(1+ coalesce(x,0))*10 as bigint) as x     

这种方法不会增加特征的数量,模型训练因此会相对更容易。但离散化的办法需要对数据分布具有深刻的理解,不然对模型结果的贡献可能是负面的。

复杂方法

在机器学习里面,有很多成熟方法可以快速提取数据的分布或者分布差异。比如KL散度(Kullback-Leibler Divergence)[2][3] . 假如我们有一个目标分布,使用KL散度计算样本数据分布跟目标分布之间的差异[3]可以作为一个新的特征。

既然KL散度可以这样处理,那么自然地,其他关于分布的度量,包括Wasserstein Distance等也可以这样处理[4][5].

实际上,缩小生成数据和训练样本数据直接的分布差异是我们在GAN中最根本的一个目标[6]:

, 因此在GAN中我们经常需要计算分布和分布差异。而分布,经过一定的处理,可以变成人可以理解的具有语义意义的“特征”[7]。隐空间去纠缠(Disentangling Latent Space)[8][9][10]便是一种这样的方法。

通过隐空间去纠缠(正交化等),我们可以让隐空间向量的每个维度具有特定的意义。这样,我们让数据过一遍模型,得到隐空间向量,就可以作为一种关于数据分布的特征。这类方法计算量大,但仅仅在训练中或者数据预处理时候需要进行计算,在做模型推理时候不需要,因此并不会增加模型推理开销。实际上,这类方法目前已经在人脸换脸的应用中广泛使用了。

参考

  1. ^ Zhu, X., Anguelov, D., & Ramanan, D. (2014). Capturing long-tail distributions of object subcategories. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (pp. 915-922).
  2. ^ Kullback, S., & Leibler, R. A. (1951). On information and sufficiency. e Annals of Mathematical Statistics, 22 (1): 79–86.
  3. ^ a b Hershey, J. R., & Olsen, P. A. (2007, April). Approximating the Kullback Leibler divergence between Gaussian mixture models. In 2007 IEEE International Conference on Acoustics, Speech and Signal Processing-ICASSP'07 (Vol. 4, pp. IV-317). IEEE.
  4. ^ Peyré, G., & Cuturi, M. (2019). Computational optimal transport: With applications to data science. Foundations and Trends® in Machine Learning, 11(5-6), 355-607.
  5. ^ Arjovsky, M., Chintala, S., & Bottou, L. (2017, July). Wasserstein generative adversarial networks. In International conference on machine learning (pp. 214-223). PMLR.
  6. ^ Goodfellow, I., Pouget-Abadie, J., Mirza, M., Xu, B., Warde-Farley, D., Ozair, S., ... & Bengio, Y. (2014). Generative adversarial nets. Advances in neural information processing systems, 27.
  7. ^ Huang, E., & Gupta, S. (2020). Style is a Distribution of Features. arXiv preprint arXiv:2007.13010.
  8. ^ Shen, Y., Gu, J., Tang, X., & Zhou, B. (2020). Interpreting the latent space of gans for semantic face editing. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (pp. 9243-9252).
  9. ^ Zheng, Z., & Sun, L. (2019). Disentangling latent space for vae by label relevant/irrelevant dimensions. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (pp. 12192-12201).
  10. ^ Liu, K., Cao, G., Zhou, F., Liu, B., Duan, J., & Qiu, G. (2020). Disentangling Latent Space for Unsupervised Semantic Face Editing. arXiv preprint arXiv:2011.02638.



  

相关话题

  为什么中文 NLP 数据集这么少? 
  如何评价 DeepMind 公布的可生成算法竞赛解题代码的 AlphaCode? 
  在Lasso中,oracle property指的是什么性质? 
  自学深度学习是怎样一种体验? 
  深度学习底层开发对数学有哪些要求? 
  在统计学领域有哪些经典奠基性的论文? 
  如何看待 Larrabee 之父 Tom Forsyth 重加入 Intel?英特尔为何下注独立显卡? 
  NTIRE2017夺冠的EDSR去掉了Batch Normalization层就获得了提高为什么? 
  怎么培养数据分析的能力? 
  如何看待台湾旅游大巴车祸致26人遇难,陆客在台旅游出事是否太多? 

前一个讨论
2021年你读了哪些觉得比较好的计算机书籍?
下一个讨论
Facebook 的人工智能实验室 (FAIR) 有哪些厉害的大牛和技术积累?





© 2024-11-08 - tinynew.org. All Rights Reserved.
© 2024-11-08 - tinynew.org. 保留所有权利