CN118043801A - 处理方法、处理程序以及信息处理装置 - Google Patents

处理方法、处理程序以及信息处理装置 Download PDF

Info

Publication number
CN118043801A
CN118043801A CN202180102907.7A CN202180102907A CN118043801A CN 118043801 A CN118043801 A CN 118043801A CN 202180102907 A CN202180102907 A CN 202180102907A CN 118043801 A CN118043801 A CN 118043801A
Authority
CN
China
Prior art keywords
cluster
vector
sentence
vectors
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202180102907.7A
Other languages
English (en)
Inventor
片冈正弘
永浦良平
瓦伊·丹·妙
尾上聪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of CN118043801A publication Critical patent/CN118043801A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2237Vectors, bitmaps or matrices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3347Query execution using vector based model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种处理方法、处理程序以及信息处理装置。信息处理装置若接收登记于数据库的多个字符或者字符串,则计算与多个字符或者字符串分别相应的多个向量。信息处理装置将计算出的多个向量根据向量间距离分类为多个集群。信息处理装置对多个集群中的每个集群,求出代表各集群所包含的一个向量或者多个向量的代表向量、和与从各集群的代表向量到各集群所包含的一个向量或者多个向量的大小相应的距离。信息处理装置将词典信息存储于存储部,该词典信息是将计算出的代表向量和求出的距离与识别各集群的集群识别信息建立了对应关系的信息。

Description

