2015-12-27 2 views
0

Я создаю пользовательскую модель теггера для итальянского языка.Train Stanford postagger model

я получаю ошибку, выполнив команду для обучения модели:

[email protected]:~/stanford-postagger$ java -classpath stanford-postagger.jar edu.stanford.nlp.tagger.maxent.MaxentTagger -prop /home/damiano/modelli/italian.tagger.props -model italian.tagger -trainFile italian.tagger.train 
Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory 
    at edu.stanford.nlp.io.IOUtils.<clinit>(IOUtils.java:41) 
    at edu.stanford.nlp.util.StringUtils.argsToProperties(StringUtils.java:938) 
    at edu.stanford.nlp.util.StringUtils.argsToProperties(StringUtils.java:891) 
    at edu.stanford.nlp.tagger.maxent.TaggerConfig.<init>(TaggerConfig.java:128) 
    at edu.stanford.nlp.tagger.maxent.MaxentTagger.main(MaxentTagger.java:1836) 
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 
    ... 5 more 

Я нашел эту команду внутри README.txt

Я также попытался с -classpath Стэнфорде postagger-3.6.0 .jar, но у меня была та же проблема.

Это содержимое папки:

[email protected]:~/stanford-postagger$ dir 
build.xml LICENSE.txt sample-input.txt   stanford-postagger-3.6.0-javadoc.jar stanford-postagger-gui.bat stanford-postagger.sh 
data  models sample-output.txt   stanford-postagger-3.6.0-sources.jar stanford-postagger-gui.sh TaggerDemo2.java 
lib README.txt stanford-postagger-3.6.0.jar stanford-postagger.bat   stanford-postagger.jar TaggerDemo.java 

Что я могу сделать?

EDIT

Это мой проп файл:

model = /home/damiano/modelli/italian.tagger 
arch = generic,suffix(4),prefix(4),unicodeshapes(-1,1),unicodeshapeconjunction(-1,1),words(-2,-2),words(2,2) 
trainFile = /home/damiano/modelli/italian.tagger.train 
tagSeparator = _ 
encoding = utf-8 
iterations = 100 
openClassTags = B BN CC CS DD DE DI DQ DR E EA FB FC FF FS I N PC PD PE PI PP PQ PR RD RI T SA SP XH XM XE XX Ss Sp Sn As Ap An APs APp APn NOs NOp NOn SWs SWp SWn Vip Vip3 Vii Vii3 Vis Vis3 Vif Vif3 Vcp Vcp3 Vci Vci3 Vdp Vdp3 Vg Vp Vf Vm VAip VAip3 VAii VAii3 VAis Vis3 VAif VAif3 VAcp VAcp3 VAci VAci3 VAdp VAdp3 VAg VAp VAf VAm VMip VMip3 VMii VMii3 VMis VMis3 VMif VMif3 VMcp VMcp3 VMci VMci3 VMdp VMdp3 VMg VMp VMf VMm 
tokenize = false 
+1

Добавить все .jar-файлы, которые вы найдете в каталоге/lib/тегов stanford pos. – alvas

+0

@alvas добавьте это как ответ, я приму это! – Dail

+0

не беспокойтесь, вы можете написать ответ и принять его как вопрос, ответ на который я ответил =) Я едва помог вам с комментарием. – alvas

ответ

3

В версии 3.6 мы начали использовать slf4j в качестве логического фасада, но, к сожалению, мы еще не обновили много документации .... Ящики slf4j находятся в подкаталоге lib. Попробуйте выполнить следующую команду:

$ java -classpath "stanford-postagger.jar:lib/*" edu.stanford.nlp.tagger.maxent.MaxentTagger -prop /home/damiano/modelli/italian.tagger.props -model italian.tagger -trainFile italian.tagger.train 
+0

Дорогой профессор, это честь! :) Да, мне понадобилось 5 часов для создания моей итальянской модели tag tagger (около 44 МБ!), Я поделюсь этой моделью, потому что я не нашел тег CoreNLP pos для итальянца. – Dail

+2

Отлично, спасибо. Нам было бы очень приятно иметь и распространять модели для большего количества языков. Есть только практические ограничения того, сколько мы можем построить и поддержать себя .... –

+0

Я не должен был этого делать, однако, вы могли бы дать мне свое авторитетное мнение с http://stackoverflow.com/questions/34502517/what-does -нер-модель-найти-person-names-inside-a-resume-cv? – Dail

1

вам не хватает slf4j.jar от вашего пути к классам. slf4j - это каротажная библиотека, которую, вероятно, использует stanford-postagger.

Загрузите его в свой каталог, где находятся ваши другие файлы jar, и добавьте его в classpath.

Смежные вопросы