Linear-chain conditional random fields for natural language processing
Project description
Chaine
Linear-chain conditional random fields for natural language processing.
Chaine is a modern Python library without third-party dependencies and a backend written in C. You can train conditional random fields for natural language processing tasks like named entity recognition.
- Lightweight: No use of bloated third-party libraries.
- Fast: Performance critical parts are written in C and thus blazingly fast.
- Easy to use: Designed with special focus on usability and a beautiful high-level API.
You can install the latest stable version from PyPI:
$ pip install chaine
Please refer to the introducing paper by Lafferty et al. for the theoretical concepts behind conditional random fields.
Minimal working example
>>> import chaine
>>> tokens = [["John", "Lennon", "was", "born", "in", "Liverpool"]]
>>> labels = [["B-PER", "I-PER", "O", "O", "O", "B-LOC"]]
>>> model = chaine.train(tokens, labels, max_iterations=5)
>>> model.predict(tokens)
[['B-PER', 'I-PER', 'O', 'O', 'O', 'B-LOC']]
Check out the examples for a more real-world use case.
Credits
This project makes use of and is partially based on:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
chaine-1.0.1.tar.gz
(114.5 kB
view hashes)
Built Distribution
Close
Hashes for chaine-1.0.1-cp38-cp38-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c2e93e73f3037045ca3b0e36dbe2aaa91519fe3ade6f0d5ea172bce4f9282d5e |
|
MD5 | 3212a7c527a8ec8cb9485c2767761fab |
|
BLAKE2b-256 | cce073eed31389ad56f950b9aa6f237d6802386a4f39280099da7e72a5051531 |