Coder Social home page Coder Social logo

foolnltk's Introduction

FoolNLTK

A Chinese word processing toolkit

Chinese document

Features

  • Although not the fastest, FoolNLTK is probably the most accurate open source Chinese word segmenter in the market
  • Trained based on the BiLSTM model
  • High-accuracy in participle, part-of-speech tagging, entity recognition
  • User-defined dictionary
  • Ability to self train models
  • Allows for batch processing

Getting Started

*** 2020/2/16 *** update: use bert model train and export model to deploy, chinese train documentation

To download and build FoolNLTK, type:

get clone https://github.com/rockyzhengwu/FoolNLTK.git
cd FoolNLTK/train

For detailed instructions

  • Only tested in Linux Python 3 environment.

Installation

pip install foolnltk

Usage Intructions

For Participles:
import fool

text = "一个傻子在北京"
print(fool.cut(text))
# ['一个', '傻子', '在', '北京']

For participle segmentations, specify a -b parameter to increase the number of lines segmented every run.

python -m fool [filename]
User-defined dictionary

The format of the dictionary is as follows: the higher the weight of a word, and the longer the word length is, the more likely the word is to appear. Word weight value should be greater than 1。

难受香菇 10
什么鬼 10
分词工具 10
北京 10
北京*** 10

To load the dictionary:

import fool
fool.load_userdict(path)
text = ["我在北京***看你难受香菇", "我在北京晒太阳你在非洲看雪"]
print(fool.cut(text))
#[['我', '在', '北京', '***', '看', '你', '难受', '香菇'],
# ['我', '在', '北京', '晒太阳', '你', '在', '非洲', '看', '雪']]

To delete the dictionary

fool.delete_userdict();
POS tagging
import fool

text = ["一个傻子在北京"]
print(fool.pos_cut(text))
#[[('一个', 'm'), ('傻子', 'n'), ('在', 'p'), ('北京', 'ns')]]
Entity Recognition
import fool 

text = ["一个傻子在北京","你好啊"]
words, ners = fool.analysis(text)
print(ners)
#[[(5, 8, 'location', '北京')]]

Versions in Other languages

Note

  • For any missing model files, try looking in sys.prefix, under /usr/local/

foolnltk's People

Contributors

rockyzhengwu avatar forin-xyz avatar alanoooaao avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.