2024-09-28 05:25:17 发布
网友
我有一个很大的数据集,包含了将近5亿条推文。我正在做一些关于公司如何参与激进主义的研究,到目前为止,我已经给tweets贴上了标签,根据tweets中某些标签的存在,这些tweets可以被归为激进主义类别。你知道吗
现在,让我们假设公司在tweet上发布一个关于激进主义的话题,而没有在tweet中插入任何标签。我的代码不会对它进行分类,我的想法是只运行一个类的SVM分类器。你知道吗
这导致了以下问题:
提前感谢您的帮助!你知道吗
您已经描述了一类称为“积极无标签学习”的问题的设置。这个名字来源于这样一个事实:你有两种类型的数据:阳性(“激进主义”标签)和未标记(可能是“激进主义”,可能不是)。你的想法,使用支持向量机,是常见的,因为是随机森林。然而,就像所有的ML问题一样,神经网络正变得越来越普遍。你知道吗
pywsl是一个“弱监督”库,其中包含一些PUL实现(PUL是一种弱监督)。下面是一个在一些合成数据上使用它的示例
import numpy as np from sklearn.model_selection import GridSearchCV, StratifiedKFold from sklearn.utils.estimator_checks import check_estimator from pywsl.pul import pumil_mr from pywsl.utils.syndata import gen_twonorm_pumil from pywsl.utils.comcalc import bin_clf_err def main(): prior = .5 x, y, x_t, y_t = gen_twonorm_pumil(n_p=30, n_u=200, prior_u=prior, n_t=100) param_grid = {'prior': [prior], 'lam': np.logspace(-3, 1, 5), 'basis': ['minimax']} lambda_list = np.logspace(-3, 1, 5) clf = GridSearchCV(estimator=pumil_mr.PUMIL_SL(), param_grid=param_grid, cv=5, n_jobs=-1) clf.fit(x, y) y_h = clf.predict(x_t) err = 100*bin_clf_err(y_h, y_t, prior) print("MR: {}%".format(err)) if __name__ == "__main__": main()
另外,请看这个可能重复的问题Binary semi-supervised classification with positive only and unlabeled data set
samh对如何使用数据集有一个很好的答案,但我强烈建议对数据进行注释,这样你就有几百个否定的例子,这应该不到一个小时。根据你对“能动性”的定义有多宽泛,用标准方法来做一个好的分类器应该足够了。你知道吗
您已经描述了一类称为“积极无标签学习”的问题的设置。这个名字来源于这样一个事实:你有两种类型的数据:阳性(“激进主义”标签)和未标记(可能是“激进主义”,可能不是)。你的想法,使用支持向量机,是常见的,因为是随机森林。然而,就像所有的ML问题一样,神经网络正变得越来越普遍。你知道吗
pywsl是一个“弱监督”库,其中包含一些PUL实现(PUL是一种弱监督)。下面是一个在一些合成数据上使用它的示例
另外,请看这个可能重复的问题Binary semi-supervised classification with positive only and unlabeled data set
samh对如何使用数据集有一个很好的答案,但我强烈建议对数据进行注释,这样你就有几百个否定的例子,这应该不到一个小时。根据你对“能动性”的定义有多宽泛,用标准方法来做一个好的分类器应该足够了。你知道吗
相关问题 更多 >
编程相关推荐