仅分类神经网络的新数据

Posted

技术标签:

【中文标题】仅分类神经网络的新数据【英文标题】:New data on categorical-only neural net 【发布时间】:2018-07-18 08:48:35 【问题描述】:

我正在训练基于神经网络的分类器,使用神经网络包进行训练,使用 nnet 对变量进行单热编码。 模型上的所有变量都是分类变量。数据由 15 个标签和 6 个自变量(预测变量)组成,占 64 个虚拟变量,因此整个数据框有 79 列。 数据来自每月更新数据的 2 年记录。 该模型已准备就绪,我需要使用它来预测 2018 年 1 月的结果。 当我尝试使用模型计算新数据时会出现问题,因为一旦它被编码为虚拟变量,它就没有与训练数据相同数量的变量。

例如: 训练数据:Imagine Size 和 Speed 是预测变量,Animal 是类。 尺寸可以是(大,小) 速度可以是(快,慢) 动物可以是(狗,乌龟)

我的数据是:

 Speed    Size    Animal
 Fast     Big     Dog
 Fast     Small   Dog
 Slow     Big     Turtle

一次热编码后,使用 nnet 包中的 class.ind 函数我得到

  Fast  Slow  Big  Small  Dog  Turtle
   1     0     1     0     1      0  
   1     0     0     1     1      0   
   0     1     1     0     0      1  

当新数据没有任何具有一个因素水平的行时,问题就出现了,比如新数据只包含速度为“快”的动物,然后一旦进行虚拟编码,我只会从训练数据中得到 5 个变量而不是 6 个变量,并且我无法使用神经网络计算,因为我得到了

神经元错误[[i]] %*% weights[[i]] : nonconformable arguments

如何对新数据进行编码,使其具有所有因子水平?

【问题讨论】:

【参考方案1】:

例如,您可以为每一类动物引入一行,然后创建虚拟变量,最后删除“假”行。

【讨论】:

以上是关于仅分类神经网络的新数据的主要内容,如果未能解决你的问题,请参考以下文章

是否可以仅通过仅向其提供一个类的输入来训练二元分类神经网络?

基于Caffe ResNet-50网络实现图片分类(仅推理)的实验复现

基于Caffe ResNet-50网络实现图片分类(仅推理)的实验复现

图像分类的深度神经网络模型综述

文本分类任务简介

图神经网络上百篇论文分类整理