File tree 3 files changed +128
-0
lines changed
3 files changed +128
-0
lines changed Original file line number Diff line number Diff line change
1
+ # 改进HanLP
2
+
3
+ :+1 ::tada : 首先,感谢花时间改进HanLP :tada ::+1 :
4
+
5
+ ![ HanLP] ( http://ww1.sinaimg.cn/small/6cbb8645jw1eqkariq2ijj20se0sik3a.jpg )
6
+
7
+ ## 项目初衷
8
+ 自然语言处理本来是一个小众的圈子,综合了多个交叉学科的领域知识。不但需要较深的数学基础,还需要实现复杂算法的工程能力,并且语言学知识也不可或缺。
9
+ HanLP作为一个开源自由的项目,初衷是降低上述理论门槛,普及统计自然语言处理到生产环境中去。即使只是一个抛砖引玉的项目,也有其坚持的东西。
10
+ 为什么走统计自然语言处理的方向?因为我不喜欢那些自作聪明的“人工规则”“评分公式”,以及靠此存活的系统或“专家”。这些“人肉智能”及其机械工作应当逐步被机器替代掉。
11
+ 很高兴最初的想法得到了越来越多的赞同,有越来越多的公司和个人开始关注语料库建设,开始转型到统计模型。
12
+ HanLP核心代码几乎全部配有注释和附属说明文档。衷心希望第一次接触自然语言处理的工程师,也能看懂代码的关键,并最终参与开源,一起完善这个不完美的小项目。
13
+ HanLP所有代码和文章都注明了大量的论文引用,一些第三方代码也保留了全部署名。希望大家尊重提出了该算法的学者老师、实现了该算法的开源作者。HanLP能在这些研究成果上改进算法,大家能在HanLP上做商业应用,归根结底全是他们的功劳。也希望借此激发大家对底层算法的兴趣,了解原理才能评估一项技术的优缺点。
14
+
15
+ ## 开源项目定义
16
+ 世界上有很多开源项目,但按照目的而言只有两种:
17
+
18
+ ** 1. 有商业目的的开源项目**
19
+
20
+ * 背后主要由商业公司支撑,雇佣全职员工参与开发,目的(就算不是主要目的,至少也有部分意愿)是推广行业标准(TensorFlow)、测试公司产品(Fedora)、汲取社区智慧改进产品(OpenJDK)、低价倾销后续收费(一些国产“开源”软件如Discuz)……
21
+ * 这类开源产品大部分影响深远,具有改变行业的力量。既达成了企业的商业目的,又造福了所有用户。
22
+
23
+ ** 2. 以兴趣主导的开源项目**
24
+
25
+ * 无商业公司支撑,没有任何商业目的。多源于某个黑客的一时兴起,“在座的工具都不好用,为什么不自己造一个呢”。或者源于史蒂夫·沃兹尼克“做出好东西就应该让更多的人使用”那种朴素的利他主义。再者就是实验学习性质的作品,在维护作品的同时得到成长。
26
+ * 这类开源项目虽然缺少资金人力,但不乏闪光之作,伟大如Linux自不必说,小领域的如[ 鸣谢] ( https://github.com/hankcs/HanLP#鸣谢 ) 中列举的那些接地气的项目同样精彩。
27
+
28
+ 毫无疑问,HanLP是属于后者的,完全基于兴趣,无商业支持,专注一个小众领域,希望做到极致。即使现在做的还不好,也在往好的方向前进。
29
+
30
+ ## 其他贡献方式
31
+ * 回答[ issue区] ( https://github.com/hankcs/HanLP/issues ) 的问题,参与讨论,提出批评与建议
32
+ * 参与[ 《开发计划》] ( https://github.com/hankcs/HanLP/projects ) 中的短期project
33
+ * 为HanLP添加注释
34
+ * 为HanLP编写测试用例
35
+ * 为HanLP编写[ 拓展插件] ( https://github.com/hankcs/HanLP/wiki/%E8%A1%8D%E7%94%9F%E9%A1%B9%E7%9B%AE )
36
+ * 开发高级功能,给大家露一手
37
+ * 写文章分享你使用HanLP的经验,做了什么样的应用
38
+ * 向其他朋友推荐统计自然语言处理与HanLP
39
+ * 校对词库,调整模型
40
+ * 捐献语料(分词标注语料、领域词库等)
41
+
42
+ 再次对你的贡献表示感谢,开源事业因你的参与而更加美好!
43
+
Original file line number Diff line number Diff line change
1
+ <!--
2
+ 这是HanLP的issue模板,用于规范提问题的格式。本来并不打算用死板的格式限制大家,但issue区实在有点混乱。有时候说了半天才搞清楚原来对方用的是旧版、自己改了代码之类,浪费双方宝贵时间。所以这里用一个规范的模板统一一下,造成不便望海涵。除了注意事项外,其他部分可以自行根据实际情况做适量修改。
3
+ -->
4
+
5
+ ## 注意事项
6
+ 请确认下列注意事项:
7
+
8
+ * 我已仔细阅读下列文档,都没有找到答案:
9
+ - [ 首页文档] ( https://github.com/hankcs/HanLP )
10
+ - [ wiki] ( https://github.com/hankcs/HanLP/wiki )
11
+ - [ 常见问题] ( https://github.com/hankcs/HanLP/wiki/FAQ )
12
+ * 我已经通过[ Google] ( https://www.google.com/#newwindow=1&q=HanLP ) 和[ issue区检索功能] ( https://github.com/hankcs/HanLP/issues ) 搜索了我的问题,也没有找到答案。
13
+ * 我明白开源社区是出于兴趣爱好聚集起来的自由社区,不承担任何责任或义务。我会礼貌发言,向每一个帮助我的人表示感谢。
14
+ * [ ] 我在此括号内输入x打钩,代表上述事项确认完毕。
15
+
16
+ ## 版本号
17
+ <!-- 发行版请注明jar文件名去掉后缀的部分;仓库版请注明master还是protable分支 -->
18
+
19
+ 当前最新版本号是:
20
+ 我使用的版本是:
21
+
22
+
23
+ ## 我的问题
24
+
25
+ <!-- 请详细描述问题,越详细越可能得到解决 -->
26
+
27
+ ## 复现问题
28
+ <!-- 你是如何操作导致产生问题的?-->
29
+
30
+ ### 步骤
31
+
32
+ 1 . 首先……
33
+ 2 . 然后……
34
+ 3 . 接着……
35
+
36
+ ### 触发代码
37
+
38
+ ```
39
+ public void testIssue1234() throws Exception
40
+ {
41
+ CustomDictionary.add("用户词语");
42
+ System.out.println(StandardTokenizer.segment("触发问题的句子"));
43
+ }
44
+ ```
45
+ ### 期望输出
46
+
47
+ <!-- 你希望输出什么样的正确结果?-->
48
+
49
+ ```
50
+ 期望输出
51
+ ```
52
+
53
+ ### 实际输出
54
+
55
+ <!-- HanLP实际输出了什么?产生了什么效果?错在哪里?-->
56
+
57
+ ```
58
+ 实际输出
59
+ ```
60
+
61
+ ## 其他信息
62
+
63
+ <!-- 任何可能有用的信息,包括截图、日志、配置文件、相关issue等等。-->
64
+
Original file line number Diff line number Diff line change
1
+ <!--
2
+ 感谢你对开源事业的贡献!这是一份模板,方便记录你做出的功绩,谢谢!
3
+ -->
4
+
5
+ ## 注意事项
6
+
7
+ * 这次修改没有引入第三方类库。
8
+ * 也没有修改JDK版本号
9
+ * 所有文本都是UTF-8编码
10
+ * 代码风格一致
11
+ * [ ] 我在此括号内输入x打钩,代表上述事项确认完毕。
12
+
13
+ ## 解决了什么问题?带来了什么好处?
14
+
15
+ <!-- 你的补丁解决了什么问题,给大家带来了什么好处? -->
16
+
17
+ ## 相关issue
18
+
19
+ <!-- 如果跟已有issue相关的话,麻烦列一下 -->
20
+
21
+
You can’t perform that action at this time.
0 commit comments