He descargado SharpNLP de este sitio http://sharpnlp.codeplex.com/ pero descargué el archivo .nbin, que no sé cómo manejar. ¿Alguna ayuda pleeeeeeeease?sharpNLP como extensión de archivo .nbin
Respuesta
Yo también era un usuario como tú. Pero con un poco de esfuerzo, he encontrado algunas maneras de usar el archivo Nbin. Como se dijo, los archivos Nbin son modelos entrenados. Podemos crear un archivo Nbin usando el BinaryGisModelWriter. Sin embargo, al igual que yo, creo que a usted tampoco le interesa crear su propio modelo, sino utilizar los archivos nbin de manera efectiva en su proyecto.
Para eso necesita dos dlls.
SharpEntropy.dll OpenNLP.dll
Aparte de esto para un inicio rápido, se puede descargar el Sample Project from Code Project for SharpNLP
Es mejor descargar el .NET 2.0 version of the sample
interior que tendrá un proyecto llamado OpenNLP. Agregue ese proyecto a cualquiera de los proyectos que desee hacer uso de NLP o los archivos nbin y agregue una referencia desde su solución al proyecto "OpenNLP".
Ahora desde su principal solución, puede inicializar diferentes herramientas como, por ejemplo, voy a mostrar la inicialización de un detector de condena, tokenizer y una PosTagger
private string mModelPath = @"C:\Users\ATS\Documents\Visual Studio 2012\Projects\Google_page_speed_json\Google_page_speed_json\bin\Release\";
private OpenNLP.Tools.SentenceDetect.MaximumEntropySentenceDetector mSentenceDetector;
private OpenNLP.Tools.Tokenize.EnglishMaximumEntropyTokenizer mTokenizer;
private OpenNLP.Tools.PosTagger.EnglishMaximumEntropyPosTagger mPosTagger;
El mModelPath es la variable para contener la ruta de los archivos nbin que desea utilizar.
Ahora le mostraré cómo usar los archivos nbin utilizando el constructor de las clases definidas anteriormente.
para el detector de Sentencia
private string[] SplitSentences(string paragraph)
{
if (mSentenceDetector == null)
{
mSentenceDetector = new OpenNLP.Tools.SentenceDetect.EnglishMaximumEntropySentenceDetector(mModelPath + "EnglishSD.nbin");
}
return mSentenceDetector.SentenceDetect(paragraph);
}
Para Tokenizer
private string[] TokenizeSentence(string sentence)
{
if (mTokenizer == null)
{
mTokenizer = new OpenNLP.Tools.Tokenize.EnglishMaximumEntropyTokenizer(mModelPath + "EnglishTok.nbin");
}
return mTokenizer.Tokenize(sentence);
}
Y para POSTagger
private string[] PosTagTokens(string[] tokens)
{
if (mPosTagger == null)
{
mPosTagger = new OpenNLP.Tools.PosTagger.EnglishMaximumEntropyPosTagger(mModelPath + "EnglishPOS.nbin", mModelPath + @"\Parser\tagdict");
}
return mPosTagger.Tag(tokens);
}
Se puede ver que he utilizado el EnglishSD.nbin, y EnglishTok.nbin EnglishPOS.nbin para S entence Detection, Tokenizing y POS Tagging respectivamente. Los archivos nbin son solo modelos pre-entrenados que pueden usarse con SharpNLP o OpenNLP en general.
Usted puede encontrar las últimas conjunto de los modelos de formación de Los modelos oficiales de herramientas OpenNLP o desde el repositorio CodePlex de archivos NBIN para su uso con SharpNLP
un etiquetador muestra de puntos de venta utilizando los métodos anteriores y los archivos NBIN será de la siguiente manera,
public void POSTagger_Method(string sent)
{
File.WriteAllText("POSTagged.txt", sent+"\n\n");
string[] split_sentences = SplitSentences(sent);
foreach (string sentence in split_sentences)
{
File.AppendAllText("POSTagged.txt", sentence+"\n");
string[] tokens = TokenizeSentence(sentence);
string[] tags = PosTagTokens(tokens);
for (int currentTag = 0; currentTag < tags.Length; currentTag++)
{
File.AppendAllText("POSTagged.txt", tokens[currentTag] + " - " + tags[currentTag]+"\n");
}
File.AppendAllText("POSTagged.txt", "\n\n");
}
}
usted puede escribir métodos similares para la fragmentación, análisis, etc., haciendo uso de los archivos NBIN disponibles, o se puede formar una propia.
Aunque no he entrenado a un modelo en el mío propio, la sintaxis para la formación de un modelo desde un archivo de texto de entrenamiento perfectamente formado es
System.IO.StreamReader trainingStreamReader = new System.IO.StreamReader(trainingDataFile);
SharpEntropy.ITrainingEventReader eventReader = new SharpEntropy.BasicEventReader(new SharpEntropy.PlainTextByLineDataReader(trainingStreamReader));
SharpEntropy.GisTrainer trainer = new SharpEntropy.GisTrainer();
trainer.TrainModel(eventReader);
mModel = new SharpEntropy.GisModel(trainer);
Creo que este post va a ayudarle a iniciar su camino con SharpNLP. Por favor, siéntete para discutir cualquier problema que enfrentes. Estaré encantado de responder.
- 1. Agregar extensión de archivo a archivo de extensión-menos
- 2. extensión de archivo MAKE
- 3. extensión de archivo MAKE
- 4. Extensión de archivo JSON
- 5. ¿Cómo obtener la extensión de archivo del archivo como resultado de la consulta SQL?
- 6. Extensión de archivo Json Schema
- 7. lotes extensión de archivo hallazgo
- 8. Retire y archivo de extensión
- 9. obtener extensión de archivo (editar)
- 10. nombre de archivo sin extensión
- 11. lotes: Retire extensión de archivo
- 12. Node.js obtener extensión de archivo
- 13. ¿Cómo obtengo una extensión de archivo específica para comportarme como si .html en un archivo .vimrc?
- 14. Extensión de shell para unidad como GDrive?
- 15. Obteniendo la extensión de archivo en C
- 16. Retire la extensión de un archivo
- 17. Windows 7 archivo de asociación de extensión
- 18. Conseguir extensión del archivo de control FileUpload
- 19. Tipo de archivo - Obtener la extensión original
- 20. Incluye: css con extensión de archivo php?
- 21. ¿Cómo validar una extensión de archivo solo si hay una extensión de archivo? Re: carrierwave
- 22. NSURL Además extensión de archivo, etc
- 23. Log4net RollingFileAppender Tamaño rollingStyle extensión de archivo
- 24. archivo de base de datos Sqlite3 extensión
- 25. Extensión de archivo de imagen JavaScript Regex
- 26. Obtener extensión del archivo sin proporcionar extensión en la ruta
- 27. Obtenga la extensión de archivo de imágenes seleccionadas de galería o cámara, como cadena
- 28. Carrierwave cómo obtener la extensión de archivo
- 29. ¿Qué es la extensión de archivo .MSPX?
- 30. asp.net mvc HttpPostedFileBase conseguir extensión de archivo
hey soy nuevo en visual studio y sharpNLP He leído su publicación e intenté implementarla, pero estoy enfrentando algún problema, ¿me pueden ayudar? –
Claro. Déjame saber los problemas que estás enfrentando. –
Hola @ArunTS Gracias por la publicación, Esto es realmente útil. –