处理方法、处理程序以及信息处理装置
技术领域
本发明涉及处理方法等。
背景技术
在DB(Data Base:数据库)中登记有文本等庞大的数据,需要从这样的DB中适当地检索与利用者指定的输入查询相似的数据。
在现有技术中,在接收了输入查询的情况下,使用预先设定的转置索引,来执行数据检索。在预先准备中,在现有技术中,若各文本被登记于DB,则通过进行词素分析,并将其各单词和相应的文本的DB上的位置信息分别建立对应关系,来生成转置索引。每当在DB中新登记文本,就反复执行这样的处理。
专利文献1:日本特开2017-111479号公报。
然而,在上述的现有技术中,存在面向与多维的向量对应的AI(ArtificialIntelligence:人工智能)分析,数据的登记处理的负荷大的问题。
在AI分析中,在登记由字符串构成的文本、有机化合物的化学结构式、基因组的碱基序列等数据中,对具有意义的单位的单词、官能团、句子、官能团一次结构等,产生向量的分配、累计的必要性。但是,若以文本为例,单词的种类一般约为百万种,很难将登记于DB的所有文本的各单词、句子的向量和其位置与转置索引建立对应关系地登记。因此,需要缩小登记于转置索引的向量的数量,但从庞大数量的向量中确定对检索处理有效的向量的处理需要很多时间。
发明内容
在一个侧面,本发明的目的在于提供一种能够减轻数据的登记处理的负荷的处理方法、处理程序以及信息处理装置。
在第一方案中,计算机执行下面的处理:计算机若接收登记于数据库的多个字符或者字符串,则计算与多个字符或者字符串分别相应的多个向量。计算机将计算出的多个向量根据向量间距离分类为多个集群。计算机对多个集群中的每个集群,求出代表各集群所包含的一个向量或者多个向量的代表向量和与从各集群的代表向量到各集群所包含的一个向量或者多个向量的大小相应的距离。计算机将词典信息存储于存储部,该词典信息是将计算出的代表向量和求出的距离与识别各集群的集群识别信息建立了对应关系的信息。
能够减轻数据的登记处理的负荷。
附图说明
图1是用于对本实施例1的信息处理装置的准备阶段的处理进行说明的图。
图2是表示句子向量词典的数据结构的一个例子的图。
图3是用于对本实施例1的信息处理装置的登记阶段的处理进行说明的图。
图4是用于对本实施例1的信息处理装置的检索阶段的处理进行说明的图。
图5是表示本实施例1的信息处理装置的结构的功能框图。
图6是表示本实施例1的集群表的数据结构的一个例子的图。
图7是表示集群数据的一个例子的图。
图8是表示单词向量词典的数据结构的一个例子的图。
图9是用于对计算句子向量的处理进行说明的图(1)。
图10是用于对计算句子向量的处理进行说明的图(2)。
图11是用于对确定集群ID的处理进行说明的图(1)。
图12是用于对确定集群ID的处理进行说明的图(2)。
图13是表示准备处理的处理步骤的流程图。
图14是表示检索处理的处理步骤的流程图。
图15是表示本实施例2的信息处理装置的结构的功能框图。
图16是表示第二单词转置索引的一个例子的图。
图17是用于对句子转置索引TS的其他的应用例进行说明的图。
图18是表示实现与实施例的信息处理装置同样的功能的计算机的硬件结构的一个例子的图。
具体实施方式
以下,基于附图对本申请所公开的处理方法、处理程序以及信息处理装置的实施例进行详细说明。此外,并不是通过本实施例来限定本发明的内容。
实施例1
本实施例1的信息处理装置依次执行准备阶段的处理、登记阶段的处理、检索阶段的处理。以下,依次对由信息处理装置执行的准备阶段的处理和检索阶段的处理进行说明。
图1是用于对本实施例1的信息处理装置的准备阶段的处理进行说明的图。在本实施例1中,作为一个例子,将具有多个单词的句子作为文本来进行说明。在图1的说明中,使用句子1、句子2、句子3、句子4来进行说明。此外,以包含大量的句子的总体为对象来实施准备阶段的处理。
将句子1设为“马是喜欢吃胡萝卜的。”。将句子2设为“胡萝卜是马的最爱。”。将句子3设为“今天天气晴朗。”。将句子4设为“樱花开了。”。此外,句子1和句子2的主语(S)和宾语(O)被置换了,但是具有相同的意义的句子。
信息处理装置若接收登记于DB的多个句子的信息,则分别计算句子的向量。信息处理装置通过累计句子所包含的各单词的向量,来计算句子的向量。在以下的说明中,将句子的向量记作“句子向量”。在单词向量词典中定义各单词的向量。将单词的向量记作“单词向量”。
将句子1的句子向量设为“SV1”。将句子2的句子向量设为“SV2”。将句子3的句子向量设为“SV3”。将句子4的句子向量设为“SV4”。在本实施例1中,作为一个例子,将句子向量的维数设为7维来进行说明。将句子向量的第n成分的向量记作句子向量(n)(n=1~7)。
信息处理装置通过基于各句子的句子向量执行聚类,将各句子分类为多个集群。集群被配置于7维的特征量空间1。对于各集群,设定唯一识别集群的集群ID(identification)。在图1所示的例子中,句子1和句子2被分类为集群ID“Cr1”的集群。句子3被分类为集群ID“Cr2”的集群。句子4被分类为集群ID“Cr3”的集群。
在以下的说明中,将集群ID“Cr1”~“Cr3”的集群分别记作集群Cr1~Cr3。在图1中,示出集群Cr1~Cr3,但特征量空间1中也可以包含其他集群。
信息处理装置基于聚类的结果,来生成句子向量词典。图2是表示句子向量词典的数据结构的一个例子的图。如图2所示,句子向量词典50对集群ID、代表向量以及直径建立对应关系。
集群ID是唯一识别集群的信息。代表向量是代表同一集群所包含的句子向量的向量。代表向量具有代表向量(1)~(7)。代表向量(n)是与属于同一集群的句子向量(n)的中心(重心)对应的向量(n=1~7)。直径表示集群的球(立方体)的直径(边的长度)等。
图3是用于对本实施例1的信息处理装置的登记阶段的处理进行说明的图。信息处理装置若接收登记于DB141的输入文本2,则基于输入文本2所包含的各句子和句子向量词典50,来生成句子转置索引TS。
在以图3说明的例子中,将输入文本2设为“和孩子去了牧场。矮马是喜欢吃胡萝卜的。为了奖励骑的马给了它胡萝卜”。为了便于说明,将输入文本2所包含的句子中的“和孩子去了牧场”记作句子2A。将“矮马是喜欢吃胡萝卜的。”记作句子2B。将“为了奖励骑的马给了它胡萝卜”记作句子2C。
使用句子2B“矮马是喜欢吃胡萝卜的。”来进行说明。信息处理装置通过累计句子2B所包含的单词的单词向量,来计算句子向量“SV2B”。信息处理装置对句子2B的句子向量和句子向量词典50的代表向量进行比较,确定句子2B所属的集群ID。
例如,信息处理装置计算句子向量与代表向量的相似度(余弦相似度或者距离),确定与句子向量的相似度最大的代表向量,并将确定出的代表向量的集群ID作为句子2B所属的集群ID。
信息处理装置在句子2B的句子向量“SV2B”与集群Cr1的代表向量的相似度最大的情况下,将句子2B所属的集群ID确定为“Cr1”。
信息处理装置以记录为单位将输入文本2登记于DB141。信息处理装置对集群ID、记录指针以及位置指针建立对应关系,登记于句子转置索引TS。记录指针是登记有具有属于相应的集群的句子的文本的DB141上的记录的位置,表示距DB141的前端的位置。位置指针是登记有属于相应的集群的句子的DB141的相应记录上的位置,表示距记录指针的相对位置。
例如,在句子2B的句子向量“SV2B”属于集群Cr1的情况下,在句子转置索引TS中,在记录指针(1)中,设定登记有输入文本2的DB141的相应记录的前端位置(距DB141的前端的位置)。在位置指针(1)中,设定在DB141的相应记录中登记的句子2B的位置(距该记录的前端的相对位置)。当在与同一集群ID对应的记录指针(m)、位置指针(m)已经登记有其他信息的情况下,信息处理装置在记录指针(m+1)、位置指针(m+1)登记上述信息。m对应于自然数。
信息处理装置对于句子2A、句子2C,也与句子2B同样地,基于句子向量来确定集群ID,将集群ID、记录指针以及位置指针与句子转置索引TS建立对应关系地登记。
信息处理装置在获取到登记于DB141的记录的其他输入文本的情况下,反复执行上述处理,更新句子转置索引TS。
如上述那样,本实施例1的信息处理装置在将输入文本2登记于DB141的记录的情况下,使用句子向量词典50,来确定输入文本的句子属于哪个集群ID,并基于确定出的结果,来生成句子转置索引TS。像这样,通过使用预先储存有句子的各集群的代表向量、直径的句子向量词典50,能够将句子和集群ID容易地关联起来,因此能够减轻登记处理的负荷。
接着,对检索阶段的处理进行说明。图4是用于对本实施例1的信息处理装置的检索阶段的处理进行说明的图。信息处理装置若接收检索查询,则基于检索查询和句子转置索引TS,来检索句子。
在图4中,将检索查询4设为“矮马是喜欢吃胡萝卜的。”来进行说明。信息处理装置通过累计检索查询4所包含的单词的单词向量,来计算句子向量“QV4”。信息处理装置对检索查询4的句子向量和句子向量词典50的代表向量进行比较,来确定检索查询4所属的集群ID。
例如,信息处理装置计算检索查询4的句子向量“QV4”与代表向量的相似度(余弦相似度或者距离)。信息处理装置确定与句子向量“QV4”的相似度最大的代表向量,并将确定出的代表向量的集群ID作为检索查询4所属的集群ID。在这里,将检索查询4所属的集群ID作为“Cr1”来进行说明。
信息处理装置对检索查询4所属的集群ID“Cr1”和句子转置索引TS进行比较,从DB141中检索与检索查询4对应的句子。例如,信息处理装置提取在集群ID“Cr1”的行设定的记录指针(1)、位置指针(1)所示的句子“矮马是喜欢吃胡萝卜的”。
信息处理装置提取在集群ID“Cr1”的行设定的记录指针(2)、位置指针(2)所示的句子“马是喜欢吃胡萝卜的。”。信息处理装置提取在集群ID“Cr1”的行设定的记录指针(3)、位置指针(3)所示的句子“Hoses likes carrots”。
虽然省略说明,但信息处理装置提取在集群ID“Cr1”的行设定的记录指针(m)、位置指针(m)所示的句子。
如上述处理那样,信息处理装置通过使用检索查询4所属的集群ID和句子转置索引TS,能够高效地检索与检索查询4对应的句子。在图4中说明的例子中,信息处理装置检索与检索查询4对应的句子“矮马是喜欢吃胡萝卜的。”、句子“马是喜欢吃胡萝卜的。”、句子“Hoses likes carrots”。
接下来,对本实施例1的信息处理装置的结构的一个例子进行说明。图5是表示本实施例1的信息处理装置的结构的功能框图。如图5所示,该信息处理装置100具有通信部110、输入部120、显示部130、存储部140、控制部150。
通信部110通过有线或者无线与外部装置等连接,与外部装置等之间进行信息的收发。例如,通信部110通过NIC(Network Interface Card:网卡)等来实现。通信部110也可以与未图示的网络连接。
输入部120是将各种信息输入至信息处理装置100的输入装置。输入部120对应于键盘、鼠标、触摸面板等。例如,用户也可以操作输入部120,来输入检索查询等。
显示部130是显示从控制部150输出的信息的显示装置。显示部130对应于液晶显示器、有机EL(Electro Luminescence)显示器、触摸面板等。例如,将与检索查询对应的检索结果显示于显示部130。
存储部140具有文本数据40、集群表41、单词向量词典45、句子向量词典50、DB141以及句子转置索引TS。存储部140例如通过RAM(Random Access Memory:随机存取存储器)、闪存(Flash Memory)等半导体存储器元件、或者硬盘、光盘等存储装置来实现。
文本数据40是用于生成句子向量词典50的信息。例如,文本数据40包含蓝天文库等所包含的句子、在网络上公开的论文等。文本数据40所包含的句子对应于在图1中说明的句子1~句子4等。
集群表41保持与集群相关的信息。图6是表示本实施例1的集群表的数据结构的一个例子的图。如图6所示,该集群表41对集群ID和集群数据建立对应关系。集群ID是唯一识别集群的信息。
集群数据具有相应的集群所包含的句子向量的信息等。图7是表示集群数据的一个例子的图。在图7中,对集群ID“Cr1”的集群数据进行说明。如图7所示,集群数据5中具有区域5a、5b、表5c、5d。在区域5a,设定集群ID“Cr1”。在区域5b,设定集群(集群Cr1)的直径。
在表5c中,设定集群(集群Cr1)的代表向量(1)~(7)。在表5d中,登记属于集群Cr1的句子向量。代表向量(1)~(7)基于登记于表5d的句子向量来计算。代表向量(n)为表示表5d的各向量的第n成分的向量的中心的向量。
虽然省略图示,但对于图6所示的其他集群数据,也具有与在图7中说明的信息同样的信息。
返回到图5的说明。单词向量词典45是定义分配给单词的符号、单词向量的表。图8是表示单词向量词典的数据结构的一个例子的图。如图8所示,该单词向量词典45具有符号、单词、单词向量(1)~(7)。符号是分配给单词的符号(Code)。单词是字符串所包含的单词。单词向量(1)~(7)是分配给单词的向量。将单词向量的第n成分记作单词向量(n)(n=1~7)。
句子向量词典50对应于在图2中说明的句子向量词典50。如在图2中说明的那样,在句子向量词典50中,对集群ID、代表向量以及直径建立对应关系。
DB141登记输入文本等。
句子转置索引TS对应于在图3、图4中说明的句子转置索引TS。句子转置索引TS对集群ID和记录指针和位置指针的组建立对应关系。也有在一个集群ID中登记多个记录指针和位置指针的组的。
返回到图5的说明。控制部150具有获取部151、前处理部152以及检索部153。控制部150例如通过CPU(Central Processing Unit:中央处理器)、MPU(Micro ProcessingUnit:微处理单元)来实现。另外,控制部150例如也可以由ASIC(Application SpecificIntegrated Circuit:专用集成电路)、FPGA(Field Programmable Gate Array:现场可编程门阵列)等集成电路来执行。
获取部151经由通信部110、输入部120获取各种数据。例如,获取部151获取文本数据40,并登记于存储部140。
前处理部152基于文本数据40,来生成句子转置索引TS。前处理部152依次执行计算句子向量的处理、生成句子向量词典的处理、生成句子转置索引TS的处理。
对由前处理部152执行的计算句子向量的处理进行说明。图9和图10是用于对计算句子向量的处理进行说明的图。对图9进行说明。在图9中,对前处理部152提取文本数据40所包含的句子1“马是喜欢吃胡萝卜的”,并计算句子1的句子向量的情况进行说明。
前处理部152通过对句子1“马是喜欢吃胡萝卜的。(馬は人参が好きです。)”执行词素分析,分解为多个单词。对分解而成的各单词赋予“△(空格)”。例如,句子1“马是喜欢吃胡萝卜的。”分割为“马△”、“是△”、“喜欢△”、“吃△”、“胡萝卜△”、“的△”、“。△”。
前处理部152通过对分割出的各单词和单词向量词典45进行比较,来确定与各单词对应的符号,并置换为单词。例如,各单词「马△”、“是△”、“喜欢△”、“吃△”、“胡萝卜△”、“的△”、“。△”分别被置换为“C1”、“C2”、“C3”、“C4”、“C5”、“C6”、“C7”。
移至图10的说明。前处理部152基于单词向量词典45和各符号,来确定分配给符号的单词向量(1)~(7)。例如,符号“C1”的单词向量(1)~(7)为wv1-1~1-7。符号“C2”的单词向量(1)~(7)为wv2-1~2-7。符号“C3”的单词向量(1)~(7)为wv3-1~3-7。
符号“C4”的单词向量(1)~(7)为wv4-1~4-7。符号“C5”的单词向量(1)~(7)为wv5-1~5-7。符号“C6”的单词向量(1)~(7)为wv6-1~6-7。符号“C7”的单词向量(1)~(7)为wv7-1~7-7。
前处理部152通过对每个要素累计单词向量,来计算句子1的句子向量SV1。例如,前处理部152通过累计成为各单词向量(1)的wv1-1~7-1,来计算句子向量SV1的第一成分“SV1-1”。前处理部152通过累计成为各单词向量(2)的wv1-2~7-2,来计算句子向量SV1的第二成分“SV1-2”。通过累计成为各单词向量(3)的wv1-3~7-3,来计算句子向量SV1的第三成分“SV1-3”。
前处理部152通过累计成为各单词向量(4)的wv1-4~7-4,来计算句子向量SV1的第四成分“SV1-4”。前处理部152通过累计成为各单词向量(5)的wv1-5~7-5,来计算句子向量SV1的第五成分“SV1-5”。前处理部152通过累计成为各单词向量(6)的wv1-6~7-6,来计算句子向量SV1的第六成分“SV1-6”。前处理部152通过累计成为各单词向量(7)的wv1-7~7-7,来计算句子向量SV1的第七成分“SV1-7”。
前处理部152对于文本数据40所包含的各句子,也通过反复执行上述处理,来计算各句子的句子向量。
接着,对由前处理部152执行的生成句子向量词典50的处理进行说明。前处理部152生成句子向量词典50的处理对应于在图1、图2中说明的处理。前处理部152通过基于通过上述处理计算出的句子向量执行聚类,将各句子分类为多个集群。
前处理部152对各集群,生成集群数据,并对集群ID和集群数据建立对应关系登记于集群表41。在这里,对生成在图7中说明的集群Cr1(集群ID“Cr1”)的集群数据的情况进行说明。前处理部152在表5d中设定在特征量空间上属于集群Cr1的句子向量。
前处理部152通过计算在表5d中设定的各句子向量的各成分的中心,来计算代表向量(1)~(7),并设定在表5c中。前处理部152在特征量空间上,设定包含属于集群Cr1的所有句子向量的最小的球。前处理部152将设定的球的直径登记于区域5d。
前处理部152对于其他集群也通过反复执行上述处理,来生成各集群的集群数据,并登记于集群表41。
前处理部152从集群表41中提取集群ID、代表向量(1)~(7)以及直径,并登记于句子向量词典50。
接着,对由前处理部152执行的生成句子转置索引TS的处理进行说明。前处理部152生成句子转置索引TS的处理对应于在图3中说明的处理。前处理部152若接收登记于DB141的输入文本2,则基于输入文本2所包含的各句子和句子向量词典50,来生成句子转置索引TS。
使用图3的句子2B“矮马是喜欢吃胡萝卜的。”来进行说明。前处理部152通过累计句子2B所包含的单词的单词向量,来计算句子向量“SV2B”。前处理部152与在上述说明的计算句子向量的处理同样地,计算句子2B的句子向量“SV2B”。前处理部152对句子2B的句子向量和句子向量词典50的代表向量进行比较,确定句子2B所属的集群ID。
例如,前处理部152计算句子向量“SV2B”与代表向量的相似度(余弦相似度或者距离),确定与句子向量“SV2B”的相似度最大的代表向量。前处理部152将确定出的代表向量的集群ID作为句子2B所属的集群ID。
在句子2B的句子向量“SV2B”与集群Cr1的代表向量的相似度最大的情况下,前处理部152将句子2B所属的集群ID确定为“Cr1”。
图11和图12是用于对用于确定集群ID的处理进行说明的图。在图11中,特征量空间1包含集群Cr1、Cr2、Cr3。例如,如图11所示,在句子2B的句子向量SV2B包含于集群Cr1的区域内的情况下,前处理部152将句子2B所属的集群ID确定为“Cr1”。
在图12中,特征量空间1中包含集群Cr1、Cr2、Cr3。例如,如图12所示,在句子2B的句子向量SV2B未包含于集群Cr1、Cr2、Cr3的区域内的情况下,前处理部152执行如下的处理。前处理部152分别计算句子向量SV2B与集群Cr1的表面的距离l1、句子向量SV2B与集群Cr2的表面的距离l2、句子向量SV2B与集群Cr3的表面的距离l3。
前处理部152将与距离l1~l3中的最短的距离对应的集群的集群ID确定为句子2B所属的集群ID。例如,前处理部152在距离l1~l3中的距离l2为最短的距离的情况下,将句子2B所属的集群ID设为“Cr2”。
前处理部152在DB141登记输入文本2。前处理部152对集群ID、记录指针以及位置指针建立对应关系登记于句子转置索引TS。
例如,在句子2B的句子向量“SV2B”属于集群Cr1的情况下,在句子转置索引TS中,在记录指针(1),设定被登记于DB141的输入文本2的前端位置(距DB141的前端的位置)。在位置指针(1),设定被登记于DB141的句子2B的位置(距记录指针的相对位置)。当在与同一集群ID对应的记录指针(m)、位置指针(m)已经登记有其他信息的情况下,前处理部152在记录指针(m+1)、位置指针(m+1)登记上述的信息。m对应于自然数。
前处理部152对于句子2A、句子2C,也与句子2B同样地基于句子向量来确定集群ID,将集群ID、记录指针以及位置指针与句子转置索引TS建立对应关系地登记。
前处理部152在获取到登记于DB141的记录的其他输入文本的情况下,也反复执行上述处理,更新句子转置索引TS。另外,前处理部152也可以与句子2B同样地,将文本数据40的各句子登记于DB141的记录,更新句子转置索引TS。
返回到图5的说明。检索部153在接收了检索查询的情况下,基于检索查询和句子转置索引TS,从DB141的各记录中检索与检索查询对应的句子。检索部153的处理对应于在图4中说明的处理。
对检索部153获取到检索查询4“矮马是喜欢吃胡萝卜的。”的情况的处理进行说明。检索部153通过累计检索查询4所包含的单词的单词向量,来计算句子向量“QV4”。检索部153计算检索查询4的句子向量的处理与前处理部152计算句子向量的处理相同。
检索部153对检索查询4的句子向量“QV4”和句子向量词典50的代表向量进行比较,确定检索查询4所属的集群ID。
例如,检索部153计算检索查询4的句子向量“QV4”与代表向量的相似度(余弦相似度或者距离)。检索部153确定与句子向量“QV4”的相似度最大的代表向量,并将确定出的代表向量的集群ID作为检索查询4所属的集群ID。在这里,将检索查询4所属的集群ID作为“Cr1”来进行说明。
检索部153对检索查询4所属的集群ID“Cr1”和句子转置索引TS进行比较,从DB141中检索与检索查询4对应的句子。例如,检索部153提取在集群ID“Cr1”的行设定的记录指针(1)、位置指针(1)所示的句子“矮马是喜欢吃胡萝卜的”。
检索部153提取在集群ID“Cr1”的行设定的记录指针(2)、位置指针(2)所示的句子“马是喜欢吃胡萝卜的。”。检索部153提取在集群ID“Cr1”的行设定的记录指针(3)、位置指针(3)所示的句子“Hoses likes carrots”。
虽然省略说明,但检索部153提取在集群ID“Cr1”的行设定的记录指针(m)、位置指针(m)所示的句子。
检索部153使检索结果输出到显示部130并显示。每当接收检索查询4,检索部153就反复执行上述处理。
接下来,对信息处理装置100的处理步骤的一个例子进行说明。图13是表示准备处理的处理步骤的流程图。如图13所示,信息处理装置100的获取部151获取文本数据40,并登记于存储部140(步骤S101)。
信息处理装置100的前处理部152计算文本数据40所包含的各句子的句子向量(步骤S102)。前处理部152对多个句子向量执行聚类(步骤S103)。
前处理部152基于聚类结果来生成集群表41(步骤S104)。前处理部152基于集群表41来生成句子向量词典(步骤S105)。
前处理部152获取登记于DB141的输入文本(步骤S106)。前处理部152计算输入文本的句子向量(步骤S107)。前处理部152基于输入文本的句子向量和句子向量词典50,来确定与输入文本的句子对应的集群ID(步骤S108)。
前处理部152将输入文本登记于DB141的记录(步骤S109)。前处理部152对集群ID、记录指针以及位置指针建立对应关系,登记于句子转置索引TS(步骤S110)。
前处理部152在继续处理的情况下(步骤S111,是),移至步骤S106。另一方面,前处理部152在不继续处理的情况下(步骤S111,否),结束处理。
图14是表示检索处理的处理步骤的流程图。如图14所示,信息处理装置100的获取部151获取检索查询(步骤S201)。
信息处理装置100的检索部153计算检索查询的句子向量(步骤S202)。检索部153基于检索查询的句子向量和句子向量词典50,来确定检索查询的集群ID(步骤S203)。
检索部153基于检索查询的集群ID和句子转置索引,从DB141的记录中检索句子(步骤S204)。检索部153将检索结果输出至显示部130(步骤S205)。
接下来,对本实施例1的信息处理装置100的效果进行说明。信息处理装置100通过计算文本数据40所包含的多个句子的句子向量,并执行聚类,来生成与多个集群相关的信息,并生成句子向量词典50。在句子向量词典50中,对集群ID和代表向量以及直径建立对应关系。例如,信息处理装置100在将新的输入文本登记于DB141的记录的情况下,通过对输入文本的句子向量和句子向量词典50的代表向量以及直径进行比较,能够容易地分配输入文本的句子向量所属的集群ID。
信息处理装置100在将输入文本2登记于DB141的记录的情况下,使用句子向量词典50,来确定输入文本的句子属于哪个集群ID,并通过对确定出的集群ID和储存的记录以及句子的位置信息建立对应关系,来生成句子转置索引TS。这样,通过使用句子向量词典50,能够将句子和集群ID容易地相关联,因此能够减轻与句子转置索引TS相关的登记处理的负荷。
信息处理装置100在接收了检索查询的情况下,基于检索查询和句子向量词典,来确定与检索查询对应的集群ID,并基于确定出的集群ID和句子转置索引TS来确定与检索查询对应的句子的位置。由此,能够高效地检索与检索查询对应的句子。例如,在多个位置信息(记录指针、位置指针)与集群ID建立有对应关系的情况下,能够一次确定多个位置信息,并高效地检索与检索查询对应的句子。
实施例2
在上述的实施例1中,以句子向量的粒度执行聚类,并生成句子转置索引,但并不限定于此,也可以以单词向量的粒度生成转置索引(相当于后述的第二单词转置索引WS2)。
图15是表示本实施例2的信息处理装置的结构的功能框图。如图15所示,该信息处理装置200具有通信部210、输入部220、显示部230、存储部240、控制部250。
与通信部210、输入部220、显示部230相关的说明与在实施例1中说明的与通信部110、输入部120、显示部130相关的说明相同。
存储部240具有文本数据40、集群表41、第一单词向量词典45A、第二单词向量词典45B、句子向量词典50、DB141以及句子转置索引TS。存储部240具有第一单词转置索引WS1和第二单词转置索引WS2。存储部240例如由RAM、闪存等半导体存储器元件、或者硬盘、光盘等存储装置来实现。
文本数据40是用于生成句子向量词典50的信息。与文本数据40相关的说明与实施例1相同。
集群表41保持与集群相关的信息。集群表41对集群ID和集群数据建立对应关系。集群表41具有基于以句子向量的粒度聚类的结果的集群数据和基于以单词向量的粒度聚类的结果的集群数据。
第一单词向量词典45A是定义分配给单词的符号和单词向量的表。第一单词向量词典45A对应于在图8中说明的单词向量词典45。
第二单词向量词典45B对基于以单词向量的粒度聚类的结果的集群ID、代表向量以及直径建立对应关系。
句子向量词典50对基于以句子向量的粒度聚类的结果的集群ID、代表向量以及直径建立对应关系。与句子向量词典50相关的说明与实施例1相同。
在DB141的记录中,登记输入文本等。
句子转置索引TS对句子向量所属的集群ID和记录指针以及位置指针的组建立对应关系。句子转置索引TS的说明与实施例1相同。
第一单词转置索引WS1对单词和位置信息(记录指针以及位置指针)建立对应关系。
第二单词转置索引WS2对单词和位置信息(记录指针以及位置指针)建立对应关系。图16是表示第二单词转置索引的一个例子的图。记录指针是记录有具有属于相应的集群的单词的文本的DB141的记录上的位置,表示距DB141的前端的位置。位置指针是登记有属于相应的集群的单词的DB141的记录上的位置,表示距该记录的前端的相对位置。
例如,在单词“胡萝卜”的单词向量属于集群wCr1的情况下,在第二单词转置索引WS2中,在记录指针(1),设定DB141的记录中登记的输入文本2的前端位置(距DB141的前端的位置)。在位置指针(1),设定DB141中登记的单词“胡萝卜”的位置(距该记录的前端的相对位置)。
返回到图15的说明。控制部250具有获取部251、前处理部252以及检索部253。控制部250例如由CPU、MPU来实现。另外,控制部150例如也可以由ASIC、FPGA等集成电路来执行。
获取部251经由通信部210、输入部220,获取各种数据。例如,获取部151获取文本数据40,并登记于存储部240。
前处理部252基于文本数据,来生成句子转置索引TS、第一单词索引WS1、第二单词转置索引WS2。前处理部252生成句子转置索引TS的处理与实施例1相同。
对前处理部252生成第一单词转置索引WS1的处理进行说明。前处理部252提取文本数据40所包含的句子,并通过执行词素分析,分割成多个单词。前处理部252对单词和与单词对应的位置信息(记录指针以及位置指针)建立对应关系,登记于第一单词转置索引WS1。位置信息为基于DB141中登记的文本数据40的位置信息。前处理部252对文本数据40所包含的各单词,反复执行上述处理。
对前处理部252生成第二单词转置索引WS2的处理进行说明。前处理部252提取文本数据40所包含的句子,并通过执行词素分析,分割成多个单词。前处理部252通过对分割而成的各单词和第一单词向量词典45A进行比较,确定与各单词对应的符号,置换为单词。前处理部252基于第一单词向量词典45A和各符号,来确定分配给符号的单词向量(1)~(7)。
前处理部252以单词向量的粒度执行聚类,对各集群生成集群数据,并对集群ID和集群数据建立对应关系登记于集群表41。前处理部252区分以单词向量的粒度进行的集群结果和在实施例1中说明的以句子向量的粒度进行的集群结果,登记于集群表41。
以单词向量的粒度执行的集群数据中包含集群ID、代表向量(1)~(7)、直径。以单词向量的粒度求出的代表向量(1)~(7)通过计算各单词向量的各成分的中心来求出。前处理部252将集群ID、代表向量(1)~(7)以及直径登记于第二单词向量词典45B。
前处理部252若接收登记于DB141的输入文本2,则基于输入文本2所包含的各单词和第一单词向量词典45A、第二单词向量词典45B,来生成第二单词转置索引WS2。
前处理部252选择输入文本2所包含的单词,并对选择出的单词和第一单词向量词典45A的单词向量进行比较,确定单词向量。前处理部252对单词向量和第二单词向量词典45B进行比较,确定单词向量所属的集群ID。
前处理部252在DB141登记输入文本2。前处理部252对单词向量所属的集群ID、记录指针以及位置指针建立对应关系,登记于第二单词转置索引WS2。
检索部253在接收了检索查询的情况下,基于检索查询和句子转置索引TS、第二单词转置索引WS2,从DB141中检索与检索查询对应的句子或者单词。在检索查询由“句子”指定的情况下,执行与在实施例1中说明的检索部153同样的处理。
在检索查询由“单词”指定的情况下,检索部253基于检索查询的单词和第一单词向量词典45A来确定单词向量,并基于单词向量和第二单词向量词典45B,来确定单词所属的集群ID。检索部253对检索查询的单词所属的集群ID和第二单词转置索引WS2进行比较,从DB141中检索与检索查询对应的单词(或者包含单词的句子)。检索部253将检索结果输出并显示于显示部230。
在检索查询由“句子”设定的情况下,检索部253也可以将句子分割成多个单词,通过对各单词,执行上述处理,来进行检索。
接下来,对本实施例2的信息处理装置200的效果进行说明。信息处理装置200计算文本数据40所包含的多个单词的单词向量,并通过执行聚类,生成与多个集群相关的信息,并在第二单词向量词典45B中设定单词所属的集群ID。例如,信息处理装置200在将新的输入文本登记于DB141的情况下,通过对输入文本的单词向量和第二单词向量词典45B进行比较,能够容易地分配输入文本的单词向量所属的集群ID。
然而,通过将在上述实施例中说明的句子转置索引TS应用于其他处理,能够削减在其他的处理中需要的运算成本等。
图17是用于对句子转置索引TS的其他的应用例进行说明的图。例如,在进行将日语翻译成英语的学习模型M1的机器学习时,使用教师数据T1。学习模型M1对应于CNN(Convolutional Neural Network:卷积神经网络)、RNN(Recurrent Neural Network:循环神经网络)、自动编码器(Autoencoder)等。教师数据T1是将日语作为输入数据,将英语作为正解数据的教师数据。例如,也可以使用句子向量词典50或者第二单词向量词典45B,将教师数据T1的日语和英语转换为集群ID,使用集群ID来执行机器学习。由此,由于对相似的句子文彼此(属于同一集群的句子)分配同一集群ID,削减(简并)句子的种类,因此在机器学习中,能够大幅削减SoftMax函数等的运算量。
此外,在实施例1和实施例2中,以由字符串构成的文本为例进行了说明,但也可以是程序、有机化合物、基因组等。也可以是相当于单词具有意义的指令/变量(程序)、官能团(有机化合物)、蛋白质基本结构kmer(基因组)等。另外,也可以是相当于句子,行(程序)、官能团一次结构(有机化合物)、蛋白质一次结构(基因组)等。
接下来,对实现与上述实施例所示的信息处理装置100(200)相同的功能的计算机的硬件结构的一个例子进行说明。图18是表示实现与实施例的信息处理装置相同的功能的计算机的硬件结构的一个例子的图。
如图18所示,计算机300具有执行各种运算处理的CPU301、接收来自用户的数据的输入的输入装置302以及显示器303。另外,计算机300具有经由有线或者无线网络与外部装置等之间进行数据的收发的通信装置304和接口装置305。另外,计算机300具有临时存储各种信息的RAM306和硬盘装置307。而且,各装置301~307与总线308连接。
硬盘装置307具有获取程序307a、前处理程序307b、检索程序307c。另外,CPU301读出各程序307a~307c并在RAM306中展开。
获取程序307a作为获取工序306a发挥功能。前处理程序307b作为前处理工序306b发挥功能。检索程序307c作为检索工序306c发挥功能。
获取工序306a对应于获取部151、252的处理。前处理工序306b的处理对应于前处理部152(252)的处理。检索工序306c的处理对应于检索部153(253)的处理。
此外,各程序307a~307c也可以未必从最初就存储于硬盘装置307。例如,使各程序存储于被插入至计算机300的软盘(FD)、CD-ROM、DVD、光磁盘、IC卡等的“便携式的物理介质”。而且,也可以计算机300读出各程序307a~307c并执行。
附图标记说明
100、200…信息处理装置;110、210…通信部;120、220…输入部;130、230…显示部;140、240…存储部;141…DB;150、250…控制部;151、251…获取部;152、252…前处理部;153、253…检索部。

