虚拟机字节码执行引擎——《深入理解JVM》第8章

虚拟机是相对于物理机的概念,这两种机器都有代码执行能力,但区别是物理机的执行引擎是直接建立在处理器、硬件、指令集和操作系统层面上,而虚拟机的执行引擎这是自己实现的,因此可以自行制定指令集与执行引擎的结构体系,并且能够执行那些不被硬件直接支持的指令集格式。
继续阅读“虚拟机字节码执行引擎——《深入理解JVM》第8章”

分词后记(一)——自己动手写了一个支持Lucene的简单分词器XinAnalyzer

用lucene的时候,看见了一个叫SmartChineseAnalyzer的支持中文分词,效果不咋的,发现竟然用的HMM分词。

当时一句"我的天",HMM要是都算Smart,我的BiLSTM+CRF那可以是Intelligent了,于是就想自己也写一个。
具体代码可见:https://github.com/1000-7/xinlp/tree/master/src/main/java/lucene/simple
良心建议:如果真的要用lucene支持中文分词,用Hanlp或者Ansj吧还是。
继续阅读“分词后记(一)——自己动手写了一个支持Lucene的简单分词器XinAnalyzer”

CRF算法学习——自己动手实现Bi-LSTM+CRF分词(python)

意图识别 <= Bi-LSTM+CRF <= 先懂CRF <= 先懂HMM <= 先懂EM
终于到这一步了,这一次要用python写了,使用tensorflow去写。关于tensorflow的使用不是我的重点。
相关代码还是在我的GitHub上。
题外话,idea可以安装一个python插件,然后设置一下python编译器,这样就可以在项目里既能运行java又能运行python了,美滋滋。

继续阅读“CRF算法学习——自己动手实现Bi-LSTM+CRF分词(python)”

HMM算法学习——使用Baum-Welch训练HMM分词模型的参数

上一篇已经说过,读取jieba分词的参数用维特比算法去进行分词。
但是也给自己留了个坑,说要训练出来HMM分词的参数。
如果还不懂前向、后向、Gamma这一些东西,请先看上一篇博客
具体代码可以查看 https://github.com/1000-7/xinlp

十分感谢这个博客,博主已经实现了,自己借用了里面的很多内容。
继续阅读“HMM算法学习——使用Baum-Welch训练HMM分词模型的参数”