1.本发明涉及语音处理技术领域,尤其涉及一种语音转写方法、装置、拾音转写设备与存储介质。
背景技术:2.由于具有重量轻、体积小、可连续录音几个小时等特点,录音笔受到了越来越多人的青睐。
3.目前市面上的主流录音笔为传统录音笔,传统录音笔专注于录音本身,录音后需要用户自主将声音整理成文字,效率低下,而且重复的工作量很大。另外,部分录音笔通过把录音文件导出后,依托网络引擎进行转写,步骤复杂,体验不佳,而且安全风险也较高。
技术实现要素:4.本发明提供一种语音转写方法、装置、拾音转写设备与存储介质,用以解决现有技术中转写效率低下的缺陷,实现拾音后立即获取转写结果。
5.本发明提供一种语音转写方法,所述方法应用于嵌入式神经网络处理器npu,所述方法包括:
6.接收中央处理器cpu发送的语音数据流,所述cpu与所述npu设置在同一设备内;
7.基于语音转写模型,对所述语音数据流进行离线转写,并将转写结果返回给所述cpu,所述语音转写模型部署在所述npu上。
8.根据本发明提供的一种语音转写方法,所述基于语音转写模型,对所述语音数据流进行离线转写,包括:
9.基于所述语音转写模型中目标语种对应的语音转写子模型,对所述语音数据流进行离线转写;
10.所述目标语种为所述语音数据流所属的语种。
11.根据本发明提供的一种语音转写方法,所述基于所述语音转写模型中目标语种对应的语音转写子模型,对所述语音数据流进行离线转写,之前还包括:
12.基于转写设置,和/或所述语音数据流的语种识别结果确定所述目标语种,所述语种识别结果是所述cpu或所述npu对所述语音数据流进行语种识别得到的;
13.从所述语音转写模型的各个语音转写子模型中,选取所述目标语种对应的语音转写子模型,所述各个语音转写子模型分别对应不同的语种。
14.根据本发明提供的一种语音转写方法,所述基于语音转写模型,对所述语音数据流进行离线转写,并将转写结果返回给所述cpu,包括:
15.基于所述语音转写模型,对所述语音数据流进行流式转写,并将实时输出的流式转写结果实时返回给所述cpu;
16.基于所述语音转写模型,在所述语音数据流发送结束时对所述流式转写结果的整体进行校正,并将输出的校正转写结果返回给所述cpu。
17.根据本发明提供的一种语音转写方法,所述基于语音转写模型,对所述语音数据流进行离线转写,包括:
18.调用语音转写运算资源运行所述语音转写模型,对所述语音数据流进行离线转写;
19.所述语音转写运算资源属于所述npu的运算资源,所述语音转写运算资源是基于设备能耗状态、设备发热状态和所述语音数据流的数据规格中的至少一种确定的。
20.本发明还提供一种语音转写方法,所述方法应用于中央处理器cpu,所述方法包括:
21.向嵌入式神经网络处理器npu发送语音数据流,以供所述npu基于语音转写模型对所述语音数据流进行离线转写,并将转写结果返回给所述cpu,所述npu与所述cpu设置在同一设备内,所述语音转写模型部署在所述npu上;
22.接收所述npu返回的所述转写结果。
23.本发明还提供一种语音转写装置,所述装置应用于嵌入式神经网络处理器npu,所述装置包括:
24.接收模块,用于接收中央处理器cpu发送的语音数据流,所述cpu与所述npu设置在同一设备内;
25.转写模块,用于基于语音转写模型,对所述语音数据流进行离线转写,并将转写结果返回给所述cpu,所述语音转写模型部署在所述npu上。
26.本发明还提供一种语音转写装置,所述装置应用于中央处理器cpu,所述装置包括:
27.发送模块,用于向嵌入式神经网络处理器npu发送语音数据流,以供所述npu基于语音转写模型对所述语音数据流进行离线转写,并将转写结果返回给所述cpu,所述npu与所述cpu设置在同一设备内,所述语音转写模型部署在所述npu上;
28.接收模块,用于接收所述npu返回的所述转写结果。
29.本发明还提供一种拾音转写设备,包括拾音设备、存储器、中央处理器cpu及存储在所述存储器上并可在所述cpu上运行的计算机程序,以及嵌入式神经网络处理器npu及存储在所述存储器上并可在所述npu上运行的计算机程序,所述cpu执行所述程序时实现如上述应用于cpu的语音转写方法的步骤,所述npu执行所述程序时实现如上述任一项所述的应用于npu的语音转写方法的步骤。
30.本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述语音转写方法的步骤。
31.本发明提供的语音转写方法、装置、拾音转写设备与存储介质,结合嵌入式神经网络处理器的强大算力,在设备端部署了本地的语音转写模型,基于该语音转写模型对语音数据流进行离线转写,从而实现了高可靠度和高转写效率的设备端离线转写,设备端离线转写无需依赖网络,数据更加安全,也不存在网络传输带来的延时问题,转写显示更加及时流畅,有助于优化用户体验。
附图说明
32.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术
描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
33.图1是本发明提供的语音转写方法的流程示意图之一;
34.图2是本发明提供的语音转写子模型确定方法的流程示意图;
35.图3是本发明提供的语音转写方法的流程示意图之二;
36.图4是本发明提供的语音转写方法的流程示意图之三;
37.图5是本发明提供的语音转写方法的流程示意图之四;
38.图6是本发明提供的录音笔的结构示意图;
39.图7是本发明提供的语音转写装置的结构示意图之一;
40.图8是本发明提供的语音转写装置的结构示意图之二;
41.图9是本发明提供的拾音转写设备的结构示意图;
42.附图标记:
43.610:定向麦克风;
ꢀꢀꢀ
620:麦克风阵列;
ꢀꢀꢀ
630:音量键;
44.640:开机键;
ꢀꢀꢀꢀꢀꢀꢀ
650:录音键;
ꢀꢀꢀꢀꢀꢀꢀ
660:导航键;
45.670:type
‑
c接口。
具体实施方式
46.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
47.目前,市面上的主流录音笔为传统录音笔,传统录音笔的功能局限于录音层面,若要将声音转换为文字,则需在录音完成后由人工将录制的音频数据转换为文字。显然,此种仅具备单一功能的传统录音笔限制了用户使用时的灵活性,不仅会导致使用效率低下,还会造成额外的重复性工作,大量耗费用户的时间和精力。
48.除此之外,目前市面上还存在一种具备语音转写功能的录音笔,而该录音笔中语音转写功能的实现是先将录制好的音频数据导出,再将导出的音频数据上传至云端,由云端实现语音转写功能。此种语音转写方法相较于由人工进行语音转写的方法,虽然在一定程度上节省了用户的时间和精力,但是其步骤依然较为繁琐,并且,该方法需要应用到网络进行音频数据的传输,在弱网或者无网的情况下,音频数据传输的速率会受到严重影响,进而导致转写内容不能及时获取,影响用户的使用体验。此外,该方法在将音频数据上传至云端以及由云端实现语音转写功能的过程中,都无法从根本上保证数据安全,对于政府、企业单位等对音频数据及转写内容有高度保密要求的场景并不适用。
49.对此,本发明实施例提供了一种语音转写方法。图1是本发明提供的语音转写方法的流程示意图之一,如图1所示,该方法的执行主体是嵌入式神经网络处理器npu(neural
‑
network processing unit),npu具体可以设置在任何具有语音转写功能的智能设备内部,此处的智能设备可以是录音笔、智能手机、智能手环等。该方法包括:
50.步骤110,接收中央处理器cpu发送的语音数据流,cpu与npu设置在同一设备内;
51.步骤120,基于语音转写模型,对语音数据流进行离线转写,并将转写结果返回给cpu,语音转写模型部署在npu上。
52.步骤110中的设备,即具有语音转写功能的智能设备,该设备内部不仅装设有中央处理器cpu(central processing unit),还装设有npu,cpu和npu可以设置在设备内部的同一个芯片上,也可以设置在设备内部的两个芯片上,并且通过通信总线相互连接。
53.具体在执行语音转写功能时,可以通过拾音设备例如麦克风实时采集语音数据,此处,拾音设备可以与cpu和npu装设在同一设备内,也可以独立设置,并且通过有线连接方式或者无线传输方式将实时采集的语音数据流传输到设备内部,例如可以在设备内部设置缓存单元用于缓存设备自身录制的或者接收到外部传输的语音数据流。此处的语音数据流中,可以包含每一时刻的语音数据。
54.考虑到传统录音笔专注于录音本身,录音后需要用户自主将声音整理成文字,效率低下,而且重复的工作量很大,另外,虽然存在部分录音笔通过把录音文件导出后,依托网络引擎进行转写,操作步骤复杂,安全风险也较高。针对这一问题,本发明实施例应用了加设在设备内部的cpu+npu的组合形式,通过cpu,将拾音设备采集的语音数据流转发给同设备内部的npu,由npu直接承接语音数据流的实时转写任务,从而实现离线语音转写功能,提升转写效率。
55.需要说明的是,受限于设备内部设置的cpu的计算能力,传统的语音转写模型很难直接部署在设备内部的cpu上,因此如何在设备端实现离线语音转写,一直都是语音转写领域的难点。即便大幅缩减语音转写模型规模,勉强将语音转写模型直接布设在设备内部的cpu上,离线语音转写文本的可靠性和准确性还是会受到语音转写模型本身性能的限制,以及cpu计算能力的限制。针对这一问题,本发明实施例中充分利用了npu本身针对神经网络结构的计算处理优势,在应用加设在设备内部的npu对接收到的语音数据流进行实时转写时,具体基于npu上部署的语音转写模型,对语音数据流进行实时离线转写实现,不依赖于网络、无需上传云端即可获取转写结果,保密性强、安全系数高、实时性也更强。
56.由于npu本身具有较强的计算能力,并且能够承担神经网络算法的加速工作,因此部署在npu上的语音转写模型,可以是高复杂度、高精准性的语音转写模型,而无需考虑本地计算能力的限制条件,从而在应用npu强大的计算能力提高离线转写的准确性、可靠性和转写效率的同时,还由于npu设置在设备内部这一属性,省略了在线语音转写必经的数据传输流程,进一步保证了转写过程的流畅性,提高了用户体验。
57.其中,语音转写模型可以是由针对不同语种的语音转写子模型组成的模型,也可以是对于所有语种都通用的语音转写模型,本发明实施例对此不作具体限定。另外,在执行步骤120之前,还可以预先训练得到语音转写模型,具体可以通过如下方式训练得到语音转写模型:首先,收集大量样本语音数据,并标注样本语音数据对应的样本转写结果。随即,基于样本语音数据,以及样本语音数据对应的样本转写结果对初始模型进行训练,从而得到语音转写模型。
58.在获取到转写结果之后,npu可以将转写结果返回给cpu,cpu即可对该转写结果进行存储、展示等操作,以方便用户实时查看和编辑。需要说明的是,区别于现有的部分录音笔通常是在录音结束后,受限于网络传输用时,用户需要等待一会才能获取转写结果,本发明实施例中设备内部的cpu和npu可以直接对接,因此转写结果可以是实时转写得到之后就
进行展示的,用户在录音过程中就可以实时查看到转写结果,从而可以方便用户及时获取转写结果,当转写结果出现错误时,用户也能及时做出修正。
59.本发明实施例提供的方法,结合嵌入式神经网络处理器的强大算力,在设备端部署了本地的语音转写模型,基于该语音转写模型对语音数据流进行离线转写,从而实现了高可靠度和高转写效率的设备端离线转写,设备端离线转写无需依赖网络,数据更加安全,也不存在网络传输带来的延时问题,转写显示更加及时流畅,有助于优化用户体验。
60.基于上述任一实施例,步骤120包括:
61.基于语音转写模型中目标语种对应的语音转写子模型,对语音数据流进行离线转写;
62.目标语种为语音数据流所属的语种。
63.具体地,考虑到语音数据流可能存在不同语种,为了实现不同语种的语音数据流的准确转写,可以先确定语音数据流所属的语种即目标语种,然后根据语音转写模型中目标语种对应的语音转写子模型,对语音数据流进行离线转写,从而得到转写结果。此处,目标语种可以是一种或多种,例如当语音数据流为中英混合的语音数据流时,此时目标语种为中文和英文,对应的语音转写子模型可以是中文和英文通用的语音转写子模型,也可以既包括中文的语音转写子模型,也包括英文的语音转写子模型,需要说明的是,语音数据流中一段时间内的语音仅对应一种语种,例如语音数据流中前一段时间对应中文,后一段时间对应英文,则对其中前一段时间的语音数据进行语音转写时应用中文的语音转写子模型,对其中后一段时间的语音数据进行语音转写时应用英文的语音转写子模型。另外,本发明实施例对于语种的类型不作具体限定,例如可以是中文、英文、韩文等,也可以进一步细分普通话、粤语、闽南语等。
64.基于上述任一实施例,图2是本发明提供的语音转写子模型确定方法的流程示意图,如图2所示,步骤120中,基于语音转写模型中目标语种对应的语音转写子模型,对语音数据流进行离线转写,之前还包括:
65.步骤111,基于转写设置,和/或语音数据流的语种识别结果确定目标语种,语种识别结果是cpu或npu对语音数据流进行语种识别得到的;
66.步骤112,从语音转写模型的各个语音转写子模型中,选取目标语种对应的语音转写子模型,各个语音转写子模型分别对应不同的语种。
67.具体地,转写设置指的是用户预先在设备端进行的设置,转写设置可以表示用户常用的语种,也可以表示用户当前需要进行语音转写的语音数据流属于的语种,设备端的cpu或者npu可以根据转写设置确定目标语种。
68.此外,设备端的cpu或者npu还可以对实时的语音数据流进行语种识别,从而将语种识别结果作为目标语种。具体的语种识别的方式可以是采用多类别逻辑回归、朴素贝叶斯分类法等算法进行语种识别,本发明实施例对此不作具体限定。
69.具体应用阶段,目标语种具体可以根据该转写设置确定,也可以根据语音数据流的语种识别结果确定,还可以根据转写设置和语种识别结果二者的结合确定。例如当转写设置中仅存在一种语种时,可以直接将该语种作为目标语种,当转写设置中存在多种语种时,可以对语音数据流进行语种识别,若语种识别结果属于转写设置中的多种语种中的一种,则将语种识别结果作为目标语种,或者结合语种识别结果中各种语种的概率,以及转写
设置中存在的多种语种,对各种语种进行打分,以确定目标语种;又例如,当用户未设置转写设置时,可以直接将语种识别结果作为目标语种。
70.当确定了目标语种之后,可以从语音转写模型的各个语音转写子模型中,选取目标语种对应的语音转写子模型,用于后续对语音数据流的离线转写。此处,各个语音转写子模型分别对应不同的语种。
71.特别地,假设既不存在转写设置,cpu和npu也未进行语种识别,也可以将语音转写模型中对应通用语种的语音转写子模型用于语音数据流的离线转写。
72.基于上述任一实施例,图3是本发明提供的语音转写方法的流程示意图之二,如图3所示,步骤120包括:
73.步骤1201,基于语音转写模型,对语音数据流进行流式转写,并将实时输出的流式转写结果实时返回给cpu;
74.步骤1202,基于语音转写模型,在语音数据流发送结束时对流式转写结果的整体进行校正,并将输出的校正转写结果返回给cpu。
75.具体地,在接收到cpu发送的语音数据流之后,npu可以根据语音转写模型对语音数据流进行流式转写,在此基础上,npu即可将语音转写模型实时输出的流式转写结果实时返回给cpu,以供cpu可以在语音数据流输入过程中实时展示对应的流式转写结果。此处,具体的流式转写的方式可以是对语音数据流按各个字符进行逐一转写,再将每个分句转写的结果作为流式转写结果实时返回给cpu。
76.考虑到流式转写过程没有考虑到上下文的语义信息,流式转写结果可能缺乏整体上的连贯性。针对这一问题,本发明实施例在确定语音数据流发送结束之后,根据语音转写模型以及流式转写结果整体的上下文信息,对之前流式转写得到的流式转写结果的整体进行校正,由此即可得到校正转写结果,从而保证语音转写的准确性以及整体上的连贯性。接着,npu可以将语音转写模型输出的校正转写结果返回给cpu,以供cpu展示经过校正的校正转写结果。
77.此处,由于语音数据流的传输时间可以忽略不计,语音数据流发送结束的时间即为用户进行语音输入的结束时间,用户进行语音输入的结束时间的确定可以通过语音端点检测(voice activity detection,vad)模型实现,也可以通过与用户之间的交互确定,本发明实施例对此不作具体限定。
78.在语音输入过程中,通过实时展示流式转写结果,用户可以实时查看已经录入的语音数据的转写结果,以满足用户对语音转写的实时性需求;在语音输入结束后,将经过校正的校正转写结果对流式转写结果的整体进行替换,并即时展示给用户,提高了语音转写的准确性。
79.基于上述任一实施例,步骤120包括:
80.调用语音转写运算资源运行语音转写模型,对语音数据流进行离线转写;
81.语音转写运算资源属于npu的运算资源,语音转写运算资源是基于设备能耗状态、设备发热状态和语音数据流的数据规格中的至少一种确定的。
82.具体地,考虑到可能存在npu的功耗大导致设备过热或续航不佳的问题,可以基于当前的设备能耗状态、设备发热状态和语音数据流的数据规格中的任意一种或多种的组合,从npu的运算资源中选择当前最合适的语音转写运算资源,然后调用该语音转写运算资
源运行语音转写模型,对语音数据流进行离线转写,从而实现平衡转写效率、功耗及发热之间的关系。
83.此处,设备能耗状态可以反映设备当前的工作状态,例如设备的剩余电量、设备预估的可持续工作时间等,在为语音转写模型分配语音转写运算资源时,可以参考设备能耗状态,例如设备电量充足的情况下,可以为语音转写模型分配更多的语音转写运算资源,从而提高离线语音转写效率,在设备电量不足的情况下,需要优先保障设备运行,可以为语音转写模型分配较少的语音转写运算资源,以达到节约能耗的功能。
84.设备发热状态可以反映设备当前的温度状态,例如设备当前的温度、是否存在过热情况等,在为语音转写模型分配语音转写运算资源时,可以参考设备发热状态,例如在设备明显过热的情况下,持续为语音转写模型分配更多的语音转写运算资源可能会导致设备温度持续升高,甚至影响设备的正常运行,此时可以减小语音转写运算资源,以缓解设备过热的问题。
85.语音数据流的数据规格可以反映当前需要的运算资源的多少,在为语音转写模型分配语音转写运算资源时,可以参考语音数据流的数据规格,例如数据规格较小时,为语音转写模型分配较少的语音转写运算资源,从而避免运算资源浪费,在数据规格较大时,为语音转写模型分配较多的语音转写运算资源,从而保证语音转写任务的及时性。
86.可以基于上述设备能耗状态、设备发热状态和语音数据流的数据规格中的任意一种或多种的组合,推测出当前对于npu来说最合适的语音转写运算资源。
87.进一步地,若基于设备能耗状态、设备发热状态和数据规格这三个确定指标中多种的组合确定语音转写运算资源,则可以根据各个确定指标对于离线语音转写的重要性,为各个确定指标设置对应权重,然后根据各个确定指标对应的权重,确定当前最合适的语音转写运算资源。
88.本发明实施例提供的方法,基于设备能耗状态、设备发热状态和语音数据流的数据规格中的任意一种或多种的组合确定当前最合适的语音转写运算资源,实现了语音转写运算资源的实时动态调整,进而有效降低了设备整体的功耗,缓解了发热及续航不佳的问题。
89.基于上述任一实施例,本发明实施例提供一种语音转写方法。图4是本发明提供的语音转写方法的流程示意图之三,如图4所示,该方法的执行主体是中央处理器cpu,cpu具体可以设置在任何具有语音转写功能的智能设备内部,此处的智能设备可以是录音笔、智能手机、智能手环等。该方法包括:
90.步骤410,向嵌入式神经网络处理器npu发送语音数据流,以供npu基于语音转写模型对语音数据流进行离线转写,并将转写结果返回给cpu,npu与cpu设置在同一设备内,语音转写模型部署在npu上;
91.步骤420,接收npu返回的转写结果。
92.步骤410中的设备,即具有语音转写功能的智能设备,该设备内部不仅装设有中央处理器cpu,还装设有npu,cpu和npu可以设置在设备内部的同一个芯片上,也可以设置在设备内部的两个芯片上,并且通过通信总线相互连接。
93.具体在执行语音转写功能时,可以通过拾音设备例如麦克风实时采集语音数据,此处,拾音设备可以与cpu和npu装设在同一设备内,也可以独立设置,并且通过有线连接方
式或者无线传输方式将实时采集的语音数据流传输到设备内部,例如可以在设备内部设置缓存单元用于缓存设备自身录制的或者接收到外部传输的语音数据流。此处的语音数据流中,可以包含每一时刻的语音数据。
94.考虑到传统录音笔专注于录音本身,录音后需要用户自主将声音整理成文字,效率低下,而且重复的工作量很大,另外,虽然存在部分录音笔通过把录音文件导出后,依托网络引擎进行转写,操作步骤复杂,安全风险也较高。针对这一问题,本发明实施例应用了加设在设备内部的cpu+npu的组合形式,通过cpu,将拾音设备采集的语音数据流转发给同设备内部的npu,由npu直接承接语音数据流的实时转写任务,从而实现离线语音转写功能,提升转写效率。
95.需要说明的是,受限于设备内部设置的cpu的计算能力,传统的语音转写模型很难直接部署在设备内部的cpu上,因此如何在设备端实现离线语音转写,一直都是语音转写领域的难点。即便大幅缩减语音转写模型规模,勉强将语音转写模型直接布设在设备内部的cpu上,离线语音转写文本的可靠性和准确性还是会受到语音转写模型本身性能的限制,以及cpu计算能力的限制。针对这一问题,本发明实施例中充分利用了npu本身针对神经网络结构的计算处理优势,在应用加设在设备内部的npu对接收到的语音数据流进行实时转写时,具体基于npu上部署的语音转写模型,对语音数据流进行实时离线转写实现,不依赖于网络、无需上传云端即可获取转写结果,保密性强、安全系数高、实时性也更强。
96.由于npu本身具有较强的计算能力,并且能够承担神经网络算法的加速工作,因此部署在npu上的语音转写模型,可以是高复杂度、高精准性的语音转写模型,而无需考虑本地计算能力的限制条件,从而在应用npu强大的计算能力提高离线转写的准确性、可靠性和转写效率的同时,还由于npu设置在设备内部这一属性,省略了在线语音转写必经的数据传输流程,进一步保证了转写过程的流畅性,提高了用户体验。
97.其中,语音转写模型可以是由针对不同语种的语音转写子模型组成的模型,也可以是对于所有语种都通用的语音转写模型,本发明实施例对此不作具体限定。另外,在执行步骤410之前,还可以预先训练得到语音转写模型,具体可以通过如下方式训练得到语音转写模型:首先,收集大量样本语音数据,并标注样本语音数据对应的样本转写结果。随即,基于样本语音数据,以及样本语音数据对应的样本转写结果对初始模型进行训练,从而得到语音转写模型。
98.npu在获取到转写结果之后,可以将转写结果返回给cpu,cpu即可对接收到的该转写结果进行存储、展示等操作,以方便用户实时查看和编辑。需要说明的是,区别于现有的部分录音笔通常是在录音结束后,受限于网络传输用时,用户需要等待一会才能获取转写结果,本发明实施例中设备内部的cpu和npu可以直接对接,因此转写结果可以是实时转写得到之后就进行展示的,用户在录音过程中就可以实时查看到转写结果,从而可以方便用户及时获取转写结果,当转写结果出现错误时,用户也能及时做出修正。
99.本发明实施例提供的方法,结合嵌入式神经网络处理器的强大算力,在设备端部署了本地的语音转写模型,基于该语音转写模型对语音数据流进行离线转写,从而实现了高可靠度和高转写效率的设备端离线转写,设备端离线转写无需依赖网络,数据更加安全,也不存在网络传输带来的延时问题,转写显示更加及时流畅,有助于优化用户体验。
100.基于上述任一实施例,本发明实施例提供了一种语音转写方法。图5是本发明提供
的语音转写方法的流程示意图之四,如图5所示,该方法的执行主体为具有语音转写功能的智能设备,该智能设备可以包括智能设备主体和嵌入式神经网络处理器npu两部分,其中,智能设备主体可以包括拾音设备、中央处理器cpu、显示屏等硬件。语音转写方法的流程可以包括三个步骤:设备录制音频(s1)、npu离线转写(s2)、实时保存转写结果(s3),从而能够实现拾音后立即获取转写得到的文字结果,并可立即保存文字结果。
101.以下对语音转写方法的流程进行展开描述:
102.s1、通过拾音设备进行拾音,结合降噪算法,提供原始的、高保真的录音存储数据,保证识别和转写的正确率和准确率。
103.s2、cpu在接收到拾音设备拾取的语音数据后,进行前端声学算法处理,得到语音数据流(即图中的脉冲编码调制pcm),并将语音数据流发送给npu,npu结合用户针对语种所选的转写设置确定目标语种,从语音转写模型中选择目标语种对应的语音转写子模型对语音数据流进行离线转写。步骤s2中,结合npu的强大算力,在智能设备上落地高复杂度的语音转写模型,利用npu的低功耗特性,进一步降低转写整体功耗,获得更长的连续转写时间。
104.需要说明的是,本发明实施例中部署在npu上的语音转写模型,可支持中文普通话及多种中文方言(天津话、河北话、东北话、甘肃话、山东话、太原话、河南话、四川话、云南话、贵州话、重庆话、粤语等),多种外国语(英语、日语、韩语、俄语等);其中,中英可支持混合识别。
105.进一步地,步骤s2中,npu可以基于语音转写模型对语音数据流进行流式转写,输出流式转写结果并回传到cpu,由cpu控制流式转写结果在显示屏上展示;结束录音后,流式转写结果经过语音转写模型的智能校正后,输出最终转写结果并回传到cpu,由cpu控制最终转写结果在显示屏上展示。此处,npu离线转写的准确率与云端转写准确率相差绝对值在1%以内,转写本身对设备温度无正向作用,“无感知”转写,不会带来设备发热;转写响应时间控制在1000ms,识别过程流畅,设备体验无顿挫感。
106.s3、结束录音后,校正转写结果会被cpu立即保存,用户可即时获取转写结果,无需等待。
107.上述过程全离线操作,获取转写结果更快捷、提高用户效率;不依赖网络进行转写,识别过程无卡顿;无需上传云端获取转写结果,保密性强、安全系数高,同时适应更多的使用场景。
108.利用npu的强大算力,提出了新一代的识别(转写)引擎—npu离线转写引擎,该引擎基于端到端的全新语音识别框架,在传统引擎通用功能的基础上作了升级迭代,可以在无网络的环境下对语音进行实时转写,并快速形成最终文档,自动形成音频和文字存档,获取转写结果更快捷、提高用户效率。
109.基于上述任一实施例,虽然手机的部分app(application,应用软件)可实现声音实时转文字,但依赖于手机本身的拾音,转写准确率并不佳,依旧会带来繁琐的校验工作。另外,目前市面上的主流录音笔为传统录音笔,传统录音笔的麦克风只采用定向麦克风或者阵列麦克风中的一种,仍难以保证较好的拾音效果。
110.对此,本发明实施例中用于采集语音数据的拾音设备可以包括定向麦克风和麦克风阵列两部分,定向麦克风和麦克风阵列的数量和安装位置可以根据实际应用场景进行设定,本发明实施例对此不作具体限定。由于定向麦克风的定向收音效果好,可以远距离收
音,但降噪能力差,而麦克风阵列适合近场收音,降噪处理能力好,因此本发明实施例将定向麦克风和麦克风阵列进行组合,以优势互补,从而提高录音效果。
111.此处,可以利用定向麦克风和麦克风阵列分别进行录音,然后对定向麦克风录制的语音数据和麦克风阵列录制的语音数据进行处理,得到两路语音数据。其中一路是录制的无损语音,用于进行语音转写,以提高语音转写的准确率;另一路是录制的有损语音,用于播放。
112.采用定向麦克风+麦克风阵列的组合方案,实现语音识别降噪和听感录音的拾音区别分离,在提高转写效率和准确率的同时,还可以保证高保真的录音听感;并可以提供多路原始录音和算法后的语音数据流。
113.基于上述任一实施例,本发明实施例提供了一种拾音转写设备,该拾音转写设备可以是录音笔。图6是本发明提供的录音笔的结构示意图,如图6所示,该录音笔用于采集语音数据的拾音设备采用2个定向麦克风610和4个麦克风阵列620的组合,实现语音识别降噪和听感录音的拾音区别分离,在提高转写效率和准确率的同时,还可以保证高保真的录音听感;并可以提供多路原始录音和算法后的语音数据流。
114.该录音笔还包括音量键630、开机键640、录音键650、导航键660、type
‑
c接口670等部件。其中,在录音笔开机状态下按录音键650,即可实现一键录音,通过按键,激活语音的操控算法,输入语音内容,对设备进行操控。type
‑
c接口670可以实现通过设备数据线,即可将原始音频、转写文稿导出至个人电脑,方便快捷。
115.另外,录音笔还包括智能文件管理系统,通过对文件增加多维度的标签,如时间,地点,标签,场景或名称等,通过语音或文字搜索等方式搜索任意的标签,都可以推荐相关的文件。
116.手持和实时拾音转写是本发明提供的录音笔的重要特点,该录音笔通过npu的加速和算法的优化实现,在手持设备中完成音频的实时转写;不需要云端参与,直接可以在手持设备中完成数据的录音和转写编辑生成文档等功能。另外,支持录音笔本地+个人设备的方式进行文件管理和存储,不受地域和时间限制,最大化地提升了效率,保证了时效性。
117.通过ai(artificial intelligence,人工智能)赋能录音笔设备,把传统的大量低效率的人工工作用ai能力替代,录音+识别转写自动完成,提升效率;对于政府、企业单位等对录音及转写内容有高度保密要求的场景,录音笔也专门定制了能够实现离线转写的npu离线转写引擎,支持多语种、多方言的离线转写,不依赖于网络、无需上传云端获取转写结果,并可以对转写结果进行智能校正,美化、编辑等,对语音转写领域起到了创新引领的作用。
118.下面对本发明提供的语音转写装置进行描述,下文描述的语音转写装置与上文描述的语音转写方法可相互对应参照。
119.基于上述任一实施例,本发明实施例提供一种语音转写装置。图7是本发明提供的语音转写装置的结构示意图之一,如图7所示,该装置应用于嵌入式神经网络处理器npu,该装置包括:
120.接收模块710,用于接收中央处理器cpu发送的语音数据流,cpu与npu设置在同一设备内;
121.转写模块720,用于基于语音转写模型,对语音数据流进行离线转写,并将转写结
果返回给cpu,语音转写模型部署在npu上。
122.本发明实施例提供的装置,结合嵌入式神经网络处理器的强大算力,在设备端部署了本地的语音转写模型,基于该语音转写模型对语音数据流进行离线转写,从而实现了高可靠度和高转写效率的设备端离线转写,设备端离线转写无需依赖网络,数据更加安全,也不存在网络传输带来的延时问题,转写显示更加及时流畅,有助于优化用户体验。
123.基于上述任一实施例,转写模块720用于:
124.基于语音转写模型中目标语种对应的语音转写子模型,对语音数据流进行离线转写;
125.目标语种为语音数据流所属的语种。
126.基于上述任一实施例,该装置还包括子模型确定模块,用于:
127.基于转写设置,和/或语音数据流的语种识别结果确定目标语种,语种识别结果是cpu或npu对语音数据流进行语种识别得到的;
128.从语音转写模型的各个语音转写子模型中,选取目标语种对应的语音转写子模型,各个语音转写子模型分别对应不同的语种。
129.基于上述任一实施例,转写模块720包括:
130.转写单元,用于基于语音转写模型,对语音数据流进行流式转写,并将实时输出的流式转写结果实时返回给cpu;
131.校正单元,用于基于语音转写模型,在语音数据流发送结束时对流式转写结果的整体进行校正,并将输出的校正转写结果返回给cpu。
132.基于上述任一实施例,转写模块720用于:
133.调用语音转写运算资源运行语音转写模型,对语音数据流进行离线转写;
134.语音转写运算资源属于npu的运算资源,语音转写运算资源是基于设备能耗状态、设备发热状态和语音数据流的数据规格中的至少一种确定的。
135.基于上述任一实施例,本发明实施例提供一种语音转写装置。图8是本发明提供的语音转写装置的结构示意图之二,如图8所示,该装置应用于中央处理器cpu,该装置包括:
136.发送模块810,用于向嵌入式神经网络处理器npu发送语音数据流,以供npu基于语音转写模型对语音数据流进行离线转写,并将转写结果返回给cpu,npu与cpu设置在同一设备内,语音转写模型部署在npu上;
137.接收模块820,用于接收npu返回的转写结果。
138.本发明实施例提供的装置,结合嵌入式神经网络处理器的强大算力,在设备端部署了本地的语音转写模型,基于该语音转写模型对语音数据流进行离线转写,从而实现了高可靠度和高转写效率的设备端离线转写,设备端离线转写无需依赖网络,数据更加安全,也不存在网络传输带来的延时问题,转写显示更加及时流畅,有助于优化用户体验。
139.图9示例了一种拾音转写设备的实体结构示意图,如图9所示,该拾音转写设备可以包括:拾音设备、处理器(processor)910、通信接口(communications interface)920、存储器(memory)930和通信总线940,其中,处理器910,通信接口920,存储器930通过通信总线940完成相互间的通信。处理器910可以包括中央处理器cpu和嵌入式神经网络处理器npu。处理器910可以调用存储器930中的逻辑指令,以执行上述各方法提供的语音转写方法,该方法应用于嵌入式神经网络处理器npu,该方法包括:接收中央处理器cpu发送的语音数据
流,cpu与npu设置在同一设备内;基于语音转写模型,对语音数据流进行离线转写,并将转写结果返回给cpu,语音转写模型部署在npu上;
140.或者,以执行上述各方法提供的语音转写方法,该方法应用于中央处理器cpu,该方法包括:向嵌入式神经网络处理器npu发送语音数据流,以供npu基于语音转写模型对语音数据流进行离线转写,并将转写结果返回给cpu,npu与cpu设置在同一设备内,语音转写模型部署在npu上;接收npu返回的转写结果。
141.此外,上述的存储器930中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read
‑
only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
142.另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的语音转写方法,该方法应用于嵌入式神经网络处理器npu,该方法包括:接收中央处理器cpu发送的语音数据流,cpu与npu设置在同一设备内;基于语音转写模型,对语音数据流进行离线转写,并将转写结果返回给cpu,语音转写模型部署在npu上;
143.或者,能够执行上述各方法所提供的语音转写方法,该方法应用于中央处理器cpu,该方法包括:向嵌入式神经网络处理器npu发送语音数据流,以供npu基于语音转写模型对语音数据流进行离线转写,并将转写结果返回给cpu,npu与cpu设置在同一设备内,语音转写模型部署在npu上;接收npu返回的转写结果。
144.又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的语音转写方法,该方法应用于嵌入式神经网络处理器npu,该方法包括:接收中央处理器cpu发送的语音数据流,cpu与npu设置在同一设备内;基于语音转写模型,对语音数据流进行离线转写,并将转写结果返回给cpu,语音转写模型部署在npu上;
145.或者,以执行上述各方法提供的语音转写方法,该方法应用于中央处理器cpu,该方法包括:向嵌入式神经网络处理器npu发送语音数据流,以供npu基于语音转写模型对语音数据流进行离线转写,并将转写结果返回给cpu,npu与cpu设置在同一设备内,语音转写模型部署在npu上;接收npu返回的转写结果。
146.以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元展示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
147.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可
借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
148.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。