IP Library Granted Patent US 10,062,385
Granted Patent B2
US 10,062,385 · App. 15/281,228 · Granted Aug 28, 2018

Automatic speech-to-text engine selection

Inventors: Alexander Cook (Rochester, MN); Manuel Orozco (Rochester, MN); Christopher R. Sabotta (Rochester, MN); John M. Santosuosso (Rochester, MN)
Assignee: International Business Machines Corporation
G10L15/26G10L15/01G10L15/32G10L19/0018
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,062,385
App. No.
15/281,228
Granted
Aug 28, 2018
Kind
B2
Abstract

A system and method for selecting a speech-to-text engine are disclosed. The method includes selecting, by an engine selection component, at least two speech-to-text engines to decode a portion of computer-readable speech data. The portion of speech data can be decoded simultaneously by the selected speech-to-text engines for a designated length of time. In some embodiments portions of the speech data can be simultaneously decoded with selected speech-to-text engines at periodic intervals. An accuracy of decoding can be determined for each selected speech-to-text engine by an accuracy testing component. Additionally, the relative accuracies and speeds of the selected speech-to-text engines can be compared by an output comparison component. The engine selection component can then select the most accurate speech-to-text engine accurate to decode a next portion of speech data. Further, the engine selection module may select a speech-to-text engine that meets or exceeds a speed and/or accuracy threshold.

Claims (48)

1. A method of selecting a speech-to-text engine, comprising:

receiving computer-readable speech data;

selecting, at a first predetermined time, a first set of at least two speech-to-text engines to decode a first portion of the computer-readable speech data, wherein the first predetermined time is stored in adjustable decoding settings;

decoding simultaneously, for a predetermined duration, the first portion of the computer-readable speech data with the first set of at least two speech-to-text engines wherein the predetermined duration is stored in the adjustable decoding settings;

determining an accuracy of decoding for each of the first set of at least two speech-to-text engines;

selecting a speech-to-text engine from the first set of at least two speech-to-text engines to decode second portion of the computer-readable speech data;

decoding the second portion of the computer-readable speech data with the speech-to-text engine selected from the first set of the at least two speech-to-text engines;

selecting, at a second predetermined time, a second set of at least two speech-to-text engines to decode a third portion of the computer readable speech data, wherein the second predetermined time is stored in the adjustable decoding settings;

decoding simultaneously, for the predetermined duration, the third portion of the computer-readable speech data with the second set of at least two speech-to-text engines;

determining an accuracy of decoding for each of the second set of at least two speech-to-text engines;

selecting a speech-to-text engine from the second set of at least two speech-to-text engines to decode a fourth portion of the computer-readable speech data; and

decoding the fourth portion of the computer-readable speech data with the speech-to-text engine selected from the second set of at least two speech-to-text engines.

2. The method of claim 1 , wherein the computer-readable speech data is spoken language recorded during a telephone call.

3. The method of claim 1 , wherein a speed of decoding of a first one of the first set of at least two speech-to-text engines differs from a second one of the first set of at least two speech-to-text engines.

4. The method of claim 1 , wherein an accuracy of decoding of a first one of the first set of at least two speech-to-text engines differs from a second one of the first set of at least two speech-to-text engines.

5. The method of claim 1 , wherein the selecting the speech-to-text engine from the first set of at least two speech-to-text engines selects a speech-to-text engine having a higher accuracy of decoding.

6. The method of claim 1 , wherein the selecting the speech-to-text engine from the first set of at least two speech-to-text engines selects a speech-to-text engine that meets or exceeds a speed threshold.

7. The method of claim 1 , wherein the selecting the speech-to-text engine from the first set of at least two speech-to-text engines selects a speech-to-text engine that meets or exceeds an accuracy threshold.

8. The method of claim 1 , further comprising decoding simultaneously a predetermined number of subsequent portions of the computer-readable speech data with at least two subsequently selected speech-to-text engines at periodic intervals of a predetermined duration, wherein the number of subsequent portions and the predetermined interval duration are stored in the adjustable decoding settings.

9. The method of claim 1 , wherein the at least two speech-to-text engines convert the computer-readable speech data to text data.

