2014-09-14 15 views
5

Ho avuto un paio di domande sull'uscita da una semplice corsa di VW. Ho letto su internet e sui siti wiki, ma sono ancora incerto su un paio di cose basilari.Interpretazione dell'output di base da Vowpal Wabbit

Ho eseguito il seguente sui dati dell'alloggiamento Boston:

vw -d housing.vm --progress 1 

in cui il file housing.vm si configura come (parzialmente):

enter image description here

e l'uscita è (parzialmente) :

enter image description here

Domanda 1:

1) È corretto pensare colonna perdita media come le seguenti operazioni:

a) prevedere pari a zero, quindi la prima perdita media è l'errore quadratico del primo esempio (con la previsione come zero)

b) costruzione di un modello in esempio 1 e prevedere esempio 2. medio ormai 2 quadrato perdite

c) costruire un modello su esempio 1-2 e prevedere esempio 3. media la ora 3 perdite quadrate

d) ...

fare questo fino a quando si colpisce la fine dei dati (assumendo un singolo passaggio)

2) Qual è l'attuale colonne caratteristiche? Sembra essere il numero di caratteristiche diverse da zero + un'intercetta. Ciò che è mostrato nell'esempio, suggerisce che una funzione non viene contata se è zero - è vero? Ad esempio, il secondo record ha un valore pari a zero per "ZN". VW guarda davvero quella caratteristica numerica come mancante ??

risposta

5

Le tue affermazioni sono sostanzialmente corrette. Per impostazione predefinita, VW fa l'apprendimento online, quindi nel passaggio c prende il modello corrente (pesi) e lo aggiorna con l'esempio corrente (piuttosto che imparare di nuovo da tutti gli esempi precedenti).

Come si suppone, l'attuale colonna della colonna è il numero di funzioni (non zero) per l'esempio corrente. La funzione di intercettazione è inclusa automaticamente, a meno che non si specifichi --noconstant.

Non c'è differenza tra una funzione mancante e una funzione con valore zero. Entrambi significano che non si aggiorna il peso corrispondente.

+0

Sono felice di sentire ho capito, grazie! Sono curioso di questi però - è quello che ho descritto per la perdita media lo stesso che è descritto come "validazione progressiva" dal Dr. Langford? L'idea di scegliere un set di prova di dimensioni 's' e tale che descrive non sembra così semplice come quello che ho esposto sopra. –

+0

Il fatto che la caratteristica mancante sia uguale a un valore zero ha senso una volta richiamata la regola di aggiornamento sgd. –

+1

Se si esegue un passaggio (o con '--holdout_off'), VW utilizza (e riporta) la convalida progressiva. Questo significa: 1. vedi un nuovo esempio e la sua etichetta corretta, 2. calcoli una perdita per questo esempio basato sul modello appreso finora (e con '--progress 1' lo segnali immediatamente come 'dall'ultima') , 3. si apprende dall'esempio, ovvero si aggiorna il modello in base all'esempio corrente. –

Problemi correlati