地名表示词典生成方法和地名表示词典生成装置的制作方法

文档序号:6432008阅读:288来源:国知局
专利名称:地名表示词典生成方法和地名表示词典生成装置的制作方法
技术领域
本发明涉及在用邮件分检机等实行的地名表示读取处理中,主要在字符串核对处理时所使用的地名表示词典的生成方法和生成装置。尤其涉及从由标准的表示组成的地名表示列表中生成包含在地名表示中的单词排列的差异和字符的差异(以后称作相异表示)的地名表示词典的生成方法和生成装置。
为了读取字符串,一般进行由以下三个步骤组成的处理。
(1)字符分离从字符行图象中分离字符图案(2)字符识别各字符图案的字种(字符码)的识别(3)字符串核对核对预先存储的读取对象的字符串和字符识别结果,确定字符串读取结果作为有关(1)字符分离和(2)字符识别的技术,人们已经知道例如文献(Koga et al.、Segmentation of JapaneseHandwritten Characters Using Peripheral Feature AnalysisInternational Conference for Pattern Recognition、pp.1137-1141、1998)等。
作为有关(3)的字符核对技术,有从字符识别结果的网格(Lattice)生成有限状态自动装置(finite state automaton),并通过将读取对象的字符串输入到该装置中提取候补单词的方式(丸川等撰写的“用于认识手写汉字住所的错误修正算法”,信息处理论文杂志笫35卷笫6号)等。另外,有通过使用隐马尔可夫模型同时进行字符分离、字符识别、字符串核对的方式(A.Kaltenmeier、”Sophi sticated Topology of Hidden MarkovModels for Cursive Script Recognition、Proceedings ofInternational Conference of Document Analysis andRecognition‘93、pp.139-142、1993)和探索性地认识字符串的方法(古贺等撰写的“住所认识方法”特愿平9-238032)。将此处所使用的、预先准备的读取对象的字符串的集合叫做词典,将用于地名读取而存储地名表示的词典叫做地名表示词典。
地名表示词典在计算机存储器中的形态,例如在丸川等的方式中用树结构表现,另外,在基于隐马尔可夫模型的方式和探索性地认识字符串的方法中采用网络形式。在字符串核对处理中,由于通过将字符识别结果与读取对象的字符串核对,在字符识别处理中具有修正错误的功能,因此,为了提高字符串读取精度,在采用任何装置的场合,也必须将认识对象的字符串,即词汇预先无遗漏地存储在词典文件中。即是说,必须尽可能提高作为读取对象的登录表示数目对全部表示数目的比例的词典完备率。
在地名表示中,存在着也可以将“上之町”中的“之”写成“ノ”或“の”、或者“大字”的字符串在地名表示中被省略这样的各种各样的相异表示。在设想了用邮件分检机进行地址读取处理的场合,由于被写在实际的邮件上的地址也存在上述那样的表示的差异,因此,为提高地址读取精度,必须在地名表示词典中登录相异表示,并提高词典完备率。但是,当实现字符串核对处理时,从一开始就准备完全网罗这些相异表示是有困难的。因此,对于已生成的地名表示词典需要追加相异表示的工作。
对于对地名表示词典的追加相异表示的问题,以往对“大田区”的字符串通过由人工追加“太田区”这样的部分汉字的不同字符串来提高词典完备率的方法(丰濑的“地址读取分检机”、特开平5-169031)和将对“川越市”的“越市”和“市”那样的部分字符串作为相异表示用人工追加的方法(小岛的“地址读取分检机”、特开平7-39819)已为人们所熟知。另外,作为增加登录在数据库中的字符串的方法,预先准备字符串的相异表示的对应表,根据该表机械地追加相异表示的方法(臼田等的“赋予标准名系统”、特开平5-165619)等也为人们熟知。
日本的地名表示可以大致分成以下四种。
(1)使用字符不同的相异表示叫做“字符型表示”。例如,“野々下”和“野の下”“野ノ下”等。
(2)单词省略的相异表示叫做“省略型相异表示”。
例如,省略都道府县名的相异表示、省略“大字”、“字”的相异表示等。
(3)附加字符串的相异表示叫做“追加型相异表示”。
例如,在字等原来住所的特定中附加不必要的字符串的相异表示,对应于“埼玉県川越市大字小ケ谷(Saitama-ken,Kawagoe-shi,Ohaza,Ogaya)”的“埼玉県川越市大字小ケ谷東関(Saitama-ken,Kawagoe-shi,Ohaza,Ogaya,Aza,Higashizeki)”等。
(4)街道名和通称的相异表示叫做“别名型相异表示”。
例如,对应于用在京都等地经常看到、并且完全不同的单词表示地名的“京都市下京区大政所町(Kyoto-shi,Shimokyo-ku,Ohmandokoro-machi)”的“京都市下京区烏丸仏光寺下る(Kyoto-shi,Shimokyo-ku,Karasuma,Bukkouji,Kudaru)”等。
例如,以“埼玉県川越市小ケ谷(Saitama-ken,Kawagoe-shi,Ogaya)”这个地名作为例子,除(1)、(2)的字符型相异表示、省略型相异表示之外还存在以下12种表示。它们是“埼玉県川越市小ケ谷”“埼玉県川越市小ヶ谷”“埼玉県川越市小が谷”“埼玉県川越市大字小ケ谷”“埼玉県川越市大字小ヶ谷”“埼玉県川越市大字小が谷”“川越市小ケ谷”“川越市小ヶ谷”“川越市小が谷”
“川越市大字小ケ谷”“川越市大字小ヶ谷”“川越市大字小が谷”若再将“埼玉県川越市小ケ谷東田(Saitama-ken,Kawagoe-shi,Ogaya,Higashida)”、“埼玉県川越市小ヶ谷東関(Saitama-ken,Kawagoe-shi,Ogaya,Higashizaki)”、、“埼玉県川越市小ケ谷西関(Saitama-ken,Kawagoe-shi,Ogaya,Nishizeki)”等小字名合并使用的(3)中的追加型相异表示考虑在内,并与上述的12种相异表示组合,那么共存在84种相异表示。若再考虑在京都等城市中明显看到的城镇名和街名(4)的别名型相异表示,那么,例如在京都市下京区的地名表示中的相异表示的数目竟从数千种上升到数万种。
在邮件分检机和住所读取中根据地名读取处理的应用地址,最小也必须读取一个或多个市区村镇的住所,最大必须读取全国的住所。为了提高读取精度,必须生成追加这些地名表示的相异表示、提高词典完备率的地名表示词典。
但是,特别地将达到数万种表示追加到地名表示词典中是困难的。另外,即使想要准备只是单词数目的相异表示的对应表,并自动进行相异表示的追加,相异表示的对应表的生成必须对每个单词特别地进行,也同样是困难的。再谈到有关单词排列的相异表示(特定的单词、字符串的省略等)由于其组合的数目增多,特别地追加是困难的,当然,具有相异表示的对应表也是困难的。若再想要准备有关特定的字符的置换规则,并自动追加相异表示,例如就会追加将单词的最前面的“野”置换为“ノ”等错误的相异表示,这样生成的地名表示词典不仅其容量增大,而且对读取精度带来不利的影响。
为了抑制相异表示的地名表示词典的容量的增大,使用文脉自由文法的生成规则表现地名表示的相异表示的方法已为人们知晓(古贺的“地名表达方法、地名字符串认识方法及装置”、特愿平11-187753)。即在每个构成地名字符串的一部分或全部的部分字符串中,通过定义字符或句法范畴的配置、并由字符或定义了的句法范畴的配置构成的句法范畴来表示地名字符串。例如定义“ケ”、“ケ”、“が”作为一个句法范畴,并且如果通过该句法范畴定义上述字符所使用的字符串,那么就会对所有的地名表示追加有关“ケ”、“ケ”、“が”的相异表示。此处,所谓句法范畴是指对于存在具有相同意义、相同用法、相同发音等某些共同性的字符串来说将它们的字符串作为要素的集合。另外,将附加在这种集合上的名称叫做句法范畴。
若使用文脉自由文法记述地名表示,那么,由于在地名表示的多处出现的单词和部分字符串的相异表示用同一句法范畴表示,因此,减少相异表示的追加作业的次数。但是,在各个地名表示中,必须用定义了相异表示的存在部分的句法范畴置换。这时,将地名表示的某一部分字符串置换成对应的句法范畴的作业必须通过人工进行,因此地名表示词典的生成仍然是困难的。
本发明的第一目的在于不是特定地进行对地名表示的相异表示的生成和追加,而是尽可能地自动追加这些相异表示,并提供词典完备率高的地名表示词典的生成方法。
在不能向地名表示词典自动地追加相异表示的场合,为了提高词典完备率必须由人工进行表示的追加。在这种场合,向地名表示词典的相异表示的追加部分由自动追加的表示和用人工追加的表示的二个集合组成。在地名表示词典生成时,通常存在只由标准的地名表示组成的地名表示表,以此为基础,按照需要追加相异表示后生成地名表示词典。当在标准的地名表示表中增加变更时,为了在地名表示词典中能反映这种变更,必须再次实行相异表示的追加处理。除自动地追加的表示外,由人工追加的表示有可能迫使地名表示词典的编者在增加词典生成成本的同时,可能遗漏对以前追加的表示的追加,并可能降低词典完备率。
本发明的第二目的在于,提供由人工追加在地名表示词典中不能自动地生成和追加的地名表示的相异表示的设备,同时,在以地名词典生成时为基础的标准的地名表示表被变更时也提供一边保存在词典生成时所追加的各种相异表示和在地名表示词典中所增加的变更,一边从新的地名表示表中生成地名表示词典的设备。
在本发明中,将被划分成都道府县、市区郡町村、町名·大字、字的每个住所的层次的单词的文本数据(text data)设想作为标准的地名表示表。即使在地名表示没有被划分的场合,也可通过由作为“県(prefecture)”和“市(city)”的关键字(key)的字符分割地名表示从而很容易地进行变换。另外,设想用文脉自由文法记述的地名表示的集合作为本发明中的地名表示词典。即在每个构成地名表示的一部分或全部的部分字符串中,定义字符或句法范畴的配置,并用由字符或定义了的句法范畴的配置组成的句法范畴表示地名字符串。
为了解决尽可能自动地将地名表示的相异表示追加到地名表示词典中的上述课题,本发明提供地名表示词典生成装置,该装置具有将分割成每个住所的层次的单词的地名表示的文本数据变换为文脉自由文法的表现的装置,以及具有使字符串和在文脉自由文法中的句法范畴对应的知识、使文脉自由文法中的句法范畴和句法范畴的配置与其它的句法范畴对应的知识,并使用这些知识将相异表示追加到用文脉自由文法表示的地名表示中的装置。
作为使在这里使用的字符串和文脉自由文法中的句法范畴对应的知识以及使文脉自由文法中的句法范畴和句法范畴的配置与其它的句法范畴对应的知识,提供以下二个种类。
A1是由用于追加有关地名单词的定义中的字符差异的相异表示的、文脉自由文法的句法范畴的定义语句和用于启动从字符串到句法范畴的置换处理的条件组成的知识。将它叫做“字符差异补全型知识”。
将“上之町”中的“之”、“ノ”、“の”,或者“ガ”、“ケ”、“が”等字符作为一个句法范畴定义,并将地名表示字符串中的上述字符置换为句法范畴。
A2是将地名表示定义语句中的句法范畴的排列作为条件由记述对句法范畴的置换、省略等、重新追加的定义语句的内容的项目组成的知识。将它叫做“单词差异补全型知识”。
关于与都道府县名、市区郡町村名连接的句法范畴的排列,定义了相对于都道府县名可能省略特定的句法范畴的排列的其它句法范畴的排列。
当存在不能自动地向地名表示词典追加的表示时,若指定适当的句法范畴和句法范畴的配置,那么,通过具有显示表现该范畴的字符串的设备、输入字符串的设备、将地名表示词典的编者输入的字符串追加到句法范畴表现的地名表示中的设备能够做到将不能自动地追加的地名表示追加到地名表示词典中。
而且,在将上述输入的字符串追加到句法范畴表现的地名表示的设备中,通过具有将只由被追加的地名表示字符串组成的句法范畴在存储器中生成或输出到文件中的设备,以及对用文脉自由文法表现的地名表示词典追加上述文件被输出、追加的地名表示字符串的设备,在能够用人工追加在地名表示词典中不能自动地生成和追加的相异表示的同时,在被分割成每个住所的层次的单词的地名表示表被变更时也可一边保存在以前的词典生成时所增加的变更,一边生成新的地名表示词典。
在此以前所谓地名表示词典可以假定是列举地名表示字符串的文本、用文脉自由文法记述的文本,但在邮件分检机中的地址读取、或其它的住所字符串读取处理中所使用的地名表示词典被认为有以下三种类型的形态。
B1存储在文件中的“词典源文件”B2存储在存储器中的“词典表”B3(1)和(2)的中间阶段的“词典二进制文件”在提高被登录的地名表示的维护性、可读性的场合采用“词典源文件”。为了谋求与字符核对处理的亲和性、处理速度的高速化,在计算机上采用“词典表”的形态。而且,为了缩小在保存地名表示词典时的磁盘空间,采用“词典二进制文件”的形态。即使在采用这些形态中任何形态的场合,其信息量,即被登录的地名表示是相等的。另外由计算机翻译用文脉自由文法书写的词典源文件,并变换为词典二进制文件、或词典表的形态可以通过使用文献(中田,“编译程序”,ISBN4-7828-5057-3)等中记述的方法来实现。
在以后的说明书中,设想将B1的词典源文件作为地名表示词典的形态,但在本发明中,在地名读取处理中使用的地名表示词典即使在采用词典表和词典二进制文件的形态的场合同样也能使用。


