CN116978385B - 语音数据录入方法、装置、电子设备和可读存储介质 - Google Patents
语音数据录入方法、装置、电子设备和可读存储介质 Download PDFInfo
- Publication number
- CN116978385B CN116978385B CN202311237142.5A CN202311237142A CN116978385B CN 116978385 B CN116978385 B CN 116978385B CN 202311237142 A CN202311237142 A CN 202311237142A CN 116978385 B CN116978385 B CN 116978385B
- Authority
- CN
- China
- Prior art keywords
- data
- food
- motion
- character string
- name
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 235000013305 food Nutrition 0.000 claims abstract description 116
- 238000004458 analytical method Methods 0.000 claims abstract description 47
- 238000013479 data entry Methods 0.000 claims abstract description 16
- 235000005911 diet Nutrition 0.000 claims abstract description 15
- 230000037213 diet Effects 0.000 claims abstract description 14
- 238000006243 chemical reaction Methods 0.000 claims description 36
- 239000011159 matrix material Substances 0.000 claims description 10
- 235000012054 meals Nutrition 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 8
- 230000011218 segmentation Effects 0.000 claims description 8
- 238000007405 data analysis Methods 0.000 claims description 2
- 238000012549 training Methods 0.000 description 8
- 244000144725 Amygdalus communis Species 0.000 description 6
- 235000011437 Amygdalus communis Nutrition 0.000 description 6
- 235000020224 almond Nutrition 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000003058 natural language processing Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000002372 labelling Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 244000068988 Glycine max Species 0.000 description 3
- 235000010469 Glycine max Nutrition 0.000 description 3
- 230000000386 athletic effect Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 235000013336 milk Nutrition 0.000 description 3
- 239000008267 milk Substances 0.000 description 3
- 210000004080 milk Anatomy 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 235000007688 Lycopersicon esculentum Nutrition 0.000 description 2
- 244000141359 Malus pumila Species 0.000 description 2
- 240000008790 Musa x paradisiaca Species 0.000 description 2
- 240000003768 Solanum lycopersicum Species 0.000 description 2
- 244000061456 Solanum tuberosum Species 0.000 description 2
- 235000021152 breakfast Nutrition 0.000 description 2
- 230000009194 climbing Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 235000013322 soy milk Nutrition 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 235000011511 Diospyros Nutrition 0.000 description 1
- 244000236655 Diospyros kaki Species 0.000 description 1
- 235000018290 Musa x paradisiaca Nutrition 0.000 description 1
- 235000002595 Solanum tuberosum Nutrition 0.000 description 1
- 235000021016 apples Nutrition 0.000 description 1
- 235000021015 bananas Nutrition 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000378 dietary effect Effects 0.000 description 1
- 235000016709 nutrition Nutrition 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/268—Morphological analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
Abstract
本公开的实施例提供了一种语音数据录入方法、装置、电子设备和可读存储介质,该方法包括:接收待录入语音数据,待录入语音数据用于描述用户的运动情况或饮食情况;将待录入语音数据转换为文本数据;解析文本数据,得到文本数据中的数据和数据对应的词性;若解析结果中存在数据对应的词性为名词的数据,则将数据对应的词性为名词的数据转换为食物名称或运动名称;基于转换后的解析结果生成结构化数据进行存储。本公开能够提高用户使用的便捷性以及在低成本的前提下保证录入的准确率。
Description
技术领域
本公开的实施例涉及计算机技术领域,尤其涉及一种语音数据录入方法、装置、电子设备和可读存储介质。
背景技术
随着我国人民生活水平的不断提高,健康管理意识也在逐步提升。而对于健康管理中的饮食管理和运动管理,要求记录日常的饮食情况和运动情况。目前通过语音输入饮食记录和运动记录主要采用限定的格式输入和自然语言处理两种方式。在通过限定的格式输入(如“苹果50克,香蕉100克”、“跑步20分钟,跳绳10分钟”等,然后将输入数据按照固定格式进行解析,同时与数据库进行匹配,从而完成语义的解析)时,由于严格限定输入的格式,极大地降低了使用的便捷性,同时对于较为生僻的食物名称、运动名称的识别率可能达不到预期;在通过自然语言处理技术输入(对大量的语料数据进行标注、训练,从而实现语义的解析)时,其准确率取决于训练语料的数量以及标注的准确性,最大的问题在于训练语料的获取难度高,需要投入的成本较大,技术门槛较高。
发明内容
本公开的实施例提供了一种语音数据录入方法、装置、电子设备和可读存储介质,用于解决以上至少一项技术问题。
本公开的上述申请目的是通过以下技术方法得以实现的:
在本公开的第一方面,提供了一种语音数据录入方法,包括:
接收待录入语音数据,所述待录入语音数据用于描述用户的运动情况或饮食情况;
将所述待录入语音数据转换为文本数据;
解析所述文本数据,得到所述文本数据中的数据和数据对应的词性,所述数据对应的词性包括食物名称、运动名称、数量、单位以及名词;
若解析结果中存在所述数据对应的词性为名词的数据,则将所述数据对应的词性为名词的数据转换为所述食物名称或所述运动名称;
基于转换后的所述解析结果生成结构化数据进行存储。
在一种可能的实现方式中,所述解析所述文本数据,得到所述文本数据中的数据和数据对应的词性包括:
基于自定义ansj字典,采用ansj分词算法将所述文本数据解析为所述数据和所述数据对应的词性;
其中,所述自定义ansj字典包括食物数据、运动数据以及其他数据,所述食物数据包括所述食物名称和所述食物名称对应的食物别名,所述运动数据包括所述运动名称和所述运动名称对应的运动别名,所述其他数据包括用于描述单位、时间或餐次的匹配词和匹配词对应的转换词。
在一种可能的实现方式中,所述基于自定义ansj字典,采用ansj分词算法将所述文本数据解析为所述数据和所述数据对应的词性包括:
若所述解析结果中存在所述食物别名,则将所述食物别名转换为所述食物别名对应的所述食物名称;
若所述解析结果中存在所述运动别名,则将所述运动别名转换为所述运动别名对应的所述运动名称;
若所述解析结果中存在所述匹配词,则将所述匹配词转换为所述匹配词对应的所述转换词。
在一种可能的实现方式中,所述解析所述文本数据,得到所述文本数据中的数据和数据对应的词性之前,还包括:
存储所述食物名称和所述食物别名的对应关系、所述运动名称和所述运动别名的对应关系以及所述匹配词和所述转换词的对应关系。
在一种可能的实现方式中,还包括:若解析结果中不存在所述数据对应的词性为名词的数据,则基于所述解析结果生成结构化数据进行存储。
在一种可能的实现方式中,所述将所述数据对应的词性为名词的数据转换为所述食物名称或所述运动名称包括:
将所述数据对应的词性为名词的数据的拼音作为第一字符串;
将已存储的所述食物名称的拼音、所述食物别名的拼音、所述运动名称的拼音以及所述运动别名的拼音中的一种作为第二字符串;
确定所述第一字符串和所述第二字符串的相似度;
若所述第一字符串和所述第二字符串的相似度小于相似度阈值,则将所述数据对应的词性为名词的数据转换为所述第二字符串对应的所述食物名称、所述食物别名、所述运动名称或所述运动别名。
在一种可能的实现方式中,所述确定所述第一字符串和所述第二字符串的相似度包括:
采用下式计算所述第一字符串和所述第二字符串的相似度:
其中,为两字符串的相似度,/>为第一字符串,/>为第二字符串,/>为字符串/>的长度,/>为LD矩阵从左上角开始的对角线上的元素中值第一次发生改变的元素行下标,/>为两字符串的最长公共子串长度,/>为两字符串之间的编辑距离。
在本公开的第二方面,提供了一种语音数据录入装置,包括:
数据接收模块,用于接收待录入语音数据,所述待录入语音数据用于描述用户的运动情况或饮食情况;
第一转换模块,用于将所述待录入语音数据转换为文本数据;
数据解析模块,用于解析所述文本数据,得到所述文本数据中的数据和数据对应的词性,所述数据对应的词性包括食物名称、运动名称、数量、单位以及名词;
第二转换模块,用于若解析结果中存在所述数据对应的词性为名词的数据,则将所述数据对应的词性为名词的数据转换为所述食物名称或所述运动名称;
数据生成模块,用于基于转换后的所述解析结果生成结构化数据进行存储。
在一种可能的实现方式中,所述数据解析模块具体用于:基于自定义ansj字典,采用ansj分词算法将所述文本数据解析为所述数据和所述数据对应的词性;
其中,所述自定义ansj字典包括食物数据、运动数据以及其他数据,所述食物数据包括所述食物名称和所述食物名称对应的食物别名,所述运动数据包括所述运动名称和所述运动名称对应的运动别名,所述其他数据包括用于描述单位、时间或餐次的匹配词和匹配词对应的转换词。
在一种可能的实现方式中,所述数据解析模块具体用于:
若所述解析结果中存在所述食物别名,则将所述食物别名转换为所述食物别名对应的所述食物名称;
若所述解析结果中存在所述运动别名,则将所述运动别名转换为所述运动别名对应的所述运动名称;
若所述解析结果中存在所述匹配词,则将所述匹配词转换为所述匹配词对应的所述转换词。
在一种可能的实现方式中,还包括数据存储模块,所述数据存储模块用于:存储所述食物名称和所述食物别名的对应关系、所述运动名称和所述运动别名的对应关系以及所述匹配词和所述转换词的对应关系。
在一种可能的实现方式中,所述数据生成模块还用于:在解析结果中不存在所述数据对应的词性为名词的数据时,基于所述解析结果生成结构化数据进行存储。
在一种可能的实现方式中,所述第二转换模块用于:
将所述数据对应的词性为名词的数据的拼音作为第一字符串;
将已存储的所述食物名称的拼音、所述食物别名的拼音、所述运动名称的拼音以及所述运动别名的拼音中的一种作为第二字符串;
确定所述第一字符串和所述第二字符串的相似度;
若所述第一字符串和所述第二字符串的相似度小于相似度阈值,则将所述数据对应的词性为名词的数据转换为所述第二字符串对应的所述食物名称、所述食物别名、所述运动名称或所述运动别名。
在一种可能的实现方式中,所述第二转换模块具体用于:
采用下式计算所述第一字符串和所述第二字符串的相似度:
其中,为两字符串的相似度,/>为第一字符串,/>为第二字符串,/>为字符串/>的长度,/>为LD矩阵从左上角开始的对角线上的元素中值第一次发生改变的元素行下标,/>为两字符串的最长公共子串长度,/>为两字符串之间的编辑距离。
在本公开的第三方面,提供了一种电子设备,包括存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如第一方面中任一项所述的语音数据录入方法。
在本公开的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面中任一项所述的语音数据录入方法。
在本公开实施例提供的语音数据录入方法、装置、电子设备和可读存储介质中,将接收到的语音数据转换为文本数据,并对文本数据进行解析,与采用限定的格式相比,本公开中对语音数据的格式没有限制,可对任意格式的语音数据进行解析,从而提高了使用的便捷性。在本公开实施例中,若解析结果中存在数据对应的词性为名词的数据,则将数据对应的词性为名词的数据转换为食物名称或运动名称,并基于转换后的解析结果生成结构化数据进行存储,相比于采用自然语言处理技术,不需要大量的语料数据进行标注、训练即可将词性为名词的数据转换为食物名称或运动名称,其准确率不依赖于训练语料的数量和标注的准确性,需要投入的成本较低、技术门槛较低。
应当理解,发明内容部分中所描述的内容并非旨在限定本公开的实施例的关键或重要特征,亦非用于限制本公开的范围。本公开的其它特征将通过以下的描述变得容易理解。
附图说明
结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:
图1示出了根据本公开的实施例的语音处理系统的系统架构图;
图2示出了根据本公开的实施例的语音数据录入方法的流程图;
图3示出了根据本公开的实施例的名词转换方法的流程图;
图4示出了根据本公开的实施例的语音数据录入装置的方框图;
图5示出了根据本公开的实施例的电子设备的结构图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述。
在采用语音输入的方式记录饮食记录和/或运动记录时,为了能够准确地记录用户的饮食记录和/或运动记录,需要将语音数据转换成文本数据,并将文本数据转换为结构化数据进行存储。
相关技术中,将语音数据转换成文本数据主要通过限定输入格式和自然语言处理技术(例如神经网络模型)两种方式来进行转换。在通过限定输入格式的方式(下文中称为“方式一”)来转换语音数据时,首先需要限定输入的格式(例如,名词+数量+单位),然后将输入的语音数据按照固定的格式进行解析,解析后将解析得到的文本数据转换为结构化数据进行存储。在通过自然语言处理技术(下文中称为“方式二”)来转换语音数据时,首先需要对大量的语料数据进行标注,标注完成后采用标注的数据来训练神经网络模型,训练完成之后采用该模型来将语音数据转换为文本数据,最后将转换得到的文本数据转换为结构化数据进行存储。
上述方式一中,由于需要限定语音数据输入的格式,这会极大地降低了用户使用时的便捷性,进一步地,对于较为生僻的食物名称、运动名称的识别率可能也达不到预期;上述方式二中,其准确率取决于训练预料的数量及标注的准确性,由于训练预料的获取难度高、需要投入的成本较大、技术门槛较高。
为了便于对本公开实施例的理解,首先对本公开实施例所涉及的系统架构进行介绍。需要说明的是,本公开实施例描述的系统架构以及业务场景是为了更加清楚的说明本公开实施例的技术方案,并不构成对于本公开实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本公开实施例提供的技术方案对于类似的技术问题,同样适用。
图1示出了根据本公开的实施例的语音处理系统的系统架构图。参见图1,该语音处理系统包括服务器10、一个或多个用户终端20。
其中,服务器10可以提供语音转文本功能及文本解析功能。例如,典型应用场景可以是录入饮食记录和/或运动记录,即用户通过用户终端20输入用户的饮食记录和/或运动记录的语音数据,用户终端20对该语音数据编码后传输到服务器10,服务器10对该语音数据解码后,将语音数据转换为文本数据并对文本数据进行解析后进行存储。
其中,服务器10可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信等基础云计算服务的云服务器,也可以是本地服务器。用户终端20可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、车载智能终端等,但并不局限于此。用户终端20以及服务器10可以通过有线或无线通信方式进行直接或间接地连接,本公开在此不做限制。
以下对本公开实施例的技术方案的实现细节进行详细阐述。
图2示出了根据本公开的实施例的语音数据录入方法的流程图。参见图2,该语音数据录入方法包括以下步骤:
步骤201,接收用户终端发送的待录入语音数据。
其中,待录入语音数据可以是记录有用户的饮食记录和/或运动记录的语音。例如,“我今天早上吃了三个包子,一杯豆浆”、“我今天登山2小时”等。
具体地,服务器在接收用户终端发送的待录入语音数据时,存在以下情况:
(1)用户指示服务器接收用户终端发送的待录入语音数据,服务器在接收到用户指示后接收用户终端发送的待录入语音数据。
(2)服务器在接收到用户终端的链接请求后,与用户终端建立连接并从用户终端处接收其发送的语音数据。
需要说明的是,服务器和用户终端之间的连接方式和服务器接收用户输入的接收指令的方式,可以如相关技术中所记载的任意方式,本公开实施例中不做限定。
进一步地,上述两种情况下服务器接收到的待录入语音数据可以是未受到干扰情况下的语音数据(这种情况下接收到的语音数据为正常质量的数据),也可以是受到干扰情况下的语音数据(这种情况下接收到的语音数据为质量较差的数据)。其中,受到干扰的情况可以是用户在向用户终端输入语音指令时外界环境较为嘈杂。
更进一步地,为了解决语音数据质量较差的情况,在一种可实现的方式中,可在服务器中预先存储用户的声纹特征,在服务器接收到用户终端发送的语音数据后,通过声纹特征的匹配,滤除语音数据中的噪声;在另一种可实现的方式中,服务器可以对语音数据进行分析,通过判断语音数据中声音的大小来滤除噪声,具体地,通常用户在向用户终端输入语音数据时,其本人的声音相比于环境中的噪声,声音更大,可通过分析声音的大小来滤除语音数据中的噪声。
对于本公开实施例,用户终端在发送待录入语音数据之前,需要对该语音数据进行编码处理,例如,可以采用Base64对语音数据进行编码。相应地,服务器在接收到改语音数据之后,可以采用Base64对语音数据进行解码。在本公开实施例中,对语音数据进行编码、解码,除可以采用上述方式外,还可以采用相关技术中的其他方式,本公开实施例中不做限定。
需要说明的是,本公开实施例中对于用户终端发送的待录入语音信息的格式不进行限定(限定的格式可以为:“苹果50克,香蕉100克”,“跑步20分钟”,“跳绳10分钟”等),可以采用日常用户的方式、习惯(例如,“我今天早上吃了三个包子”)来向用户终端输入语音信息,从而可以提升用户使用的便捷性。
步骤202,将待录入语音数据转换为文本数据。
对于本公开实施例,可以采用相关技术中的语音识别技术来将待录入语音数据转换为文本数据。需要注意的是,在将待录入语音数据转换为文本数据时,可能会出现转换错误的问题。例如,用户语音输入:“我今天早上吃了三个包子,一杯豆浆,一把杏仁”,而通过语音识别技术转换后的文本数据为:“我今天早上吃了三个包子,一杯豆浆,一把行人”,其中,将“杏仁”转换为“行人”会导致录入数据出现错误,其纠正方式将在下文中进行详细说明。
步骤203,解析文本数据,得到文本数据中的数据和数据对应的词性。
其中,数据对应的词性包括食物名称、运动名称、数量、单位以及名词。
步骤204,若解析结果中存在数据对应的词性为名词的数据,则将数据对应的词性为名词的数据转换为食物名称或运动名称。
对于本公开实施例,在用户录入饮食记录和/或运动记录时,文本数据的解析结果中仅包括食物名称和运动名称,若文本数据的解析结果中存在不属于食物名称和运动名称的名词(即上文提到的将“杏仁”解析成“行人”),需要将词性为名词的文本转换为食物名称或运动名称,例如,可以采用预设的对应关系来进行转换,相比于采用自然语言处理技术,不需要大量的语料数据进行标注、训练即可将词性为名词的数据转换为食物名称或运动名称,其准确率不依赖于训练语料的数量和标注的准确性,准确率更高。
步骤205,基于转换后的解析结果生成结构化数据进行存储。
对于本公开实施例,结构化数据可以包括“词性”和“数据”。例如,由待录入语音数据转换后的文本数据为:“我今天早上吃了三个包子,一杯豆浆,一把行人”,将“行人”转换为“杏仁”后,形成的结构化数据如表1所示。
表1
词性 | 数据 |
餐次 | 早餐 |
食物名称1 | 包子 |
数量1 | 3 |
单位1 | 个 |
食物名称2 | 豆浆 |
数量2 | 1 |
单位2 | 杯 |
食物名称3 | 杏仁 |
数量3 | 1 |
单位3 | 把 |
在一些实施例中,若解析结果中不存在数据对应的词性为名词的数据,则基于解析结果直接生成结构化数据进行存储。
在本公开实施例提供的语音数据录入方法中,将接收到的语音数据转换为文本数据,并对文本数据进行解析,与采用限定的格式的方法相比,本公开中对语音数据的格式没有限制,可对任意格式的语音数据进行解析,从而提高了使用的便捷性。在本公开实施例中,若解析结果中存在数据对应的词性为名词的数据,则将数据对应的词性为名词的数据转换为食物名称或运动名称,并基于转换后的解析结果生成结构化数据进行存储,相比于采用自然语言处理技术,不需要大量的语料数据进行标注、训练即可将词性为名词的数据转换为食物名称或运动名称,其准确率不依赖于训练语料的数量和标注的准确性,需要投入的成本较低、技术门槛较低。
具体地,步骤203中解析文本数据得到文本数据中的数据和数据对应的词性,可以基于自定义ansj字典,采用ansj分词算法将文本数据解析为数据和数据对应的词性。
其中,自定义ansj字典可以包括食物数据、运动数据以及其他数据。
例如,食物数据包括食物名称和食物名称对应的食物别名,如表2所示。
表2
食物ID | 食物名称 | 食物别名 |
1 | 西红柿 | 番茄、洋柿子 |
2 | 土豆 | 马铃薯、洋芋 |
… | … | … |
例如,运动数据包括运动名称和运动名称对应的运动别名,如表3所示。
表3
运动ID | 运动名称 | 运动别名 |
1 | 骑行 | 骑自行车、骑单车、骑车 |
2 | 登山 | 爬山 |
… | … | … |
例如,其他数据包括用于描述单位、时间或餐次的匹配词和匹配词对应的转换词,如表4所示。
表4
词性 | 匹配词 | 转换词 |
单位 | ml | 毫升 |
单位 | 大碗 | 碗 |
餐次 | 晚饭 | 晚餐 |
餐次 | 上午 | 早餐 |
餐次 | 下班后 | 晚餐 |
… | … | … |
需要说明的是,上述表2至4中的内容仅是示例性地,并不构成对本公开实施例的限定。
在一种可实现的方式中,食物数据还可以包括食物的热量、营养元素等信息。运动数据还可以包括运动所消耗的热量。
进一步地,为了统一食物名称、运动名称或转换词,方便后续生成结构化数据,基于自定义ansj字典,采用ansj分词算法将文本数据解析为数据和数据对应的词性,可以包括:若解析结果中存在食物别名,则将食物别名转换为食物别名对应的食物名称;若解析结果中存在运动别名,则将运动别名转换为运动别名对应的运动名称;若解析结果中存在匹配词,则将匹配词转换为匹配词对应的转换词。
在一种可实现的方式中,可以基于食物名称和食物别名的对应关系来确定食物别名对应的食物名称,运动别名的转换和匹配词的转换也可以采用同样的方式,此处不再赘述。
为方便查找食物名称和食物别名的对应关系、运动名称和运动别名的对应关系以及匹配词和转换词的对应关系,可以将上述的对应关系存储至内存中,在使用时直接调用即可。
进一步地,参见图3,为了纠正上文中提到的将“杏仁”转换为“行人”的问题,步骤204中若解析结果中存在数据对应的词性为名词的数据,则将数据对应的词性为名词的数据转换为食物名称或运动名称,可以包括:
步骤301,将数据对应的词性为名词的数据的拼音作为第一字符串。
步骤302,将已存储的食物名称的拼音、食物别名的拼音、运动名称的拼音以及运动别名的拼音中的一种作为第二字符串。
步骤303,确定第一字符串和第二字符串的相似度。
步骤304,若第一字符串和第二字符串的相似度小于相似度阈值,则将数据对应的词性为名词的数据转换为第二字符串对应的食物名称、食物别名、运动名称或运动别名。
对于本公开实施例,可以采用如下公式计算第一字符串和第二字符串的相似度:
其中,为两字符串的相似度,/>为第一字符串,/>为第二字符串,/>为字符串/>的长度,/>为LD矩阵从左上角开始的对角线上的元素中值第一次发生改变的元素行下标,/>为两字符串的最长公共子串长度,/>为两字符串之间的编辑距离。
具体地,建立字符串和字符串/>的矩阵(即LD矩阵),m为字符串/>的长度,n为字符串/>的长度:
其中,的点表示两个文本在/>为匹配字符,/>的点表示为非匹配字符。
例如,LD矩阵中元素可以表示为,从矩阵M左上角的对角线上的元素中值第一次发生改变的元素为/>,那么其行下标为2,也就是说/>。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本公开并不受所描述的动作顺序的限制,因为依据本公开,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本公开所必须的。
以上是关于方法实施例的介绍,以下通过装置实施例,对本公开所述方案进行进一步说明。
图4示出了根据本公开的实施例的语音数据录入装置的方框图。在一些实施例中,该装置可以被包括在图1的服务器10中或者被实现为服务器10。参见图4,该装置包括数据接收模块401、第一转换模块402、数据解析模块403、第二转换模块404以及数据生成模块405。
其中,数据接收模块401,用于接收待录入语音数据,所述待录入语音数据用于描述用户的运动情况或饮食情况;第一转换模块402,用于将所述待录入语音数据转换为文本数据;数据解析模块403,用于解析所述文本数据,得到所述文本数据中的数据和数据对应的词性,所述数据对应的词性包括食物名称、运动名称、数量、单位以及名词;第二转换模块404,用于若解析结果中存在所述数据对应的词性为名词的数据,则将所述数据对应的词性为名词的数据转换为所述食物名称或所述运动名称;数据生成模块405,用于基于转换后的所述解析结果生成结构化数据进行存储。
在一些实施例中,所述数据解析模块403具体用于:基于自定义ansj字典,采用ansj分词算法将所述文本数据解析为所述数据和所述数据对应的词性;其中,所述自定义ansj字典包括食物数据、运动数据以及其他数据,所述食物数据包括所述食物名称和所述食物名称对应的食物别名,所述运动数据包括所述运动名称和所述运动名称对应的运动别名,所述其他数据包括用于描述单位、时间或餐次的匹配词和匹配词对应的转换词。
在一些实施例中,所述数据解析模块403具体用于:若所述解析结果中存在所述食物别名,则将所述食物别名转换为所述食物别名对应的所述食物名称;若所述解析结果中存在所述运动别名,则将所述运动别名转换为所述运动别名对应的所述运动名称;若所述解析结果中存在所述匹配词,则将所述匹配词转换为所述匹配词对应的所述转换词。
在一些实施例中,还包括数据存储模块,所述数据存储模块用于:存储所述食物名称和所述食物别名的对应关系、所述运动名称和所述运动别名的对应关系以及所述匹配词和所述转换词的对应关系。
在一些实施例中,所述数据生成模块405还用于:在解析结果中不存在所述数据对应的词性为名词的数据时,基于所述解析结果生成结构化数据进行存储。
在一些实施例中,所述第二转换模块404用于:将所述数据对应的词性为名词的数据的拼音作为第一字符串;将已存储的所述食物名称的拼音、所述食物别名的拼音、所述运动名称的拼音以及所述运动别名的拼音中的一种作为第二字符串;确定所述第一字符串和所述第二字符串的相似度;若所述第一字符串和所述第二字符串的相似度小于相似度阈值,则将所述数据对应的词性为名词的数据转换为所述第二字符串对应的所述食物名称、所述食物别名、所述运动名称或所述运动别名。
在一些实施例中,所述第二转换模块404具体用于:
采用下式计算所述第一字符串和所述第二字符串的相似度:
其中,为两字符串的相似度,/>为第一字符串,/>为第二字符串,/>为字符串/>的长度,/>为LD矩阵从左上角开始的对角线上的元素中值第一次发生改变的元素行下标,/>为两字符串的最长公共子串长度,/>为两字符串之间的编辑距离。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,所述描述的模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本公开实施例中提供了一种电子设备,如图5所示,图5所示的电子设备500包括:处理器501和存储器503。其中,处理器501和存储器503相连,如通过总线502相连。可选地,电子设备500还可以包括收发器504。需要说明的是,实际应用中收发器504不限于一个,该电子设备500的结构并不构成对本公开实施例的限定。
处理器501可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本公开公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器501也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线502可包括一通路,在上述组件之间传送信息。总线502可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线502可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器503可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器503用于存储执行本公开方案的应用程序代码,并由处理器501来控制执行。处理器501用于执行存储器503中存储的应用程序代码,以实现前述方法实施例所示的内容。
其中,电子设备包括但不限于:移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图5示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
本公开实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述仅是本公开的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本公开原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本公开的保护范围。
Claims (8)
1.一种语音数据录入方法,其特征在于,包括:
接收待录入语音数据,所述待录入语音数据用于描述用户的运动情况或饮食情况;
将所述待录入语音数据转换为文本数据;
解析所述文本数据,得到所述文本数据中的数据和数据对应的词性,所述数据对应的词性包括食物名称、运动名称、数量、单位以及名词;
若解析结果中存在所述数据对应的词性为名词的数据,则将所述数据对应的词性为名词的数据转换为所述食物名称或所述运动名称;
基于转换后的所述解析结果生成结构化数据进行存储;
其中,将所述数据对应的词性为名词的数据转换为所述食物名称或所述运动名称包括:
将所述数据对应的词性为名词的数据的拼音作为第一字符串;
将已存储的食物名称的拼音、食物别名的拼音、运动名称的拼音以及运动别名的拼音中的一种作为第二字符串;
采用下式计算所述第一字符串和所述第二字符串的相似度:
;
其中,为两字符串的相似度,/>为第一字符串,/>为第二字符串,/>为字符串/>的长度,/>为LD矩阵从左上角开始的对角线上的元素中值第一次发生改变的元素行下标,为两字符串的最长公共子串长度,/>为两字符串之间的编辑距离;
若所述第一字符串和所述第二字符串的相似度小于相似度阈值,则将所述数据对应的词性为名词的数据转换为所述第二字符串对应的所述食物名称、所述食物别名、所述运动名称或所述运动别名。
2.根据权利要求1所述的方法,其特征在于,所述解析所述文本数据,得到所述文本数据中的数据和数据对应的词性包括:
基于自定义ansj字典,采用ansj分词算法将所述文本数据解析为所述数据和所述数据对应的词性;
其中,所述自定义ansj字典包括食物数据、运动数据以及其他数据,所述食物数据包括所述食物名称和所述食物名称对应的食物别名,所述运动数据包括所述运动名称和所述运动名称对应的运动别名,所述其他数据包括用于描述单位、时间或餐次的匹配词和匹配词对应的转换词。
3.根据权利要求2所述的方法,其特征在于,所述基于自定义ansj字典,采用ansj分词算法将所述文本数据解析为所述数据和所述数据对应的词性包括:
若所述解析结果中存在所述食物别名,则将所述食物别名转换为所述食物别名对应的所述食物名称;
若所述解析结果中存在所述运动别名,则将所述运动别名转换为所述运动别名对应的所述运动名称;
若所述解析结果中存在所述匹配词,则将所述匹配词转换为所述匹配词对应的所述转换词。
4.根据权利要求3所述的方法,其特征在于,所述解析所述文本数据,得到所述文本数据中的数据和数据对应的词性之前,还包括:
存储所述食物名称和所述食物别名的对应关系、所述运动名称和所述运动别名的对应关系以及所述匹配词和所述转换词的对应关系。
5.根据权利要求1所述的方法,其特征在于,还包括:
若解析结果中不存在所述数据对应的词性为名词的数据,则基于所述解析结果生成结构化数据进行存储。
6.一种语音数据录入装置,其特征在于,包括:
数据接收模块,用于接收待录入语音数据,所述待录入语音数据用于描述用户的运动情况或饮食情况;
第一转换模块,用于将所述待录入语音数据转换为文本数据;
数据解析模块,用于解析所述文本数据,得到所述文本数据中的数据和数据对应的词性,所述数据对应的词性包括食物名称、运动名称、数量、单位以及名词;
第二转换模块,用于若解析结果中存在所述数据对应的词性为名词的数据,则将所述数据对应的词性为名词的数据转换为所述食物名称或所述运动名称;
数据生成模块,用于基于转换后的所述解析结果生成结构化数据进行存储;
其中,所述第二转换模块具体用于:
将所述数据对应的词性为名词的数据的拼音作为第一字符串;
将已存储的食物名称的拼音、食物别名的拼音、运动名称的拼音以及运动别名的拼音中的一种作为第二字符串;
采用下式计算所述第一字符串和所述第二字符串的相似度:
;
其中,为两字符串的相似度,/>为第一字符串,/>为第二字符串,/>为字符串/>的长度,/>为LD矩阵从左上角开始的对角线上的元素中值第一次发生改变的元素行下标,为两字符串的最长公共子串长度,/>为两字符串之间的编辑距离;
若所述第一字符串和所述第二字符串的相似度小于相似度阈值,则将所述数据对应的词性为名词的数据转换为所述第二字符串对应的所述食物名称、所述食物别名、所述运动名称或所述运动别名。
7.一种电子设备,包括存储器和处理器,所述存储器上存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5中任一项所述的语音数据录入方法。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5中任一项所述的语音数据录入方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311237142.5A CN116978385B (zh) | 2023-09-25 | 2023-09-25 | 语音数据录入方法、装置、电子设备和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311237142.5A CN116978385B (zh) | 2023-09-25 | 2023-09-25 | 语音数据录入方法、装置、电子设备和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116978385A CN116978385A (zh) | 2023-10-31 |
CN116978385B true CN116978385B (zh) | 2023-12-19 |
Family
ID=88471685
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311237142.5A Active CN116978385B (zh) | 2023-09-25 | 2023-09-25 | 语音数据录入方法、装置、电子设备和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116978385B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170084790A (ko) * | 2016-01-13 | 2017-07-21 | 주식회사 테크인모션 | 음성 인식 기반의 건강 관리 앱을 실행하는 이동통신 단말기 및 그 동작 방법 |
CN107847794A (zh) * | 2015-07-17 | 2018-03-27 | 格尼山特技术公司 | 一次提交跟踪的可穿戴式饮食和运动跟踪装置 |
CN110164435A (zh) * | 2019-04-26 | 2019-08-23 | 平安科技(深圳)有限公司 | 语音识别方法、装置、设备及计算机可读存储介质 |
CN110706784A (zh) * | 2019-09-30 | 2020-01-17 | 安徽华米信息科技有限公司 | 卡路里摄入量计算方法、装置、系统、设备以及存储介质 |
CN114036957A (zh) * | 2021-12-27 | 2022-02-11 | 中科大数据研究院 | 一种快速语义相似度计算方法 |
CN115457937A (zh) * | 2022-09-16 | 2022-12-09 | 北京富通智康科技有限公司 | 一种饮食监测分析方法及系统 |
-
2023
- 2023-09-25 CN CN202311237142.5A patent/CN116978385B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107847794A (zh) * | 2015-07-17 | 2018-03-27 | 格尼山特技术公司 | 一次提交跟踪的可穿戴式饮食和运动跟踪装置 |
KR20170084790A (ko) * | 2016-01-13 | 2017-07-21 | 주식회사 테크인모션 | 음성 인식 기반의 건강 관리 앱을 실행하는 이동통신 단말기 및 그 동작 방법 |
CN110164435A (zh) * | 2019-04-26 | 2019-08-23 | 平安科技(深圳)有限公司 | 语音识别方法、装置、设备及计算机可读存储介质 |
CN110706784A (zh) * | 2019-09-30 | 2020-01-17 | 安徽华米信息科技有限公司 | 卡路里摄入量计算方法、装置、系统、设备以及存储介质 |
CN114036957A (zh) * | 2021-12-27 | 2022-02-11 | 中科大数据研究院 | 一种快速语义相似度计算方法 |
CN115457937A (zh) * | 2022-09-16 | 2022-12-09 | 北京富通智康科技有限公司 | 一种饮食监测分析方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN116978385A (zh) | 2023-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108319668B (zh) | 生成文本摘要的方法及设备 | |
US11574124B2 (en) | Method and apparatus of recognizing named entity | |
WO2019153613A1 (zh) | 聊天应答方法、电子装置及存储介质 | |
US20200210468A1 (en) | Document recommendation method and device based on semantic tag | |
US8224641B2 (en) | Language identification for documents containing multiple languages | |
US8401841B2 (en) | Retrieval of documents using language models | |
US8504367B2 (en) | Speech retrieval apparatus and speech retrieval method | |
US10971136B2 (en) | Method and apparatus for ranking responses of dialog model, and non-transitory computer-readable recording medium | |
WO2015062482A1 (en) | System and method for automatic question answering | |
US20230111582A1 (en) | Text mining method based on artificial intelligence, related apparatus and device | |
EP4095738A1 (en) | Entity recognition method and apparatus, dictionary creation method, device, and medium | |
CN108804427B (zh) | 语音机器翻译方法及装置 | |
US20230298481A1 (en) | Food description processing methods and apparatuses | |
US9575957B2 (en) | Recognizing chemical names in a chinese document | |
US20220358297A1 (en) | Method for human-machine dialogue, computing device and computer-readable storage medium | |
Chen et al. | Sentence modeling for extractive speech summarization | |
Li et al. | Lexicon knowledge boosted interaction graph network for adverse drug reaction recognition from social media | |
US8224642B2 (en) | Automated identification of documents as not belonging to any language | |
CN116978385B (zh) | 语音数据录入方法、装置、电子设备和可读存储介质 | |
KR101541170B1 (ko) | 텍스트 요약 장치 및 방법 | |
Liu et al. | Enhanced language modeling with proximity and sentence relatedness information for extractive broadcast news summarization | |
Jarosz et al. | The richness of distributional cues to word boundaries in speech to young children | |
Wang et al. | Text anchor based metric learning for small-footprint keyword spotting | |
US20230044106A1 (en) | Method and apparatus for querying questions, device, and storage medium | |
JP6486789B2 (ja) | 音声認識装置、音声認識方法、プログラム |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |