本站消息

站长简介/公众号


站长简介:逗比程序员,理工宅男,前每日优鲜python全栈开发工程师,利用周末时间开发出本站,欢迎关注我的微信公众号:幽默盒子,一个专注于搞笑,分享快乐的公众号

  价值13000svip视频教程,python大神匠心打造,零基础python开发工程师视频教程全套,基础+进阶+项目实战,包含课件和源码

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2020-09(3)

2020-10(71)

【主动学习 02】Cost-Effective Active Learning from Diverse Labelers (IJCAI‘17)

发布于2021-08-28 18:49     阅读(1090)     评论(0)     点赞(5)     收藏(0)



Cost-Effective Active Learning from Diverse Labelers(IJCAI’17)

这篇文章指出在主动学习过程中标注数据时要考虑“Oracle are cost-sensitive”,有高质量、高成本的专家和低质量、低成本的专家可以选择来标注。这篇文章是的假设是:有多个专家,擅长的领域知识不同、质量也不同。

在这里插入图片描述

假设现在又一个小的有标签数据集 L = { ( x i , y i ) } i = 1 n l L=\left\{\left(\mathrm{x}_{i}, y_{i}\right)\right\}_{i=1}^{n_{l}} L={(xi,yi)}i=1nl,有 n l n_l nl个样本;无标签样本集 U = { x j } j = n l + 1 n l + n u U = \left\{\mathrm{x}_{j}\right\}_{j=n_{l}+1}^{n_{l}+n_{u}} U={xj}j=nl+1nl+nu n u n_u nu个样本,一般 n l ≪ n u n_{l} \ll n_{u} nlnu,还有一个标注专家待选集 A = { a 1 , ⋯   , a m } A=\left\{a_{1}, \cdots, a_{m}\right\} A={a1,,am}。令 y ^ i j \hat{y}_{i j} y^ij时专家 a i a_i ai给样本 x j x_j xj提供的标签。

主动学习的每次迭代中,算法选择一个样本-专家对 ( x ∗ , a ∗ ) \left(\mathrm{x}^{*}, a^{*}\right) (x,a),然后向专家 a ∗ a^* a查询 x ∗ x^* x的标签,选择样本和标注者都基于一个评价函数 Q Q Q
( x ∗ , a ∗ ) = arg ⁡ max ⁡ x ∈ U , a ∈ A Q ( x , a ) \left(\mathrm{x}^{*}, a^{*}\right)=\underset{\mathrm{x} \in U, a \in A}{\arg \max } Q(\mathrm{x}, a) (x,a)=xU,aAargmaxQ(x,a)
所以任务就是设计评价函数 Q ( x , a ) Q(\mathrm{x}, a) Q(x,a),来衡量 ( x , a ) (\mathrm{x}, a) (x,a)的cost-effectiveness。

如何设计函数 Q Q Q?要综合考虑三个因素:样本有用、标签准确、专家性价比。结合起来

1、Usefulness of the Instance

对于二分类问题,就选概率接近0.5的:
r ( x ) = ∣ p ( y = 1 ∣ x ) − 0.5 ∣ (1) r(\mathrm{x})=|p(y=1 \mid \mathrm{x})-0.5|\tag {1} r(x)=p(y=1x)0.5(1)
用logistic regression来分类:
p ( y = 1 ∣ x ) = 1 1 + exp ⁡ ( − f ( x ) ) p(y=1 \mid \mathrm{x})=\frac{1}{1+\exp (-f(\mathrm{x}))} p(y=1x)=1+exp(f(x))1
其中 f ( x ) = w ⊤ x + b f(\mathrm{x})=\mathrm{w}^{\top} \mathrm{x}+b f(x)=wx+b。对于多分类问题:
r ( x ) = 1 − max ⁡ y ∈ Y p ( y ∣ x ) (2) r(\mathrm{x})=1-\max _{y \in \mathcal{Y}} p(y \mid \mathrm{x})\tag {2} r(x)=1yYmaxp(yx)(2)

2、Accuracy of the Labeling

q i ( x j ) = 1 t ∑ x k ∈ N ( x j , t ) S ( x j , x k ) I [ y k = = y ^ i k ] (3) q_{i}\left(\mathrm{x}_{j}\right)=\frac{1}{t} \sum_{\mathrm{x}_{k} \in N\left(\mathrm{x}_{j}, t\right)} S\left(\mathrm{x}_{j}, \mathrm{x}_{k}\right) I\left[y_{k}==\hat{y}_{i k}\right]\tag {3} qi(xj)=t1xkN(xj,t)S(xj,xk)I[yk==y^ik](3)

其中 N ( x j , t ) N\left(\mathrm{x}_{j}, t\right) N(xj,t)返回原始有标签数据集中 x j x_j xj最附近的 t t t个邻居, S ( x j , x k ) S\left(\mathrm{x}_{j}, \mathrm{x}_{k}\right) S(xj,xk)衡量 x j x_j xj x k x_k xk的相似度, I [ ⋅ ] I[\cdot] I[]是指示函数,相等返回1,否则返0。这篇文章里就用欧氏距离。显然, x j x_j xj t t t个邻居中,更像 x j x_j xj的贡献更多的estimation of q i ( x j ) q_{i}\left(\mathrm{x}_{j}\right) qi(xj)

3、Cost of the Query

高质量标注者高成本。标注者 a i a_i ai标注一个标签的成本 c i c_i ci
c i = g ( 1 n l ∑ j = 1 n l I [ y j = = y ^ i j ] ) (4) c_{i}=g\left(\frac{1}{n_{l}} \sum_{j=1}^{n_{l}} I\left[y_{j}==\hat{y}_{i j}\right]\right)\tag {4} ci=g(nl1j=1nlI[yj==y^ij])(4)
其中 1 n l ∑ j = 1 n l I [ y j = = y ^ i j ] \frac{1}{n_{l}} \sum_{j=1}^{n_{l}} I\left[y_{j}==\hat{y}_{i j}\right] nl1j=1nlI[yj==y^ij]计算标注者 a i a_i ai L L L的准确率, g ( ⋅ ) g(\cdot) g()表述了成本和准确率之前的关系,比如: g ( z ) = z g(z)=z g(z)=z

三合一,Cost-Effectiveness

综合以上三点, Q Q Q函数就设计出来了:
Q ( x j , a i ) = q i ( x j ) ⋅ r ( x j ) c i (5) Q\left(\mathrm{x}_{j}, a_{i}\right)=\frac{q_{i}\left(\mathrm{x}_{j}\right) \cdot r\left(\mathrm{x}_{j}\right)}{c_{i}}\tag {5} Q(xj,ai)=ciqi(xj)r(xj)(5)
选instance-labeler pair:
( x ∗ , a ∗ ) = arg ⁡ max ⁡ x j ∈ U , a i ∈ A Q ( x j , a i ) (6) \left(\mathrm{x}^{*}, a^{*}\right)=\underset{\mathbf{x}_{j} \in U, a_{i} \in A}{\arg \max } Q\left(\mathrm{x}_{j}, a_{i}\right)\tag {6} (x,a)=xjU,aiAargmaxQ(xj,ai)(6)
算法流程:

实验结果:

黑线ALC是每次只选在全局数据最可靠的标注者。在UCI数据集上本文的效果最好,在现实世界数据集上也没好太多。

原文链接:https://blog.csdn.net/yanguang1470/article/details/119929109






所属网站分类: 技术文章 > 博客

作者:站起来

链接:https://www.pythonheidong.com/blog/article/1028640/537fbba75d0031e227ff/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

5 0
收藏该文
已收藏

评论内容:(最多支持255个字符)