Voltar ao ranking

google/sling

C++

SLING - A natural language frame semantics parser

natural-language-understandingnatural-language-processingneural-networkmachine-learningjit-compilerframe-semantic-parsingnlp
Crescimento de estrelas
Estrelas
1.9k
Forks
264
Crescimento semanal
Issues
1
5001k1.5k
out. de 2017set. de 2020ago. de 2023jul. de 2026
README

SLING - A natural language frame semantics parser

The SLING Project has moved

The SLING project has moved to https://github.com/ringgaard/sling.

Please refer to the above repo for the latest developments on SLING.

Background

The aim of the SLING project is to learn to read and understand Wikipedia articles in many languages for the purpose of knowledge base completion, e.g. adding facts mentioned in Wikipedia (and other sources) to the Wikidata knowledge base. We use frame semantics as a common representation for both knowledge representation and document annotation. The SLING parser can be trained to produce frame semantic representations of text directly without any explicit intervening linguistic representation.

The SLING project is still work in progress. We do not yet have a full system that can extract facts from arbitrary text, but we have built a number of the subsystems needed for such a system. The SLING frame store is our basic framework for building and manipulating frame semantic graph structures. The Wiki flow pipeline can take a raw dump of Wikidata and convert this into one big frame graph. This can be loaded into memory so we can do fast graph traversal for inference and reasoning over the knowledge base. The Wiki flow pipeline can also take raw Wikipedia dumps and convert these into a set of documents with structured annotations extracted from the Wiki markup. This also produces phrase tables that are used for mapping names to entities. There is a SLING Python API for accessing all this information and we also have a bot for uploading extracted facts to Wikidata.

The SLING Parser

The SLING parser is used for annotating text with frame semantic annotations. It is a general transition-based frame semantic parser using bi-directional LSTMs for input encoding and a Transition Based Recurrent Unit (TBRU) for output decoding. It is a jointly trained model using only the text tokens as input and the transition system has been designed to output frame graphs directly without any intervening symbolic representation.

SLING neural network architecture.

The SLING framework includes an efficient and scalable frame store implementation as well as a neural network JIT compiler for fast training and parsing.

A more detailed description of the SLING parser can be found in this paper:

More information ...

Credits

Original authors of the code in this package include:

  • Michael Ringgaard
  • Rahul Gupta
  • Anders Sandholm
Repositórios relacionados
google-research/bert

TensorFlow code and pre-trained models for BERT

PythonPyPIApache License 2.0nlpgoogle
arxiv.org/abs/1810.04805
40.1k9.7k
huggingface/tokenizers

💥 Fast State-of-the-Art Tokenizers optimized for Research and Production

Rustcrates.ioApache License 2.0nlpnatural-language-processing
huggingface.co/docs/tokenizers
10.9k1.2k
microsoft/nlp-recipes

Natural Language Processing Best Practices & Examples

PythonPyPIMIT Licensenlpnatural-language-processing
6.4k913
thunlp/OpenPrompt

An Open-Source Framework for Prompt-Learning.

PythonPyPIApache License 2.0nlppre-trained-language-models
thunlp.github.io/OpenPrompt/
4.9k477
huggingface/autotrain-advanced

🤗 AutoTrain Advanced

PythonPyPIApache License 2.0huggingfacedeep-learning
huggingface.co/autotrain
4.6k627
dmlc/gluon-nlp

NLP made easy

PythonPyPIApache License 2.0mxnetgluonnlp
nlp.gluon.ai
2.5k520
opencog/opencog

A framework for integrated Artificial Intelligence & Artificial General Intelligence (AGI)

SchemeOtheraginatural-language
wiki.opencog.org/w/Development
2.5k744
namisan/mt-dnn

Multi-Task Deep Neural Networks for Natural Language Understanding

PythonPyPIMIT Licensemulti-task-learningnatural-language-understanding
2.3k408
microsoft/DeBERTa

The implementation of DeBERTa

PythonPyPIMIT Licensebertdeeplearning
2.2k239
eyurtsev/kor

LLM(😽)

PythonPyPIMIT Licenseinformation-extractionllm
eyurtsev.github.io/kor/
1.7k94
declare-lab/conv-emotion

This repo contains implementation of different architectures for emotion recognition in conversations.

PythonPyPIMIT Licensedialogue-systemsconversational-agents
1.5k343
practical-nlp/practical-nlp-code

Official Repository for Code associated with 'Practical Natural Language Processing' book by O'Reilly Media

Jupyter NotebookMIT Licensenatural-language-processingnatural-language-understanding
practicalnlp.ai
1.5k641