Claims (12)

1.一种处理方法,其特征在于,由计算机执行下述处理:
若接收登记于数据库的多个字符或者字符串,则计算与上述多个字符或者字符串分别相应的多个向量;
将计算出的上述多个向量根据向量间距离分类为多个集群;
对上述多个集群中的每个集群,求出代表各集群所包含的一个向量或者多个向量的代表向量、和与从上述各集群的上述代表向量到上述各集群所包含的上述一个向量或者多个向量的大小相应的距离;以及
将词典信息存储于存储部,其中,上述词典信息是将计算出的上述代表向量和求出的上述距离与识别上述各集群的集群识别信息建立了对应关系的信息。
2.根据权利要求1所述的处理方法,其特征在于,
计算机还执行下述处理:基于上述多个向量、上述词典信息的上述代表向量以及上述距离,来确定与上述多个向量对应的集群识别信息。
3.根据权利要求2所述的处理方法,其特征在于,
计算机还执行下述处理:生成对与上述多个向量对应的集群识别信息和登记于上述数据库的多个字符或者字符串的位置信息建立有对应关系的索引信息。
4.根据权利要求3所述的处理方法,其特征在于,
计算机还执行下述处理:在接收了检索查询的情况下,基于上述检索查询的向量、上述词典信息的代表向量以及距离,来确定与上述检索查询的向量对应的集群识别信息,基于与上述检索查询的向量对应的集群识别信息和上述索引信息,来确定与检索查询对应的多个字符或者字符串的位置信息。
5.一种处理程序,其特征在于,使计算机执行处理:
若接收登记于数据库的多个字符或者字符串,则计算与上述多个字符或者字符串分别相应的多个向量;
将计算出的上述多个向量根据向量间距离分类为多个集群;
对上述多个集群中的每个集群,求出代表各集群所包含的一个向量或者多个向量的代表向量和与从上述各集群的上述代表向量到上述各集群所包含的上述一个向量或者多个向量的大小相应的距离;以及
将词典信息存储于存储部,其中,上述词典信息是将计算出的上述代表向量和求出的上述距离与识别上述各集群的集群识别信息建立了对应关系的信息。
6.根据权利要求5所述的处理程序,其特征在于,
还使计算机执行下述处理:基于上述多个向量、上述词典信息的上述代表向量以及上述距离,来确定与上述多个向量对应的集群识别信息。
7.根据权利要求6所述的处理程序,其特征在于,还使计算机执行下述处理:
生成对与上述多个向量对应的集群识别信息和登记于上述数据库的多个字符或者字符串的位置信息建立有对应关系的索引信息。
8.根据权利要求7所述的处理程序,其特征在于,
还使计算机执行下述处理:在接收了检索查询的情况下,基于上述检索查询的向量、上述词典信息的代表向量以及距离,来确定与上述检索查询的向量对应的集群识别信息,基于与上述检索查询的向量对应的集群识别信息和上述索引信息,来确定与检索查询对应的多个字符或者字符串的位置信息。
9.一种信息处理装置,其特征在于,具有控制部,上述控制部执行下述处理:
若接收登记于数据库的多个字符或者字符串,则计算与上述多个字符或者字符串分别相应的多个向量;
将计算出的上述多个向量根据向量间距离分类为多个集群;
对上述多个集群中的每个集群,求出代表各集群所包含的一个向量或者多个向量的代表向量和与从上述各集群的上述代表向量到上述各集群所包含的上述一个向量或者多个向量的大小相应的距离;以及
将词典信息存储于存储部,其中,上述词典信息是将计算出的上述代表向量和求出的上述距离与识别上述各集群的集群识别信息建立了对应关系的信息。
10.根据权利要求9所述的信息处理装置,其特征在于,
上述控制部还执行下述处理:基于上述多个向量、上述词典信息的上述代表向量以及上述距离,来确定与上述多个向量对应的集群识别信息。
11.根据权利要求10所述的信息处理装置,其特征在于,
上述控制部还执行下述处理:生成对与上述多个向量对应的集群识别信息和登记于上述数据库的多个字符或者字符串的位置信息建立有对应关系的索引信息。
12.根据权利要求11所述的信息处理装置,其特征在于,
上述控制部还执行下述处理:在接收了检索查询的情况下,基于上述检索查询的向量、上述词典信息的代表向量以及距离,来确定与上述检索查询的向量对应的集群识别信息,基于与上述检索查询的向量对应的集群识别信息和上述索引信息,来确定与检索查询对应的多个字符或者字符串的位置信息。
CN202180102907.7A 2021-10-04 2021-10-04 处理方法、处理程序以及信息处理装置 Pending CN118043801A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/036696 WO2023058099A1 (ja) 2021-10-04 2021-10-04 処理方法、処理プログラムおよび情報処理装置

