如何在python之外使用Vowpal Wabbit模型

时间:2016-10-26 18:42:57

标签: python machine-learning vowpalwabbit

我有一个关于如何在python之外使用VW生成的值的问题。例如,我有以下"可读输出"来自大众:

    $('#upload-category').on('submit', function(){
    var getCategory = '';
    var getCategoryName = $('#insert-category').val();

    $('#select-category').change(function(){
        var selectedCat = $('#select-category option:selected');
        getCategoryName = selectedCat;
    })

    var items = {
        'categorie': getCategory,
        'nume':getCategoryName
    }

    $.ajax({
        url:'category.php',
        type: 'post',
        contentType: 'application/json',
        dataType: 'json'
        data:JSON.stringify(items)
    });

});

如果我有以下数据点:

Feature1:221152:-0.0342143
Feature2:115611:-0.003415
Feature3:230533:-0.0162561
Feature4:222340:-0.0244261
Constant:116060:-0.74116
Feature5:240651:0.0662623
Feature6:201380:0.568669
Feature7:168515:0.00426367
Feature8:107643:-0.00488802
Feature9:25461:0.0186098
Feature10:172852:-0.00895446

当我通过大众进行测试时,这给了我以下结果:

1 1 'datapoint1 | Feature10:0 Feature5:0 Feature3:0 Feature7:22 Feature4:7 Feature6:0.603153898117 Feature2:0 Feature1:0 Feature8:0 Feature9:0

但是当我尝试手动重新创建最终值时,我得到了一个非常不同的结果:

0.383351 datapoint1

我正在使用逻辑丢失功能。有没有人知道我们应该如何使用大众在大众框架之外生成的值?我不知道应该如何应用这些生成的值。

1 个答案:

答案 0 :(得分:1)

如果您对结果应用了logistic transform(因为您使用了逻辑回归)

f(y) = 1/(1+e(-y)) = 1/(1+exp(-(-0.475347))) = 0.38335

你得到的结果与你在大众看到的结果相同。