如何使用此smoreg模型手动预测未来价格?

时间:2015-10-01 15:24:33

标签: model machine-learning weka prediction forecasting

我有超过1000个实例的历史牲畜价格数据和3个属性。我使用了WEKA(怀卡托环境知识分析)工作台。我已经为训练数据和测试数据创建了ARFF文件。当我跑步时,我得到预测的价格,它给了我SMOreg模型。

我的问题是如何使用这个等式,这样当我输入新数据时,它应该给我预测的价格?

该模型给出了这个等式;

Predicted price =  + 0.2209 * (normalized) SEX  - 0.3164 * (normalized) GRADE  +  0.3937

在SEX下,1为女性,2为男性。在等级下,2是重量等于或高于100kg,而3是重量低于100kg。

问题在于,当我尝试使用这个等式代替性别和等级值时,它并没有给出真实的预测价格。 后来我想在Android上使用公式,以便可以使用应用程序进行价格预测。

以下是;
 1. ARFF文件的一部分。
 2.来自训练数据的SMOreg模型
 3.预测价格的一部分

ARFF   
    @relation trainingDataset  
    @attribute SEX numeric  
    @attribute GRADE numeric  
    @attribute PRICE numeric  

    @data  
    1 , 2 , 364000  
    1 , 3 , 306000   
    2 , 2 , 530000   
    2 , 3 , 336000   
    1 , 2 , 400000   
    1 , 3 , 277000   
    2 , 2 , 558000   
    2 , 3 , 340000   
    1 , 2 , 356000   
    1 , 3 , 302000 

运行时,它会提供以下输出

SMOreg
weights (not support vectors):  
 +       0.2209 * (normalized) SEX  
 -       0.3164 * (normalized) GRADE  
 +       0.3937   

内核评估数:562330(缓存95.457%)

Actual Class,SMO Predicted  
648000.0, 606226.8428201795  
360000.0, 401190.9898681232  
416000.0, 463105.0101318615  
324000.0, 258069.15717980522  
648000.0, 606226.8428201795  

...........................

请帮忙

1 个答案:

答案 0 :(得分:2)

你必须对预测进行去标准化。

可用数据中的某处应该是标准化参数,原始数据的均值和stdev(标准偏差)。您的数据都已标准化,可能使用转换

y' = (y - mean) / stdev

其中y是原始价格,而y'是标准化价格。

现在你必须扭转这个过程。解决y:

y = y' * stdev + mean

对每个预测执行此操作,您应该具有所需的预测价格。