C #: настроение Стэнфорда Corenlp не работает - PullRequest
0 голосов
/ 26 августа 2018

Я использую приведенный ниже пример кода, чтобы попробовать анализ настроений, однако он возвращает ошибку, показанную ниже.Аннотатор tokenize работает, но когда я добавляю аннотатор sentiment, он возвращает мне ошибку.

Я уже пробовал использовать другие версии моделей, такие как 3.8 и 3.9, но проблема все еще существует.Я также попытался изменить версии, которые я установил из NuGet.Пожалуйста, помогите мне решить эту проблему или дайте мне любую ссылку, где обсуждается, как шаг за шагом установить пакеты правильно. Спасибо

using System;
using System.IO;
using java.util;
using java.io;
using edu.stanford.nlp.pipeline;
using Console = System.Console;

namespace Stanford.NLP.CoreNLP.CSharp
{
    class Program
    {
        static void Main()
        {
            // Path to the folder with models extracted from `stanford-corenlp-3.7.0-models.jar`
            var jarRoot = @"C:\Users\CarloDp\Documents\NLP\Core\stanford-corenlp-full-2016-10-31\edu\stanford\nlp\models";

            // Text for processing
            var text = "Kosgi Santosh sent an email to Stanford University. He didn't get a reply.";

            // Annotation pipeline configuration
            var props = new Properties();
            props.setProperty("annotators", "tokenize, sentiment");
            props.setProperty("ner.useSUTime", "0");

            // We should change current directory, so StanfordCoreNLP could find all the model files automatically
            var curDir = Environment.CurrentDirectory;
            Directory.SetCurrentDirectory(jarRoot);
            var pipeline = new StanfordCoreNLP(props);
            Directory.SetCurrentDirectory(curDir);

            // Annotation
            var annotation = new Annotation(text);
            pipeline.annotate(annotation);

            // Result - Pretty Print
            using (var stream = new ByteArrayOutputStream())
            {
                pipeline.prettyPrint(annotation, new PrintWriter(stream));
                Console.WriteLine(stream.toString());
                stream.close();
            }
        }
    }
}

SLF4J: Не удалось загрузить класс "org.slf4j.impl.StaticLoggerBinder».SLF4J: По умолчанию используется логгер без операций (NOP). SLF4J: Подробнее см. http://www.slf4j.org/codes.html#StaticLoggerBinder.

Необработанное исключение: edu.stanford.nlp.io.RuntimeIOException: java.io.IOException: Невозможно открыть "edu / stanford / nlp / models / sentiment / sentiment.ser.gz" как класс p ath, имя файла или URL ---> java.io.IOException: Невозможно открыть "edu / stanford / nlp / models/sentiment/sentiment.ser.gz "в качестве пути к классу, имени файла или URL-адреса по адресу edu.stanford.nlp.io.IOUtils.getInputStreamFromURLOrClasspathOrFileSystem (строка textFileOrUrl) по адресу edu.stanford.nlp.io.IOUtils.readObjectFilepOrgFileSystemOrGr_SystemRolrrSrgrSricerSrofrSrgrSrFrrSrgrSrFrrrSrFrrSrFrFrrrSrFRв edu.stanford.nlp.sentiment.SentimentModel.loadSerialized (String path) --- Конец внутренней трассировки стека исключений --- в edu.stanford.nlp.sentiment.SentimentModel.loadSerialized (String path) в edu.stanford.nlp.pipeline.SentimentAnnotator..ctor (имя строки, свойства реквизиты) в edu.stanford.nlp.pipeline.AnnotatorImplementations.sentiment (свойства свойств, имя строки) в edu.stanford.nlp.pipeline.StanfordCoreNLP.lambda $ getNamedAnnotators $ 55 (свойства, аннотаторные имплементации) в edu.stanford.nlp.pipeline.StanfordCoreNLP. <> Anon17.apply (объект, объект) в edu.stanpline.pl.StanfordCoreNLP.lambda $ null $ 69 (Entry, Property s, AnnotatorImplementations) в edu.stanford.nlp.pipeline.StanfordCoreNLP. <> Anon38.get () в edu.stanford.nlp.util.Lazy.3.compute() в edu.stanford.nlp.util.Lazy.get () в edu.stanford.nlp.pipeline.AnnotatorPool.get (имя строки) в edu.stanford.nlp.pipeline.StanfordCoreNLP.construct (свойства, логические значения, аннотаторImplementations) в edu.stanford.nlp.pipeline.StanfordCoreNLP..ctor (свойства реквизиты, булевские принудительные требования, AnnotatorPool annotatorPool) в edu.stanford.nlp.pipeline.StanfordCoreNLP..ctor (свойства реквизиты, логические принудительные требования) в edu..pipeline.StanfordCoreNLP..ctor (Свойства реквизита)
в Stanford.NLP.CoreNLP.CSharp.Program.Main () в C: \ Users \ CarloDp \ Documents \ V isual Studio2015 \ Projects \ coreNLP \ coreNLP \ Program.cs: строка 28

...