在类型表数据上训练神经网络

时间:2014-10-22 09:01:10

标签: matlab neural-network numeric

我加载了一个包含数值和有限文本值的2000个实例的巨大CSV文件(某些属性的值为'是''否''可能'。以上数据是使用Matlab中的readtable导入的。 我想在上述数据上训练神经网络。

我使用了神经网络gui,我无法将新表视为加载数据的选项之一。

因此,我计划为每个属性的文本值分配特定的数值(每个'是'将为1,每个'否'将为0)并使其成为矩阵,以便GUI识别我的数据。 / p>

或者是否有更好的方法来训练上述数据的神经网络。

2 个答案:

答案 0 :(得分:0)

您的想法不仅是正确的方法,而且是唯一的方法。神经网络使用数字,因此必须将名义值映射到数字以使其起作用。但是,您应该注意一件事:输入形式和间隔的每个属性的范围。如果您规范化属性,则范围无关紧要。因此,如果您有/否,您可以将它们映射到0 / 1,1 / 0或-100/200。没关系,因为它们是它们形成的区间的两端。

但是,通常名义值形成一个范围。在这种情况下,您创建的数值的排序应保留标称值的顺序。所以在你的情况下,如果你有“no / maybe / yes”,它们应该映射到[1,2,3]或[-1,0,1]或[100,0,-100]或其他任何东西保留订购。但是,如果您使用映射[no-> 0,yes-> 1,maybe-> 2],则网络无法将名义排序正确映射到数字区间,因此该属性会将错误信息提供给网络

答案 1 :(得分:0)

警告:如果您在名义上有两个以上的选项并且您不知道它们是如何分配的,那么只有在该类中假设线性趋势时,-1,0,1才可行。我的意思是,"也许"是和#34;是"并且没有"。如果不能,则创建3个二进制变量更为可行("是","不"和"可能")。