2012-01-23 11 views
7

Estoy tratando de moverme con Stanford CoreNLP. Usé un código de la web para entender qué está pasando con la herramienta de correferencia. Intenté ejecutar el proyecto en Eclipse, pero sigo encontrándome con una excepción de falta de memoria. Traté de aumentar el tamaño del montón, pero no hay ninguna diferencia. ¿Alguna idea sobre por qué esto sigue sucediendo? ¿Es este un problema específico del código? Cualquier instrucción de usar CoreNLP sería increíble.Uso de Stanford CoreNLP

EDITAR - Código Agregado

import edu.stanford.nlp.dcoref.CorefChain; 
import edu.stanford.nlp.dcoref.CorefCoreAnnotations; 
import edu.stanford.nlp.pipeline.Annotation; 
import edu.stanford.nlp.pipeline.StanfordCoreNLP; 


import java.util.Iterator; 
import java.util.Map; 
import java.util.Properties; 


public class testmain { 

    public static void main(String[] args) { 

     String text = "Viki is a smart boy. He knows a lot of things."; 
     Annotation document = new Annotation(text); 
     Properties props = new Properties(); 
     props.put("annotators", "tokenize, ssplit, pos, parse, dcoref"); 
     StanfordCoreNLP pipeline = new StanfordCoreNLP(props); 
     pipeline.annotate(document); 


     Map<Integer, CorefChain> graph = document.get(CorefCoreAnnotations.CorefChainAnnotation.class); 



     Iterator<Integer> itr = graph.keySet().iterator(); 

     while (itr.hasNext()) { 

      String key = itr.next().toString(); 

      String value = graph.get(key).toString(); 

      System.out.println(key + " " + value);  
     } 

    } 
} 
+0

publique el código aquí –

+0

@Pangea Código agregado. –

+0

Uso Corenlp en eclipse con -Xms4g y funciona bien. – alienCoder

Respuesta

4

me encontré con un problema similar cuando la construcción pequeña aplicación que utiliza Stanford CoreNLP en Eclipse.
Aumentar el tamaño del almacenamiento dinámico de Eclipse no resolverá su problema.
Después de hacer la búsqueda, es herramienta de compilación de ant tamaño del montón que se debe aumentar, pero no tengo ni idea de cómo hacerlo.
Así que renuncio a Eclipse y uso Netbeans.

PS: Eventualmente saldrá de la excepción de memoria con la configuración predeterminada en Netbeans. Pero puede resolverse fácilmente ajustando la configuración -Xms por aplicación.

+0

¡Gracias! Eso es un salvavidas! ¡Este problema de memoria me estaba volviendo loco! ¿Cómo supiste que el problema era con la hormiga? –

+0

Hice algunos googlear. Avíseme si encuentra la manera de establecer el tamaño del montón de hormigas. – Khairul

+0

[Este] (http://soenkerohde.com/2008/06/change-eclipse-ant-settings-when-you-run-out-of-memory/) sitio web tiene una respuesta, pero no estoy seguro de por qué todavía no está funcionando. Además, si estás en línea, me gustaría tener una conversación contigo. –

3

Arreglo para Eclipse: Usted puede configurar esta preferencia eclipse de la siguiente manera

  1. Windows -> Preferencias (en Mac es: Eclipse -> preferencias)
  2. Java -> JRE instalados
  3. Seleccione el JRE y haga clic en Editar
  4. En el campo de argumentos VM predeterminado, escriba "-Xmx1024M". (o su preferencia de memoria, para 1 GB de RAM es 1024)
  5. Haga clic en finalizar o en Aceptar.
2

Creo que puede definir el tamaño del montón haciendo clic derecho-> ejecutar-> ejecutar-configuraciones bajo los argumentos de VM. lo he probado en mac y funciona.

Cuestiones relacionadas