怎么理解Self-supervised learning?

  统计/机器学习 监督式学习 无监督学习 半监督学习    浏览次数:3837        分享
0

怎么理解Self-supervised learning?它是supervised和unsupervised的混合体呢还是等价于semi-supervised呢?

 

fkj   2019-08-13 14:08



   2个回答 
1

self-supervised不同于semi-supervised。Chollet的keras的那本书里的原话是

“This is actually a specific instance of supervised learning, but it different enough that it deserves its own category. Self-supervised learning is supervised learning without human-annotated labels. There are still labels involved (since the learning has to be supervised by something), but they are generated from the input data itself, typically using a heuristic algorithm. You can think of it as supervised learning without any humans in the loop. For instance, "autoencoders" are a well-known instance of self-supervised learning, where the generated targets are... the input themselves, unmodified. In the same way, trying to predict the next frame in a video given past frames, or the next word in a text given previous words, would be another instance of self-supervised learning (temporally supervised learning, in this case: supervision comes from future input data). Note that the distinction between supervised, self-supervised and unsupervised learning can be blurry sometimes—these categories are more of continuum without solid frontiers. Self-supervised learning can be reinterpreted as either supervised or unsupervised learning depending on whether you pay attention to the learning mechanism or to the context of its application.”


大意就是说self-supervised和监督式、无监督式的区别是模糊的。self-supervised的意思就是不需要人工给数据打标签,自己从training data里学习,他举的例子是自编码器。我个人觉得嘛,自编码器更多的还是无监督式的吧。

SofaSofa数据科学社区DS面试题库 DS面经

卡里昂   2019-10-23 14:11

1

这里有两个层次的supervise,它们的主语分别是是“人”和“label”。第一层主语是人,按是否人或手工label参与到学习,分为supervised/unsupervised。第二层主语是label,把unsupervised再细分,按有无自动生成的label用于loss function,分为self supervised和unsupervised,比如autoencoder和kmeans。

如果主语不明确,不知道谁去监督,概念就混淆了。

SofaSofa数据科学社区DS面试题库 DS面经

Zealing   2019-10-23 21:46



  相关讨论

强化学习(增强学习)是监督式学习还是无监督式学习?

能否用聚类算法来实现分类任务?

只有阳性样本的情况下该如何训练模型?

主动学习里的oracle是什么意思?

LPA算法问题

one class SVM到底是无监督还是有监督学习?

什么是K-Modes(K众数)聚类法?

dbscan 中的参数值如何确定?

层次聚类中的Ward's method是什么意思

软聚类,硬聚类?

  随便看看

不用洛必达法则证明sin x比上x的极限是1

Pandas怎样对dataframe中的一个时间列进行排序?

如何获取pyspark DataFrame的行数和列数?

plt.scatter plot怎么让不同的类别有不同的颜色

修正R方(adjusted R square)是什么?