
Nếu bạn đang làm việc và nghiên cứu trên ngôn ngữ tiếng Anh thì ta có thể sử dụng các thư viện/module NLP của Python được liệt kê bên dưới. Mục đích của bài viết này được dùng để liệt kê những thư viện/module và những chức năng hữu ích trong NLP. Các bạn có thể tham khảo danh sách các thuật ngữ liên quan đến các chức năng ở bài viết này.
- classification
- tokenization
- stemming
- tagging
- parsing
- semantic reasoning
- part-of-speech taggers
- n-gram search
- sentiment analysis
- WordNet
- vector space model
- clustering
- classification (KNN, SVM, Perceptron)
- Noun phrase extraction
- Part-of-speech tagging
- Sentiment analysis
- Classification (Naive Bayes, Decision Tree)
- Language translation and detection powered by Google Translate
- Tokenization (splitting text into words and sentences)
- Word and phrase frequencies
- Parsing
n
-grams- Word inflection (pluralization and singularization) and lemmatization
- Spelling correction
- Add new models or languages through extensions
- WordNet integration
- All algorithms are memory-independent w.r.t. the corpus size (can process input larger than RAM, streamed, out-of-core),
- Intuitive interfaces
- easy to plug in your own input corpus/datastream (trivial streaming API)
- easy to extend with other Vector Space algorithms (trivial transformation API)
- Efficient multicore implementations of popular algorithms, such as online Latent Semantic Analysis (LSA/LSI/SVD), Latent Dirichlet Allocation (LDA), Random Projections (RP), Hierarchical Dirichlet Process (HDP) or word2vec deep learning.
- Distributed computing: can run Latent Semantic Analysis and Latent Dirichlet Allocation on a cluster of computers.
- Extensive HTML documentation and tutorials.
- extraction of n-grams and frequency lists, and to build simple language model
- complex data types, such as Priority Queues
- search algorithms, such as Beam Search
- Labelled dependency parsing (91.8% accuracy on OntoNotes 5)
- Named entity recognition (82.6% accuracy on OntoNotes 5)
- Part-of-speech tagging (97.1% accuracy on OntoNotes 5)
- Easy to use word vectors
- All strings mapped to integer IDs
- Export to numpy data arrays
- Alignment maintained to original string, ensuring easy mark up calculation
- Range of easy-to-use orthographic features.
- No pre-processing required. spaCy takes raw text as input, warts and newlines and all.
- information retrieval and extraction
- request processing
- question answering
- MontyTokenizer – Tokenizes raw English text (sensitive to abbreviations), and resolve contractions, e.g. “you’re” ==> “you are”
- MontyTagger – Part-of-speech tagging based on Brill94, enriched with common sense.
- MontyChunker – Lightning fast regular expression chunker
- MontyExtractor – Extracts phrases and subject/verb/object triplets from sentences
- MontyLemmatiser – Strips inflectional morphology, i.e. changes verbs to infinitive form and nouns to singular form
- MontyNLGenerator – Uses MontyLingua’s concise predicate-arg representation to generate naturalistic English sentences and text summaries
Others
- Crawler tools:
- Crawler 4j: http://code.google.com/p/crawler4j/
- httpClient: http://hc.apache.org/httpclient-3.x/
- Parser tools:
- htmlParser: http://htmlparser.sourceforge.net/
- Jsoup html parser: http://jsoup.org/
- Neko html parser: http://nekohtml.sourceforge.net/
- JVnTextPro: http://sourceforge.net/projects/jvntextpro/
- Sentence Segmentation, Sentence Tokenization, Word Segmentation, POS-Tagging
- VnToolkit: http://www.loria.fr/~lehong/softwares.php
- An automatic tagger for Vietnamese texts
- A tokenize for automatic word segmentation of Vietnamese texts
- A sentence detector for automatic detecting sentences of Vietnamese texts
- VLSP Tools: http://vlsp.vietlp.org:8080/demo/?page=resources
- Vietnamese Chunking
- LingPipe: http://alias-i.com/lingpipe/
- Find the names of people, organizations or locations in news
- Automatically classify Twitter search results into categories
- Suggest correct spellings of queries
- Mallet – Machine Learning for Language Toolkit: http://mallet.cs.umass.edu/
- Statistic, document classification, clustering, topic modeling, information extraction
- Stanford NLP softwares: http://www-nlp.stanford.edu/software/
- Word segmentation, part-of-speech tagging, named entity recognition, chunking, parsing, classification and coreference resolution
- OpenNLP: http://opennlp.apache.org/
- Tokenization, sentence segmentation, part-of-speech tagging, named entity extraction, chunking, parsing, and coreference resolution
- Conditional random fields (CRF)
- Maximum entropy (Maxent)
- OpenNLP, Mallet
- Support vector machine (SVM)
- libSVM: http://www.csie.ntu.edu.tw/~cjlin/libsvm/
- svmLight: http://svmlight.joachims.org/
Tham khảo thêm các module khác của Python
Chào anh, Theo anh sử dụng công cụ gì để chuyển đổi từ chuỗi quan điểm tiếng việt người dùng sang vector để hỗ trợ phân loại SVM bằng Weka.
ThíchThích
Hi, bạn có thể dùng TF-IDF https://ongxuanhong.wordpress.com/2017/01/16/truy-van-van-ban-document-retrieval/
ThíchĐã thích bởi 1 người
anh có thể chỉ dẫn em được không. Hiện em đang dùng weka để phân lớp các quan điểm bằng tiếng việt. Em không biết cách convert string to word vector như thế nào để weka nhận theo các từ ví dụ :”tuyệt vời” mà không phải “tuyệt” và “vời”
ThíchThích
Bài toán này lại liên quan đến word tokenization. Trong Tv, ta thường lập ngữ liệu từ vựng như “tuyet_voi” để training. Nếu bỏ qua bài toán này ta có thể truyền trực tiếp “tuyet_voi” vào bộ convert vector
ThíchĐã thích bởi 1 người