-
Notifications
You must be signed in to change notification settings - Fork 10.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
HanLP多实例魔改中 #1339
Comments
感谢您对HanLP1.x的支持,我一直为没有时间回复所有issue感到抱歉,希望您提的问题已经解决。或者,您可以从《自然语言处理入门》中找到答案。 时光飞逝,HanLP1.x感谢您的一路相伴。我于东部标准时间2019年12月31日发布了HanLP1.x在上一个十年最后一个版本,代号为最后的武士。此后1.x分支将提供稳定性维护,但不是未来开发的焦点。 值此2020新年之际,我很高兴地宣布,HanLP2.0发布了。HanLP2.0的愿景是下一个十年的前沿NLP技术。为此,HanLP2.0采用TensorFlow2.0实现了最前沿的深度学习模型,通过精心设计的框架支撑下游NLP任务,在海量语料库上取得了最前沿的准确率。作为第一个alpha版本,HanLP 2.0.0a0支持分词、词性标注、命名实体识别、依存句法分析、语义依存分析以及文本分类。而且,这些功能并不仅限中文,而是面向全人类语种设计。HanLP2.0提供许多预训练模型,而终端用户仅需两行代码即可部署,深度学习落地不再困难。更多详情,欢迎观看HanLP2.0的介绍视频,或参与论坛讨论。 展望未来,HanLP2.0将集成1.x时代继承下来的高效率务实风范,同时冲刺前沿研究,做工业界和学术界的两栖战舰,请诸君继续多多指教,谢谢。 |
感谢!这个功能很有必要。 这部分代码也开发结束了,在测试阶段? 为了完成这个工作,接下来还需要做什么? |
另外,之前发布的版本中,维特比分词是支持自定义词典的路径, 而本任务的多实例支持独立的自定义词典,是针对于所有的分词器类型的,是这样的区别吧? |
这部分代码经过测试没有问题。恰好赶在2.0发布前夕,所以终止了。没有合并的原因主要是,独立词典改变了之前的API设置,而需要此功能的用户占比较少。如果要合并这个补丁,我希望在不影响旧API的情况下,单独设立一个DynamicCustomDictioanry的类,保留CustomDictionary.insert接口。 |
是的,维特比分词与其他分词器拥有共同基类Segment,这项功能本来就应该做到基类里面去。 |
我提交了完全兼容旧API的 |
StandardTokenizer = JClass("com.hankcs.hanlp.tokenizer.StandardTokenizer")() |
多实例功能挺有用的 |
我下了最新的1.x 分支里的代码。 把DemoCustomDictionary 的代码改成如下 String text = "攻城狮逆袭单身狗,迎娶白富美,走上人生巅峰"; // 怎么可能噗哈哈!
--------CustomDictionary2 文件内容仅一行,开始------ 期望运行出来的结果是
|
邮件已收到了哦亲,经常联系啊。好朋友走一生
|
由于早期设计局限,目前HanLP的
CustomDictionary
、CoreDictionary
、CoreBiGramTableDictionary
等都是静态资源类。而一些应用场景要求加载不同的词典,比如同一个JVM中不同用户实例,或者不同领域下加载不同的bigram模型。由于个人时间有限,这个功能让大家久等了。现在,所有静态资源类正在逐步改造中。目前的进度如下:
CustomDictionary
重构完毕segment
或analyzer
创建一个新的DynamicCustomDictionary
实例,并且调用该实例的insert
方法。segment.customDictionary = new DynamicCustomDictionary("词典1.txt", "词典2.txt")
segment.customDictionary.insert
CoreDictionary
重构中CoreBiGramTableDictionary
重构中The text was updated successfully, but these errors were encountered: