Le Vowpal Wabbit (VW) prend apparemment en charge la fonctionnalité de marquage de séquence via SEARN . Le problème est que je ne trouve nulle part une liste de paramètres détaillée avec des explications et quelques exemples. Le mieux que j'ai pu trouver est l'entrée de blog de Zinkov avec un très court exemple. La page principale du wiki mentionne à peine SEARN.
Dans le code source extrait, j'ai trouvé un dossier de démonstration avec des exemples de données NER. Malheureusement, le script exécutant tous les tests ne montre pas comment s'exécuter sur ces données. Au moins, il était suffisamment informatif pour voir quel est le format attendu: presque le même que le format de données VW standard, sauf que les entrées sont séparées par des lignes vides (c'est important).
Ma compréhension actuelle consiste à exécuter la commande suivante:
cat train.txt | vw -c --passes 10 --searn 25 --searn_task sequence \
--searn_passes_per_policy 2 -b 30 -f twpos.vw
où
--searn 25
- le nombre total d'étiquettes NER (?)
--searn_task sequence
- tâche de marquage de séquence (?)
--searn_passes_per_policy 2
- pas clair ce qu'il fait
D'autres paramètres sont standard pour VW et n'ont besoin d'aucune explication supplémentaire. Peut-être qu'il y a plus de paramètres spécifiques à SEARN? Quelle est leur importance et leur impact? Comment les régler? Des règles d'or?
Tout pointeur vers des exemples sera apprécié.