JiebaTokenizer

所属分类:特征抽取
开发工具:C++
文件大小:17491KB
下载次数:0
上传日期:2023-02-15 10:09:05
上 传 者sh-1993
说明:  多语言的简单标记器
(simple tokenizer for multi-langugue)

文件列表:
CMakeLists.txt (310, 2023-02-15)
build.sh (89, 2023-02-15)
data (0, 2023-02-15)
data\default (0, 2023-02-15)
data\default\emoji.unicode.txt (93374, 2023-02-15)
data\default\emoji.utf8.txt (58017, 2023-02-15)
data\default\mn.unicode.txt (10523, 2023-02-15)
data\default\puncs.unicode.txt (4476, 2023-02-15)
data\default\puncs.utf8.txt (3299, 2023-02-15)
data\dict (0, 2023-02-15)
data\dict\cn.dict.utf8 (9337902, 2023-02-15)
data\dict\hant.dict.utf8 (5166064, 2023-02-15)
data\dict\id.dict.utf8 (2693570, 2023-02-15)
data\dict\my.dict.utf8 (2816705, 2023-02-15)
data\dict\ph.dict.utf8 (2741147, 2023-02-15)
data\dict\portuguese.dict.utf8 (4953600, 2023-02-15)
data\dict\sg.dict.utf8 (8313348, 2023-02-15)
data\dict\thai.dict.utf8 (2098789, 2023-02-15)
data\dict\tw.dict.utf8 (5979361, 2023-02-15)
data\dict\vn.dict.utf8 (1439003, 2023-02-15)
data\symbols.unicode.txt (99150, 2023-02-15)
demo.cpp (1783, 2023-02-15)
src (0, 2023-02-15)
src\CMakeLists.txt (151, 2023-02-15)
src\dict_trie.cpp (4528, 2023-02-15)
src\dict_trie.h (3448, 2023-02-15)
src\make_unique.h (1357, 2023-02-15)
src\mm_segment.cpp (8393, 2023-02-15)
src\mm_segment.h (2603, 2023-02-15)
src\mp_segment.cpp (6551, 2023-02-15)
src\mp_segment.h (2150, 2023-02-15)
src\nlp_stringutil.cpp (5479, 2023-02-15)
src\nlp_stringutil.h (2476, 2023-02-15)
src\normalizer.cpp (5457, 2023-02-15)
src\normalizer.h (1741, 2023-02-15)
src\segment_base.h (1378, 2023-02-15)
src\separator_iterator.h (1950, 2023-02-15)
src\text_analyzer.cpp (2376, 2023-02-15)
... ...

# JiebaTokenizer 基于jieba 分词增加了一些多语言支持, 归一化操作. jieba分词见: https://github.com/fxsjy/jieba jieba分词cpp代码见: https://github.com/yanyiwu/cppjieba ### (1) 基本信息 (1) 分词工具, 支持多语言分词 (2) 目前支持 MP\MM 两种分词模式 (3) 支持基本的normalize; - 去除控制字符 - 去除emoji (共4702种) - 去除Mn (存在风险, accent 对于很多语言是必须的, 需要根据具体的语言谨慎选择) - 根据标点分割 - 数字单独分割 - 多语言按国家地区分别加载词典 (4) 暂不支持: - 数字、单位的标准化处理 - 相同意义字符的转化: 如 10->10 - 多语言混杂的情况 (目前会按unicode输出, 或者分块输出) - 动态更新词典 ### (2) 接口说明 ```c++ // 初始化词典, 按地区添加 // param1: dict_path 某地区词频统计词典 // example: text_analyzer->addDict("id", "id.dict.utf8") void TextAnalyzer::addDict(const std::string& country, const std::string& dict_path); // 返回归一化后的结果 (见(1) 中描述) bool TextAnalyzer::normalize(const std::string& sentence, std::vector& res) const; std::string TextAnalyzer::normalize(const std::string& sentence) const; // 动态规划分词 void TextAnalyzer::cutMP(const std::string& sentence, const std::string& country, std::vector& res) const; ``` ### (3) 词典获取 - 可以自己统计词频构建词典 - https://wortschatz.uni-leipzig.de/en/download 有部分网络抓取的语料

近期下载者

相关文件


收藏者