我有一个用例,正在尝试使用机器学习解决它。假设我有一个(X1, X2, X3, X4, X5, X6)形式的输入数据和一个Y形式的输出值。请考虑以下情形,其中对于同一固定组X5具有多个(X6(X1,X2,X3,X4)值,并且它们的每个集合都相互关联),并且对于每个(YX5),您如何在训练机器学习模型时制定数据?

我只能想到以下解决问题的方法:

一世。为每组(X6X5)值设置每一行,并引入等级分类列以说这些输入数据是相关的,即:


  X1 X2 X3 X4 X5 X6 Rank Y
  
    1.5 2 3.4 5.4 6.7 7.8 1 2.3
  
     1.5 2 3.4 5.4 4.32 6.3 1 7.4
   
     1.5 2 3.4 5.4 2.1 2.3 1 3.24
  
     2.1 1 12 34 2 3.23 2 1.24
  
     1.5 2 3.4 5.4 6.7 7.8 3 24.4
  


等等......

ii。对于每个值,将X6X5特征分解为多列,但是这里的问题是我们必须限制列数,并且相关性缺少b / w X6X5

下面的链接是带有实际功能名称和输出变量的现有实时用例的代码文件和输入文件。

https://drive.google.com/open?id=178XEzd_5iPXGMBJUrqI5kvlwnDspwMhP
https://drive.google.com/file/d/18SA42kDlQto-PnR5fUpAcvXKlimGidOj/view

最佳答案

我看不到您的代码。但是,我得到了您的数据。

我认为PRIORITYSCHEDQTy数据。

而且,我使用LEADTIMEBOMINVBOMINFSWSKUINVSKUINFSWCOQTY作为x数据。您必须知道数据只是在0〜1之间进行了标准化。

比以前更好。
但是,这不是很好的预测。请参考以下结果:

[`LEADTIME`, `BOMINV`, `BOMINFSW`, `SKUINV`, `SKUINFSW`, `COQTY`] [Pre. PRIORITY] [Real PRIORITY]
[0.03333333 0.33333333 0.         0.         0.         0.05666667] [8.221004] [18.]
[0.03333333 0.33333333 0.         0.         0.         0.26666667] [8.221004] [19.]
[0.03333333 0.33333333 0.         0.         0.         0.16666667] [8.221004] [20.]
[1.         0.         1.         0.         0.         0.16666667] [8.221004] [1.]
[1.         0.         1.         0.         0.         0.26666667] [8.221004] [2.]


我认为每个字段值都不能对PRIORITY结果产生足够的差异。

在上面的示例中,LEADTIMEBOMINVBOMINFSWSKUINVSKUINFSW相同。

然后,如果LEADTIMEBOMINVSKUINV0,我尝试删除一些记录。

[0.2        0.33333333 0.         0.66666667 0.         0.33333333] [20.035915] [36.]
[0.2        0.33333333 0.         0.66666667 0.         0.46666667] [20.035915] [38.]
[0.2        0.33333333 0.         0.66666667 0.         0.6       ] [20.0352] [40.]
[0.2        0.33333333 0.         0.33333333 0.         0.16666667] [11.69006] [1.]
[0.2        0.33333333 0.         0.33333333 0.         0.26666667] [11.5476885] [2.]


但是,由于x数据显示的差异不够大,因此您也可以看到结果与实际值非常相符。

现在,我可以说您需要更多的数据功能来获得足够的学习。

07-27 18:22