10. A system comprising:

at least one processor;

at least one memory component;

at least two speech-to-text engines configured to decode computer-readable speech data, wherein the speech-to-text engines decode the computer-readable speech data for a predetermined duration that is stored in adjustable decoding settings;

an accuracy testing component configured to determine an accuracy of decoding for each of the at least two speech-to-text engines; and

an output comparison component configured to determine a difference in the accuracy of decoding of the at least two speech-to-text engines; and

an engine selection component configured to select at least one of the at least two speech-to-text engines to decode the computer-readable speech data based, at least in part, on the difference in the accuracy of decoding of the at least two speech-to-text engines determined by the output comparison component, wherein the engine selection component selects the at least one of the at least two speech-to-text engines at least one predetermined time that is stored in the adjustable decoding settings.

11. The system of claim 10 , wherein a speed of decoding of a first one of the at least two speech-to-text engines differs from a second one of the at least two speech-to-text engines.

12. The system of claim 10 , wherein an accuracy of decoding of a first one of the at least two speech-to-text engines differs from a second one of the at least two speech-to-text engines.

13. The system of claim 10 , wherein the engine selection component selects a speech-to-text engine having a higher accuracy of decoding.

14. The system of claim 10 , wherein the engine selection component selects a speech-to-text engine that meets or exceeds a speed threshold.

15. The system of claim 10 , wherein the engine selection component selects a speech-to-text engine that meets or exceeds an accuracy threshold.

16. The system of claim 10 , further configured to decode simultaneously a predetermined number of subsequent portions of the computer-readable speech data with the at least two speech-to-text engines at periodic intervals of a predetermined duration, wherein the number of subsequent portions and the predetermined interval duration are stored in the adjustable decoding settings.

17. A computer program product for selecting a speech-to-text engine, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the device to perform a method comprising:

receiving computer-readable speech data;

selecting, at a first predetermined time, a first set of at least two speech-to-text engines to decode a first portion of the computer-readable speech data, wherein the first predetermined time is stored in adjustable decoding setting;

decoding simultaneously, for a predetermined duration, the first portion of the computer-readable speech data with the first set of at least two speech-to-text engines, wherein the predetermined duration is stored in the adjustable decoding settings;

determining an accuracy of decoding for each of the first set of at least two speech-to-text engines;

selecting a speech-to-text engine from the first set of at least two speech-to-text engines to decode a second portion of the computer-readable speech data;

decoding the second portion of the computer-readable speech data with the speech-to-text engine selected from the first set of at least two speech-to-text engines;

selecting, at a second predetermined time, a second set of at least two speech-to-text engines to decode a third portion of the computer-readable speech data, wherein the second predetermined time is stored in the adjustable decoding settings;

decoding simultaneously, for the predetermined duration, the third portion of the computer-readable speech data with the second set of at least two speech-to-text engines;

determining an accuracy of decoding for each of the second set of at least two speech-to-text engines;

selecting a speech-to-text engine from the second set of at least two speech-to-text engines to decode a fourth portion of the computer-readable speech data; and

decoding the fourth portion of the computer-readable speech data with the speech-to-text engine selected from the second set of at least two speech-to-text engines.

18. The computer program product of claim 17 , wherein an accuracy of decoding of a first one of the first set of at least two speech-to-text engines differs from a second one of the first set of at least two speech-to-text engines.

19. The computer program product of claim 17 , wherein the selecting the speech-to-text engine from the first set of at least two speech-to-text engines selects a speech-to-text engine having a higher accuracy of decoding.

20. The computer program product of claim 17 , further comprising decoding simultaneously a predetermined number of subsequent portions of the computer-readable speech data with at least two subsequently selected speech-to-text engines at periodic intervals of a predetermined duration, wherein the number of subsequent portions and the predetermined interval duration are stored in the adjustable decoding settings.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 30, 2016
From: COOK, ALEXANDER; OROZCO, MANUEL; SABOTTA, CHRISTOPHER R.; SANTOSUOSSO, JOHN M.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 039902/0855 →
Continuity (1)
Related Publication 20180096687A1 · Apr 5, 2018