-
Notifications
You must be signed in to change notification settings - Fork 486
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
经过一天调试,用作者语料终于成功跑出结果,发现bug #39
Comments
你好 你能将你的项目发给我么 我的qq 592680380 非常感谢 我这里也是遇到了问题 |
的确有第三点的那个Bug。 |
|
非常感谢。改写的挺好。 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Word2vec w2v = new Word2vec();
w2v.loadJavaModel("model.bin");
System.out.println(w2v.distance("魔术队"));
结果为:[奥兰多 0.8990011, 新泽西 0.83124423, 奇才队 0.82303494, 网队 0.6876496, 顾明 0.68449014, 喻广生 0.6766388, 大年初五 0.67316043, 实习生 0.67124707, 佛罗里达州 0.6711269, 刘国强 0.66510504, 利纳雷斯 0.6648634, 郑金发 0.66467416, 寒风料峭 0.6624502, 孙星文 0.6613987, 廿七 0.66014194, 谷利源 0.65965, 孙永明 0.6595951, 辛祥利 0.6593127, 蓝宝石 0.6587766, 秦凤桐 0.6582865, 乔颖 0.656125, 潘家埠 0.6528409, 安卡拉 0.6501446, 刘文国 0.6500238, 马那瓜 0.6496207, 盛世良 0.64810187, 年初四 0.64746207, 时装展 0.64492613, 孟军 0.6446666, 俞俭 0.64461464, 谢湘 0.64448756, 刘世昕 0.6439994, 摩洛哥王国 0.6434583, 科托努 0.64319485, 周健伟 0.6416397, 王波 0.6413159, 阿鲁沙省 0.64103186, 刘永华 0.64082164, 侯嘉 0.64043736, 里斯本 0.6402035]
如果使用作者提供的语料,需要做的处理包括如下:
1.确保语料文本文件是UTF-8编码,不是需要转换。
2.作者提供的语料是用制表符切割的词组,但是代码是根据空格切割,需要将制表符全部替换成空格。或者修改代码:Learn.java 271行,修改成String[] split = temp.split("[\s ]+");支持同时出现多个半角或全角空格,或制表符分隔。
3.发现一个bug
Word2Vec中2个distance方法中,min = result.last().score; 应该放在resultSize < result.size()块里。
只有当结果数已经大于resultSize,才能将最后一个得分数赋予min,作为以后最小允许得分。结果数不大于resultSize不能赋予给min。
最新的代码提交到:https://github.com/linshouyi/Word2VEC_java
The text was updated successfully, but these errors were encountered: