摘要: 本文讲述隐马尔科夫模及其在中文分词中的应用。 基于中文分词语料库,建立中文分词的隐马尔科夫模型,最后用维特比方法进行求解。 阅读全文
posted @ 2018-11-06 18:02 astropeak 阅读(1648) 评论(0) 推荐(0) 编辑
摘要: ASCII和Unicode都是为一个字符指定一个唯一的数字编号,Unicode能够表达更多的字符,相当于是ASCII的扩展。Unicode存在存储效率低下的问题,UTF8是在这个方面对Unicode的优化。 阅读全文
posted @ 2018-05-15 21:02 astropeak 阅读(325) 评论(0) 推荐(0) 编辑
摘要: 要并行化处理子任务,最简单的方法是为每个子任务创建一个线程去处理。这种方法的缺点是:如果子任务非常多,则需要创建的线程数目会非常多。 并且同时运行的线程数目也会较多。通过使用信号量来限制同时运行的线程数目,通过线程池来避免创建过多的线程。 与每个线程处理一个任务不同,线程池中每个线程会处理多个子任务。这带来一个问题:每个子线程如何知道要处理哪些子任务。 一种方法是预先将所有子任务均分给每个线程,而更灵活的方法则是通过任务队列,由子线程自行决定要处理哪些任务。 使用线程池时,线程主函数通常实现为一个无限循环,因此需要考虑如何终止线程。可以在任务队列中放置一个终止符来告诉线程没有更多任务, 因此其可以终止。 阅读全文
posted @ 2018-05-14 11:42 astropeak 阅读(11841) 评论(0) 推荐(0) 编辑
摘要: Python描述符(descriptor)是什么?其工作原理是什么?如何自己实现一个描述符?这篇文章将给你答案。 阅读全文
posted @ 2018-05-13 16:23 astropeak 阅读(2080) 评论(0) 推荐(0) 编辑
摘要: Python 装饰器介绍,及如何自己编写一个装饰符。 阅读全文
posted @ 2018-05-12 21:17 astropeak 阅读(627) 评论(0) 推荐(4) 编辑
摘要: Python中对象访问的语法即可能是直接访问这个属性,也可能是调用一个函数,这取决于类的实现方式。我们可以在不修改调用者代码的前提下,轻松切换这两种方式。可见python原生就提供了添加额外getter和setter所带来的好处。因此没有必要一开始就为对象属性编写getter和setter函数,而是在需要时切换到函数调用式属性。 阅读全文
posted @ 2017-07-24 16:13 astropeak 阅读(6510) 评论(4) 推荐(1) 编辑
摘要: 软件开发中最大的问题之一为:处理问题域中的变化。初次拿到软件需求,看似有一定规律,但也存在各种特殊情况。怎样发现共性,及其变化,Alan在他的书中(design patterns explained)中给出了两种方法:共性可变性分析,和需求知矩阵。 阅读全文
posted @ 2017-02-21 23:32 astropeak 阅读(645) 评论(0) 推荐(0) 编辑
摘要: 软件开发中最大的问题之一为:处理问题域中的变化。初次拿到软件需求,看似有一定规律,但也存在各种特殊情况。怎样发现共性,及其变化,Alan在他的书中(design patterns explained)中给出了两种方法:共性可变性分析,和需求知矩阵。 阅读全文
posted @ 2017-02-20 23:51 astropeak 阅读(234) 评论(0) 推荐(0) 编辑
摘要: sprint基本概念之一: DI, 即依赖注入 阅读全文
posted @ 2017-02-19 17:58 astropeak 阅读(1313) 评论(0) 推荐(0) 编辑
摘要: Helm 是一个emacs的软件包,定义了一个通用框架,交互式地、动态缩减式地使用关键字选择、获取、执行任何东西。 Helm软件包本身包含两部分,框架本身及应用。以上列表均为应用。基于框架,可以轻松创建新的应用。 阅读全文
posted @ 2016-12-25 17:08 astropeak 阅读(3293) 评论(0) 推荐(1) 编辑