Media di due vettori Word2vec per ottenere una rappresentazione unificata per singola parola


8

Ho lavorato su dati addestrati per l'algoritmo Word2vec. Dato che abbiamo bisogno di parole per rimanere come originali, non le rendiamo minuscole nella fase di preelaborazione. Quindi ci sono parole con diverse varianti (ad esempio "Terra" e "terra").

L'unico modo in cui riesco a pensare è prendere la media dei vettori per "Terra" e "Terra" per creare un singolo vettore per rappresentare la parola. (Poiché le dimensioni del vettore di feature sono simili)

È un metodo "ok"? In caso contrario, quale potrebbe essere un buon modo per gestire questo problema?

Nota: abbassare tutte le parole in preelaborazione non è un'opzione per ora.

Modifica: sarebbe utile anche sapere se le dimensioni delle feature sono veramente lineari.

Modifica 2: Combinando entrambe le risposte patapouf_aie yazhiottenendo i migliori risultati. Come vengono combinati? La media ponderata ha migliorato i risultati, ma mettere le frequenze delle parole attraverso una funzione sigmoidea in scala ha dato i migliori risultati, perché l'uso delle frequenze delle parole in modo lineare dà loro più importanza di quanto sopportino.

Risposte:


1

Il semplice calcolo della media potrebbe non essere positivo perché ciò presuppone che abbiano lo stesso peso, e ciò probabilmente non è il caso se la versione in maiuscolo e non in maiuscolo appare con frequenze molto diverse nei dati di allenamento.

Un miglioramento incrementale consisterebbe nel fare la media in proporzione alla loro frequenza nel corpus. Quindi diciamo che la Terra appare 159 volte e la Terra 1239 volte fanno qualcosa del genere:

v (Terra e terra) = 159 / (159 + 1239) * v (Terra) + 1239 / (159 + 1239) * v (terra).

I vettori dovrebbero codificare la semantica in modo lineare, quindi questo dovrebbe darti un'approssimazione risonabile.


1
Questa è la soluzione che abbiamo già scelto. Potrei anche accettare la risposta.
ozgur,

0

Le parole "Terra" e "terra" possono avere lo stesso significato, ma secondo l'algoritmo word2vec, deriva l'informazione semantica dalla posizione delle parole.

Pertanto, comunemente, "Terra" apparirà più spesso all'inizio della frase essendo un soggetto e "terra" apparirà principalmente nella forma dell'oggetto alla fine. Quindi, le parole adiacenti più vicine possono differire, ma nel complesso entrambe le frasi possono contenere parole come "inquinamento, clima, acqua, paesi".

In conclusione, suppongo che con una finestra di dimensioni maggiori, sembra preservare le stesse informazioni semantiche con piccoli cambiamenti in cui la "Terra" avrà alcune informazioni sul soggetto e la "Terra" avrà informazioni sugli oggetti. Quindi, la media non influirà molto e sembra essere un caso possibile. Ma con dimensioni della finestra inferiori, esiste un'alta probabilità che possa avere significati diversi.


Bene, la dimensione BoW è 5. Quale numero consideri una dimensione della finestra appropriata per far funzionare la media?
ozgur,

dimensione della finestra di 5 significa, in totale considera 10 parole e una frase inglese comune potrebbe essere scritta in 10 parole. Quindi suona bene per me.
yazhi,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.