- 博客(40)
- 收藏
- 关注
原创 谷歌退出之事
不谈意识形态,也不谈政府意识。 谷歌退出中国市场,无疑将造成百度的一家独大,当然想想阿里在电子商务的一家独大,以及腾迅在即时通讯领域的一家独大,似乎也没什么。但是百度是一家技术起家和驱动的公司,如果在其市场上缺少一个直接的竞争对手,或者说像Google这种技术上力求创新的公司作为对手的话,真的不是一件好事。 抛开中国互联网广告市场份额不谈,百度在技术上也无疑将面临更大的挑战,开始要
2010-01-16 21:52:00 2928 1
原创 再读《爱因斯坦传》
还是孩提时读过爱因斯坦的传记,尽管那时候对于作者一些生涩的哲学语言似懂非懂,不过还是完全沉浸在了对伟大人物的景仰之中。现在重新读过,在那些伟大的思想面前,心灵竟然如孩子,宁静而又激动。 在这个充满崇拜的年代,如果没有偶像似乎难免寂寞,可如果要以爱因斯坦这种智慧的人作为偶像的话,确又有种不安和惭愧,毕竟要崇拜伟大的心灵的人至少也要有一颗宁静深邃的心才好。
2009-12-28 14:58:00 2857
原创 读《语言本能》一书
《语言本能》 The Language Instinct - How the Mind Creates Language Steve Pinker 一位科学家赠与我的书,之前工作太忙一直没时间读完,后来他离开中国回了美国,整理他留给我的书籍时才重新开始阅读。边阅读边写下一些记忆的碎片,将来或许可以拼成某种景象。 在深入读这本书之前,最好怀疑一下:语言不是后先习得得一种
2009-11-30 13:43:00 3609
转载 100个世界上鲜为人知的“常识”
1.没有一张纸可对折超过9次 2.根据统计每年骡子所杀的人比飞机失事所死的人还多 3.人睡觉比坐着看电视所消耗的卡路里还多 4.第一种有条形码的对象是香口胶 5.Wright’s Brother发明飞机后第一次试飞的路程比一架波音747飞机的飞机翼还短 6.1987年,美国一间航空公司将每个头等机位的飞机餐减少一粒橄榄后,节省了约35
2009-03-02 15:54:00 3612
原创 如此谷歌
从谷歌的输入法事件,到其逃税丑闻,从其页面变脸,到令人啼笑皆非的人肉搜索,再联想到其领导人道貌岸然的四处布道,发现谷歌已经离人名心目中纯净的google相去甚远了。如果说输入法事件只是某个急于求成的工程师的无心之失的话,那么逃税丑闻应该就是整个公司管理层的预谋之举了;如果说页面变脸只是为了迎合所谓本地人的习惯,那么人肉搜索就是赤裸裸的用一个蹩脚的名字来进行毫无意义的模仿;在号称从来不缺乏创新的g
2008-04-01 13:49:00 3076
原创 自然语言处理技术产品化
【一段时间的磕磕碰碰,偶尔思索,偶尔躁动,依然难以找到一个可以完美说服自己的理由。彷徨在各种各样的自我设想的十字路口,本来清晰的视野也变得黯淡,所以还是要定期梳理一下自己的思绪。】 随着各大互联网公司输入法的推出,这个原本“小家碧玉”般的产品也开始搬上“上层公司”的日常话题。在这个崇尚技术的年代,任何代表先进技术的产品都在有意无意地被日益放大,输入法当然就是最典型的例子。最初自然语
2007-09-22 21:19:00 3832 1
原创 多维拼音输入法 - Davepy V1.0 正式版
多维拼音输入法“秀才”版本(1.0正式版)在beta版本发布半年后发布,其间因为工作上的波折,时间和精力上都让我无暇顾及输入法的改进,致使其时间上有所拖延。经过多方面的努力,“秀才”版本之于beta版本,无论是算法还是界面上都进行了比较大的改进。 多维拼音输入法主页仍然采用sourceforge:http://davepy.sourceforge.net/ 多维拼音输入法的相关
2007-06-11 18:26:00 3998 1
原创 无论如何,还是应该感激
毕业时,凭借在一家顶级软件企业面试中积累的经验(虽经历了漫长的面试,最后惨遭淘汰,但是还是获得了不少面试的经验),顺利地进入了N公司,一家知名的网络公司的研发部门。怀着孩子般的感激,在进入公司的最初的日子,过得相当幸福,做着自己擅长和喜欢的东西,纯粹而又高效。 在很短的时间内通过试用期后,取得了稍高于预期的薪水,自然而然又增加了自己工作的动力。由于研究生阶段在专业上有了比较多的积累,并一直
2007-04-28 08:23:00 3679 1
原创 两狗(sogou & google)相争,必有一伤
sogou输入法推出不到一年,号称以词库之技领先,虽市场未有盛气凌人之势,却在网络大亨google仓促推出的输入法下,名声大噪(这样说有点夸张,不过“抄袭”事件的确在无意中让更多人知道了sogou输入法),同时也让google中国陷入难以脱困的“词库门”事件,估计自称深谙中国文化的google中国高层也没有想到自己竟然让“有意栽花花不放,无心插柳柳成阴”的中国贤文成了诅咒! 输入法绝
2007-04-09 23:19:00 3736 2
原创 工作取向
昨天在电视中听闻某IT知名人士再次强调年轻人对待工作或者事业的态度:一是要做自己喜欢的事情,二是要做自己擅长的事情。碰巧又听到理财专家的忠告:不熟不做,不懂不做。对比这两种言论,想想,其实道理如出一辙,也就是专著于自己喜欢的事情,而因为喜欢,有兴趣,所以才能擅长。回观自己的工作,我正从事的是自己在高校时选择的专业方向(据同学聚会时讨论的结论,工作后仍旧从事读研时研究方向的很少),做的是自己熟悉和热
2007-01-23 12:24:00 4000
原创 这是一个新的开始
定在新年的头一天发布输入法,只是希望给自己一份新年的礼物,同时也给支持我输入法的朋友们一份小小的礼物。回顾这一年,专注于自然语言处理技术的研发,虽然公司发展有些波折,但非我所能左右之事情,所以潜心技术,也还是自得其乐。 生活不就是如此吗,十之八九不如意,而对我而言若能取得一分乐趣,我也当十分来享受。多维拼音输入项目Davepy本来是安置在sourceforge下,但由于台湾地震导致国际光缆断裂
2007-01-01 10:11:00 3538
原创 多维拼音输入法相关网址列表
为了维护和更新的方便,多维拼音输入法现在主要通过其官方博客以及Sourceforge上的davepy项目对外进行展示,相关地址列表如下,随着新版本的发布,此列表中下载地址有可能继续增加,届时将会对其进行及时更新。Sourceforge中davepy项目主页:http://davepy.sourceforge.net/Sourceforge中davepy下载地址:https://sourceforg
2006-12-14 14:19:00 3819
原创 多维输入法启示
多维的含义? 谓之多维,是希望拼音输入法可以从更多的角度来处理用户输入,就像人在面对一个问题的时候,总是要从诸多方面进行考虑,这也就是所谓的智能。当然,智能一词 过于复杂,也过于宽泛,对于输入法而言,其智能应该在于其具有敏捷的学习功能,在于语言模型的鲁棒性,并能让用户感觉面对的是一个活物,不要那么机械,这 大概也就是多维拼音输入法的目标。值得一提的是“多维”一词,也是我昵称D
2006-12-14 14:05:00 4094 1
原创 递归程序求解问题的通用法则
编写递归程序有几个重要的原则可以遵循: 1. 要解决的问题可拆分为几个与原问题类似的子问题(子问题仍可拆分)。 2. 每个子问题必须比原来问题的规模更小(即使小一号也行,当然如果能够迅速减小规模更好)。 3. 遇到足够小的子问题时就直接解决之,防止问题无限细分下去,也就是防止无限递归(递归终止条件很重要)。 先看一个最简单的递归程序,下面程序求整数n的阶乘:int factori
2006-11-20 12:37:00 6303
原创 多文档话题跟踪展示技术的有趣实现
留意过bbs上合集的同学可能会发现,一个火的帖子,跟者云集,并且跟贴的话题频频变化,但是一般最后会回到最初的主题上来,看看水木上主题丰富热火朝天的WL板块就知道。虽然经常浏览合集,但是起初这个现象我倒没有留心,偶尔一次lp在旁边嘀咕,说这种五花八门的回帖要是有个程序分析一下输出一个图像,就像google trends一样,那感情有趣。 有趣归有趣,可实现这种东西也不是那么简单的事情
2006-10-31 14:53:00 3815
原创 输入法编程之 光标跟随
光标跟随是输入法系统最常见的特性。要实现这一特性,需要获取IME支持程序(最常见如word,notepad等)中插入符号caret的坐标位置。在Windows的IME环境中,可以通过使用IME核心数据结构INPUTCONTEXT的cfCompForm成员来获取IME宿主程序中文本光标位置。cfCompForm具有如下结构:typedef tagCANDIDATEFORM { //列表窗口信息
2006-10-24 15:45:00 9275 2
原创 感悟生活之-工作
我选择了自己喜欢专业方向,也从事了自己爱好的职业,并且获得了刚踏入IT业界学生所渴求的还算不错的薪酬,可工作一年后,我却发现理想越来越遥遥无期。 几日前,和几个亦身处名企的老同学聚会,谈及工作,竟然发现大家都如此地相似。缺乏激励的开发,没有思想交流的团队,没有加薪的动力,甚至连一个渴望的郊游活动都是奢望。我不想谈加班的事情,毕竟每个人对加班的看法不一,我也不想落个愤青的名声。所谓的高
2006-06-26 15:06:00 4093 4
原创 C++内存管理基础之new & delete
内存管理的基础是要知道怎么获得以及释放内存,如你所知,在C/C++中就是调用new和delete操作。1. 分清operator new和new operator 全局函数operator new通常这样声明:void * operator new(size_t size);返回值类型是void*,表示其返回的是一个未经处理(raw)的指针,指向未初始化的内存。参数size_t确定分配多少内
2006-06-05 14:06:00 4815 1
转载 C/C++中的内存对齐
[Intel Architecture 32 Manual] 字,双字,和四字在自然边界上不需要在内存中对齐。(对字,双字,和四字来说,自然边界分别是偶数地址,可以被4整除的地址,和可以被8整除的地址。) 无论如何,为了提高程序的性能,数据结构(尤其是栈)应该尽可能地在自然边界上对齐。原因在于,为了访问未对齐的内存,处理器需要作两次内存访问;然而,对齐的内存访问仅需要一次访问。
2006-06-04 11:32:00 4331 2
原创 动态规划算法剖析
最优化原理 1951年美国数学家R.Bellman等人,根据一类多阶段问题的特点,把多阶段决策问题变换为一系列互相联系的单阶段问题,然后逐个加以解决。一些静态模型,只要人为地引进“时间”因素,分成时段,就可以转化成多阶段的动态模型,用动态规划方法去处理。与此同时,他提出了解决这类问题的“最优化原理”(Principle of optimality): “一个过程的最优决策具有这样的性质:
2006-05-30 13:07:00 42877 11
原创 排列组合问题的通用算法
尽管排列组合是生活中经常遇到的问题,可在程序设计时,不深入思考或者经验不足都让人无从下手。由于排列组合问题总是先取组合再排列,并且单纯的排列问题相对简单,所以本文仅对组合问题的实现进行详细讨论。以在n个数中选取m(01. 首先从n个数中选取编号最大的数,然后在剩下的n-1个数里面选取m-1个数,直到从n-(m-1)个数中选取1个数为止。2. 从n个数中选取编号次小的一个数,继续执行1步,直
2006-05-25 17:26:00 66165 12
原创 怎样将成员函数指针强制转换成void*指针?
采用取成员函数指针的地址的方法,先把指向成员函数指针的指针强制转化为别的类型,如unsigned*,当然同样可以通过此转化后的指针经过相反的变换来调用成员函数。于是乎要转化为void*的问题也随之可解,如下示例:/* VS2003下编译运行 */class AbstractMethod{public: virtual void show(){} // = 0; // 可以是纯虚函数,这
2006-05-23 16:48:00 5111 2
转载 C++对象及多态实现探索之内存布局
普通类对象的内存布局首先我们从普通类对象的内存布局开始。C000为一个空类,定义如下:struct C000{}; 运行如下代码打印它的大小及对象中的内容。PRINT_SIZE_DETAIL(C000) 结果为:The size of C000 is 1The detail of C000 is cc 可以看到它的大小为1字节,这是一个占位符。我们可以看到它的值是0xcc。在debug模式下,这表
2006-05-12 14:55:00 1265
原创 C++ virtual member function FAQ
【1】 虚成员函数和非虚成员函数调用方式有什么不同? 非虚成员函数是静态确定的。也就是说,该成员函数(在编译时)被静态地选择,该选择基于指向对象的指针(或引用)的类型。 相比而言,虚成员函数是动态确定的(在运行时)。也就是说,成员函数(在运行时)被动态地选择,该选择基于对象的类型,而不是指向该对象的指针/引用的类型。这被称作“动态绑定/动态联编”。大多数的编译器使用以下的一些的技术,也就是
2006-05-10 15:46:00 3484
转载 C++成员函数指针的应用
C++中,成员指针是最为复杂的语法结构。但在事件驱动和多线程应用中被广泛用于调用回叫函数。在多线程应用中,每个线程都通过指向成员函数的指针来调用该函数。在这样的应用中,如果不用成员指针,编程是非常困难的。 刚遇到这种语法时也许会让你止步不前。但你会发现,使用恰当的类型定义之后,复杂的语法是可以简化的。本文引导你了解成员函数指针的声明,赋值和调用回叫函数。 成员函数指针的声明
2006-04-28 11:51:00 3526
原创 关于N皇后问题高效试探回溯算法的分析
// N Queens Problem// 试探-回溯算法,递归实现// sum用来记录皇后放置成功的不同布局数;upperlim用来标记所有列都已经放置好了皇后。long sum = 0, upperlim = 1; // 试探算法从最右边的列开始。void test(long row, long ld, long rd) 。{ if (row != upperlim)
2006-04-26 15:58:00 3775 6
原创 如何使用迭代器iterator循环删除容器中的元素?
STL中的容器主要分两类,一是顺序存储的,如vector;一是以红黑树形式存储的,如map。下面分别以vector和map为例,说明怎样利用迭代器在遍历的同时删除容器内元素。下面示例程序首先往容器中添加一定元素,然后循环删除其中连续或不连续的元素。程序在VS2003以及g++3.4下调试,不同编译器下可能结果不同。// vector sample for Windows and Linuxin
2006-04-19 14:45:00 6491 2
原创 如何使用fstream类在读写操作之间任意转化?
#include#include#include#includeusing namespace std;int main(){ fstream io("test.txt",ios::in|ios::out|ios::trunc); io //cout io.seekp(0, ios_base::beg); // //cout string str1; io >> str1; io
2006-04-16 22:46:00 2262
原创 我的中文句法分析器
鉴于上次“如此开源”之痛,所以花了几天时间,边看《诛仙》边完成了一个通用的中文句法分析器,采用Earley的Chart Parsing算法,当然也基于我强大的中文分词标注一体化系统。偶然想到在这个一体化系统上再融合进句法分析,实在是一个不错的升华想法,不过还没有弄到Penn Chinese Treebank的训练语料,所以还没法做概率句法分析,等有机会吧。还要抽时间把我的sourceforge目录
2006-03-22 16:12:00 10681 18
原创 如此开源
听说哈工大和计算所有句法分析开源,满怀欣喜地想借鉴一下研究之作,却没想其层层设限,根本无从下载。大悟,原来这就是他们所谓的开源!揣想我们中文自然语言处理的举步不前,难道和这些可笑的“敝帚自珍”之举毫无关系吗?其实即算能够付诸实用的句法分析器也不过是个小的cookie而已,谈何以怕人商用而徒加屏障呢,须知商用的东西比之高校个人之作而言要有太多的讲究,真是可笑。愤怒之余,亦是无奈,只得愈加努力,希
2006-03-09 18:16:00 12782 46
原创 灵感就是灵感
面对分词系统中的命名实体识别已经很难下手提高精度,中断了一段时间去做完了一个有趣的拼音输入法,在快撰写完相关专利申请文稿的时候,又有些百无聊赖了,想想下面又要回去面对那个代码似乎已经很漂亮而精度却难于提升的分词标注系统,一片空白。自然语言处理行当就是如此,总会遇上难题,很愁,又难以绕过,只能冥思苦想。好多天来,我都近乎无可奈何,这种状态会让我觉得空虚度日。昨天博士问我下面NER怎么进行,我敷衍说先
2006-03-08 12:52:00 1569
原创 松驰之道
前些日子下班时候,在一处拥挤难行的街道因为用力过猛,竟然把自行车链条给扯断了,最后只好拾起链条推着车回去。周末去修车,师傅说链条太短,估计是断了一截,当时我就耐闷,难道我骑车都用这么大力吗?不过链条看来明显是短了,就只好使用后齿轮的最小圈,不过这样也只是比以前降低了一个档位而已。按照我的计划是,刚开始时前齿轮使用中间档位,后齿轮使用中间档位,2个月后把后面的换为次小档位,然后又过了2个月后前面开始
2006-03-02 18:22:00 1623
原创 努力中
快乐的春节假期开始的前段日子,出于兴趣,花了一天时间完成了第一个版本的音字转换,功能和现在baidu或者sogou上的拼音输入相同,只有简单的音词转化提示,对于一长串的拼音流我也只是稍微作了最大匹配,求取基于一元概率最大值的汉字序列,小小的程序很流畅,寥以自娱而已。假期过后,偶然发现google针对个性用户的拼音输入可以处理连续的长串拼音,而且效果好得很,于是乎我又开始改用多元概率模型,求取多个音
2006-02-16 14:41:00 1455
原创 思索中
为了做出好的音字转化程序,最近又开始研究k shortest paths算法了,搜刮了10多篇各个年代的论文,一路啃过来,几天后终于有所收获。接下来就是要实现一个高效的算法版本咯,不过30年来,此算法的改进版本为数不少,看来又要仔细阅读和对比一段时间,没办法,关于此算法的论文翻译和编辑看来又要拖到3月份才能完成了。
2006-02-15 10:03:00 1415
原创 Indri 信息检索模型
Indri 信息检索模型戴维整理介绍 本文旨在阐述Indri所实现的检索模型及其相关细节。参考文献:Lavrenko, V. and Croft, W.B., "Relevance-Based Language Models," Proceedings of the 24th Annual international ACM SIGIR Conference on Research
2005-08-12 09:36:00 4686 1
原创 前K条最短路径算法
[注:为了简便我这里只列出算法的步骤和伪代码,详细的数学证明请参见相关论文。C++代码的算法实现可以在我的sourceforge目录https://sourceforge.net/projects/ksp下载使用。特别要指出的是葡萄牙教授Martins对此算法有深入研究,发表了为数众多的相关论文,我这里采用的也是基于他早期提出的deletion algorithm。Martins的Fortra
2005-08-05 14:54:00 38420 31
原创 搜索引擎中几种语言模型的性能比较
[正文等待上传......]人工构建中文query,对人民日报语了进行测试,各种语言模型的效果对比结果如下: 插值 recall-precision 曲线图
2005-07-29 17:00:00 3132 2
翻译 Indri 动态文档索引技术
Indri中的动态文档索引技术戴维 译 摘要: Indri 动态文档索引的实现技术,支持在更新索引的同时处理用户在线查询请求。 文本搜索引擎曾被设计为针对固定的文档集合进行查询,对不少应用来说,这种机制工作得很好,然而对于诸于新闻,财经和桌面搜索而言,需要的是高效、经常性的更新索引。 以往支持动态文档集合的研究主要围绕增量索引方法,增量系统通过往已有的索引中追加大的文档集合来优化索引性
2005-07-29 09:52:00 7167 1
原创 Indri 开源搜索引擎
一直对Lemur有所熟悉,有感于国外大学在研究和实践上的并驾齐驱,特翻译并撰写Indri开源搜索引擎的相关文章,以供志趣相同者共同参考。 Indri是一个完整的开源搜索引擎,由卡耐基-梅隆大学Lemur项目组维护并持续开发。尽管只是Lemur信息获取工具系列的一部分,然而由于其使用最新的语言模型,高效的索引技术,完整的搜索引擎解决方案,不乏为搜索相关专业及爱好者研究之典范。 支
2005-07-29 09:35:00 7804
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人