Publications (1)

Publication Number Publication Date
CN118043801A true CN118043801A (zh) 2024-05-14

Family

ID=85804003

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180102907.7A Pending CN118043801A (zh) 2021-10-04 2021-10-04 处理方法、处理程序以及信息处理装置

Country Status (6)

Country Link
US (1) US20240241891A1 (zh)
EP (1) EP4414861A1 (zh)
JP (1) JPWO2023058099A1 (zh)
CN (1) CN118043801A (zh)
AU (1) AU2021467326A1 (zh)
WO (1) WO2023058099A1 (zh)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4423841B2 (ja) * 2002-08-14 2010-03-03 日本電気株式会社 キーワード決定装置、決定方法、文書検索装置、検索方法、文書分類装置及び分類方法並びにプログラム
US8719257B2 (en) * 2011-02-16 2014-05-06 Symantec Corporation Methods and systems for automatically generating semantic/concept searches
JP6635587B2 (ja) 2015-12-14 2020-01-29 日本放送協会 広告文選択装置及びプログラム
US11036764B1 (en) * 2017-01-12 2021-06-15 Parallels International Gmbh Document classification filter for search queries
CN112256880A (zh) * 2020-11-11 2021-01-22 腾讯科技(深圳)有限公司 文本识别方法和装置、存储介质及电子设备

