我正在努力改进现有的监督分类器,以将{蛋白质}序列归为特定类别(神经肽激素前体)或不属于特定类别。
在大约1300万个蛋白质序列的背景下(“未知/注释不充分的背景”),或大约100,000个经过审查的相关蛋白质,已知的“阳性”蛋白质带有多种属性(但很少有显式注释的蛋白质) “负”方式)。
我以前的实现将其视为二进制分类问题:阳性集=标记为Neuropeptides的蛋白质。阴性集:从剩余的蛋白质中随机抽取1300个样本(总计),这些蛋白质的长度方向分布大致相似。
那行得通,但是我想大大提高机器的辨别能力(目前,在多个随机采样的负数集上,按CV测得的精度,AUC,F1约为83-86%)。
我的想法是:1)使这成为一个多类问题,选择2-3种不同类型的蛋白质,这些蛋白质将根据其特性/功能类别以及(也许)另一组随机采样的样本确定为阴性。(这里的优先级将是负集合,其特征/特征与正集合相似,同时仍具有定义的特征)。2)一次课堂学习-很好,但是据我了解,它仅用于异常检测,并且其性能比歧视性方法差。
*)我听说过PU学习,听起来很整洁,但是我正在编程N00b,而且我不知道它的任何现有实现。(在Python / sci-kit中学习)。
那么,方法1在理论POV中是否有意义?有没有最好的方法来制作多个负数集?(我也可以简单地使用大量[50K]的“阴性”蛋白,但是它们彼此之间非常不同,因此我不知道分类器如何将它们作为一个大的不平衡混合物来处理)。谢谢!