<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Ai on Shell&#39;s Home</title>
		<link>//blog.shell909090.org/tags/ai/</link>
		<description>Recent content in Ai on Shell&#39;s Home</description>
		<generator>Hugo</generator>
		<language>en-us</language>
		
		
		
			<copyright>CC-BY-SA4.0</copyright>
		
		
			<lastBuildDate>Sat, 30 Sep 2006 07:19:07 +0800</lastBuildDate>
		
			<atom:link href="//blog.shell909090.org/tags/ai/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>从踢牙老奶奶到火星文，从火星文到人工智能</title>
				<link>//blog.shell909090.org/blog/archives/323/</link>
				<pubDate>Sat, 30 Sep 2006 07:19:07 +0800</pubDate>
				<guid>//blog.shell909090.org/blog/archives/323/</guid>
				<description>&lt;p&gt;先复制一个小的密码——&lt;/p&gt;&#xA;&lt;p&gt;£³¨Ç£ê£±£¬£µ¨É¨Ù¨Ó¡££±¨Ð¨Ç¨Í£¬£±¨Ð£ä¨Ê¡£&lt;/p&gt;&#xA;&lt;p&gt;¨×£²£ä£´£¬¨ß¨Ç¨Ñ¨È¡£¨ÙYA¨È£ã£¬£ê£±£´¨Ø¡£&lt;/p&gt;&#xA;&lt;p&gt;£´¨Ñ£´£õ£¬£â£ã£â¨Ó¡££±£ã£±¨É£¬¨Í¨Ø£´¨Ó¡£&lt;/p&gt;&#xA;&lt;p&gt;看的出来的——请和火星总部联系。&lt;/p&gt;&#xA;&lt;p&gt;很多朋友可能不知道一个事情，不过不少人应该听说过无冬城之夜。台湾版的无冬城之夜本地化(l10n)中有一个重大bug。俗称踢牙老奶奶。&lt;/p&gt;&#xA;&lt;p&gt;原文是：我看到一位老奶奶慈祥的脸——我抓住她的手，但是她竟然一脚踢到我的牙齿。&lt;/p&gt;&#xA;&lt;p&gt;估计所谓踢牙，应当是英文kicked my teeth in，指漠视。最后应当是她竟然无视我。这是典型的一个翻译错误，而且估计可能是机器辅助翻译没有修润的结果。这个错误和当年大菠萝的温暖骷髅情况不一样，没有任何一个电脑会把蠕虫骷髅(wormskull)错成温暖骷髅(warmskull)。&lt;/p&gt;&#xA;&lt;p&gt;由此肇因产生了很多火星文，例如说：这个游戏里面到处是踢牙老奶奶。&lt;/p&gt;&#xA;&lt;p&gt;不过，无论是机器翻译不完善造成的火星文，还是人造的火星文。其实都是一个核心问题，NLP。&lt;/p&gt;&#xA;&lt;p&gt;机器可以理解形式化的编程语言，并且转换为机器代码。是因为语言是具备一定的形式(form)的，或者叫做范式(pattern)。而例如说可以借助符号来做唯一分割(语法树的生成，或者说波兰树的生成)，符号的唯一性。(所谓重载，是用将参数等重载辨识元素附加在名字里面，导致名字的定义仍旧唯一，详细大家可以看有做对象导出的库的导出符号表)然而自然语言本身分割未必唯一，符号也是和上下文相关的。例如最有名的例子，中国队大败美国队获得冠军。(中国队大败美国队获得冠军。和中国队大败美国队获得冠军。前一句中的败是动词，后一个应当是使动用法)这句同时出现了非唯一分割和符号歧义，即使对于人来说，也是具备歧义句特征的。只有在特定的语境中，歧义才会消除。例如如果在表扬中国队表现的文章中，那应当是后面一个解释。&lt;/p&gt;&#xA;&lt;p&gt;对于自然语言的理解，人工智能中叫做NLP问题(Nature Language Precess)。首先要处理的就是断词和消除歧义。其中涉及的问题到不繁复，但是很庞大。最关键就在于数据量上。&lt;/p&gt;&#xA;&lt;p&gt;断句的话，一般简单的都采用HMM算法，这就需要有前后词或者词组的衔接概率作为基础。中文又具备一个恶心的特性，就是假借。尤其在口语和古语方言一类的东西里面，倒置使动频繁。所以单纯做HMM还不完全解决问题。现在有很多分词软件，是基于HMM的。拿古文上去试试就知道是不是了，例如：古之人诚不余欺也。&lt;/p&gt;&#xA;&lt;p&gt;至于消除歧义，更是麻烦的要死的东西。要消除歧义，只有把所有歧义可能全部列举出来。然后查看上下文中相关词汇出现的频率，选择比较高的一个。然而对于上面那个使动用法的例子，两者相关词汇的频率应当差不多。而电脑又不会像人一样判断语境，因此要误判就不奇怪了。&lt;/p&gt;&#xA;&lt;p&gt;还有一个就是上面踢牙老奶奶出现的原因，俗语(idiom)或者叫俚语。例如百口莫辩，如果不加处理，至少也是can&amp;rsquo;t argue with one hundred mouth(people)。事实上比较恰当的翻译应当是unable to give a convincing explanation for self-defense。当然，NLP的目的未必是翻译，因此可能出现别的错误。不过错误的原因是一样的，就是俗语不了解。这个问题人也会出现，只是人的智能就比电脑高一些。百口莫辩不知道典故错误翻译过去还算难免，买椟还珠这种东西即使知道椟怎么翻译，在真的翻译前也会问问典故的吧。&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
