在做某些实验时,我们通常在70%上进行训练,在33%上进行测试。但是,当你的模型投入生产时会发生什么呢?可能会发生以下情况:
训练集:
-----------------------
| Ser |Type Of Car |
-----------------------
| 1 | Hatchback |
| 2 | Sedan |
| 3 | Coupe |
| 4 | SUV |
-----------------------
在一次热编码之后,我们得到的结果如下:
-----------------------------------------
| Ser | Hatchback | Sedan | Coupe | SUV |
-----------------------------------------
| 1 | 1 | 0 | 0 | 0 |
| 2 | 0 | 1 | 0 | 0 |
| 3 | 0 | 0 | 1 | 0 |
| 4 | 0 | 0 | 0 | 1 |
-----------------------------------------
我的模型经过了训练,现在我想在多个经销商之间部署它。该模型针对4个特征进行了训练。现在,某经销商只销售轿车和跑车:
测试集:
-----------------------
| Ser |Type Of Car |
-----------------------
| 1 | Coupe |
| 2 | Sedan |
-----------------------
1-热编码将导致:
---------------------------
| Ser | Coupe | Sedan |
---------------------------
| 1 | 1 | 0 |
| 2 | 0 | 1 |
| 3 | 1 | 0 |
---------------------------
在这里,我们的测试集只有2个特性。为每一个新的经销商建立一个模型是没有意义的。在生产中如何处理这样的问题?有没有其他的编码方法可以用来处理分类变量?
https://stackoverflow.com/questions/51505295
复制相似问题