Learn R Programming

⚠️There's a newer version (0.1.6) of this package.Take me there.

Named Entity Recognition with the Nametag Maximum Entropy Markov model

This repository contains an R package which wraps the NameTag C++ library (https://github.com/ufal/nametag), allowing the following:

  • Fit a Maximum Entropy Markov model machine learning model
  • Use the model to get predictions alongside the model on new data
  • The focus of the implementation is in the area of Natural Language Processing where this R package allows you to easily build and apply models for named entity recognition, text chunking, part of speech tagging, intent recognition or classification of any category you have in mind.

Example

  • Downloading a pretrained named entity recognition model.
  • Note: look to the help of function ?nametagger which allows you to train your own named entity recognition model on your own data
library(nametagger)
model <- nametagger_download_model("english-conll-140408", model_dir = tempdir())
x     <- data.frame(doc_id      = c(1, 1, 2),
                    sentence_id = c(1, 2, 1),
                    text        = c("I\nlive\nin\nNew\nYork\nand\nI\nwork\nfor\nApple\nInc.", 
                                    "Why\ndon't\nyou\ncome\nvisit\nme", 
                                    "Good\nnews\nfrom\nAmazon\nas\nJohn\nworks\nthere\n."))
predict(model, x)                          

 doc_id sentence_id term_id   term entity
      1           1       1      I      O
      1           1       2   live      O
      1           1       3     in      O
      1           1       4    New  B-LOC
      1           1       5   York  I-LOC
      1           1       6    and      O
      1           1       7      I      O
      1           1       8   work      O
      1           1       9    for      O
      1           1      10  Apple  B-ORG
      1           1      11   Inc.  I-ORG
      1           2       1    Why      O
      1           2       2  don't      O
      1           2       3    you      O
      1           2       4   come      O
      1           2       5  visit      O
      1           2       6     me      O
      2           1       1   Good      O
      2           1       2   news      O
      2           1       3   from      O
      2           1       4 Amazon  B-LOC
      2           1       5     as      O
      2           1       6   John  B-PER
      2           1       7  works      O
      2           1       8  there      O
      2           1       9      .      O

Installation

  • For regular users, install the package from your local CRAN mirror install.packages("nametagger")
  • For installing the development version of this package: remotes::install_github("bnosac/nametagger")

Look to the documentation of the functions.

help(package = "nametagger")

Support in text mining

Need support in text mining? Contact BNOSAC: http://www.bnosac.be

Copy Link

Version

Install

install.packages('nametagger')

Monthly Downloads

545

Version

0.1.3

License

MPL-2.0

Issues

Pull Requests

Stars

Forks

Maintainer

Jan Wijffels

Last Published

September 13th, 2023

Functions in nametagger (0.1.3)

nametagger_load_model

Load a Named Entity Recognition
nametagger

Train a Named Entity Recognition Model using NameTag
nametagger_options

Define text transformations serving as predictive elements in the nametagger model
nametagger_download_model

Download a Nametag model
europeana_read

Read Europeana Newspaper data
predict.nametagger

Perform Named Entity Recognition on tokenised text
europeananews

Tagged news paper articles from Europeana
write_nametagger

Save a tokenised dataset as nametagger train data