数据集按行包含不同的项目,每列记录的样本中有一半属于正类,另一半属于负类。现在,我希望创建并训练一个模型,以将未见过的项目样本分类为正类或负类。
问题:如何处理(使用)这样的数据集?
此外,考虑到行数超过5万,列数为12个正类和12个负类,有没有模型推荐?
现在,基于提供的值,从这些数据中创建一个模型,用于将x(或y或z)分类为正类或负类。例如,如果x的值为12,则模型会将x评估为正类。
回答:
据我理解你的问题,你有一个作为输入的变量,比如说x。这个变量可以包含一些值(正例),但不能包含其他值(负例)。现在,给定x的新值,你想知道这个值是否对x来说是合理的。
你提到了训练。我猜你考虑的是神经网络。在这种情况下,只需从你的表格的第一行(x行)创建一个数据集,如下所示:
D = [ [10, 1], [11, 1], [13, 1], [14, 1], [16, 0], [15, 0], [14, 0], [16, 0],]
第一个元素是你的值。第二个元素告诉你的网络这个值是否合理(1表示合理,0表示不合理)。记得打乱你的数据集,以避免你输入网络的样本高度相关(理论上,它们应该是独立同分布的)。
你的网络将只有1个输入神经元和1个输出神经元。最后一层将使用sigmoid激活函数(因为它被限制在0和1之间)。使用二元交叉熵损失函数。
根据评论,这里是更新后的回答。
数据集必须如下所示:
D = [ [10, 0.67, 25, ..., 1], [16, 0.15, 20.5, ..., 0], [...]]
网络与上述描述的相同,但现在输入的维度等于行数。