图1是表示实施例的地名词典生成处理的全部流程的构成图。
图2是表示在同样地名表示列表中的都道府县名的单词表例子。
图3是表示在标准的地名表示列表中的市区郡町村名的单词表例子。
图4是表示在标准的地名表示列表中的町名和大字名的单词表的例子。
图5是表示在标准的地名表示列表中的字名的单词表的例子。
图6是表示在标准的地名表示列表中的地名表示的代码表的例子。
图7是地名表示的文脉自由文法的记述例子。
图8是向地名表示的形式语言表现的变换处理的流程图。
图9是全部地名表示的相异表示追加前的定义文件的例子。
图10是地名单词定义文件生成处理例子(其1)。
图11是市区郡町村字段的单词分割处理的流程图。
图12是地名单词定义文件生成处理例子(其2)。
图13是地名单词定义文件生成处理例子(其3)。
图14是地名表示定义文件生成处理例子(其1)。
图15是地名表示定义文件生成处理的流程图。
图16是地名表示定义文件生成处理例子(其2)。
图17是知识的相异表示的追加处理的流程图。
图18A,18B是向知识的字符串的句法范畴的置换的例子。
图19是向通用字符串的句法范畴的变换的例子。
图20A,20B,20C是向知识的地名表示定义的相异表示的追加的例子。
图21是用于向地名单词定义的相异表示追加的知识的例子。
图22是用于向地名表示定义的相异表示追加的知识的例子。
图23A,23B,23C是用于手工作业的地名表示的相异表示追加的用户接口例子。
图24A,24B,24C同样是用于手工作业的地名单词追加的用户接口例子。
图25是在文脉依存相异表示追加和删除处理中的相异表示追加的流程。
图26是在文脉依存相异表示追加和删除处理中的相异表示删除的流程图。
图27是追加、修正相异表示定义的例子。
图28是事例的相异表示和删除处理的流程。
图29是图解形式的地名表示词典的例子。
图30是英国的地名表示的相异表示的例子。
图31是用文脉自由文法记述图30的表示例子的例子。
图32是地名表示词典生成装置的硬件构成的例子。
作为本发明的地名表示词典生成方法的实施形态的一例,就有关包含对日本的地名表示的相异表示的地名表示词典的生成进行说明。在这里所谓日本的地名表示假定是表现直到都道府县名、市区郡町村名、町名(或者大字、字名)的字符串。即在“东京都国分寺市東恋ケ窪1丁目280番地(Tokyo-to,Kokubunji-shi,Higashi-koigakubo,1-chame,280-banchi)”的住所表示中,将“东京都国分寺市東恋ケ窪(Tokyo-to,Kokubunji-shi,Higashi-koigakubo)”的部分叫做地名表示。
最初,使用图1说明地名表示词典生成处理的流程。
作为地名表示词典生成处理的输入,准备作为列举了标准的地名表示的文件的地名表示列表101。标准的地名表示被分割成单词,并作为单词的排列存储在地名表示列表中。在形式语言表现变换处理102中,从被分割成该单词的地名表示列表变换为预先定义的、以在表现地名表示的文脉自由文法中作为准则的形式记述的地名核对用的地名表示词典(以下称作地名表示词典)103。再有,在该阶段,在地名表示词典中只包含标准的地名表示。在以后的处理中,地名表示以由文脉自由文法所表现的形式进行处理。对用文脉自由文法所表现的标准的表示,进行知识的相异表示追加处理104。此处,对于在“上之町(Kaminomachi)”的单词向地名读取处理输入时被写成“上ノ町”、“上の町”的场合,要预先准备集中了被夹在汉字中间的“之”使“ノ”、“の”保持在相异表示中的规则和有关“川越市大字藤间(Kawagoe-shi,Ohaza)”的“大字”可以省略的地名表示法的规则的地名表示追加用的知识105。
对于使用地名表示追加用的知识105追加相异表示的地名表示,在文脉依存相异表示追加处理106中,用人工等特定的形式追加相异表示107,并输出地名核对用的地名表示词典103。
此处被追加的相异表示不能使用地名表示用的知识105自动地追加,它是将“城内市本町”表示为“城内市大手前”那样的相异表示。在包含文脉依存相异表示追加处理106中所追加的表示的地名核对用的地名表示词典103之内,在追加和修正表示输出108中,只抽取被追加和修正的部分,并以文脉自由文法的形式作为追加和修正相异表示定义109被输出和保存。
当在标准地名表示列表101中增加变更等110、并重新进行地名词典生成时,该追加和修正相异表示定义109在事例的相异表示追加处理111中作为过去被增加的相异表示被追加到地名表示词典103中。由此可见,每当地名表示词典生成时,可以做到不进行人工的特定相异表示追加,并将地名词典生成中附加的手工作业控制在最小限度。此处使用的地名表示追加用的知识105也可能由人工进行新的知识追加等编辑作业112。
此处所生成的地名表示词典103经由网络113等被装入邮件分检机114和其它的地名读取装置115,并用于地名表示读取处理。
重新生成的地名表示词典103也可以通过媒体变换装置116进行存储媒体的变换,并作为地名表示媒体117进行配置。
以下将详细地说明图1中各数据、知识和处理。
在图1使用的数据中,最初说明有关地名表示列表101。日本的地名表示可以分成(1)都道府县、(2)市区郡町村、(3)町名和大字,根据需要可以再分成(4)字的层次的单词。例如,地名表示“东京都国分寺市東恋ケ窪(Tokyo-to,Kokubunji-shi,Higashikoigakubo)”作为(1)都道府县名可以分割出“东京都(Tokyo-to)”、作为(2)市区郡町村可以分割出”国分寺市(Kokubunji-shi)”、作为(3)町名和大字可以分割出“東恋ケ窪(Higashikoigakubo)”的单词。另外,在其它的地名表示“愛知県名古屋市南区本星崎町字宫浦(Aichi-ken,Nagoya-shi,Minami-ku,Motohoshizaki-machi,Aza,Miyaura)”中,作为(1)都道府县名可以分割出“愛知県(Aichi-ken)”、作为(2)市区郡町村名可以分割出“名古屋市南区(Nagoya-shi,Minami-ku)”、作为(3)町名和大字可以分割出“本星崎町(Motohoshizaki-machi)”、作为(4)字名可以分割出“字宫浦(Aza,Miyaura)”的单词。作为本实施例中的地名表示列表,各地名表示按照住所的层次分割成单词,将同一层次的单词集中在同一文件中的同时,将代码分配给各单词,并设想地名表示通过指定分配给单词的代码来表现的形式。将这样的同一层次的单词集中起来的文件叫做地名单词列表文件。另外为了读取经常被写在直接邮寄(direct mail)等地址中的片假名的地址,假定考虑也可以生成片假名的地名表示词典,并在每个上述住所层次的单词中分配注音假名。在没有生成片假名的地名表示词典的场合,在以后的说明中,也可以删除有关片假名的部分。地名表示通过指向上述地名单词列表文件中的地名单词的指针的排列被构成,并由代码列表文件来表现。
具体地说,有关都道府县名的地名单词列表文件变成图2那样。都道府县代码201对于都道府县名202是专门被分配的号码。都道府县注音假名203将都道府县名的读数用片假名存储。对于市区郡町村名的地名单词列表文件变成图3那样。都道府县代码301是其市区郡町村存在的都道府县名的代码。它与写入图2所示的都道府县地名单词列表文件中的都道府县代码是相同的。所谓市区郡町村代码302对于市区郡町村名302是专门被分配的号码。像政令指定都市那样的存在区的场合,将名古屋市南区作为一个单词存储。市区郡町村注音假名304将市区郡町村名的读数用片假名存储。对于町名和大字的地名单词列表文件变为图4那样。都道府县代码401、市区郡町村代码402是其町名和大字存在的都道府县、市区郡町村的代码。町名和大字代码403是分配给町名和大字名404的号码。町名注音假名405用假名存储对町名和大字名的读数。对标准地名表示预先也可能具有相异表示。在地名单词列表文件中预先将相异表示存储在只是存储在相异表示数目406中的数目的相异表示栏407中。例如当对于“石元町(Ishimoto-cho)”408的相异表示“石本町(Ishimoto-cho)”409存在时被存储在文件中。相异表示由于以后由规则,或由人工追加时,可能省略地名单词列表文件中的相异表示字段。关于字名的地名单词列表文件像图5那样。都道府县代码501、市区郡町村代码502、町名和大字代码503是该字分别存在的都道府县、市区郡町村、町名和大字的代码。字代码504对于字名505是专门分配的代码。字注音假名506用片假名存储对字名的读数。如果相异表示被登记在字名中,那么也可以保持在相异表示数507、相异表示508字段中。各地名表示用图6中所示那样的代码列表文件来表现。601是用于识别各地名表示的记号。此处使用对于地名表示专门分配的7位邮政号码601。接着邮政号码之后,通过指定都道府县代码602、市区郡町村代码603,町名和大字代码604、字代码605记述地名表示。
在本实施例中作为地名表示词典生成处理的输入设想以上所说明的地名单词列表文件和代码列表文件,但也可以是表示“东京都国分寺市東恋ケ窪(Tokyo-to,Kokubunji-shi,Higashikoigakubo)”那样的地名的字符串的列表形式。例如,对于表示地名的字符串,通过作为“県(ken)”、“市(shi)”、“町(machi)”、大字(Oaza)“、”字(Aza)”的关键字的字符能够将字符串分割成单词,并通过将代码分配给单词,就能变换成上述地名单词列表文件和代码列表文件的形式。因此,作为地名词典生成处理的输入,即使将地名单词列表文件和代码列表文件的形式作为前提也不会失去通用性。
作为记述图1中的地名表示词典103的形式示出用于表示地名的文脉自由文法的例子。
使用以下符号作为定义的文脉自由文法的终止符号。它们作为文脉自由文法的记述法具有与一般的BNF记述法(Backus-Naur-Form)(“编译程序”,ISBN4-7828-5057-3,作者中田)同样的意义。
∷=置换。意味着能够用右边的句法范畴或字符的配置置换左边的句法范畴。任选。意味着没有[]内的记述也可以。
|选择。意味着选择右边、左边的任何一个。
()结合。在前后变量更前面评价括弧中的变量。
<>表示句法范畴的变量名。语句的终止。
begin变量的有效范围开始。
End变量的有效范围终止。
此外,阿拉伯数字的排列、汉字·平假名·片假名的排列作为终止符被使用。作为非终止符准备“地名表示”、“地域块群”、“地名块群”、“地域块”、“地名块”、“地名声明”、“变量定义”、“变量式”、“变量项”、“地名表示定义”、“数字串”、“字符串”、“英文字”13种。
表示该文脉自由文法的生成规则如下。
“地名表示”→“地名声明”“地域块群”“地名表示”→“地名声明”“町域块群”“地域块群”→“地域块群”“地域块”“地域块群”→“地域块”“地名块群”→“地名块群”“地名块”“地名块群”→“地名块”“地域块”→begin“地名声明”“地名块群”end“地域块”→begin“地名声明”“地域块群”end“地名块”→begin(“数字串”)“地名声明”“地名表示定义”end“地名声明”→“地名声明”“变量定义”“地名声明”→NULL“变量定义”→“町域变量名”∷=“变量式”“变量式”→“变量式”|“变量项”“变量式”→“变量式”“变量项”“变量式”→“变量项”“变量项”→[“变量式”]“变量项”→(“变量式”)“变量项”→“町域变量名”“变量项”→“字符串”“地名表示定义”→<“数字串”>∷=“变量式”“町域变量名“→<”英文字”“字符串”>
此处非终止符“数字串”、“字符串”、“英文字”分别表示数字的排列、汉字·平假名·片假名的排列、阿拉伯字母的终止符。另外,这些符号按以下顺序的优先等级评价。
(1)在<W“字符串”>和<“数字”>中记述的句法范畴的各定义(2)[]和()的括弧类。在嵌套的圆括号中使用括弧类时优先评价内侧的括弧。
(3)|(4)∷=此外,准备“#include<文件名>”作为宏命令。对于该语句,将用在“文件名”中指定的文脉自由文法记述的地名表示的文件进行宏展开。因此就能够将用文脉自由文法记述的地名表示分割成多个并保持。例如,如果对应住所的层次分割文件,那么不必书写同一文脉自由文法的定义语句,并容易管理。另外,用“/*”和“*/”包围的部分作为注释使用。
作为例子,将用文脉自由文法记述包含“愛知県名古屋市南区本星崎町(Aichi-ken,Nagoya-shi,Minami-ku,Motohoshizaki-cho)”的相异表示的地名表示的例子示于图7中。在本实施例中,作为用文脉自由文法记述的地名表示的文件分割成以下四种类型,生成地名表示词典。这四种类型是,C1将地名单词作为句法范畴定义的文件称作地名单词定义文件。
C2根据句法范畴定义地名表示的文件称作地名表示定义文件。
C3根据上述C1,C2定义全体地名表示的文件称作全表示定义文件。
C4将与地域无关所使用的字符串作为句法范畴定义的文件称作共同表示定义文件。
上述C4的文件是作为用于预先追加在地名词典生成处理中的相异表示的地名表示追加用的知识105事前准备的文件。
接着,在图1的处理中,说明有关形式语言表现变换处理102。图8是表示处理流程的流程图。下面,将“名古屋市南区(Nagoyashi,Minami-ku)”用作例子说明从作为标准的地名表示列表的住所的各层次的地名单词列表文件和代码列表文件变换为根据文脉自由文法的表现形式的变换处理。
作为在形式语言表现变换处理102中的第一步骤(步骤801),生成定义上述C3的全体地名表示的文件。图9中示出定义有关名古屋市南区的全体地名表示的文件的一部分。在定义全体地名表示的文件的生成中,首先设定在上述C1,C2的名古屋市南区的地名单词定义文件和地名表示定义文件的名称,并存储在存储器中。其次,为了参照不依存地域的句法范畴,在全体表示定义文件的第一行中输出包含上述C4的文件的命令901。继而,为了明确示出定义名古屋市南区的地名表示,在文件的第二行中输出“begin”902。然后,为了参照地名单词定义文件、地名表示定义文件,在第三行和第四行中分别输出在名古屋市南区中的地名单词定义文件的包含语句903和名古屋市南区的地名表示定义文件的包含语句904。最后,为了明确示出结束名古屋市南区的地名表示,在第五行输出“end”语句905。在定义多个地域的地名表示时,可以反复进行上述的“begin”和“end”之间的语句的生成。另外,通过在都道府县、市区町村的层次中分别分割地名单词的定义文件和地名表示的定义文件,例如在生成有关横跨名古屋市内的多个区的地名表示的定义文件时,只一次包含有关都道府县和市的定义文件就可以解决,并减少地名表示词典的冗余度。因此,可以使“begin”“end”成为子结构。
作为在形式语言表现变换处理102中的第二步骤,进行地名单词定义文件生成处理802。从住所各层次的地名单词列表文件中生成地名单词定义的文件。首先,在地名单词列表文件中,对于在都道府县名、市区郡町村名、町名·大字名、字名中所记入的单词将生成句法范畴后输出到地名单词定义文件中。句法范畴的名称假定是该单词本身。这时,作为句法范畴名称前面的英文字母对于都道府县名的范畴加上“P”,对于市区郡町村加上“C”,对于町名·大字加上“T”,对于字名加上“V”。在市区郡町村名字段中,即使在混合市、区、郡和町村的场合也生成不将它们分割、作为一个变量定义的语句。例如,对于“愛知県”的句法范畴的名称变为“<P愛知県>”。再使用句法范畴表示在地名单词列表文件中的都道府县代码、市区郡町村代码、町名·大字代码、字代码,并以注释形式附加在各行的排头。对于名古屋市南区的地名单词,将在此之前进行处理后生成的地名单词定义文件的例子示于图10中。被行首的注释符号“/*”“*/”所包围的部分继“!”之后写上表示都道府县等的代码。例如,行1001在继“23”之后表示名古屋市南区的代码“112”夹住“!”并记入。通过从都道府县代码起按住所的层次排列代码,就能够保持地名单词间的连接关系。另外,在地名表示列表的地名单词列表文件中,如果存储有关在图3和图4中所示那样的地名单词的相异表示,那么像行1002那样在定义语句的右边加上“|”隔开。
在这里,像行1002和1003那样,作为市区郡町村名,在变为“~市~区(…shi…ku)”和“~郡~町(…gun…machi)”的场合,通过使“~市(…shi)”和“~郡(…gun)”的部分通用化就能够减小地名表示词典的冗余度。因此作为关于地名单词定义文件生成处理的下次处理,将这些字符串分割成地名单词。在关于市区郡町村名的地名单词列表文件中写入的字符串由以下六种类型。
(1)~市(2)~市~区(3)~区(4)~郡~町(5)~町(6)~郡~村
(7)~村关于上述六种类型使用图11说明地名单词分割处理的流程。在步骤1101中,最初通过观察字段中的最后的字符,可以用组区分为(1)、(2)(3)、(4)(5)、(6)(7)的四个组。关于(1)组在步骤1102中进行,并照原样将字符串作为地名单词。关于(2)(3)组可以通过在字符串中是否包含“市(shi)”进行区分,关于后2组可以通过在字符串中是否包含“郡(gun)”分别进行区分。关于(2)、(4)、(6)3组将分割成2个单词。关于2组,在“市(shi)”的前后分出单词。关于(4)(6)组同样也必须将“郡(gun)”隔开,但在字段中有时包含多个“郡上郡八幡町(Gunjyo-gun,yahata-machi)”等“郡(gun)”。在这种场合中,为了将(4)、(6)也正确地分割成单词,设定以下那样的规则。
从字段中的第二字符开始搜索,在最初出现的“郡(gun)”的后面进行分割。关于分割后的单词,对于表示政令指定都市或郡的第一个单词的范畴名附加<O对于表示、区、町村的第二个单词的范畴名中附加<W来区别。将如果不出现“郡(gun)”就不分割的全体字符串作为以<W开始的范畴进行定义(步骤1103、1104)。对于此处没有分割的、行1002“尾張旭市(Owariasahi-shi)”那样的单词也作为以<0开始的定义语句将所生成的以<C开始的定义语句进行再定义。这时,从以<O开始的变量名起将删除末尾的“市(shi)”、“町(cho)”、“村(mura)”。再以地名单词定义文件的行首的地名代码为基础,将用以“<P”开始的句法范畴所表示的都道府县名和用以<C开始的句法范畴所表示的市区郡町村名组合起来。因此,以<C开始的句法范畴的定义变成定义从都道府县名到市区郡町村的表示。在此之前的处理中所生成的地名单词定义文件的例子在图12中示出。
作为在地名单词定义文件生成处理802中第三次处理,将定义语句的右边只由句法范畴名组成的定义语句移到地名表示定义文件中。以<C开始的句法范畴的定义语句在它的右边也只由已经被定义的句法范畴组成。因此,只抽取以<C开始的定义语句,并输出到通过另一种途径接着生成的地名表示定义文件中。这样,地名单词的句法范畴的定义和地名表示的句法范畴的定义就完全被分割。这样一来,在生成汉字的地名表示词典和片假名的地名表示词典的场合,除了分别生成地名单词的句法范畴的定义文件之外,由于地名表示的句法范畴的文件能够在汉字和片假名的词典中通用,因此有减小地名表示词典的冗余度的效果。由以上处理所生成的地名单词定义文件示于图13,被抽取的以<C开始的句法范畴的定义语句示于图14。
作为形式语言表现变换处理102的最后步骤,进行地名表示定义文件生成处理803。使用图15和处理例图16说明处理流程。
首先,在步骤1501中检查是否是代码文件的末尾,若是末尾就结束处理。如果剩余未处理的地名表示,将转移到步骤1502,并将特定了地名表示的代码作为地名表示定义文件的注释行从代码文件的都道府县、市区郡町村、町名·大字代码中输出。接着转移到步骤1503,输出“begin”。这是由于在明确句法范畴的有效范围的同时,提高词典文件的可读性。再在步骤1504中,将在代码文件的邮政号码栏中记入的地名表示的标识符用括号括起来输出。接着转移到步骤1505,并定义将邮政号码保持在名称中的句法范畴。具体地说,将句法范畴的标识符用“<>”括起来作为左边,并插入符号“∷=”,在右边从地名单词定义文件检索对应于以前记入的代码的句法范畴,按顺序将该范畴的名称排列起来,生成像行1601那样的定义语句。如果存在字名,则在适当的地名表示的町名·大字的范畴名称的后面追加“()”,在“()”内部追加字名的句法范畴名称。在字名存在多个的场合,插入“|”后像行1602那样进行追加。
以上,说明有关向关于汉字的地名表示词典的形式语言表现的变换,但有关片假名的地名表示词典的生成用同样的方法也能实现。
接下来说明有关图1中的知识的相异表示追加处理104。通过事前准备的地名表示追加用的知识105自动被追加的表示是在以前说明的四种相异表示中的以下三种类型。
(1)字符型相异表示在地名单词中的字符用法的差异等相异表示。例如,“之(no)”、“ノ(no)”、“の(no)”,或“ガ(ga)”、“ケ(ga)”、“が(ga)”等(2)省略型地名表示单词·句法范畴被省略的相异表示。例如,县名省略是可能的表示的差异(3)追加型相异表示单词·句法范畴被追加的相异表示。例如,能够追加字名的相异表示为了追加这些相异表示,采用图17所示的程序。以图13、图14的地名表示为例说明它。作为知识的相异表示追加处理的第一个步骤1701将特定的字符串置换成作为已经定义的知识被保持的句法范畴。在此处的所谓知识是用在本实施例中使用的文脉自由文法的句法范畴的定义形式来记述,当在处理对象的地名单词定义文件中存在定义语句右边的字符串时,将该字符串置换成左边的句法范畴名。例如,由于图18A的行1801的“大字(Ohoza)”的字符串位于表示町名·大字名的句法范畴的最前面,因此将它置换成“<V大字>”的定义完的句法范畴,变为图18B的行1804。由于行1802、行1803的“ケ(ga)”“の(no)”的字符也不是地名单词的最前面、末尾,并且它们的两侧是汉字,因此分别置换成“<V ヶ>”“<V ノ>”的定义完的句法范畴,变为行1805、行1806。有关知识的形式将在后面说明。作为知识的相异表示追加处理的第二个步骤1702,实行在地名单词字符串的多处出现的字符串的句法范畴化。在此处生成字符型相异表示。例如,由于在愛知県以“尾張(Owari)”开始的地名很多,或者在京都市的地名将表示“西九条Nishikujyo)”和“一乗寺(Ichijyoji)”等广大范围的地名保持在接头词中的地名很多,因此将交给多个城镇区域通用并像接头词那样被使用的字符串进行句法范畴化。由此,对于在多个地名中共同出现的字符串,可以使相异表示的追加处理一元化,同时,由于在地名表示词典中多处没有保持相异表示的字符串,因此能够减小词典的冗余度。对于地名单词定义文件,如果从定义语句的右边的最前面取出二个字符或三个字符保持在存储器中,并在多个定义语句中重复,那么就定义此共同部分的字符串作为句法范畴,并用句法范畴名置换原来的字符串。由于在图19中行1901和行1902的右边的最前面三个字符“西九条(Nishikujyo)”共同存在,因此将它作为句法范畴生成行1903,并用句法范畴“<V西九条>”置换行1901、行1902的字符串(Nishikujyo)”,生成行1904、行1905。
作为知识的相异表示追加处理的第三个步骤1703,实行句法范畴的地名表示定义的追加。此处所追加的相异表示是省略型相异表示和追加型相异表示,主要是地名表示中的单词,即句法范畴的排列的差异。例如,有或者都道府县可能省略,或者町名·大字中的“大字(Ohaza)”可能省略,或者使上述的京都市的“西九条(Nishikujyo)”等广大范围的地名可能省略的例子。将它们作为后述形式的规则保持起来,并对地名表示定义文件和地名单词定义文件实行定义语句的追加。例如,在对于图20A的地名表示的定义追加从市町村名开始的表示的规则变成有效的场合,在“南区(Minami-ku)”和“尾張旭市(Owariasahi-shi)”的定义语句的下面分别附加“<P愛知県>”被省略的定义语句。其结果是图20B,并且是行2001和行2002被追加的定义语句。接着,如果表示被定义,那么,对于左边的句法范畴相同的定义语句使用or结合算符“|”将其作为一个定义语句。其结果变成图20C所示的行2003和行2004。除指定开始位置外,某字符串的省略等也用同样的程序反映在TPDL中。按照同样的程序向地名单词定义文件的相异表示的追加也是可能的。
以上是知识的相异表示追加处理。
接下来,说明有关用于图1中的相异表示追加的地名表示追加用的知识105的知识表现。
在相异表示追加中使用的知识像上述那样是以下二种类型。
D1由用于追加地名单词定义中的字符型相异表示的、文脉自由文法的句法范畴的定义语句和用于启动从字符串向句法范畴的置换处理的条件组成的知识。
D2把用于生成省略型、追加型相异表示的、在地名表示定义语句中的句法范畴的排列作为条件,并由记入对句法范畴的置换、省略等、重新追加的定义语句内容的项目组成的知识。
将有关上述D1的具体例子示于图21中。该知识由句法范畴变换规则部分2101和句法范畴知识定义部分2102组成。句法范畴变换规则部分由四个项目组成,并由从左边起表示句法范畴的类型的范畴类型字段2103、规定作为变换对象的字符串的排列的字符串条件字段2104、在句法范畴定义部分当用“|”符号将被变换的句法范畴的定义语句的左边隔开时将第几个字符串作为变换条件的比较对象位置字段2105、以及在句法范畴定义部分指定被变换的句法范畴的定义语句的指针字段2106组成。句法范畴知识定义部分是在用文脉自由文法书写的地名表示文件中定义对不依存地区的字符串的句法范畴的共同地名表示定义文件。以规则2107为例说明这样被表现的知识的意义。
1.在地名单词定义文件中的句法范畴的定义语句中,它的左边的句法范畴的种类,即“<”后面的英文字母是写在范畴类型字段中的“C、O、W、T、V”的哪一种,2.在以汉字结束的形式中,地名单词定义文件中的句法范畴的定义语句的左边如果满足以下条件,即在定义指针字段指示的句法范畴指示的定义部分中的定义语句右边所表现的字符中间写入比较对象位置字段的第1个和第2个“ケ(ga)”“ケ(ga)”中的哪一个像字符串条件字段所示那样以汉字开始,并在途中包含上述二个字符,那么,就用句法范畴“<Vケ>”置换在地名单词定义文件中的句法范畴的定义语句右边的上述字符。
此处,将说明句法范畴变换规则2101的各字段的记入方法。
在范畴类型字段中通过记入以下英文字母,限定适用该知识的地名单词定义文件中的句法范畴的定义语句。
P都道府县名的句法范畴C市区郡町村名的句法范畴O郡名、市名的句法范畴W区名、町村名的句法范畴T町名、大字名的句法范畴V字名、其它的句法范畴下面,记述在字符串条件字段中使用的符号。
X作为书写在句法范畴知识定义部分中的置换对象的字符(串)K在记述字符串的条件时表示任意的汉字H在记述字符串的条件时表示任意的平假名T在记述字符串的条件时表示任意的片假名()用于明示书写上述字符种类的范围的符号+在它的前面重复一次以上所书写的字符*在它的前面重复0次以上所书写的字符^表示字符串的最前面$表示字符串的末尾在收纳定义对于不依存地区所使用的字符串的句法范畴的定义语句的文件中准备以下那样的句法范畴。
<Vケ>∷=ヶ|ケ|が;<Vノ>∷=ノ|之| の;<V々>∷=ノ|々|の;<V壱>∷=壱|-|1;
<V式>∷=式|二|2;<V参>∷=参|三|3;<V通>∷=通[リ];<V大字>∷=大字;<V字>∷=字;<V入ル>∷=入([[ぃ]る]|[[イ]ル]);<V上ル>∷=上([[ガ]ル]|[[が]る]);<V下ル>∷=下([[ガ]ル]|[[が]る]);下面,在用于相异表示追加的知识中,说明有关D2。具体的例子示于图22中。该知识由四个字段组成,它们是自左边起记入了作为相异表示追加对象的地名表示的定义语句中句法范畴排列的范畴条件字段2201、对于满足了范畴条件部分的条件的定义语句记入增加的变更种类的变更处理指定字段2202、表示在变更处理指定部分作为处理对象的句法范畴数目的范畴数目指定字段2203、在追加追加处理时示出新追加的句法范畴的名称的追加范畴指定字段2204。以规则2205为例说明这样被表现的知识的意义。
在地名表示定义文件中的句法范畴的定义语句中间,它的右边如在范畴条件工具中所写的那样如果继表示都道府县名的句法范畴之后由表示市名的句法范畴构成,那么像在变更处理指定字段、范畴数指定字段中所写的那样在都道府县名和市名的句法范畴的二个句法范畴的变化中从“<V市内>”这样的句法范畴开始追加表示。
在此处说明各字段的记述方法。
在范畴条件字段中,通过以下字符、符号记述地名表示定义文件中的句法范畴的排列方法。
<>表示句法范畴名P 都道府县名的句法范畴C 市区郡町村名的句法范畴O 郡名、市名的句法范畴
W区名、町村名的句法范畴T町名、大字名的句法范畴V字名、其它的句法范畴() 用于明示上述字符种类被书写的范围的符号+重复一个以上在它前面被书写的字符*重复0个以上在它前面被书写的字符^表示在定义语句中右边的最前面$表示在定义语句右边的末尾· 表示任意一个字符!否定继续下一个的句法范畴在变更处理指定字段中记述以下二者中的一个处理。
SKIP追加容许在范畴条件部分所记入的省略句法范畴的表示REPLACE从表示的最前面追加把在范畴数目指定字段中所记入的数目的范畴置换成在追加范畴字段中所记入的范畴的表示。
为了生成用于读取覆盖在邮件上的地址的地名表示词典,作为用于追加关于以下的地名表示的相异表示的知识,准备以下这样的知识。
对都道府县名的句法范畴可以省略对都道府县名、市郡名的句法范畴可以省略都道府县名、市郡名、还有区名、(继郡之后)的町村名可以省略对于“市(Shi)”追加“市内(Shi-nai)”的表示对于“(町Cho)”追加“町内(Cho-nai)”的表示对于“村(Son)”追加“村内(Son-nai)”的表示对于“区(Ku)”追加“区内(Ku-nai)”的表示町名·大字名的最前面的“大字(Ohaza)”可以省略字名的最前面的“字(Aza)”可以省略以上是用于相异表示追加的知识的表现形式。
接着,说明有关在图1中的依赖文脉相异表示追加处理106和追加·修正相异表示定义109。
在此处由人工向地名单词定义文件和地名表示定义文件实行句法范畴的定义语句的追加。即通过手工作业书写句法范畴的定义语句。但是,直接记述文脉自由文法形式的句法范畴,因作业人员的负担重,要准备支援该作业的I/F。
以下,对每个上述的相异表示的二个类型说明表示追加的方法。
首先说明对于地名相异表示的追加的程序。对于地名表示的相异表示的追加作业通过图23A、B、C那样的用户界面实行。最初如果作业人员将作为编辑对象的区域标识符的邮政号码输入邮政号码输入栏2301(参照图23A),那么以此为基础从地名表示定义文件中检索对应的地名表示定义语句。例如,如果检索“<4570012>∷=<C名古屋市南区><T笠寺><V本殿>的地名表示定义语句,那么,就取出在它的右边所记入的句法范畴,再检索将对应市区郡町村名的句法范畴作为左边的定义语句,并取出对应都道府县名、市郡名的句法范畴。将这些句法范畴的名称分别显示在都道府县显示栏2302、市郡显示栏2303、区町村显示栏2304、町名·大字显示栏2305、字名显示栏2306中。若使用多个句法范畴,就将它们全部合并后显示(参照图23B)。接着,作业人员输入应追加的表示(参照图23C)。在追加省略了县名、市名、区名、町名·大字的表示时,将町名·大字显示栏2306、区町村名显示栏作为空白,在字名显示栏2308中输入”本殿(honden)”.然后,通过按压追加按钮2309,生成·追加指定的表示。
图25中示出该表示的追加处理的流程。
首先,对于在步骤2501中使用图23A、B、C那样的界面追加的表示形成文脉自由文法的定义语句的形式。对于在图24中对邮政号码用4570012表示的地名表示追加的“本殿”的表示生成“<4570012>∷=<V本殿>”的句法范畴定义语句。对于地名表示词典中的句法范畴的定义语句检索其左边与上述追加定义语句的左边相同的语句(步骤2502)。检索结果,如果存在适当的定义语句,那么在步骤2503展开检索结果的定义语句的左边以便使各地名表示字符串进行OR结合。就是说,将A∷=(B|C)D的定义语句变形为A∷=BD|CD。在步骤2504中,对于已变形的地名表示词典中的定义语句,通过OR结合其左边将追加定义语句合并。因此,在<4570012>∷=<C名古屋市南区><T笠寺><V本殿>;的地名表示知识中结合<4570012>∷=<V本殿>;生成<4570012>∷=<C名古屋市南区><T笠寺><V本殿>|<V本殿>;。
接着,在步骤2505中,实行定义表达式的最佳化,即削减使用的句法范畴名的数目。即,是将A∷=BD|CD;的定义表达式变形为A∷=(B|C)D;或者将A∷=BC|B;的定义表达式变形为A∷=B[C];的处理。因此得到<4570012>∷=<C名古屋市南区><T笠寺>[<V本殿>];。
另外,在步骤2506中,将已追加的定义语句<4570012>∷=<V本殿>;存储到后述的、图1中的追加·修正相异表示定义文件109中。在删除相异表示的场合,变成图26那样处理的流程。
首先,在步骤2601中,对于使用图24A、24B、24C那样的界面选择的表示形成文脉自由文法的定义语句的形式。如果想要删除邮政号码用4570012表示的地名的“本殿”的表示,那么就生成“<4570012>∷=<V本殿>”的句法范畴定义语句。对于地名词典中的句法范畴的定义语句,检索其左边与上述追加定义语句的左边相同的语句(步骤2602)。检索的结果,如果存在适当的定义语句,那么,在步骤2603中,展开检索结果的定义语句的左边以便各地名表示字符串进行OR结合。就是说,将A∷=(B|C)D的定义语句变形为A∷=BD|CD。
在步骤2604中,通过从已变形的地名表示词典中的定义语句的左边被OR结合的要素删除与追加定义语句的左边相同的要素进行处理。
因此,从<4570012>∷=<C名古屋市南区><T笠寺><V本殿>|<V本殿>;的地名表示知识中删除<4570012>∷=<V本殿>;并生成<4570012>∷=<C名古屋市南区><T笠寺><V本殿>;的地名表示定义语句。
接下来,在步骤2505中,实行定义表达式的最佳化,即实行使用的句法范畴名的数目的删除。即是将A∷=BD|CD;的定义表达式变形为A∷=(B|C)D;或者将A∷=BC|B;的定义表达式变为A∷=B[C];
的处理。
另外,在步骤2506中,将已删除的定义表达式<4570012>∷=<V本殿>;存储到后述的、图1中的追加·修正相异表示定义文件109中。
作为人工的相异表示追加的第二个例子在有关追加·修正的场合说明关于某个特定的地名单词的相异表示。该作业通过图24A、24B、24C那样的用户界面实行。与有关地名表示的相异表示追加时相同,如果作业人员将邮政号码输入到邮政号码输入栏2401中作为编辑对象的区域的标识符(参照图24A),那么,以此为基础,从地名表示定义文件中检索对应的地名表示定义语句。接着,像图24B那样,在选择了适当层次的句法范畴名之后,启动单词定义追加·修正界面。若启动单词定义追加·修正界面,那么,就检索将作为追加·修正的对象的句法范畴名变为左边的地名单词定义语句。在图24C的地名单词显示·输入栏2403中显示在已检索的单词定义语句的右边所记述的字符串。接着,如果作业人员将想要追加·修正的表示(字符串)追加到地名单词显示·输入栏2404中,那么就将追加·修正的对象的句法范畴名变成左边,并将使所追加的字符串变成右边的地名单词定义语句追加到地名单词定义文件中。因此,进行图25所示的处理,生成“<O尾张旭市>∷=愛知旭市;”的定义语句,并以与上述知识的相异表示追加处理相同的程序追加到地名单词定义文件中。这里所生成的句法范畴定义语句由追加·修正相异表示输出处理108输出,并存储在图1中的追加·修正相异表示定义中。即使在删除单词定义的场合也用图26所示的方法(技巧)进行。
将在上述依赖文脉追加处理中输出的追加·修正相异表示定义的例子示于图27中。
在这里,追加的定义语句、删除的定义语句以与地名表示词典相同的形式被存储。但是,为了示出追加处理或删除处理化,在行首使用注释语句的形式写入处理内容的标识符。处理内容的标识符是#ADD#追加#DEL#删除的二种类型。
接着,说明有关图1中的事例的相异表示追加处理111。在事例的相异表示追加处理中进行的处理除了读入追加·修正相异表示定义109,通过记入其中的处理内容的标识符变换追加和删除的处理之外,与在依赖上下文关系的相异表示追加处理中进行的相异表示的追加、删除处理相同。通过事例的相异表示追加处理,能够自动地将过去用手工作业追加的相异表示追加到地名表示词典中。
事例的相异表示追加处理的流程示于图28中。
首先,在步骤2801中读入在图27中所示那样的追加·修正相异表示定义109,并读入在其行首的注释内部所记入的处理内容的标识符与其相连的表示的定义语句。在被写入追加邮政号码用4570012表示的地名表示的“本殿”表示那样的追加·修正相异表示定义文件中的场合,对于地名表示词典中的句法范畴的定义语句,检索其左边与“<4570012>∷=<V本殿>”的追加定义语句的左边相同的语句(步骤2802)。检索的结果,如果存在适当的定义语句,那么,在步骤2803中,展开检索结果的定义语句的左边,以便使各地名表示字符串进行OR结合。在步骤2804中,对于已变形的地名表示词典中的定义语句,通过将其左边进行OR结合合并追加定义语句。因此,<4570012>∷=<C名古屋市南区><T笠寺><V本殿>|<V本殿>;的地名表示定义语句被生成。
其次,在步骤2805中,实行定义表达式的最佳化,即实行使用的句法范畴名的数目的削减。因此,得到<4570012)∷=<C名古屋市南区><T笠寺>[<V本殿>];。
经过以上的处理,生成图1中的地名核对用的地名表示词典103。与以前所述的那样,该地名表示词典的形式也采用词典源文件的形式。作为从用文脉自由文法所表现的地名表示词典变换到图形形式的词典二进制的形式的方法,可以使用例如生成相应于在“自然语言处理入门”(近代科学社,ISBN4-7649-0143-9)第19-31页中那样的生成规则的过渡图形的方法等。把从本实施例中使用的文脉自由文法表现的例子中所形成的图形形式的地名表示词典的一例示于图29中。图形形式的地名表示词典是各边对应于部分字符串、各顶点对应于部分字符串的边界的有向图。各边的方向与字符串中的字符的顺序一致。被写成NULL的边表示该处可以什么字符串也没有。在图中的右下边包含线的圆表示地名字符串的开始位置。另外,在中央含有斜线的圆表示字符串的终止位置。在对应字符串的终止的节点中存储作为对在<数字>表示中指定的地名表示的标识符的数字(在本实施例中为邮政号码)。
关于英语范围的地名表示的相异表示同样也可以使用。例如,在“South 9th Street”中,如图30所示那样或者将“South”简写成“S”,或者将其全部省略。关于“9th”有时也用英语表示为“9”。更有,关于“Street”或者简写成“St”,或者有时全部省略。而且,相当于“South”和“9th”部分语序有时也会改变。
若按照在本发明中表示上述的地名表示的文脉自由文法记述,就变成图31。
图32示出本实施例中的硬件的构成。地名表示词典生成装置3001是把标准的地名表示被分割成每个单词存储的标准地名表示列表3002作为输入、并输出用文脉自由文法表现的地名表示词典3003的装置。该装置内部具备处理从外部输入文件的输入用的接口3004、保存各种文件的外部存储装置3005、运算处理装置3006、存储器3007、处理向外部输出结果的网络接口3008、以及输出用的接口3009,它们经由总线3010被连接起来。
标准地名表示列表经由输入输出装置3004输入到地名表示词典生成装置,存储在外部存储装置3005中,变成标准地名表示列表文件3011,复制在存储器3007中,变成标准地名表示30016。如果地名表示词典生成处理被执行,那么,用于存储在外部存储装置中的地名表示词典生成处理的程序文件3012、相异表示追加用的知识文件3013被装入存储器中,变成程序3014、相异表示追加用的知识3015。对于输入用的接口或从外部存储装置装入存储器中的标准地名表示3016,运算处理装置按照本发明的形式在存储器中生成地名表示词典3017。
其结果作为地名表示词典文件3021被写入外部存储装置中,或者通过显示器的输出接口3009被输出。通过程序3014被追加·修正的地名表示作为相异表示追加履历文件3022被保存在外部存储装置中,在以后的地名表示词典生成时被利用。
另外也可能通过从作为本实施例说明的词典源文件形式变换成词典二进制形式的词典形式变换装置3018变换成词典二进制形式的地名表示词典,并通过网络3019将它装入邮件分检机3020,进行地址读取处理。
还有,本发明为说明方便起见,以日本的地名和住所为例进行了说明,但是,本发明不限于日本的地名和住所、或用日语表示的地名和住所。
即使是各外国的地名和表示、或用英语及其它语言表示的地名和住所,用本发明实施也是可能的。通过随时重新追加·变更不仅是上述的范畴的范畴,或进行属于这些范畴的单词的追加·变更,也使本发明可能使用于外国的地名·住所、或者用外语表示的地名·住所。
如以上所述,依据本发明的实施例,从只写入对于一个地区的标准地名表示的地名表示列表中,能够尽可能自动追加相异表示,并容易变成词典完备率高的地名表示词典。另外,即使对于不能自动追加的相异表示通过提供用人工追加它的设备在成为生成地名表示词典的对象的地区也能追加特有的相异表示,而且还能提高词典完备率。另外,通过保存此处用人工追加作业的结果以便在以后的词典生成作业时利用,就能够抑制实行用人工追加作业的次数,简化词典生成作业。
权利要求
1.一种词典生成装置,具有从包含保持第一地名的地名表示列表(101)的地名表示词典中输入、输出上述第一地名的接口装置,包含保持与上述第一地名的表示有关并且包含表示不同的地名、字符不同的地名、能省略的地名、能追加的地名中的任何一个地名的相异表示信息的地名表示追加用的知识的相异表示词典,以及输入上述第一地名和在上述相异表示词典中所包含的上述表示的信息、生成与上述第一地名表示不同的第二地名(103,图7的表示)、并输出该第二地名的相异表示地名生成装置。
2.一种词典生成装置,具有包含保持第一地名的地名表示列表的地名表示词典,包含保持与上述第一地名的表示有关、并且含有表示不同的地名、字符不同的地名、能省略的地名、能追加的地名中的任何一个地名的相异表示信息的地名表示追加用的知识的相异表示词典,以及输入上述第一地名和在上述相异表示词典中所包含的上述相异表示信息、生成与上述第一地名表示不同的第二地名、并输出该第二地名的相异表示地名生成装置。
3.权利要求2记载的词典生成装置,其特征在于,上述相异表示地名生成装置还是包含将上述第一地名变换成其它语言形式的形式语言表现变换装置、并参照变换成该其它语言形式的第一地名(103)生成上述第二地名的相异表示地名生成装置。
4.权利要求2记载的词典生成装置,其特征在于上述地名表示列表是分成多个句法范畴后保持上述第一地名的地名表示列表,上述相异表示地名生成装置是参照上述多个句法范畴中任何一个生成上述第二地名的相异表示地名生成装置。
5.权利要求4记载的词典生成装置,其特征在于上述地名表示列表是在各个被分成上述多个句法范畴的上述第一地名中附加代码信息(201)后被保持的地名表示列表。
6.权利要求5记载的词典生成装置,其特征在于上述第二地名是改变被分成上述多个句法范畴的上述第一地名的、该多个句法范畴的排列方法所形成的地名。
7.一种词典生成装置,具有包含保持第一地名的地名表示列表的地名表示词典,包含保持与上述第一地名的表示有关,并且含有表示不同的地名、字符不同的地名、能省略的地名、能追加的地名中任何一个地名的相异表示信息的地名追加用的知识的相异表示词典(105),输入上述第一地名和在上述相异表示词典中所包含的上述相异表示信息、生成与上述第一地名表示不同的第二地名、并输出该第二地名的相异表示地名生成装置(104),接收追加与上述第二地名表示不同的第三地名(107)的指定的接收装置,以及根据上述指定追加并输出上述第三地名的追加装置(106)。
8.一种词典生成装置,其特征在于,具有,包含保持第一地名的地名表示列表的地名表示词典,包含保持与上述第一地名的表示有关,并且含有表示不同的地名、字符不同的地名、能省略的地名、能追加的地名中任何一个地名的相异表示信息的地名表示追加用的知识的相异表示词典(105),输入上述第一地名和在上述相异表示词典中所包含的上述相异表示信息、生成与上述第一地名表示不同的第二地名、输出该第二地名的相异表示地名生成装置,接收追加与上述第二地名表示不同的第三地名的指定的接收装置,根据上述指定追加并输出上述第三地名的追加装置(106),以及输入上述第二地名和上述第三地名、保持上述第二地名和第三地名对的保存装置(108),上述相异表示地名生成装置包含参照上述保存装置的装置,并且是在该保存装置中当上述第二地名和上述第三地名对已被保存时包含参照该地名对从上述第一地名生成上述第三地名后输出的装置的相异表示地名生成装置。
9.一种词典生成方法,其中接口装置从包含保持第一地名的地名表示列表的地名表示词典中输入该第一地名后输出,相异表示地名生成装置从包含保持与上述第一地名和该第一地名的表示有关,并且含有表示不同的地名、字符不同的地名、能省略的地名、能追加的地名中任何一个地名的相异表示信息的地名表示追加用的知识的相异表示词典中得到该相异表示的信息,生成与该第一地名表示不同的第二地名,并输出该第二地名。
10.一种词典生成方法,其中,相异表示地名生成装置从包含保持第一地名的地名表示列表的地名表示词典中输入该第一地名,另外,还从包含保持与上述第一地名的表示有关、并且含有表示不同的地名、字符不同的地名、能省略的地名、能追加的地名中任何一个地名的相异表示信息的地名表示追加用的知识的相异表示词典中输入该相异表示信息,生成与上述第一地名表示不同的第二地名,并输出该第二地名。
11.权利要求10记载的词典生成方法,其中上述相异表示地名生成装置还在形式语言表现变换装置中将上述第一地名变换成其他的语言形式,并参照变换成该其它语言形式的第一地名生成上述第二地名。
全文摘要
本发明的地名表示词典生成方法和装置不是特别地实行对地名表示的相异表示的生成和追加,而是在尽可能地自动地追加相异表示的同时,第二次以后能自动地实行不能自动地追加的表示和不需要的表示的追加和删除。通过用文脉自由文法表现地名表示,并通过具有将使地名表示的字符串和在文脉自由文法中的句法范畴对应起来的知识、句法范畴和句法范畴的配置与其它的句法范畴对应的知识做到能够追加地名表示的相异表示。另外,通过用与记述地名表示词典的形式相同的文脉自由文法只记述被追加或删除的表示、并输出到文件中,以便在这以后的地名表示词典生成时能自动地反映上述追加、删除处理的变更。
文档编号G06F15/18GK1296231SQ0013390
公开日2001年5月23日 申请日期2000年11月10日 优先权日1999年11月12日
发明者池田尚司, 加藤厚志, 藤泽浩道, 古贺昌史, 古川直广 申请人:株式会社日立制作所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1