2016-04-23 104 views
2

尝试向量化我的要素时遇到了一个棘手的问题。我有这样一个特点:数据矢量化

  • 大部分是数字,如0,1,33.3,100等
  • 一些的是空的,这表示未设置。
  • 其中一些是“自动”,这意味着它适应上下文。

现在我的问题是,如何将这个特征有效地编码成矢量?我可以做的一件事就是将所有数值都视为分类,但这会导致特征空间的爆炸,也不利于表示类似的数据点。我该怎么办?

谢谢!

---算法/模式,我正在使用---

这是LSTM(长短期记忆)神经网络。目前,我用下面的方法去说,我有2个数据点: col1 entry1: 1.0 entry2: auto

它会被编码成: col1-a col1-b entry1: 1.0 0 entry2: dummy 1 所以COL1-B将代表无论是自动还是不行。虚拟数字将是所有数字数据的中位数。这会工作吗?

此外,我对于每个数值都有一个关联的单位,所以还有另一个栏的值为'px','pt',在这种情况下,如果我将单位提取到另一列?它们在关联时具有实际意义(数字+单元),但是NN可以注意到,如果它们处于不同的维度上?

回答

1

这取决于你将使用什么类型的算法。如果你想使用类似关联规则分类的东西,那么你将不得不把所有的变量都视为分类数据。如果你想使用逻辑回归,那就不需要了。你必须提供更多的细节才能得到更好的答案。

编辑 我在阅读完编辑后做了一些编辑。

这听起来像你有什么是至少合理的。我读过书籍,在这些书籍中,用户使用均值/中位数/模式填写数字数据的缺失值。至于哪一个特定的作品最适合你,我不知道。你可以尝试用每个版本来训练你的分类器吗?

至于你的问题与“自动”列,这听起来像你想要做一些类似的运行regression with categorical data。我对神经网络没有多少经验,但是我知道如果你使用逻辑回归等方法,那么这就是你想要使用的方法。希望这给你一个你必须研究的想法。至于将所有的数字数据视为分类数据,您也可以这样做,但您必须首先对其进行归一化处理。你可以做一些像min-max normalization之类的东西,然后把数字的整数部分取出来。现在您的数据将与分类数据相同。

+0

非常感谢泰勒!我编辑了这个问题,并询问了像'11px','12pt'这样的矢量化。这现在更有意义了吗? – MrW

+0

@MrW看我的编辑。 –

+0

非常感谢泰勒! – MrW