我对R包'upclass'的半监督分类程序有疑问。
此过程的最终目的是标记我拥有的所有数据点,目前只有一小部分数据被标记,其余数据点未标记。因此,我的计划是使用半监督分类方法标记整个数据点。
我对半监督分类的了解是,我首先要做的是将 60%的标记数据点分配给训练数据和 40%标记数据指向测试数据。此外,据我所知,我需要将所有未标记的数据点包含在训练数据集中。然后,我可以使用仅由标记数据集组成的测试数据集来评估模型性能。
我的问题是分类程序究竟应该如何。我一直在阅读关于'upclass'包(https://cran.r-project.org/web/packages/upclass/upclass.pdf和ftp://140.247.115.226/yum-rep/CRAN/web/packages/upclass/vignettes/upclass.pdf)的文档,并且不太了解哪个命令或哪个过程用于训练模型以及用于测试模型的过程。
在第一个文档(https://cran.r-project.org/web/packages/upclass/upclass.pdf)中,根据命令的描述,它看起来第15-16页的命令'upclassifymodel'用于半监督分类。在第16页的用法中,'cltest = null',我认为这意味着没有标签可用于'Xtest'数据。 (从第8页的参数中,'Xtest'是未标记的数据)。
('upclassifymodel'代码如下:):
upclassifymodel(Xtrain, cltrain, Xtest, cltest = NULL,modelName = "EEE",
tol = 10^-5, iterlim = 1000, Aitken = TRUE, ...)
我对此部分感到非常困惑,因为那么'upclassifymodel'的命令是否仅指示'训练步骤'或'训练和测试步骤'?我很困惑,据我所知,在半监督分类程序中,未标记的数据集包含在训练步骤中,在测试步骤中,我们只使用标记数据集。随后,如果带有'upclassifymodel'的命令仅用于训练模型,那么我们是否应该使用其他验证过程单独进行测试步骤?
总而言之,我的问题是我认为半监督分类程序是否合适(首先,将60%标记数据和所有未标记数据分配给训练数据,将40%标记数据分配给测试数据,第二,训练带有标记和未标记数据集的模型,第三个用40%剩余标记数据测试模型。)和带有'upclass'包的R命令对应于该过程。理想情况下,我希望有人可以使用R'upclass'包将整个代码用于整个半监督分类程序。
我期待着你的想法。