<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Geoinformatics &#187; FTS</title>
	<atom:link href="http://www.geoinformatics.cn/tag/fts/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.geoinformatics.cn</link>
	<description>Arts and Sciences move me on ...</description>
	<lastBuildDate>Fri, 13 Jan 2012 10:29:06 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>数据库转换小记</title>
		<link>http://www.geoinformatics.cn/2009/11/%e6%95%b0%e6%8d%ae%e5%ba%93%e8%bd%ac%e6%8d%a2%e5%b0%8f%e8%ae%b0/</link>
		<comments>http://www.geoinformatics.cn/2009/11/%e6%95%b0%e6%8d%ae%e5%ba%93%e8%bd%ac%e6%8d%a2%e5%b0%8f%e8%ae%b0/#comments</comments>
		<pubDate>Thu, 26 Nov 2009 22:41:25 +0000</pubDate>
		<dc:creator>长安旧梦</dc:creator>
				<category><![CDATA[技术心得]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[FTS]]></category>
		<category><![CDATA[PostgreSQL]]></category>

		<guid isPermaLink="false">http://www.geoinformatics.cn/?p=1543</guid>
		<description><![CDATA[1. mysql_connect()和mysql_pconnect()的区别? mysql_connect()是普通连接，mysql_pconnect()是永久连接，mysql_connect()在执行完代码后自动关闭连接，而mysql_pconnect()不会。 而针对postgreSQL，其永久链连接的函数为pg_pconnect。 关于链接字符串，可以参考 http://docs.php.net/manual/zh/function.pg-connect.php， 注意，旧的多参数语法 $conn = pg_connect(&#8220;host&#8221;, &#8220;port&#8221;, &#8220;options&#8221;, &#8220;tty&#8221;, &#8220;dbname&#8221;) 已经不提倡使用，但是依然可以使用。 2. PostgreSQL 里面不需要进行类似于MySQL中的mysql_select_db操作。 3. MYSQL_ASSOC? mysql_fetch_array() 中可选的第二个参数 result_type 是一个常量，可以接受以下值：MYSQL_ASSOC，MYSQL_NUM 和 MYSQL_BOTH。本特性是 PHP 3.0.7 起新加的。本参数的默认值是 MYSQL_BOTH。 如果用了 MYSQL_BOTH，将得到一个同时包含关联和数字索引的数组。用 MYSQL_ASSOC 只得到关联索引（如同 mysql_fetch_assoc() 那样），用 MYSQL_NUM 只得到数字索引（如同 mysql_fetch_row() 那样）。 而针对postgreSQL也有pg_fetch_array()函数，返回一个与所提取的行（元组/记录）相一致的数组。如果没有更多行可供提取，则返回 FALSE。 result_type 是可选参数，控制着怎样初始化返回值。result_type 是一个常量，可以有以下取值：PGSQL_ASSOC，PGSQL_NUM 和 PGSQL_BOTH。取值为 PGSQL_ASSOC 时 pg_fetch_array() 返回用字段名作为键值索引的关联数组，取值为 PGSQL_NUM 时用字段编号作为键值，取值为 PGSQL_BOTH 时则同时用两者作为键值。默认值是 PGSQL_BOTH. [...]]]></description>
			<content:encoded><![CDATA[<p><strong>1. mysql_connect()和mysql_pconnect()的区别?</strong><br />
mysql_connect()是普通连接，mysql_pconnect()是永久连接，mysql_connect()在执行完代码后自动关闭连接，而mysql_pconnect()不会。<br />
而针对postgreSQL，其永久链连接的函数为pg_pconnect。</p>
<p>关于链接字符串，可以参考 <a href="http://docs.php.net/manual/zh/function.pg-connect.php">http://docs.php.net/manual/zh/function.pg-connect.php</a>， 注意，旧的多参数语法 <strong>$conn = pg_connect(&#8220;host&#8221;, &#8220;port&#8221;, &#8220;options&#8221;, &#8220;tty&#8221;, &#8220;dbname&#8221;)</strong> 已经不提倡使用，但是依然可以使用。</p>
<p><strong>2. PostgreSQL 里面不需要进行类似于MySQL中的mysql_select_db操作。</strong></p>
<p><strong>3. MYSQL_ASSOC?</strong><br />
mysql_fetch_array() 中可选的第二个参数 result_type 是一个常量，可以接受以下值：MYSQL_ASSOC，MYSQL_NUM 和 MYSQL_BOTH。本特性是 PHP 3.0.7 起新加的。本参数的默认值是 MYSQL_BOTH。 如果用了 MYSQL_BOTH，将得到一个同<strong>时包含关联和数字索引的数组</strong>。用 MYSQL_ASSOC 只得到关联索引（如同 mysql_fetch_assoc() 那样），用 MYSQL_NUM 只得到数字索引（如同 mysql_fetch_row() 那样）。<br />
而针对postgreSQL也有pg_fetch_array()函数，返回一个与所提取的行（元组/记录）相一致的数组。如果没有更多行可供提取，则返回 FALSE。 result_type 是可选参数，控制着怎样初始化返回值。result_type 是一个常量，可以有以下取值：PGSQL_ASSOC，PGSQL_NUM 和 PGSQL_BOTH。取值为 PGSQL_ASSOC 时 pg_fetch_array() 返回用字段名作为键值索引的关联数组，取值为 PGSQL_NUM 时用字段编号作为键值，取值为 PGSQL_BOTH 时则同时用两者作为键值。默认值是 PGSQL_BOTH.</p>
<p><strong>4. php操作mysql数据库,可以使用mysql_unbuffered_query. 但是操作postgresql无相关的函数,如何替换？<span id="more-1543"></span><br />
</strong></p>
<p>mysql_unbuffered_query这个函数可到这里看说明。 http://php.liukang.com/manual/zh/function.mysql-unbuffered-query.php<br />
php对postgresql操作好像没有这样的函数，但可以用postgresql的游标达到目标。参考 http://www.pgsqldb.org/pgsqldoc-8.1c/sql-declare.html</p>
<p>如果没有声明 <tt>WITH HOLD</tt>，那么这个命令创建的游标只能在当前事务中使用。使用 <a style="color: #000066;" href="http://www.pgsqldb.org/pgsqldoc-8.1c/sql-begin.html"><em>BEGIN</em></a>， <a style="color: #000066;" href="http://www.pgsqldb.org/pgsqldoc-8.1c/sql-commit.html"><em>COMMIT</em></a> 和 <a style="color: #000066;" href="http://www.pgsqldb.org/pgsqldoc-8.1c/sql-rollback.html"><em>ROLLBACK</em></a> 定义一个事务块。</p>
<p>如果声明了 <tt>WITH HOLD</tt>，并且创建该游标的事务成功提交， 那么游标还可以在同一会话随后的事务里访问。（但如果创建它的事务回滚，那么游标被删除。） 带着 <tt>WITH HOLD</tt> 创建的游标是用一个明确的 <tt>CLOSE</tt> 命令，或者是会话终止来关闭的。 在目前的实现里，由一个游标代表的行是被拷贝到一个临时文件或者内存区里的，这样他们就仍然可以在随后的事务中被访问。</p>
<p>在定义一个要用来向后抓取的游标的时候，我们应该声明 <tt>SCROLL</tt> 选项。 这个是 SQL 标准要求的。不过，为了和早期的版本兼容， <span>PostgreSQL</span> 在没有 <tt>SCROLL</tt> 的时候也允许向后抓取， 只要游标的查询计划简单得不需要额外的开销就可以支持它。 不过，我们建议应用开发人员不要依赖于使用没有带着 <tt>SCROLL</tt> 定义的游标的后向查找功能。如果声明了 <tt>NO SCROLL</tt>，那么不管怎样都会禁止向后抓取的功能。</p>
<p>在 SQL 标准中游标只能在嵌入 <acronym style="font-style: inherit;">SQL</acronym> （<acronym style="font-style: inherit;">ESQL</acronym>） 的应用中使用。 <span>PostgreSQL</span> 服务器没有一个明确的 <tt>OPEN </tt>语句；一个游标被认为在定义时就已经打开了。 不过，<span>PostgreSQL</span>嵌入的 SQL 预编译器， <span>ecpg</span>， 支持 <acronym style="font-style: inherit;">SQL92</acronym> 习惯，包括那些和<tt>DECLARE</tt>和<tt>OPEN</tt>相关的语句。</p>
<p><strong>5. Full text index</strong></p>
<p>MySQL comes with full-text search, but can only be run on the MyISAM storage engine. <a style="text-decoration: none; color: #3366bb; background-image: url(http://www.wikivs.com/skins/monobook/external.png); background-repeat: no-repeat; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: initial; padding-top: 0px; padding-right: 13px; padding-bottom: 0px; padding-left: 0px; background-position: 100% 50%;" rel="nofollow" href="http://dev.mysql.com/doc/refman/5.1/en/fulltext-search.html">[12]</a></p>
<p style="margin-top: 0.4em; margin-right: 0px; margin-bottom: 0.5em; margin-left: 0px; line-height: 1.5em;">A 3rd party add-on to MySQL, <a style="text-decoration: none; color: #3366bb; background-image: url(http://www.wikivs.com/skins/monobook/external.png); background-repeat: no-repeat; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: initial; padding-top: 0px; padding-right: 13px; padding-bottom: 0px; padding-left: 0px; background-position: 100% 50%;" rel="nofollow" href="http://www.sphinxsearch.com/features.html">Sphinx Fulltext Search Engine</a> allows it to support full-text searches of InnoDB tables.</p>
<p>PostgreSQL 8.2 has full text search in the <a style="text-decoration: none; color: #3366bb; background-image: url(http://www.wikivs.com/skins/monobook/external.png); background-repeat: no-repeat; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: initial; padding-top: 0px; padding-right: 13px; padding-bottom: 0px; padding-left: 0px; background-position: 100% 50%;" rel="nofollow" href="http://www.sai.msu.su/~megera/postgres/gist/tsearch/V2/">tsearch2</a> module.</p>
<p style="margin-top: 0.4em; margin-right: 0px; margin-bottom: 0.5em; margin-left: 0px; line-height: 1.5em;">PostgreSQL 8.3 integrates tsearch2 into the core: &#8220;TSearch2, our cutting-edge full text search tool, has been fully integrated into the core code, and also has a cleaner API.&#8221; <a style="text-decoration: none; color: #3366bb; background-image: url(http://www.wikivs.com/skins/monobook/external.png); background-repeat: no-repeat; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: initial; padding-top: 0px; padding-right: 13px; padding-bottom: 0px; padding-left: 0px; background-position: 100% 50%;" rel="nofollow" href="http://www.postgresql.org/about/press/features83.html">[13]</a></p>
<p style="margin-top: 0.4em; margin-right: 0px; margin-bottom: 0.5em; margin-left: 0px; line-height: 1.5em;">参考<a href="http://blog.chinaunix.net/u/11565/showart_1848766.html">http://blog.chinaunix.net/u/11565/showart_1848766.html</a> 进行tsearch2支持的全文搜索.</p>
<p style="margin-top: 0.4em; margin-right: 0px; margin-bottom: 0.5em; margin-left: 0px; line-height: 1.5em;">6. &amp;&amp; &#8211;&gt; AND</p>
]]></content:encoded>
			<wfw:commentRss>http://www.geoinformatics.cn/2009/11/%e6%95%b0%e6%8d%ae%e5%ba%93%e8%bd%ac%e6%8d%a2%e5%b0%8f%e8%ae%b0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>梦见李一男</title>
		<link>http://www.geoinformatics.cn/2009/10/%e6%a2%a6%e8%a7%81%e6%9d%8e%e4%b8%80%e7%94%b7/</link>
		<comments>http://www.geoinformatics.cn/2009/10/%e6%a2%a6%e8%a7%81%e6%9d%8e%e4%b8%80%e7%94%b7/#comments</comments>
		<pubDate>Sun, 04 Oct 2009 17:56:13 +0000</pubDate>
		<dc:creator>长安旧梦</dc:creator>
				<category><![CDATA[技术心得]]></category>
		<category><![CDATA[时事评论]]></category>
		<category><![CDATA[生活感悟]]></category>
		<category><![CDATA[Baidu]]></category>
		<category><![CDATA[FTS]]></category>
		<category><![CDATA[GIS]]></category>

		<guid isPermaLink="false">http://www.geoinformatics.cn/?p=1255</guid>
		<description><![CDATA[俺发现，如果睡得晚，就会做些奇怪的梦来。今晨4：00才入睡，居然梦到了李一男同学（现任百度首席技术官 CTO），他说自己花了好长时间终于搞懂了百度是怎么一回事，然后鼓励我们大家也去搞搞。我建议老李多看看全文检索，以及文言文的分词，当然也说要和地图结合起来，毕竟百度有这么好的百度国学部分，以及一男同学他前几天主持更新的百度地图。不好好利用，简直太可惜了。]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-1256" title="李彦宏和李一男的合照" src="/wp-content/uploads//20091005_liyinan.jpg" alt="李彦宏和李一男的合照" width="372" height="305" /></p>
<p>俺发现，如果睡得晚，就会做些奇怪的梦来。今晨4：00才入睡，居然梦到了李一男同学（现任百度首席技术官 CTO），他说自己花了好长时间终于搞懂了百度是怎么一回事，然后鼓励我们大家也去搞搞。我建议老李多看看全文检索，以及文言文的分词，当然也说要和地图结合起来，毕竟百度有这么好的百度国学部分，以及一男同学他前几天主持更新的百度地图。不好好利用，简直太可惜了。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.geoinformatics.cn/2009/10/%e6%a2%a6%e8%a7%81%e6%9d%8e%e4%b8%80%e7%94%b7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>中文分词的整理</title>
		<link>http://www.geoinformatics.cn/2009/10/%e5%85%b3%e4%ba%8e%e4%b8%ad%e6%96%87%e5%88%86%e8%af%8d%e7%9a%84%e6%95%b4%e7%90%86/</link>
		<comments>http://www.geoinformatics.cn/2009/10/%e5%85%b3%e4%ba%8e%e4%b8%ad%e6%96%87%e5%88%86%e8%af%8d%e7%9a%84%e6%95%b4%e7%90%86/#comments</comments>
		<pubDate>Fri, 02 Oct 2009 19:45:27 +0000</pubDate>
		<dc:creator>长安旧梦</dc:creator>
				<category><![CDATA[历史研究]]></category>
		<category><![CDATA[技术心得]]></category>
		<category><![CDATA[FTS]]></category>
		<category><![CDATA[History]]></category>

		<guid isPermaLink="false">http://www.geoinformatics.cn/?p=1194</guid>
		<description><![CDATA[最近读了份Proposal，其中有一项很吸引我，就是对台湾中研院的所有中文历史文献进行text data mining。关于data mining，在这份proposal里面只是提及了regular expression的方式，但是更多的，我觉得我们应该注意近几年来所发展的全文检索技术（full-text search）技术。大体上讲，全文检索技术是在对一定容量的文献进行快速检索。最为著名的检索，就是google，他可以按照他的一套规则对整个互联网进行检索，而对于中小型网站，大家可能更中意于开源的检索器，比如sphinx和apache项目中的Lucene。所以来讲，对于全文检索技术似乎发展已经很完善了，但是现在要提出的问题是，由于中文有一套自己的语法习惯以及字符集。所以，对于中文的检索还牵扯到对中文的分词问题，这一点是对于中文全文检索来说最困难的。 谈到中文分词，它牵涉到汉语分词、未定义词识别、词性标注以及语言特例等多个因素。目前大概主要有三个方法：辞典分词法、统计分词法以及规则分词法（也就是基于语义的分词法）。 （1）辞典分词法：一般是最大匹配算法，有正向匹配和逆向匹配之分，当然有其他算法，就像蒋志欣所提及的双序匹配法。 （2）统计分词法：前提就是单词是有字节构成的，通过研究组词的概率来判断是否是在此分词，李海波举了一个很形象例子说，比如“我”，单独出现的概率是“50%”，“我爱”组合出现的概率是“10%”，那么“我爱”就不是一个词。比如“北京”，“北京”在很多文章中老放在一起，那么就应该在一起，是一个地名。一 （3）规则分词法：该分词法最有名的实例就是中科院开发的ICTCLAS汉语分词系统。该系统根据他们自己介绍说，采用了层叠隐马尔可夫模型（Hierarchical Hidden Markov Model），将汉语词法分析的所有环节都统一到了一个完整的理论框架中。” 提到辞典分词法，不得不提到到一个人，来自中国台北的蔡志浩同学。他写了一篇名为&#8221;MMSEG: A Word Identification System for Mandarin Chinese Text Based on Two Variants of the Maximum Matching Algorithm&#8220; 的文章，介绍了MMSeg，一个现在很通用的中文分词方法,当今很多分词机都受到了蔡同学的启迪，诸如我一会要向大家介绍的 pymmseg-cpp。coreseek.cn的李沫南同学翻译了这篇文章，这里给大家一个basic idea, 蔡同学提出，中文行文有其自己的规则，所以我们可以通过总结这些行文规则来进行分词。在MMSEG里面，有两个需要注意的概念，一个为Chunk，它包含依据上下文分出的一组词和相关的属性，包括长度(Length)、平均长度(Average Length)、标准差的平方(Variance)和自由语素度(Degree Of Morphemic Freedom)；另一个为规则（Rule），实际上就是过滤器(Filter)，过滤掉不符合要求的chunk。MMSeg分词算法中涉及了4个规则： 规则1：取最大匹配的chunk (Rule 1: Maximum matching) 规则2：取平均词长最大的chunk (Rule 2: Largest average word length) 规则3：取词长标准差最小的chunk (Rule 3: Smallest [...]]]></description>
			<content:encoded><![CDATA[<p>最近读了份Proposal，其中有一项很吸引我，就是对台湾中研院的所有中文历史文献进行text data mining。关于data mining，在这份proposal里面只是提及了regular expression的方式，但是更多的，我觉得我们应该注意近几年来所发展的全文检索技术（full-text search）技术。大体上讲，全文检索技术是在对一定容量的文献进行快速检索。最为著名的检索，就是google，他可以按照他的一套规则对整个互联网进行检索，而对于中小型网站，大家可能更中意于开源的检索器，比如sphinx和apache项目中的Lucene。所以来讲，对于全文检索技术似乎发展已经很完善了，但是现在要提出的问题是，由于中文有一套自己的语法习惯以及字符集。所以，对于中文的检索还牵扯到对中文的分词问题，这一点是对于中文全文检索来说最困难的。</p>
<p>谈到中文分词，它<span lang="EN-US" xml:lang="EN-US">牵涉到</span>汉语分词、未定义词识别、词性标注以及语言特例等多个因素<span lang="EN-US" xml:lang="EN-US">。目前</span>大概主要有<a href="http://blog.csdn.net/marising/archive/2009/04/16/4083650.aspx">三个方法</a>：辞典分词法、统计分词法以及规则分词法（也就是基于语义的分词法）。<span id="more-1194"></span></p>
<p><strong>（1）辞典分词法：</strong>一般是最大匹配算法，有正向匹配和逆向匹配之分，当然有其他算法，就像蒋志欣所提及的双序匹配法。</p>
<p><strong>（2）统计分词法</strong>：前提就是单词是有字节构成的，通过研究组词的概率来判断是否是在此分词，<a href="http://blog.csdn.net/marising/archive/2009/04/16/4083650.aspx">李海波</a>举了一个很形象例子说，比如“我”，单独出现的概率是“50%”，“我爱”组合出现的概率是“10%”，那么“我爱”就不是一个词。比如“北京”，“北京”在很多文章中老放在一起，那么就应该在一起，是一个地名。一</p>
<p><strong>（3）规则分词法：</strong>该分词法最有名的实例就是中科院开发的<a href="http://ictclas.org/sub_1_2.html">ICTCLAS汉语分词系统</a>。该系统根据他们自己介绍说，采用了层叠隐马尔可夫模型（<span lang="EN-US" xml:lang="EN-US">Hierarchical Hidden Markov Model</span>），将汉语词法分析的所有环节都统一到了一个完整的理论框架中。”</p>
<p>提到辞典分词法，不得不提到到一个人，来自中国台北的<a href="http://chtsai.org/index_cn.html">蔡志浩</a>同学。他写了一篇名为&#8221;<em><a href="http://technology.chtsai.org/mmseg/">MMSEG: A Word Identification System for Mandarin Chinese Text Based on Two Variants of the Maximum Matching Algorithm</a>&#8220;</em><em> </em> 的文章，介绍了MMSeg，一个现在很通用的中文分词方法,当今很多分词机都受到了蔡同学的启迪，诸如我一会要向大家介绍的 <a style="text-decoration: none; color: #000000;" href="http://code.google.com/p/pymmseg-cpp/">pymmseg-cpp</a>。<a href="http://www.coreseek.cn/">coreseek.cn</a>的李沫南同学翻译了这篇文章，这里给大家一个basic idea,</p>
<p>蔡同学提出，中文行文有其自己的规则，所以我们可以通过总结这些行文规则来进行分词。在MMSEG里面，有两个需要注意的概念，一个为Chunk，<span style="line-height: 22px; ">它包含依据上下文分出的一组词和相关的属性，包括长度(Length)、平均长度(Average Length)、标准差的平方(Variance)和自由语素度(Degree Of Morphemic Freedom)；另一个为规则（Rule），实际上就是过滤器(Filter)，过滤掉不符合要求的chunk。MMSeg分词算法中涉及了4个规则：</span></p>
<ul style="line-height: 22px; margin-top: 0px; margin-right: 0px; margin-bottom: 20px; margin-left: 1em; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; list-style-type: disc;">
<li style="line-height: 22px; margin-top: 0px; margin-right: 0px; margin-bottom: 3px; margin-left: 0px;">规则1：取最大匹配的chunk (Rule 1: Maximum matching)</li>
<li style="line-height: 22px; margin-top: 0px; margin-right: 0px; margin-bottom: 3px; margin-left: 0px;">规则2：取平均词长最大的chunk (Rule 2: Largest average word length)</li>
<li style="line-height: 22px; margin-top: 0px; margin-right: 0px; margin-bottom: 3px; margin-left: 0px;">规则3：取词长标准差最小的chunk (Rule 3: Smallest variance of word lengths)</li>
<li style="line-height: 22px; margin-top: 0px; margin-right: 0px; margin-bottom: 3px; margin-left: 0px;">规则4：取单字词自由语素度之和最大的chunk (Rule 4: Largest sum of degree of morphemic freedom of one-character words)</li>
</ul>
<p style="line-height: 22px; margin-top: 0px; margin-right: 0px; margin-bottom: 1.35em; margin-left: 0px;">这4个规则符合汉语成词的基本习惯，所以蔡同学希望通过这四个规则来近似的进行中文分词。大概就是这样样子，通过以上的规则参数，然后进行匹配，匹配主要有两种方式简单最大匹配(Simple maximum matching)和复杂最大匹配(Complex maximum matching)。这里就不再熬述，大家直接看他的原文吧，比较清晰的。</p>
<p style="line-height: 22px; margin-top: 0px; margin-right: 0px; margin-bottom: 1.35em; margin-left: 0px;">关于中文分词，几个比较有名的是庖丁，bamboo，mmseg（以及由mmseg派生的coreseek，pymmseg-cpp、rmmseg等）、IK Analyzer。关于理论方面，大家不妨看看这个博客（<a href="http://blog.csdn.net/jyz3051/category/356808.aspx?PageNumber=1">http://blog.csdn.net/jyz3051/category/356808.aspx?PageNumber=1</a>）。</p>
<p style="line-height: 22px; margin-top: 0px; margin-right: 0px; margin-bottom: 1.35em; margin-left: 0px;">关于我最近的使用，我比较倾向于使用coreseek以及<a href="http://github.com/pluskid/pymmseg-cpp/blob/master/README">pymmseg-cpp</a>.使用coreseek因为他和sphinx结合的比较紧，首先做全文检索，紧接着就可以做分词，而用pymmseg-cpp，由于是基于python，而像bamboo和庖丁都是基于java的，我这人本身就有点java fool，所以还是喜欢python一些。同时cpp是通过ctypes和python链接，方便我自己定义一些自己的匹配方式，对于今后我要做文言文的中文分词，单单从分词方面来讲，可能是比较小巧精干的东西。关于pymmseg-cpp的研发历程，可以看看<a href="http://lifegoo.pluskid.org/?p=431">free mind同学</a>的帖子。大概就是这么多，本想和大家讨论使用心得，等到下一个帖子吧。</p>
<p>参考文献：</p>
<ul>
<li><a href="http://blog.csdn.net/marising/archive/2009/04/16/4083650.aspx">http://blog.csdn.net/marising/archive/2009/04/16/4083650.aspx</a></li>
<li>http://www.javaeye.com/wiki/interview/1899-ik-analyzer</li>
<li><a href="http://nzinfo.spaces.live.com/Blog/cns!67694E0B61E3E8D2!344.entry?wa=wsignin1.0&amp;sa=523994764">http://nzinfo.spaces.live.com/Blog/cns!67694E0B61E3E8D2!344.entry?wa=wsignin1.0&amp;sa=523994764</a></li>
<li><a href="http://lifegoo.pluskid.org/?p=431">http://lifegoo.pluskid.org/?p=431</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.geoinformatics.cn/2009/10/%e5%85%b3%e4%ba%8e%e4%b8%ad%e6%96%87%e5%88%86%e8%af%8d%e7%9a%84%e6%95%b4%e7%90%86/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>唐宋转型时期婚姻状况的对比以及群体传记学 (Prosopography) 的重提</title>
		<link>http://www.geoinformatics.cn/2009/10/%e5%94%90%e5%ae%8b%e8%bd%ac%e5%9e%8b%e6%97%b6%e6%9c%9f%e5%a9%9a%e5%a7%bb%e7%8a%b6%e5%86%b5%e7%9a%84%e5%af%b9%e6%af%94%e4%bb%a5%e5%8f%8a%e7%be%a4%e4%bd%93%e4%bc%a0%e8%ae%b0%e5%ad%a6-prosopography/</link>
		<comments>http://www.geoinformatics.cn/2009/10/%e5%94%90%e5%ae%8b%e8%bd%ac%e5%9e%8b%e6%97%b6%e6%9c%9f%e5%a9%9a%e5%a7%bb%e7%8a%b6%e5%86%b5%e7%9a%84%e5%af%b9%e6%af%94%e4%bb%a5%e5%8f%8a%e7%be%a4%e4%bd%93%e4%bc%a0%e8%ae%b0%e5%ad%a6-prosopography/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 16:59:48 +0000</pubDate>
		<dc:creator>长安旧梦</dc:creator>
				<category><![CDATA[历史研究]]></category>
		<category><![CDATA[技术心得]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[FTS]]></category>
		<category><![CDATA[GIS]]></category>
		<category><![CDATA[History]]></category>
		<category><![CDATA[Social Network]]></category>
		<category><![CDATA[宋朝]]></category>

		<guid isPermaLink="false">http://www.geoinformatics.cn/?p=1187</guid>
		<description><![CDATA[Michael Szonyi教授今天和我们谈论了唐宋转型时社会精英（elites）群体的结构和特征，其中，最有趣的地方是他给我们介绍了他曾经做过的一项关于唐宋婚姻情况的对比。Szonyi教授饶有兴致地说，他发现在唐朝，家长一般是在长安城相见，然后帮儿女定下亲事；而在宋朝，父母双方更倾向于区域之间的婚姻。比如说，在唐朝，可能一家人是河南人，一家人是山西人，然后他们在首都长安城相见，帮儿女订立终身大事。而在宋朝，如果一会人家在婺州（今金华地区），双方家长可能更愿意结识乡绅，然后订立儿女的终身大事。总而言之，唐朝的婚姻情况更加全国化，而宋朝偏向地域化。 我进一步询问了Szonyi如何得到如上结论，他提及了群体传记学（Prosopography）作为理论基础，CBDB对群体传记学有着如下的定义，“通过对一群历史行为人的生平做集体性的研究，探讨这群历史人物共有的背景特征。其采用的方法要先建立一个研究范围，然后就此提出一组相同的 问题──这些问题可以是关于出生与死亡、婚姻与家庭、社会出身与所继承的经济地位、居住地、教育、个人财富之数量与来源、职业、宗教、宦历等方面的。然 后，将此研究范围中所有人物的各类信息加以罗列、组合，再通过对这些信息的考察找出具有显著意义的变量。研究者可以检测这些信息的内在相关性，及其与其他 行为形式或行动形式的相关性。” 。Szonyi说他在进行这项研究的过程中，首先收集了大量关于唐宋结为婚姻的两家人的父亲的生平旅行资料，然后在地图中标注出他们这一生中所到过的地方，以时间先后顺序连线，通过大量的样本，发现多数这些结为婚姻的亲家爸们，更多的是在某个地方相识，然后彼此才为儿女订立终身大事（在唐宋没有飞机，火车、互联网、手机、所以网恋和快速的异地交往会比较少，所以一般来说，只有两者在同一个地方的时候，才有进行交流的可能，我想这也是Szonyi老师的一项假设前提之一，当然了，这也有点common sense了）。然后Szonyi发现，对于唐朝来说，这些连线一般来说跨度比较大，交点在长安城居多。而对于宋朝，这些连线一般较短，而且交点分布混杂，在某一个区域居多。 虽然这仅仅是一个简单的例子，但是可见群体传记学，或者说基于GIS的群体传记学对于历史研究越来越重要，群体传记学最初是1970年提出，曾经一度被学者们热烈讨论，但而后又沉寂了，到了本世纪初，基于计算机技术，特别是GIS和数据库技术的发展，历史学家又重新回到了对群体传记学的研究。CBDB项目也随之启动，而今天我觉得我再提群体传记学这个概念，更多的，其实是因为社会网络分析（SNA）这几年飞速的发展。我觉得从基于GIS+DB的群体传记学向基于SNA+GIS+DB的群体传记学的进化，是一个必然趋势。虽然之前有人也用SNA，但是还是最初步的，甚至只是可视化层面的，如果能对于SNA的一些概念比如临近度、中心度、集聚度进行分析，大概可以得到一些新的知识。 同时，我觉得还有一个问题值得大家关注，就是所谓的full-text search技术。现在比较流行两种模式是数据库直接的fts或者是基于插件的fts。两者的开源代表为postgresql+TSearch2以及Sphinx。当然了，对于中文检索，甚至文言文检索，还需要中文分词。我会在今后的文章里面和大家详述有关full-texts search的相关技术。这样可以通过分析原始的文档得到两个对象之间的关系，而不需要手工的搜寻。]]></description>
			<content:encoded><![CDATA[<p><img title="20091001_mszonyi" src="/wp-content/uploads//20091001_mszonyi.jpg" alt="20091001_mszonyi" width="225" height="250" align="left" />Michael Szonyi教授今天和我们谈论了唐宋转型时社会精英（elites）群体的结构和特征，其中，最有趣的地方是他给我们介绍了他曾经做过的一项关于唐宋婚姻情况的对比。Szonyi教授饶有兴致地说，他发现在唐朝，家长一般是在长安城相见，然后帮儿女定下亲事；而在宋朝，父母双方更倾向于区域之间的婚姻。比如说，在唐朝，可能一家人是河南人，一家人是山西人，然后他们在首都长安城相见，帮儿女订立终身大事。而在宋朝，如果一会人家在婺州（今金华地区），双方家长可能更愿意结识乡绅，然后订立儿女的终身大事。总而言之，唐朝的婚姻情况更加全国化，而宋朝偏向地域化。</p>
<p>我进一步询问了Szonyi如何得到如上结论，他提及了群体传记学（Prosopography）作为理论基础，CBDB对群体传记学有着如下的定义，<em>“通过对一群历史行为人的生平做集体性的研究，探讨这群历史人物共有的背景特征。其采用的方法要先建立一个研究范围，然后就此提出一组相同的 问题──这些问题可以是关于出生与死亡、婚姻与家庭、社会出身与所继承的经济地位、居住地、教育、个人财富之数量与来源、职业、宗教、宦历等方面的。然 后，将此研究范围中所有人物的各类信息加以罗列、组合，再通过对这些信息的考察找出具有显著意义的变量。研究者可以检测这些信息的内在相关性，及其与其他 行为形式或行动形式的相关性。” 。</em>Szonyi说他在进行这项研究的过程中，首先收集了大量关于唐宋结为婚姻的两家人的父亲的生平旅行资料，然后在地图中标注出他们这一生中所到过的地方，以时间先后顺序连线，通过大量的样本，发现多数这些结为婚姻的亲家爸们，更多的是在某个地方相识，然后彼此才为儿女订立终身大事（在唐宋没有飞机，火车、互联网、手机、所以网恋和快速的异地交往会比较少，所以一般来说，只有两者在同一个地方的时候，才有进行交流的可能，我想这也是Szonyi老师的一项假设前提之一，当然了，这也有点common sense了）。然后Szonyi发现，对于唐朝来说，这些连线一般来说跨度比较大，交点在长安城居多。而对于宋朝，这些连线一般较短，而且交点分布混杂，在某一个区域居多。<span id="more-1187"></span></p>
<p>虽然这仅仅是一个简单的例子，但是可见群体传记学，或者说基于GIS的群体传记学对于历史研究越来越重要，群体传记学最初是1970年提出，曾经一度被学者们热烈讨论，但而后又沉寂了，到了本世纪初，基于计算机技术，特别是GIS和数据库技术的发展，历史学家又重新回到了对群体传记学的研究。CBDB项目也随之启动，而今天我觉得我再提群体传记学这个概念，更多的，其实是因为社会网络分析（SNA）这几年飞速的发展。我觉得从基于GIS+DB的群体传记学向基于SNA+GIS+DB的群体传记学的进化，是一个必然趋势。虽然之前有人也用SNA，但是还是最初步的，甚至只是可视化层面的，如果能对于SNA的一些概念比如临近度、中心度、集聚度进行分析，大概可以得到一些新的知识。</p>
<p>同时，我觉得还有一个问题值得大家关注，就是所谓的full-text search技术。现在比较流行两种模式是数据库直接的fts或者是基于插件的fts。两者的开源代表为postgresql+TSearch2以及Sphinx。当然了，对于中文检索，甚至文言文检索，还需要中文分词。我会在今后的文章里面和大家详述有关full-texts search的相关技术。这样可以通过分析原始的文档得到两个对象之间的关系，而不需要手工的搜寻。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.geoinformatics.cn/2009/10/%e5%94%90%e5%ae%8b%e8%bd%ac%e5%9e%8b%e6%97%b6%e6%9c%9f%e5%a9%9a%e5%a7%bb%e7%8a%b6%e5%86%b5%e7%9a%84%e5%af%b9%e6%af%94%e4%bb%a5%e5%8f%8a%e7%be%a4%e4%bd%93%e4%bc%a0%e8%ae%b0%e5%ad%a6-prosopography/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

