2016-06-21 102 views
-1

我是ANN的新来者,我希望有人能帮助我理解标准化的概念,举例如下。最好在PHP中,只是一个小例子可以做。人工神经网络标准化

比方说>>

Rooms    Area    Type 
    1     350    Apartment 
    1     800    Apartment 
    3     300    Apartment 
    8     1500    House 
    7     900    house 
    1     800    flat 

我怎样才能规范这个数据?大部分阅读ANN的读者都认为输出必须是0或1,这些值来自哪里?

我希望系统能够分辨房屋和公寓之间的区别。 请给我一个在PHP代码的例子。 提前感谢。

+0

有了这个小数据,你可以规范化你想要的东西,你的神经网络永远不会解决它。 :-)规范化并不困难:v'=(v - mean)/ std dev。你可以安装这个:http://php.net/manual/en/book.stats.php让std dev的计算稍微简单一点......但它很简单,你不需要它。 –

+0

我刚给你一个简单的例子,我可以填充超过10,000个。我只是试图给你一个例子,在这里可以有很多单位与不同的测量风格或不同的房间号码。这就是为什么我需要使用ANN来做到这一点。 –

+0

好吧,试试看,在PHP中做些什么。如果遇到特定问题,您可以在此提问。 –

回答

0

由于这是一个分类问题(从数据看来),因此您无需对输出进行归一化。所以,你只需要标准化输入值。如果您在使用Python numpy的,您可以通过以下两种方式正常化它:

  1. 高斯正常化(0平均和1个STD):这个归一化数据,具有零均值和ST偏差等于1。

    XNOR =(xx.mean())/ x.std()

  2. (0,1)范围归一化:此数据归一化到范围(0,1)。

    XNOR =(xx.min())/(x.max() - x.min())

向量化的输出,则可以使用一个VS-所有分类或二进制编码分类。我个人会推荐一对一分类。你可以参考这里https://en.wikipedia.org/wiki/Multiclass_classification