首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >分层抽样在主动学习中的实现

分层抽样在主动学习中的实现
EN

Stack Overflow用户
提问于 2017-04-24 02:08:50
回答 1查看 667关注 0票数 2

我正在做一个个人机器学习项目,在这个项目中,我试图在类非常不平衡的情况下将数据分类到二进制类中。我最初试图实现Hierarchical Sampling for Active Learning by S Dasgupta中提出的方法,该方法利用数据集的聚类结构来帮助积极的学习者。

然而,我正在努力实现本文中提出的算法。到目前为止,我已经写了这篇文章,但是我不确定如何继续:

代码语言:javascript
复制
from scipy.spatial.distance import pdist, squareform
from scipy.cluster.hierarchy import linkage, dendrogram
data_dist = pdist(X) # computing the distance
data_link = linkage(data_dist) # computing the linkage

数据存储在X中,正确的分类存储在y中。样本数据集:

代码语言:javascript
复制
X = np.array([[0.3,0.7],[0.5,0.5] ,[0.2,0.8], [0.1,0.9]])
y = np.array([[0], [1], [0], [1]])

(请注意,实际数据集大约大500倍)

EN

回答 1

Stack Overflow用户

发布于 2018-06-16 05:31:37

由S Dasgupta提出的用于主动学习的分层采样现在已经在Python主动学习库libact中实现。有关源代码,请参阅此link

示例(来自doccumentation):

代码语言:javascript
复制
   from libact.query_strategies import UncertaintySampling
   from libact.query_strategies.multiclass import HierarchicalSampling
   sub_qs = UncertaintySampling(
       dataset, method='sm', model=SVM(decision_function_shape='ovr'))
   qs = HierarchicalSampling(
            dataset, # Dataset object
            dataset.get_num_of_labels(),
            active_selecting=True,
            subsample_qs=sub_qs
        )
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43574711

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档