Also Published As

Publication number Publication date
EP4414861A1 (en) 2024-08-14
US20240241891A1 (en) 2024-07-18
AU2021467326A1 (en) 2024-04-04
WO2023058099A1 (ja) 2023-04-13
JPWO2023058099A1 (zh) 2023-04-13

Similar Documents

Publication Publication Date Title
CN111444320B (zh) 文本检索方法、装置、计算机设备和存储介质
US8046368B2 (en) Document retrieval system and document retrieval method
US9305083B2 (en) Author disambiguation
CN115563287B (zh) 一种获取关联对象的数据处理系统
CN110162771B (zh) 事件触发词的识别方法、装置、电子设备
CN110377560B (zh) 一种简历信息的结构化方法及装置
CN109448793B (zh) 基因序列的权利范围标注、检索及信息标注方法、系统
CN113051356A (zh) 开放关系抽取方法、装置、电子设备及存储介质
CN111753550A (zh) 一种自然语言的语义解析方法
Stewart et al. A content-addressable DNA database with learned sequence encodings
US20200117710A1 (en) Method and apparatus for generating context information
CN111507089B (zh) 基于深度学习模型的文献分类方法、装置和计算机设备
CN113961666B (zh) 关键词识别方法、装置、设备、介质及计算机程序产品
WO2021223882A1 (en) Prediction explanation in machine learning classifiers
CN111339777A (zh) 基于神经网络的医学相关意图识别方法及系统
CN114357143A (zh) 面向军事装备知识图谱的关键信息查询方法
CN112632264A (zh) 智能问答方法、装置、电子设备及存储介质
CN113868406B (zh) 搜索方法、系统、计算机可读存储介质
Craig et al. Scaling address parsing sequence models through active learning
Bender et al. Unsupervised Estimation of Subjective Content Descriptions in an Information System.
CN118043801A (zh) 处理方法、处理程序以及信息处理装置
Nguyen et al. A model of convolutional neural network combined with external knowledge to measure the question similarity for community question answering systems
CN113468311B (zh) 一种基于知识图谱的复杂问句问答方法、装置及存储介质
CN116049213A (zh) 表格文档的关键词检索方法及电子设备
CN112579774B (zh) 模型训练方法、模型训练装置及终端设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination