WO2019004582A1 - 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치 - Google Patents

아식칩과 스마트폰을 구비하는 실시간 음성인식 장치 Download PDF

Info

Publication number
WO2019004582A1
WO2019004582A1 PCT/KR2018/004853 KR2018004853W WO2019004582A1 WO 2019004582 A1 WO2019004582 A1 WO 2019004582A1 KR 2018004853 W KR2018004853 W KR 2018004853W WO 2019004582 A1 WO2019004582 A1 WO 2019004582A1
Authority
WO
WIPO (PCT)
Prior art keywords
smartphone
signal
outputting
unit
digital
Prior art date
Application number
PCT/KR2018/004853
Other languages
English (en)
French (fr)
Inventor
박홍준
노현규
이원철
정경원
Original Assignee
포항공과대학교 산학협력단
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 포항공과대학교 산학협력단 filed Critical 포항공과대학교 산학협력단
Priority to US16/626,862 priority Critical patent/US11183177B2/en
Publication of WO2019004582A1 publication Critical patent/WO2019004582A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • G10L15/187Phonemic context, e.g. pronunciation rules, phonotactical constraints or phoneme n-grams
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/76Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in application-specific integrated circuits [ASIC] or field-programmable devices, e.g. field-programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • G10L15/19Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • G10L2015/025Phonemes, fenemes or fenones being the recognition units
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command

Definitions

  • the present invention relates to a real-time speech recognition apparatus, and more particularly, to a method and apparatus for real-time speech recognition using a smartphone and an application specific integrated circuit (ASIC) chip without using a cloud computer, And a real-time voice recognition device including an intelligent chip and a smart phone capable of converting a voice input signal into a character in a short time and outputting the same.
  • ASIC application specific integrated circuit
  • Baidu send voice signals received from a user's terminal to a cloud computer, recognize voice through a massively parallel processing using a GPU connected to a cloud computer, and transmit the result to a user's terminal Retransmit.
  • Speech recognition technology using a cloud computer which is currently in use, has a slow response time due to the time required for internet communication between a cloud computer and a user, and voice signals of all users are sent to a cloud computer, which may cause personal privacy problems.
  • DNN Deep Neural Network
  • CNN Convolutional Neural Network
  • RNN Recurrent Neural Network
  • the entire speech recognition operation is performed by a software method using a central processing unit (CPU) and a GPU built in an application processor (AP) of a smart phone chip
  • CPU central processing unit
  • AP application processor
  • CMU Sphinx a typical speech recognition program, 60% of the time is used for processing acoustic models and 40% is used for processing grammar language models.
  • a conventional speech recognition apparatus transmits voice information inputted to a terminal such as a smart phone to a cloud computer through wireless or wired Internet communication, and the cloud computer transmits the voice information as a word text And the converted word character is retransmitted to the terminal through Internet communication.
  • the processing speed of the cloud computer is very fast, but the delay time becomes long due to the time required for the two Internet communication between the terminal and the cloud computer.
  • ASIC Application Specific Integrated Circuit
  • a real-time speech recognition apparatus comprising an ASIC chip and a smartphone according to a first embodiment of the present invention is a real-time speech recognition apparatus that receives a first digital speech signal and outputs a feature vector, An asic (ASIC) chip for outputting scores; And a smartphone connected to the ASIC chip through a data port, receiving the phoneme probability score from the ASIC chip, outputting a word character, processing the word character according to a user's need, and outputting the word character, And a control unit.
  • ASIC An asic
  • a real-time voice recognition apparatus including an ASIC chip and a smartphone includes a DRAM chip that outputs first parameter data Dp1 and receives second parameter data Dp2 as input; An ASIC chip for receiving a first digital voice signal and the first parameter data Dp1 and outputting a phoneme probability score PS and second parameter data Dp2; And a smartphone connected to the ASIC chip through a data port, receiving the phoneme probability score from the ASIC chip, outputting a word character, processing the word character according to a user's need, and outputting the word character, And a control unit.
  • the privacy of the individual is guaranteed by using one smartphone and one ASIC chip without using a cloud computer, and the delay time is short There is an effect that the voice input signal can be converted into letters and output in real time.
  • FIG. 1 is a block diagram of a real-time voice recognition apparatus including an ASIC chip and a smartphone according to a first embodiment of the present invention.
  • FIG. 2 is a diagram illustrating a boundary frequency value of a frequency band used in a real-time voice recognition apparatus including an ASIC chip and a smartphone according to the first embodiment of the present invention.
  • FIG. 3 is a detailed block diagram of a feature extracting unit of a real-time voice recognition apparatus including an ASIC chip and a smartphone according to a first embodiment of the present invention.
  • BPF band-pass filter
  • FIG. 5 is a detailed block diagram of a speech model processing unit of a real-time speech recognition apparatus including an ASIC chip and a smartphone according to a first embodiment of the present invention.
  • FIG. 6 is a detailed block diagram of a connection device and a smartphone in the first embodiment of the present invention shown in FIG. 1;
  • FIG. 7 is a conceptual diagram illustrating the operation of the grammar language model processing unit of the real-time voice recognition apparatus including the smartphone and the smartphone according to the first embodiment of the present invention.
  • FIG. 8 is a diagram illustrating pseudo code of a speech recognition program executed in a smartphone of a real-time speech recognition apparatus including an ASIC chip and a smartphone according to the first embodiment of the present invention.
  • FIG. 9 is a block diagram of a third digital voice signal generator of a real-time voice recognition device including an alphanumeric chip and a smartphone according to the first embodiment of the present invention.
  • FIG. 10 is a diagram for explaining a program operation of an output processing unit of a real-time voice recognition apparatus including an ASIC chip and a smartphone according to the first embodiment of the present invention.
  • FIG. 11 is a block diagram of a real-time voice recognition apparatus including an ASIC chip and a smartphone according to a second embodiment of the present invention.
  • FIG. 12 is a detailed block diagram of a speech model processing unit of a real-time voice recognition apparatus including an ASIC chip and a smartphone according to a second embodiment of the present invention.
  • FIG. 13 is a detailed block diagram of a connection device and a smartphone in a second embodiment of the present invention.
  • the time required for the speech recognition apparatus to process the speech data of a predetermined duration must be shorter than the duration of the speech data.
  • a value obtained by dividing the duration of the voice data processed at one time by the voice recognition device by the voice data processing time of the voice recognition device is defined as a real time factor in order to quantitatively display whether or not to process in real time.
  • the real-time factor must be greater than 1.0.
  • Kaldi a general speech recognition program, it is known that real-time operation is impossible because the real-time factor is 0.55 when the personal computer (PC) 3.7 GHz clock CPU is used.
  • the speech recognition process is configured as follows.
  • the input speech speech is sequentially processed into word texts by feature extraction, acoustic model processing, and lexical language model processing. .
  • an external ASIC chip is connected in a dongle form to a data port of a smartphone, a voice signal input to the smartphone is transmitted to the ASIC chip, If the transmitted speech signal is converted into a word character and transmitted to the smartphone, a real-time speech recognition apparatus having a very short delay time without personal privacy problem can be implemented.
  • a co-design method of hardware and software is used to implement a real-time voice recognition device having no privacy problem and a short delay time with the current technology.
  • GRU gated recurrent unit
  • a word dictionary and a sentence dictionary necessary for processing the grammar language model are stored in a memory unit such as a flash memory or a DRAM built in a smart phone and the time required for processing the grammar language model
  • the CPU (central processing unit) of the AP (application processor) built in the smartphone and the GPU are simultaneously operated to perform the parallel processing.
  • GPU parallel processing program can be facilitated by using Open Computing Language (hereinafter referred to as 'OpenCL') developed for GPGPU (general purpose GPU) program.
  • 'OpenCL' Open Computing Language developed for GPGPU (general purpose GPU) program.
  • a real-time voice recognition device is constituted by one ASIC chip and one smart phone.
  • one DRAM chip is added to the components of the first embodiment, ,
  • a real-time voice recognition device is configured with one DRAM chip and one smart phone.
  • FIG. 1 is a block diagram of a real-time voice recognition apparatus including an ASIC chip and a smartphone according to a first embodiment of the present invention.
  • a real-time voice recognition apparatus 1000 including an ASIC chip and a smartphone according to the present invention receives a first digital voice signal A IN and outputs a feature vector FV, (ASIC) chip 100 for outputting a phoneme probability score PS from an ASIC chip via a data port and inputting the phoneme probability score PS from the ASIC chip through a data port And outputting a word character (Word Text) and processing the word character according to a user's need and outputting the word character.
  • ASIC feature vector FV,
  • the ASIC chip 100 includes an input signal selection unit 110, a feature extraction unit 120, an audio model processing unit 130, a power supply voltage conversion unit 140, and a connection device 150 Respectively.
  • the input signal selection unit 110 receives a second digital voice signal A2 received by the microphone of the smartphone and transmitted to the input signal selection unit 110 through the data port 210 of the smartphone and the connection device 150, And a third digital audio signal A3 received from an external microphone other than the microphone of the smartphone 200 and transmitted to the input signal selection unit 110 to output the first digital audio signal AIN , .
  • the second digital audio signal (A2), the third digital audio signal (A3) and the first digital audio signal (A IN ) are all digital converted audio signals.
  • the feature extraction unit 120 receives the first digital audio signal A IN and outputs the feature vector FV having 41 components. It is known that the human ear can not linearly distinguish the frequencies of Hertz units and is linearly responsive to the frequency of the Mel frequency m.
  • the Mel frequency m for the conventional frequency f expressed in Hertz units is expressed by Equation 1. If the frequency bands are divided into several equal intervals in the Mel frequency band, the low frequency band is finely divided in the existing frequency band, It is divided into bloom.
  • FIG. 2 is a diagram illustrating a boundary frequency value of a frequency band used in a real-time voice recognition apparatus including an ASIC chip and a smartphone according to the present invention.
  • the feature extraction unit 120 receives the first digital voice signal A IN and at least one first control signal C1 and outputs the feature vector FV.
  • the feature extraction unit 120 includes a fast Fourier transform unit 121, a plurality of band pass filters (BPF) 122, a plurality of integrators INT 123, a plurality of log units 124, And a cosine transform unit (I-DCT) 125. (Fig. 3)
  • the speech model processing unit 130 receives the feature vector FV and at least one second control signal C2 and outputs the phoneme probability score PS.
  • the power supply voltage conversion unit 140 receives the second DC voltage DC2 from the connection device 150 and outputs the third DC voltage DC3 to the input signal selection unit 110, And the speech model processing unit 130, respectively.
  • the connection device 150 receives the phoneme probability score PS from the speech model processor 130 and outputs the phoneme probability score PS to the smartphone 200 and outputs the data and the first DC voltage DC1 from the smartphone 200. [ And outputs the input selection control signal SEL, the first control signal C1, the second control signal C2, and the second DC voltage DC2.
  • connection device 150 is connected to the smartphone through a data port 210 of the smartphone and transmits the second digital voice signal A2 and the input selection control signal And outputs one or more of the first control signals C1 to the feature extraction unit 120 and the one or more second control signals C2 to the speech model processing unit 130, And outputs the second DC voltage DC2 to the power supply voltage converting unit 140.
  • the feature extraction unit 120 and the acoustic model processor 130 are implemented in an ASIC chip and a grammar language model processing unit 220 ) Is performed by the GPU 270 in the smartphone with the parallel processing software, real time processing can be performed without implementing the large-capacity memory required for the operation of the grammar language model processor in the ASIC chip.
  • a voice signal continuously inputted with respect to time is divided and processed in units of time frames.
  • the time taken for the voice recognition device to process voice input data of one time frame unit e.g., 10 ms
  • the unit frame duration e.g. 10 ms.
  • a real time factor is defined as Equation (2), and a real time operation is possible only when the real time factor is greater than one.
  • the feature vector FV is composed of 41 signals by adding the energy of the first digital speech signal A IN for one frame time to a 40 channel MFCC (Mel frequency cepstrum coefficient) output.
  • the feature vector FV is input to an acoustic model processor 130 located in the ASIC chip.
  • the speech model processor 130 outputs a phoneme score (PS) corresponding to the feature vector do.
  • PS phoneme score
  • the phoneme corresponds to the minimum unit syllable of speech. In English and Korean, the phoneme is generally divided into about 40 to 61. In the embodiment of the present invention, the necessary margin for the training process is added to the phoneme probability score (PS) is 61.
  • the phoneme probability score indicates a vector value as a table for calculating the probability that the feature vector corresponds to each phoneme.
  • the smartphone operates a program of a lexical / language model processing unit 220 to find a word corresponding to the phoneme probability score, Output in word text.
  • the output word text is input to the program of the output processing unit 230 of FIG. 1 and converted into a form that is convenient for the user to use.
  • FIG. 3 is a detailed block diagram of a feature extracting unit of a real-time voice recognition apparatus including an ASIC chip and a smartphone according to the present invention.
  • the feature extraction unit 120 includes a fast Fourier transform unit 121, a plurality of band pass filters 122, a plurality of integrators 123, a plurality of log units 124, and an inverse discrete cosine transform unit 125 .
  • the feature extraction unit 120 is input the first digital in the audio signal (A IN) fast Fourier transformer 121 for the fast Fourier transform (FFT: fast Fourier transform), the fast Fourier transform unit (121, and performs Is passed through 40 band-pass filters (BPF) 122 and the power for a plurality of frequencies which are the outputs of the respective band-pass filters 122 in 40 integrators 123
  • the power spectrum is converted into one power value by passing through one integrator 123 (Parseval's theorem).
  • the inverse discrete cosine transform unit 125 performs inverse discrete cosine transform on the 40 log values obtained after taking log values from the plurality of log units 124 for the converted power values, And performs an inverse discrete cosine transform (I-DCT) to output 40 mel frequency cepstrum coefficients (MFCCs).
  • I-DCT inverse discrete cosine transform
  • the first digital audio signal AIN input to the feature extraction unit 120 is 16-bit PCM (Pulse Code Modulation) data having a sampling rate of 16 kS / sec.
  • the first digital audio signal A IN is divided into 10- One frame data is composed of 160 pieces of 16-bit data.
  • the 10-ms frame data is combined with the 20-ms data input immediately before to generate 480 pieces of 3-frame data, which are input in the most recent time. 16 pieces of 16 bits of data are added by adding '16' s '0' before and after the 480 pieces of data (zero padding), and FFT is performed on the 512 pieces of data.
  • the FFT result represents a power spectrum value for frequencies arranged in a uniform frequency interval of 31.25 Hz from 0 (DC) to 8000 Hz.
  • FIG. 4 is a graph showing transfer function characteristics of the band-pass filter of FIG. 3.
  • Each of the 40 band-pass filters 122 has a transfer function in the form of a triangular pyramid as shown in FIG. 4, and the transfer function is not 0 in only two adjacent frequency bands out of the 41 frequency bands shown in FIG. 2 Value, and the coefficients of each transfer function are adjusted so that the area of each transfer function is the same.
  • the number of samples for fast Fourier transform is set to 512 because all the channels of the 40 MFCC channels include the output spectrum values of three or more Fast Fourier transformers 121 .
  • FIG. 5 is a detailed block diagram of a speech model processing unit of a real-time speech recognition apparatus including an ASIC chip and a smartphone according to a first embodiment of the present invention.
  • the speech model processing unit 130 receives the feature vector FV having 41 components and outputs a phoneme score score (PS) having 61 components.
  • PS phoneme score score
  • the voice model processing unit 130 needs to be implemented in the ASIC chip. Therefore, in the simplest method among the LSTM (long short term memory) Use the known gated recurrent unit (GRU) method.
  • GRU gated recurrent unit
  • the concept of the present invention is applicable to all LSTM-RNN schemes.
  • the GRU-RNN 131 shown in FIG. 5 receives the input signal vector x_t, the state vector h_t-1 of the previous time, and the parameter value param, and outputs the state vector h_t.
  • the time delay element 136 composed of flip-flops receives h_t as an input and outputs h_t-1.
  • the first multiplexers MUX1 and MUX13 receive the third control signal C3 by receiving the h_t-1, the feature vector FV output from the feature extraction unit 120, and the third control signal C3, And selects one of the h_t-1 and the feature vector to output the selected vector as x_t.
  • L2 and L3 and the fourth control signal C4 in accordance with the fourth control signal C4 to select one of the L1, L2 and L3, and the GRUX- And outputs the parameter value (param) of the RNN.
  • the parameter value (param) is a component value of six matrices (W, U, Wz, Uz, Wr, Ur) and three vectors (bz, bh, br) necessary for GRU-RNN operation.
  • the DNN 132 receives the h_t-1 and the fifth control signals C5 and receives the h_t-1 corresponding to the h_t-1 when the fifth control signal C5 is active. And outputs a probability score (PS) vector.
  • PS probability score
  • the parameters L1, L2 and L3 correspond to the parameters (params) (W, U, Wz, Uz, Wr, Ur, bz, bh and br) corresponding to the three layers of the GRU- And is stored in the memory 133.
  • the controller 135 outputs different combinations of the control signals C3, C4, and C5 to control the operation of each layer.
  • the first muxes (MUX1, 137) select the feature vector (FV) and output it as x_t
  • the second muxes (MUX2, 134) select the L1 and output it as the parameter value (param)
  • the first muxes (MUX1, 137) select the h_t-1 and output it as x_t in the layer 2 operation performed after the layer 1 operation
  • the second muxes (MUX2, 134) (MUX1, 137) selects the h_t-1 and outputs it as x_t in the layer 3 operation performed after the layer 2 operation, Selects L3 and outputs it as a parameter value (param).
  • the fifth control signal C5 is changed to an active state to operate the DNN 132 to output a phoneme probability score PS, And repeats the above process.
  • GRU-RNN operation of three layers is performed by using only one GRU-RNN hardware and changing only the parameter value (param).
  • the internal operations of the GRU-RNN 131 of FIG. 5 are expressed by the following equations (3), (4), (5) and (6).
  • the sigmod function of Equation (4) and Equation (6) is a function for converting the values in parentheses ⁇ to values between 0 and 1.
  • the tanh function of Equation (5) To a value of.
  • the three-layer GRU-RNN operation is performed to increase the accuracy of voice recognition, and the number of states is set to 256. Therefore, Wz, Uz, W, U, Wr and Ur in the equations (4), (5) and (6) are 256 x 256 matrix and bz, bh and br are vectors each having 256 components. Since six 256 x 256 matrices and three 256 x 1 vectors are required for each layer of the three layers and a 256 x 61 matrix and one 256 x 1 vector are required for the last DNN 132, The number of parameter values (param) required for operation of the three-layer GRU-RNN with 256 states is approximately 1.2 million as shown in Equation (7).
  • the number of parameters of the GRU-RNN structure is smaller than the LSTM-RNN structure by about 45% in the embodiment of the present invention.
  • FIG. 6 is a detailed block diagram of a connection device and a smartphone in the first embodiment of the present invention shown in FIG. 1;
  • the connection device 150 includes a connection device circuit part 151 included in the ASIC chip 100 and an electrical connection device 152.
  • the connection device circuit part 151 uses a USB 1.1 or USB 2.0 standard as a USB PHY / LINK type circuit part.
  • the electrical connection device 152 is used to connect the connection device circuit part 151 to the data port 210 of the smartphone 200.
  • the electrical connector 152 comprises a connector or a combination of a connector and a cable and the connector or cable includes four leads D +, D-, VBUS, GND in accordance with the USB 1.1 / USB 2.0 standard, Cable colors of the D +, D-, VBUS, and GND conductors are green, white, red, and black, respectively.
  • the electrical connection device 152 of the connection device 150 may supply the first DC voltage DC1, 5V from the smartphone 200 through the VBUS and the GND lead, And supplies it as a second DC voltage DC2 to the power supply voltage converting unit 140.
  • the electrical connection device 152 of the connection device 150 forms a two-way differential signal transmission line with the D +, D-, and GND conductors to connect the connection device circuit part 151 and the smart phone 200 And connects the data port 210.
  • the differential signal transmission path transmits the voice signal received by the microphone 290 built in the smartphone 200 to the input signal selector 110, MUX built in the ASIC chip 100, (A2) input.
  • the voice signal received by the microphone 290 may be transmitted to an audio codec 280, a smartphone bus 250, a USB host controller 240, a smart phone data port 210, The electrical connection device 152 of the connection device 150 and the connection device circuit 151 in order and input to the input signal selector 110 (MUX).
  • the bidirectional differential signal transmission path may also receive control signals from the CPU 260 of the smartphone to the input signal selection unit 110, the feature extraction unit 120 and the voice model processing unit 130 of the ASIC chip And transmits the phoneme probability score PS output from the speech model processing unit 130 of the ASIC chip to the CPU 260 or the GPU 270 of the smartphone.
  • FIG. 7 is a conceptual diagram for explaining a program operation of a grammar language model processing unit of a real-time voice recognition apparatus including an ASIC chip and a smartphone according to the present invention.
  • the grammatical language model processing requires a vast amount of word dictionary and sentence dictionary, so it is difficult to perform in a hardware manner in an ASIC chip. Accordingly, in the present invention, the grammar language processing is performed in a software manner using a smart phone.
  • the GRU-RNN algorithm used in the speech model processing is difficult to perform parallel processing using a GPU (graphic processing unit) because the immediately preceding data result is used for the next calculation. Therefore, in the present invention, the grammar language model processing unit uses a weighted finite state transducer (WFST) algorithm without using the GRU-RNN algorithm.
  • WFST weighted finite state transducer
  • the grammar language model processing unit 220 receives a phoneme probability score (PS) and outputs a word text.
  • PS phoneme probability score
  • the grammar language model processing unit 220 adopts a software method that utilizes a CPU / GPU and a memory element of an AP (application processor) included in a smart phone.
  • the grammar language model processing unit 220 includes a grammar language model processing program 221 executed in a CPU / GPU of a smartphone, And a word dictionary 222 and a sentence dictionary 223 stored in the DRAM, which is one of the elements.
  • the grammatical language model is grouped into two stages, a grammatical model and a language model.
  • the grammar language model processing program 221 applies the WFST algorithm to the input phoneme probability score PS and outputs the word text using the word dictionary 222 and the sentence dictionary 223 do.
  • the execution time of the grammar language model processing program 221 is minimized by utilizing the general purpose GPU parallel program using OpenCL to ensure real-time operation.
  • FIG. 8 is a diagram showing pseudo code of a speech recognition program executed in a smart phone of a real-time speech recognition apparatus including an ASIC chip and a smartphone according to the present invention.
  • FIG. 9 is a circuit diagram of a third digital voice signal generation unit of a real-time voice recognition apparatus having an ASIC chip and a smartphone according to the present invention.
  • the third digital audio signal generator 160 processes a plurality of analog signals received from the plurality of microphones 300 and outputs the processed analog audio signals as one third digital audio signal A3.
  • a plurality of analog amplifiers 163 for receiving the output signals of the plurality of microphones 300 as respective inputs and outputting amplified analog signals
  • a plurality of analog amplifiers 163 for receiving the outputs of the analog amplifiers
  • To-digital converter 162 and one digital signal processor 161 for receiving all the outputs of the plurality of analog-to-digital converters and outputting one of the third digital audio signals A3.
  • the digital signal processor 161 includes a beamforming function and a noise reduction function.
  • the plurality of analog amplifiers 163, the plurality of analog-to-digital converters 162 and the one digital signal processor 161 are connected to an input signal selector 110, a feature extractor 120, an audio model processor 130 The power supply voltage conversion unit 140, and the connection device circuit unit 151, in one ASIC chip 100.
  • FIG. 10 is a diagram for explaining a program operation of an output processing unit of a real-time voice recognition apparatus having an ASIC chip and a smartphone according to the present invention.
  • the output processing unit 230 of the real-time voice recognition apparatus including the ASIC chip and the smartphone according to the present invention can easily use the word text, which is the output of the grammar language model processing unit 220, Conversion.
  • the output processing unit 230 displays a word text, which is an output of the grammar language model processing unit 220, on the display 231 of the smartphone 200, And outputs the voice to the smartphone through a speaker 234 connected to the smartphone through a wired or wireless connection or outputs the voice to the smartphone through the wireless transmission device 235 of the smartphone, To the other apparatus 400 of FIG.
  • FIG. 11 is a block diagram of a real-time voice recognition apparatus including an ASIC chip and a smartphone according to a second embodiment of the present invention.
  • FIG. 11 shows a DRAM chip 500, a DRAM controller 170, and five signals added to FIG.
  • the five signals are the first parameter data Dp1, the second parameter data Dp2, the third parameter data Dp3, the fourth parameter data Dp4 and the sixth control signal C6, respectively.
  • approximately 1.2 million parameters are required (Equation 7) to implement a GRU-RNN with three neural network layers and a state number of 250,
  • Equation 7 In the parameter memory 133 of the speech model processing unit 130 shown in Fig.
  • the parameter memory 133 is formed in the form of a static random access memory (SRAM) in the ASIC chip, and occupies a considerably wide chip area. Therefore, in the first embodiment of the present invention, it is difficult to increase the number of neural network layers to 4 or more due to the chip area limitation of the parameter memory 133. [ Recently, the number of neural networks is 7 in a speech recognition apparatus with word accuracy of 95% or more.
  • SRAM static random access memory
  • a separate DRAM chip 500 is added to increase the number of hierarchical layers of the neural network to 8 or more to store the parameters required for the GRU-RNN operation in the DRAM chip.
  • the parameter values necessary for performing the GRU-RNN operation are read from the DRAM chip 500 whenever necessary.
  • the DRAM chip 500 outputs the first parameter data Dp1, And inputs the first parameter data Dp1 and outputs the third parameter data Dp3.
  • the speech model processing unit 130 receives the third parameter data Dp3 and performs a GRU-RNN operation.
  • the connection device 150 downloads the parameter values from the smartphone 200 through the data port 210 to the DRAM chip 500 during the neural network training process. And outputs a sixth control signal (C6) and fourth parameter data (Dp4).
  • the DRAM control unit 170 receives the sixth control signal C6 and the fourth parameter data Dp4 and outputs the fourth parameter data Dp4 as the second parameter data Dp2 according to the sixth query signal.
  • the DRAM chip 500 receives the second parameter data Dp2 and stores the second parameter data Dp2 in the DRAM chip 500.
  • the DRAM chip 500 is a graphic DRAM and the first parameter data Dp1, the second parameter data Dp2 and the third parameter data Dp3 are 8 bits or more digital binary data, Signal.
  • FIG. 12 is a detailed block diagram of a speech model processing unit of a real-time voice recognition apparatus including an ASIC chip and a smartphone according to a second embodiment of the present invention.
  • the DRAM control unit 170 receives the sixth control signal C6 as the output signal of the connection device 150 and the first parameter data Dp1 as the output signal of the DRAM chip 500, And outputs the first parameter data Dp1 as the third parameter data Dp3 according to the control signal.
  • the buffer memory 138 receives the third parameter data Dp3 and outputs a parameter value param.
  • the parameter value (param) is input to the GRU-RNN 131 and is used as a component of the six matrices Wz, Uz, W, U, Wr, Ur of Equations (4) Value.
  • the parameter value (param) represents 250 parameter values.
  • the third parameter data Dp3 is a 32-bit binary digital signal
  • the number of bits of the input signal Dp3 and the output signal param of the buffer memory 138 are 32 bits and 4,096 bits, respectively,
  • the buffer memory 138 controls the number of bits of the input signal and the number of bits of the output signal.
  • the GRU-RNN is composed of 250 parallel MACs and the DRAM chip 500 is a graphics DRAM outputting 5-Gbps 32-bit parallel output using GDDR5 (graphic double data rate 5) standard
  • FIG. 13 is a detailed block diagram of a connection device and a smartphone in a second embodiment of the present invention.
  • the DRAM chip 500 uses the third DC voltage DC3 supplied from the ASIC chip 100 as a supply voltage.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Mathematical Physics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Telephone Function (AREA)

Abstract

본 발명은 클라우드 컴퓨터를 사용하지 않고 한 개의 스마트폰과 한 개의 아식(Application Specific Integrated Circuits:ASIC) 칩을 사용함으로써 개인의 프라이버시가 보장되고 지연시간이 짧아 실시간으로 음성 입력신호를 글자로 변환하여 출력하는 것이 가능한 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치에 관한 것이다. 상기 실시간 음성인식장치에 한 개의 DRAM칩을 선택적으로(optionally) 추가하면 신경망 계층(neural network layer) 숫자를 증가시켜 음성 입력신호를 글자로 변환하는 정확도를 크게 향상시킬 수 있다.

Description

아식칩과 스마트폰을 구비하는 실시간 음성인식 장치
본 발명은 실시간 음성인식 장치에 관한 것으로, 더욱 상세하게는 클라우드 컴퓨터를 사용하지 않고 한 개의 스마트폰과 한 개의 아식(Application Specific Integrated Circuits:ASIC) 칩을 사용함으로써 개인의 프라이버시가 보장되고 지연시간이 짧아 실시간으로 음성 입력신호를 글자로 변환하여 출력하는 것이 가능한 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치에 관한 것이다.
2012년에 그래픽처리장치(Graphic Processing Unit:이하 'GPU'라 한다.)의 보급과 알렉스넷(Alexnet)의 등장으로 기계학습(machine learning)의 정확도가 획기적으로 개선되어 영상인식, 음성인식 및 의료진단을 포함한 광범위한 응용분야에 기계학습이 활발하게 적용되기 시작하였다.
현재 바이두(Baidu)등 대부분의 음성인식 장치는 사용자의 단말기에서 수신한 음성신호를 클라우드 컴퓨터로 전송하고 클라우드 컴퓨터에 연결된 GPU를 활용한 대규모 병렬처리를 통해 음성을 인식하고 그 결과를 사용자의 단말기로 재전송한다.
현재 클라우드 컴퓨터를 사용하는 음성인식장치는 정확도가 95% 정도에 도달하여, 미국의 전화회사에서는 청각장애가 있는 사용자를 위해 사용자의 전화기에 엘씨디(Liquid Crystal Display:LCD) 등의 평판 디스플레이 화면을 부착하고, 전화국에서 사용자의 전화기로 음성신호와 글자(text) 신호를 동시에 전송하여 글자신호는 사용자의 전화기에 부착된 평판 디스플레이에 표시하고 음성신호는 사용자의 귀 가까이에 위치하는 수화기에 동시에 전달함으로써, 청각장애가 있는 사용자가 전화통화를 보다 쉽게 할 수 있게 하였다.
현재 많이 사용되고 있는 클라우드 컴퓨터를 이용한 음성인식기술은, 클라우드 컴퓨터와 사용자 사이의 인터넷 통신에 필요한 시간때문에 반응시간이 느리고 모든 사용자의 음성신호가 클라우드 컴퓨터로 보내지므로 개인의 프라이버시 문제가 발생할 소지가 있다.
반응시간과 개인 프라이버시의 문제를 해결하기 위해, 최근에는 소프트웨어 기계학습 알고리즘인 심층신경망(Deep Neural Network:이하 'DNN'이라 한다.), 회선신경망(Convolutional Neural Network:이하 'CNN' 이라 한다.), 순환신경망(Recurrent Neural Network:이하 'RNN'이라 한다.) 등을 하드웨어인 현장프로그래머블 게이트 어레이(Field Programmable Gate Array:이하 'FPGA'라 한다.)나 ASIC 칩으로 구현하여 음성인식의 동작속도를 빠르게 하고 전력소모도 감소시키는 연구가 활발하게 진행되고 있다 (ISSCC 2017등).
음성신호는 비교적 긴 시간동안 특성이 지속되는 성질 때문에, 음성인식을 위해서는 RNN 알고리즘과 엘에스티엠(Long Short-Term Memory:이하 'LSTM'이라 한다.) 알고리즘을 동시에 사용하는 것이 효과적이라고 알려져 있다. 음성인식을 위해 LSTM-RNN을 FPGA로 구현한 연구가 발표되었는데, 문법언어모델(Lexical/Language model) 처리에 필요한 단어사전(word dictionary)과 문장사전(sentence dictionary)을 저장하기 위해 FPGA칩 외부에 위치하는 수백 Mbit 이상의 대용량 메모리 칩을 필요로 한다. 이러한 대용량 메모리를 로직회로와 같이 한 개의 ASIC 칩에 구현하기가 어려워 음성인식용 LSTM-RNN을 ASIC 칩으로 구현한 연구는 아직 발표되지 않았다.
스마트폰의 응용프로세서(Application Processor:이하 'AP'라 한다.) 칩에 내장된 중앙처리장치(Central Processing Unit:이하 'CPU'라 한다.)와 GPU를 활용하여 소프트웨어 방식으로 전체의 음성인식 동작을 수행할 수 있으나 이러한 경우에도 실시간(real time) 동작을 수행하기에는 어려움이 있다.
일반적인 음성인식 프로그램인 씨엠유 스핑크스(CMU Sphinx)의 경우에 60% 정도 시간은 음성모델(Acoustic model) 처리에 사용되고 40% 정도 시간은 문법언어모델 처리에 사용된다.
즉, 기존의 음성인식장치는, 스마트폰 등의 단말기(terminal)에 입력된 음성정보를 무선 또는 유선의 인터넷 통신을 통하여 클라우드 컴퓨터에 전송하고 클라우드 컴퓨터가 상기 음성정보를 단어글자(word text)로 변환하고 변환된 단어글자를 인터넷 통신을 통하여 상기 단말기로 재전송한다. 이러한 기존의 음성인식 방식에서는 클라우드 컴퓨터의 처리속도는 매우 빠르지만 단말기와 클라우드 컴퓨터 사이의 두 번의 인터넷 통신에 소요되는 시간 때문에 지연시간이 길어져서 실시간 동작이 어려운 경우가 많다.
또한 사용자의 모든 음성정보가 클라우드 컴퓨터에 집중되므로, 사용자의 대화내용에 대한 개인 프라이버시 문제가 발생할 소지도 있다.
본 발명이 해결하고자 하는 기술적 과제는, 클라우드 컴퓨터를 사용하지 않고 한 개의 스마트폰과 한 개의 아식(Application Specific Integrated Circuits:ASIC) 칩을 사용하여 실시간으로 음성 입력신호를 글자로 변환하여 출력함으로써, 지연시간이 짧고 개인 프라이버시 문제가 없으며 실시간으로 처리가 가능한 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치를 제공하는데 있다.
본 발명의 제1 실시예에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치는, 실시간 음성인식 장치에 있어서, 제1 디지털 음성신호를 입력으로 받아 특징벡터를 출력하고 상기 특징벡터로부터 음소확률점수를 출력하는 아식(ASIC)칩; 및 데이터 포트를 통해 상기 아식(ASIC)칩과 연결되며 상기 아식(ASIC)칩으로부터 상기 음소확률점수를 입력으로 받아 단어글자를 출력하고 상기 단어글자를 사용자의 필요에 따라 처리하여 출력하는 스마트폰;을 포함하는 것을 특징으로 한다.
본 발명의 제2 실시예에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치는, 제1 파라미터 데이터(Dp1)를 출력하고 제2 파라미터 데이터(Dp2)를 입력으로 받는 디램(DRAM)칩; 제1 디지털 음성신호와 상기 제1 파라미터 데이터(Dp1)를 입력으로 받아 음소확률점수(PS)와 제2 파라미터 데이터(Dp2)를 출력하는 아식(ASIC)칩; 및 데이터 포트를 통해 상기 아식(ASIC)칩과 연결되며 상기 아식(ASIC)칩으로부터 상기 음소확률점수를 입력으로 받아 단어글자를 출력하고 상기 단어글자를 사용자의 필요에 따라 처리하여 출력하는 스마트폰;을 포함하는 것을 특징으로 한다.
본 발명에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치에 의하면, 클라우드 컴퓨터를 사용하지 않고 한 개의 스마트폰과 한 개의 아식(ASIC) 칩을 사용함으로써 개인의 프라이버시가 보장되고 지연시간이 짧아 실시간으로 음성 입력신호를 글자로 변환하여 출력할 수 있는 효과가 있다.
도 1은 본 발명의 제1 실시예에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 블록도이다.
도 2는 본 발명의 제1 실시예에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치에서 사용하는 주파수 대역의 경계 주파수 값을 나타내는 도면이다.
도 3은 본 발명의 제1 실시예에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 특징추출부의 상세 블록도이다.
도 4는 도 3의 대역통과필터(BPF)의 전달함수 특성을 나타내는 도면이다.
도 5는 본 발명의 제1 실시예에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 음성모델처리부의 상세 블록도이다.
도 6은 도 1에 도시된 본 발명의 제1 실시예에서 연결장치와 스마트폰의 상세 블록도이다.
도 7은 본 발명의 제1 실시예에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 문법언어모델처리부의 동작을 설명하는 개념도이다.
도 8은 본 발명의 제1실시예에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 스마트폰에서 수행되는 음성인식 프로그램의 의사 코드(pseudo code)를 나타내는 도면이다.
도 9는 본 발명의 제1 실시예에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 제3 디지털 음성신호 생성부의 블록도이다.
도 10은 본 발명의 제1 실시예에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 출력처리부의 프로그램 동작을 설명하기 위한 도면이다.
도 11은 본 발명의 제2 실시예에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 블록도이다.
도 12는 본 발명의 제2 실시예에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 음성모델처리부의 상세 블록도이다.
도 13은 본 발명의 제2 실시예에서 연결장치와 스마트폰의 상세 블록도이다.
본 발명에서는 지연시간이 짧고 개인 프라이버시 문제가 없으며 실시간으로 처리가 가능한 음성인식 장치를 구현하고자 한다.
실시간 처리가 가능하기 위해서는, 음성인식장치가 어떤 정해진 지속시간의 음성데이터를 처리하는데 소요되는 시간이 상기 음성데이터의 지속시간보다 짧아야 한다. 실시간 처리 여부를 정량적으로 표시하기 위해, 음성인식장치가 한 번에 처리하는 음성데이터 지속시간을 상기 음성인식장치의 상기 음성데이터 처리 시간으로 나눈 값을 실시간 팩터(real time factor)라고 정의한다. 실시간 동작이 되려면, 실시간 팩터가 1.0 보다 커야 한다. 일반적인 음성인식 프로그램인 칼디(Kaldi)의 경우에, 개인용 컴퓨터(PC)의 3.7GHz 클락 CPU를 사용하여 실행하면 실시간 팩터가 0.55가 되어, 실시간 동작이 불가능하다고 알려져 있다.
그런데 개인 프라이버시 문제가 없는 실시간 음성인식 동작을 달성하기 위해서는, 클라우드 컴퓨터를 사용하지 않고 스마트폰 등의 단말기를 사용하여 음성인식 동작을 빠르게 처리할 수 있어야 한다. 음성인식 처리과정은 다음과 같이 구성된다. 입력된 음성신호(audio speech)가 특징추출(feature extraction), 음성모델처리(acoustic model processing), 문법언어모델처리(lexical language model processing) 과정을 순차적으로(sequentially) 거쳐 단어글자(word text)로 변환된다.
소프트웨어 방식으로 음성인식장치를 구현하기 위해, 대표적 단말기인 현재의 스마트폰만을 사용하여 음성인식 동작을 수행할 경우에 현재의 스마트폰 기술로는 처리시간이 길어져서 실시간 동작이 어렵다.
하드웨어 방식으로 음성인식장치를 구현하기 위해, 스마트폰의 데이터 포트에 외장(external) ASIC 칩을 동글(dongle) 형태로 연결하고 스마트폰에 입력된 음성신호를 상기 ASIC 칩에 전송하고 상기 ASIC 칩은 전송된 음성신호를 단어글자로 변환하여 상기 스마트폰으로 전송하면, 개인 프라이버시 문제가 발생하지 않고 지연시간이 매우 짧은 실시간 음성인식장치를 구현할 수 있다.
그런데, 음성인식 처리의 한 과정인 문법언어모델 처리에 필요한 단어사전과 문장사전을 저장하는데 필요한 방대한 양의 메모리(100Mbits 이상)를 현재의 기술로는 논리회로와 함께 한 개의 ASIC 칩에 구현하기가 어렵다. 따라서, 현재의 기술로는 하드웨어 방식만으로 음성인식장치를 구현하기가 곤란하다.
따라서 본 발명에서는, 현재의 기술로 개인 프라이버시 문제가 없고 지연시간이 짧은 실시간 음성인식장치를 구현하기 위해, 하드웨어와 소프트웨어의 코 디자인(co-design) 방식을 사용하였다.
즉, 한 개의 외장 ASIC 칩을 사용하여 비교적 계산과정이 복잡하여 시간이 많이 소요되는 특징추출과 음성모델처리는 하드웨어로 수행하고, 대용량 메모리가 필요한 문법언어모델처리는 스마트폰에서 소프트웨어로 수행한다. 본 발명의 실시예에서는 하드웨어 ASIC 칩 구현을 용이하게 하기 위해 현재 음성인식에 보편적으로 많이 사용하는 RNN 방식 중에서 하드웨어 크기가 가장 작다고 알려진 GRU(gated recurrent unit)-RNN 방식을 사용하는데, 본 발명의 사상은 모든 LSTM-RNN 방식에 적용 가능하다.
스마트폰에 내장된 플래시(flash) 메모리 또는 DRAM 등의 메모리부에 상기 문법언어모델 처리에 필요한 단어사전(word dictionary)과 문장사전(sentence dictionary)을 저장하고, 상기 문법언어모델 처리에 필요한 소요시간을 최소화하기 위해 스마트폰에 내장된 AP(application processor)의 CPU(central processing unit)와 GPU를 동시에 동작시켜 병렬처리를 수행한다. GPGPU(general purpose GPU) 프로그램을 위해 개발된 오픈씨엘(Open Computing Language : 이하 'OpenCL'이라 한다.)을 사용하여 GPU 병렬처리 프로그램을 용이하게 할 수 있다.
본 발명의 실시예는 제1 실시예와 제2 실시예의 두 가지로 구분하여 설명한다. 제1 실시예는 하나의 아식칩(ASIC chip)과 하나의 스마트폰으로 실시간 음성인식장치를 구성하고, 제2 실시예는 제1 실시예의 구성요소에 하나의 DRAM칩을 추가하여 하나의 아식칩, 하나의 DRAM칩과 하나의 스마트폰으로 실시간 음성인식장치를 구성한다.
이하, 첨부된 도면을 참고하여 본 발명을 보다 상세히 설명하기로 한다.
도 1은 본 발명의 제1 실시예에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 블록도이다.
도 1을 참고하면 본 발명에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치(1000)는 제1 디지털 음성신호(AIN)를 입력으로 받아 특징벡터(FV)를 출력하고 상기 특징벡터(FV)로부터 음소확률점수(PS)를 출력하는 아식(ASIC)칩(100)과 데이터 포트를 통해 상기 아식(ASIC)칩과 연결되며 상기 아식(ASIC)칩으로부터 상기 음소확률점수(PS)를 입력으로 받아 단어글자(Word Text)를 출력하고 상기 단어글자를 사용자의 필요에 따라 처리하여 출력하는 스마트폰(200)을 구비한다.
보다 구체적으로, 상기 아식(ASIC)칩(100)은 입력신호 선택부(110), 특징추출부(120), 음성모델처리부(130), 전원전압변환부(140) 및 연결장치(150)를 구비한다.
입력신호선택부(110)는 스마트폰의 마이크로폰에 수신되어 스마트폰의 데이터 포트(210)와 연결장치(150)를 통해 상기 입력신호선택부(110)로 전달되는 제2 디지털 음성신호(A2)와 상기 스마트폰(200)의 마이크로폰이 아닌 외부 마이크로폰에서 수신되어 상기 입력신호선택부(110)로 전달되는 제3 디지털 음성신호(A3) 중에서 하나를 선택하여 상기 제1 디지털 음성신호(AIN)로 출력한다.
상기 제2 디지털 음성신호(A2), 제3 디지털 음성신호(A3) 및 제1 디지털 음성신호(AIN)는 모두 디지털로 변환된 음성신호이다. 상기 특징추출부(120)는 상기 제1 디지털 음성신호(AIN)를 입력으로 받아 구성요소가 41개인 상기 특징벡터(FV: feature vector)를 출력한다. 사람의 귀는 Hertz 단위의 주파수를 선형적으로 구분하지 못하고 주파수의 log인 Mel frequency m에 대해 선형적으로 반응한다고 알려져 있다. Hertz 단위로 표시한 기존 주파수 f에 대한 Mel 주파수 m은 수학식 1로 표시되는데, Mel 주파수 대역에서 균일한 간격으로 주파수 대역을 여러 개로 나누면, 기존 주파수 대역에서는 저주파 대역이 세밀하게 나누어지고 고주파 대역에서는 듬성듬성하게 나누어진다.
Figure PCTKR2018004853-appb-M000001
도 2는 본 발명에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치에서 사용하는 주파수 대역의 경계 주파수 값을 나타내는 도면이다.
본 발명의 실시예에서는, 도 2에 도시된 대로 150 Hz부터 7000 Hz까지의 기존 주파수 대역(fi)을 Mel 주파수 대역(mi)에서 균일하게 41개(i=1, 2, 3, ..., 42)의 주파수 대역(frequency band)으로 나누었다. 주파수가 제일 낮은 대역은 f1=150Hz (m1=218.8)에서 f2=196.9Hz(m2=279.4)까지의 주파수 대역이다.
특징추출부(120)는 상기 제1 디지털 음성신호(AIN)와 하나 이상의 제1 제어신호(C1)를 입력으로 받아 상기 특징벡터(FV)를 출력한다.
상기 특징추출부(120)는 패스트 퓨리에 변환부(FFT, 121), 복수개의 대역통과필터(BPF, 122), 복수개의 적분기(INT, 123), 복수개의 로그부(LOG, 124) 및 역이산 코사인 변환부(I-DCT, 125)를 구비한다.(도 3)
음성모델처리부(130)는 상기 특징벡터(FV)와 하나 이상의 제2 제어신호(C2)를 입력으로 받아 상기 음소확률점수(PS)를 출력한다.
특징추출부(120) 및 음성모델처리부(130)의 상세한 구성에 대해서는 후술하기로 한다.
전원전압변환부(140)는 연결장치(150)로부터 상기 제2 직류전압(DC2)을 입력으로 받아 상기 제3 직류전압(DC3)을 상기 입력신호선택부(110), 상기 특징추출부(120) 및 상기 음성모델처리부(130)로 각각 출력한다.
연결장치(150)는 상기 음성모델처리부(130)로부터 상기 음소확률점수(PS)를 입력으로 받아 상기 스마트폰(200)으로 출력하며 상기 스마트폰(200)으로부터 데이터와 제1 직류전압(DC1)을 입력으로 받아 상기 입력선택 제어신호(SEL), 상기 제1 제어신호(C1), 상기 제2 제어신호(C2) 및 제2 직류전압(DC2)을 출력한다.
상기 연결장치(150)는 상기 스마트폰의 데이터 포트(210)를 통하여 상기 스마트폰과 연결되고, 상기 입력신호선택부(110)로 상기 제2 디지털 음성신호(A2)와 상기 입력선택 제어신호(SEL)를 출력하며, 상기 특징추출부(120)로 하나 이상의 상기 제1제어신호(C1)를 출력하고, 상기 음성모델처리부(130)로 하나 이상의 상기 제2제어신호(C2)를 출력하고, 상기 전원전압변환부(140)로 제2 직류전압(DC2)을 출력한다.
본 발명에 따른 음성인식장치는, 음성인식 과정을 클라우드 컴퓨터를 사용하지 않고 외장 아식(ASIC)칩(100)과 스마트폰(200)을 이용하여 수행하므로 대화내용에 관해 개인 프라이버시가 보장되고, 비교적 계산시간이 많이 소요되는 특징추출부(120, Feature Extractor)와 음성모델처리부(130, Acoustic Model Processor)는 아식(ASIC)칩에 구현하여 동작속도를 빠르게 하고 대용량 메모리가 필요한 문법언어모델처리부(220)의 동작을 스마트폰에서 GPU(270)를 활용한 병렬처리 소프트웨어로 수행함으로써 상기 문법언어모델처리부 동작에 필요한 대용량 메모리를 아식(ASIC)칩에 구현하지 않고도 실시간(real time) 처리가 가능하다.
스마트폰에서는, 시간에 대해 연속적으로 입력되는 음성신호를 시간 프레임(time frame) 단위로 나누어 처리한다. 스마트폰에서 음성신호를 실시간으로 처리하려면, 한 개의 시간 프레임 단위(예 10ms)의 음성입력 데이터를 음성인식장치가 처리하는데 걸리는 시간이 상기 단위 프레임 지속시간(예 10ms) 보다 짧아야 한다. 실시간 동작여부를 정량적으로 나타내기 위해 실시간 팩터(real time factor)를 수학식 2로 정의하고, 실시간 팩터가 1 보다 커야 실시간 동작이 가능하다.
Figure PCTKR2018004853-appb-M000002
도 1에서 제1 디지털 음성신호(AIN)의 한 프레임 데이터가 ASIC 칩 안에 위치한 특징추출부(120, feature extractor)에 입력되면 상기 특징추출부(120)는 입력된 상기 제1 디지털 음성신호에 해당하는 특징벡터 (FV: feature vector)를 출력한다. 상기 특징벡터(FV)는 40 채널 MFCC(Mel frequency cepstrum coefficient) 출력에 상기 제1 디지털 음성신호(AIN)의 한 프레임 시간 동안의 에너지를 더하여 41개로 구성된다.
상기 특징벡터(FV)는 상기 ASIC 칩 안에 위치한 음성모델처리부(130, acoustic model processor)로 입력되고 상기 음성모델처리부(130)는 상기 특징벡터에 해당하는 음소확률점수(PS, phoneme score)를 출력한다. 음소(phoneme)는 음성의 최소단위 음절에 해당하는 것으로 영어와 한글의 경우는 대체로 40~61개 정도로 구분되는데, 본 발명의 실시예에서는 트레이닝(training) 과정에 필요한 여유분을 추가하여 상기 음소확률점수(PS)는 61개로 한다.
상기 음소확률점수는 상기 특징벡터가 각 음소에 해당할 확률을 계산한 표로서 벡터값을 나타낸다. 상기 음소확률점수(PS)가 스마트폰에 입력되면, 스마트폰은 문법언어모델처리부(220, Lexical/Language Model Processing Unit)의 프로그램을 구동하여 상기 음소확률점수에 대응되는 단어(word)를 찾아 단어글자(word text)로 출력한다. 이 출력된 단어글자(word text)는 도1의 출력처리부(230)의 프로그램에 입력되어 사용자가 이용하기 편리한 형태로 변환된다.
도 3은 본 발명에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 특징추출부의 상세 블록도이다.
특징추출부(120)는 패스트 퓨리에 변환부(121), 복수개의 대역통과필터(122), 복수개의 적분기(123), 복수개의 로그부(124) 및 역이산 코사인 변환부(125)를 구비한다.
상기 특징추출부(120)는 입력된 제1 디지털 음성신호(AIN)에 대해 패스트 퓨리에 변환부(121)에서 패스트 퓨리에 변환(FFT: fast Fourier transform)를 수행하고, 상기 패스트 퓨리에 변환부(121)의 출력을 40개의 대역통과필터(122, BPF: band pass filter)를 통과시키고, 40개의 적분기(123, INT: integrator)에서 상기 각 대역통과필터(122)의 출력인 복수개의 주파수에 대한 파워 스펙트럼(power spectrum)을 각각 한 개씩의 적분기(123)를 통과시켜 한 개의 파워(power)값으로 변환한다.(Parseval 정리)
이후 상기 변환된 파워(power)값에 대해 복수개의 로그부(124)에서 각각 로그(log) 값을 취한 후에 구해지는 40개의 로그(log) 값들에 대해 역이산 코사인 변환부(125)에서 역이산 코사인 변환(inverse discrete cosine transform:I-DCT)을 수행하여 40개의 MFCC(mel frequency cepstrum coefficient)를 출력한다.
상기 특징추출부(120)에 입력되는 제1 디지털 음성신호(AIN)는 샘플링 속도가 16kS/sec인 16비트 PCM(pulse code modulation) 데이터인데, 10ms의 프레임(frame) 단위로 나누어 매 10ms마다 한 개의 프레임 데이터를 취하는데 한 프레임 데이터는 160개의 16비트 데이터로 구성된다.
상기 10ms의 한 프레임 데이터를 직전에 입력된 20ms 데이터와 합하여 가장 최근 시간에 입력된 3개 프레임 데이터인 480개의 데이터를 만든다. 상기 480개 데이터의 앞과 뒤에 각각 16개씩의 '0'을 더하여(zero padding) 512개의 16비트 데이터를 만들고, 상기 512개의 데이터에 대해 FFT를 시행한다. 상기 FFT 결과는 주파수가 0(DC)부터 8000Hz까지 31.25Hz의 균일한 주파수 간격으로 나열된 주파수에 대한 파워 스펙트럼(power spectrum) 값을 나타낸다.
도 4는 도 3의 대역통과필터의 전달함수 특성을 나타내는 도면이다.
상기 40개의 대역통과필터(122)는 각각 도 4에 도시된 대로 삼각형 피라미드 형태의 전달함수를 가지는데, 상기 전달함수는 도 2에 도시된 41개 주파수 대역 중에서 인접한 두 개의 주파수 대역에서만 0이 아닌 값을 가지고, 각 전달함수의 면적이 모두 같도록 각 전달함수의 계수값이 조정되어 있다.
본 발명의 실시예에서 패스트 퓨리에 변환(fast Fourier transform)을 하는 샘플 숫자를 512개로 정한 이유는, 상기 40개의 MFCC 채널의 모든 채널이 3개 이상의 패스트 퓨리에 변환부(121)의 출력 스펙트럼 값을 포함하도록 하기 위함이다. 도 2에서, 40개 MFCC 채널 중에서, 주파수가 가장 낮은 채널인 f1=150Hz부터 f3=246.5Hz까지의 채널은 상기 FFT 출력 중에서 3개의 주파수에 대한 파워(power) 스펙트럼을 포함하고, 주파수가 가장 높은 채널인 f40=6215Hz 부터 f42=7000Hz 까지의 채널은 상기 패스트 퓨리에 변환부(121)의 출력 중에서 25개의 주파수에 대한 파워(power) 스펙트럼을 포함한다. 이는, 상기 패스트 퓨리에 변환부(121)의 출력 파워(power) 스펙트럼은 기존 주파수 대역에서 31.25Hz의 균일한 간격으로 출력되고 (f3-f1)/31.25=3.1이고 (f42-f40)/31.25=25.1이기 때문이다.
도 5는 본 발명의 제1 실시예에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 음성모델처리부의 상세 블록도이다.
상기 음성모델처리부(130)는 41개의 구성요소를 가지는 상기 특징벡터(FV: feature vector)를 입력으로 받아 61개의 구성요소를 가지는 음소확률점수(PS: phoneme score) 벡터를 출력한다. 본 발명의 실시예에서 상기 음성모델처리부(130)는 ASIC 칩 안에 구현해야 하므로, 사용되는 파라미터(parameter) 메모리를 최소화하기 위해 음성인식에 적합한 LSTM(long short term memory) 방식 중에서 제일 간략화된 방식으로 알려진 GRU (gated recurrent unit) 방식을 사용한다. 그런데, 본 발명의 사상은 모든 LSTM-RNN 방식에 적용 가능하다.
도 5에 도시된 GRU-RNN(131)은 입력신호벡터 x_t, 이전 시간의 상태(state) 벡터 h_t-1, 파라미터값(param)을 입력으로 받고 상태벡터 h_t를 출력한다. 플립플롭(flip-flop)으로 구성된 시간지연소자(136)는 상기 h_t를 입력으로 받아 h_t-1을 출력한다.
제1 먹스(MUX1, 137)는 상기 h_t-1, 상기 특징추출부(120)의 출력인 상기 특징벡터(FV), 제3 제어신호(C3)를 입력으로 받아 상기 제3 제어신호(C3)에 따라 상기 h_t-1과 상기 특징벡터 중에서 하나를 선택하여 상기 x_t로 출력한다. 제2 먹스(MUX2, 134)는 L1, L2, L3와 제4 제어신호(C4)를 입력으로 받아 상기 제4 제어신호(C4)에 따라 상기 L1, L2, L3 중에서 하나를 선택하여 상기 GRU-RNN의 파라미터값(param)으로 출력한다.
상기 파라미터값(param)은 GRU-RNN 동작에 필요한 6개 매트릭스(W, U, Wz, Uz, Wr, Ur)와 3개 벡터(bz, bh, br)의 구성요소 값이다. DNN(132, deep neural network)은 상기 h_t-1과 제5 제어신호(C5)를 입력으로 받아 상기 제5 제어신호(C5)가 액티브(active) 상태인 경우에 상기 h_t-1에 해당하는 음소확률점수(PS) 벡터를 출력한다.
상기 L1, L2, L3은 각각 GRU-RNN의 3 레이어(layer)에 해당하는 상기 파라미터값(param)들(W, U, Wz, Uz, Wr, Ur, bz, bh, br)의 조합으로 파라미터 메모리(133)에 저장된다. controller(135)는 상기 제어신호 C3, C4, C5의 서로 다른 조합을 출력하여 각 레이어의 동작을 제어한다. 레이어 1 동작에서는 상기 제1 먹스(MUX1, 137)는 상기 특징벡터(FV)를 선택하여 x_t로 출력하고 상기 제2 먹스(MUX2, 134)는 상기 L1을 선택하여 파라미터값(param)으로 출력하고, 상기 레이어 1 동작 다음에 실시하는 레이어 2 동작에서는 상기 제1 먹스(MUX1, 137)는 상기 h_t-1을 선택하여 x_t로 출력하고 상기 제2 먹스(MUX2, 134)는 상기 L2를 선택하여 파라미터값(param)으로 출력하고, 상기 레이어 2 동작 다음에 실시하는 레이어 3 동작에서는 상기 제1 먹스(MUX1, 137)는 상기 h_t-1을 선택하여 x_t로 출력하고 상기 제2 먹스(MUX2, 134)는 상기 L3을 선택하여 파라미터값(param)으로 출력한다. 상기 레이어 3 동작 다음에 상기 제5 제어신호(C5)를 액티브(active) 상태로 바꾸어 상기 DNN(132)을 동작시켜 음소확률점수(PS)를 출력하고, 그 다음에 다시 상기 레이어 1 동작부터 시작하여 상기 과정을 반복한다.
이로써 한 개의 GRU-RNN 하드웨어를 사용하면서도 파라미터값(param)만 변경하여 3 레이어의 GRU-RNN 동작을 수행한다. 도 5의 상기 GRU-RNN (131)의 내부 동작은 다음의 수학식 3, 4, 5, 6 으로 표시된다.
Figure PCTKR2018004853-appb-M000003
Figure PCTKR2018004853-appb-M000004
Figure PCTKR2018004853-appb-M000005
Figure PCTKR2018004853-appb-M000006
상기 수학식 4와 상기 수학식 6의 sigmod 함수는 괄호 { } 안의 값을 0과 1 사이의 값으로 변환하는 함수이고, 상기 수학식 5의 tanh 함수는 괄호 { } 안의 값을 -1과 1 사이의 값으로 변환하는 함수이다.
본 발명의 실시예에서는 음성인식의 정확도를 높이기 위해, 3 레이어 GRU-RNN 동작을 실시하고 상태(state) 개수를 256개로 하였다. 따라서, 상기 수학식 4, 5, 6의 상기 Wz, Uz, W, U, Wr, Ur은 각각 256 x 256 매트릭스이고, bz, bh, br은 각각 256개의 구성요소를 가지는 벡터이다. 상기 3 레이어의 각 레이어마다 6개의 256 x 256 매트릭스와 3개의 256 x 1 벡터가 필요하고 마지막 단인 상기 DNN(132)에서 256 x 61 매트릭스와 한 개의 256 x 1 벡터가 필요하므로, 본 발명에 따른 상태개수가 256개인 3 레이어 GRU-RNN 동작을 위해 필요한 파라미터값(param) 개수는 수학식 7에 보인대로 대체로 120만개 정도이다.
Figure PCTKR2018004853-appb-M000007
GRU 구조가 아닌 일반적인 LSTM 구조에서는 대략 220만개의 파라미터값(param)이 필요하므로, 본 발명의 실시예에서 GRU-RNN 구조가 LSTM-RNN 구조보다 파라미터의 개수가 45% 정도 작다.
도 6은 도 1에 보인 본 발명의 제1 실시예에서 연결장치와 스마트폰의 상세 블록도이다.
상기 연결장치(150)는 상기 ASIC 칩(100)에 포함되는 연결장치 회로부(151)와 전기적 연결장치(152)를 포함한다. 상기 연결장치 회로부(151)는 USB PHY/LINK 형태의 회로부로서 USB 1.1 또는 USB 2.0 표준을 사용한다.
상기 전기적 연결장치(152)는 상기 연결장치 회로부(151)를 상기 스마트폰(200)의 데이터 포트(210)에 연결하는데 사용된다. 상기 전기적 연결장치(152)는 커넥터 또는 커넥터와 케이블의 조합으로 구성되고, 상기 커넥터 또는 케이블은 USB 1.1/USB 2.0 표준에 따라 D+, D-, VBUS, GND의 4개 도선을 포함하는데, 케이블일 경우는 상기 D+, D-, VBUS, GND 도선의 케이블 색깔이 각각 그린(green), 화이트(white), 레드(red) 및 블랙(black)이다.
도 6과 도 1을 비교하면, 상기 연결장치(150)의 상기 전기적 연결장치(152)는 상기 VBUS와 상기 GND 도선을 통하여 상기 스마트폰(200)으로부터 제1직류전압(DC1, 5V)을 공급받아 이를 그대로 바이패스하여 전원전압변환부(140)에 제2직류전압(DC2)으로 공급한다.
따라서, 본 발명에 따른 상기 ASIC 칩(100)은 상기 스마트폰(200)으로부터 직류전원을 공급받으므로 추가로 외부 전원장치를 필요로 하지 않는다. 상기 연결장치(150)의 상기 전기적 연결장치(152)는 상기 D+, D-, GND 도선으로 양??향 차동신호전송로를 구성하여 상기 연결장치 회로부(151)와 상기 스마트폰(200)의 상기 데이터 포트(210)를 연결한다.
상기 차동신호전송로는 상기 스마트폰(200)에 내장된 마이크로폰(290)에 수신된 음성신호를 상기 ASIC 칩(100)에 내장된 상기 입력신호선택부(110, MUX)에 제2 디지털 음성신호(A2) 입력으로 전달하는데 사용된다. 이를 위해 상기 마이크로폰(290)에 수신된 음성신호는 상기 스마트폰에 내장된 오디오 코덱(280), 스마트폰 버스(250), USB 호스트 컨트롤러(host controller, 240), 상기 스마트폰 데이터 포트(210)와 상기 연결장치(150)의 상기 전기적 연결장치(152), 상기 연결장치 회로부(151)를 차례로 통과하여 상기 입력신호선택부(110, MUX)에 입력된다.
또한 상기 양방향 차동신호전송로는, 상기 스마트폰의 CPU(260)로부터 상기 ASIC 칩의 상기 입력신호선택부(110), 상기 특징추출부(120) 및 상기 음성모델처리부(130)에 제어신호나 데이터를 보내거나, 상기 ASIC 칩의 상기 음성모델처리부(130)에서 출력되는 음소확률점수(PS)를 스마트폰의 CPU(260) 또는 GPU(270)에 전송하는데 사용된다.
도 7은 본 발명에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 문법언어모델처리부의 프로그램 동작을 설명하기 위한 개념도이다.
문법언어모델처리는, 방대한 분량의 단어사전(word dictionary)과 문장사전(sentence dictionary)을 필요로 하므로, ASIC 칩에서 하드웨어 방식으로 수행하기가 어렵다. 따라서, 본 발명에서는 상기 문법언어처리를 스마트폰을 이용하여 소프트웨어 방식으로 수행한다.
최근 스마트폰의 내장 메모리 용량은 DRAM이 4Gbyte, 플래시 메모리가 64GByte 정도이고 향후 이보다 더 증가할 것으로 예상된다. 따라서, 표제 단어(entry word) 개수가 수십만 개인 사전도 스마트폰 메모리에 쉽게 저장할 수 있다. 옥스퍼드 영어 사전(Oxford English dictionary) 2판 경우에 표제단어 숫자가 29만개 정도이므로, 표제단어만 포함하면 6Mbyte 정도 메모리에 저장 가능하다.
본 발명에서 음성모델처리에 사용한 GRU-RNN 알고리즘은 직전 데이터 결과가 다음 계산에 사용되므로, GPU(graphic processing unit)를 사용한 병렬처리가 어렵다. 따라서, 본 발명에서는 상기 문법언어모델처리부의 프로그램시 GRU-RNN 알고리즘을 사용하지 않고 WFST (weighted finite state transducer) 알고리즘을 사용한다.
기존의 음성인식장치에서는 문법언어모델 처리를 위해 HMM(hidden Markov model)과 n-gram 모델을 주로 사용한다. 그런데, 상태(state) 개수 S에 대해 HMM은 처리하는 데이터 크기가 S 제곱에 비례하는데(O(S^2)) WFST는 상기 데이터 크기가 S에 비례하므로(O(S)), 최근에는 문법모델처리를 위해 HMM 대신에 주로 WFST를 사용한다. 또 n-gram모델은 데이터 처리에 필요한 사전(dictionary)크기가 수백MByte로 매우 큰데 비해, WFST는 상기 사전 크기가 n-gram 모델보다 훨씬 작아서, 최근에는 언어모델처리를 위해 n-gram 모델 대신에 WFST 모델을 많이 사용한다.
도 1에 도시된 대로 상기 문법언어모델처리부(220)는 음소확률점수(PS)를 입력으로 받아 단어글자(word text)를 출력한다. 본 발명의 실시예에서, 상기 문법언어모델처리부(220)는 스마트폰에 포함된 AP(application processor)의 CPU/GPU 및 메모리 소자를 활용하는 소프트웨어 방식을 채택하였다.
도 7의 문법언어모델처리부의 개념도를 보면, 본 발명의 실시예에 따른 문법언어모델처리부(220)는 스마트폰의 CPU/GPU에서 수행되는 문법언어모델처리 프로그램(221)과 스마트폰의 메모리 저장소자 가운데 하나인 DRAM에 저장되는 단어사전(Word Dictionary, 222)과 문장사전(Sentence Dictionary, 223)으로 구성된다. 본 발명의 실시예에서는, 문법언어모델을 문법모델과 언어모델의 두 단계로 분리하지 않고, 묶어서 한 단계로 처리한다. 상기 문법언어모델처리 프로그램(221)은 입력되는 상기 음소확률점수(PS)에 WFST 알고리즘을 적용하고 상기 단어사전(222)과 상기 문장사전(223)을 활용하여 상기 단어글자(word text)를 출력한다.
또한 본 발명에서는 OpenCL을 활용한 GP(general purpose) GPU 병렬 프로그램을 최대한 활용하여 상기 문법언어모델처리 프로그램(221)의 수행시간을 최소화하여 실시간 동작을 확보하였다.
도 8은 본 발명에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 스마트폰에서 수행되는 음성인식 프로그램의 의사 코드(pseudo code)를 나타내는 도면이다.
OpenCL을 사용하면 병렬 GPU 프로그램을 비교적 쉽게 제작할 수 있다.
도 9는 본 발명에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 제3 디지털 음성신호 생성부의 회로도이다.
상기 제3 디지털 음성신호 생성부(160)는, 복수 개의 마이크로폰(300)에서 수신되는 복수 개의 아날로그 신호를 처리하여 한 개의 상기 제3 디지털 음성신호(A3)로 출력한다. 이를 위해, 상기 복수 개의 마이크로폰(300) 출력신호를 각각 입력으로 받아 증폭된 아날로그 신호를 출력하는 복수 개의 아날로그 증폭기(163), 상기 아날로그 증폭기의 출력을 각각 입력으로 받아 디지털 신호를 출력하는 복수 개의 아날로그-디지털 변환기(162) 및 상기 복수 개의 아날로그-디지털 변환기의 출력을 모두 입력으로 받아 한 개의 상기 제3 디지털 음성신호(A3)을 출력하는 한 개의 디지털신호처리 부(161)를 구비한다.
상기 디지털신호처리부(161)는 빔포밍(beamforming)과 노이즈 감소기능을 포함한다. 상기 복수 개의 아날로그 증폭기(163), 상기 복수 개의 아날로그-디지털 변환기(162)와 상기 한 개의 디지털신호처리부(161)는 입력신호선택부(110), 특징추출부(120), 음성모델처리부(130), 전원전압변환부(140) 및 연결장치 회로부(151)와 함께 한 개의 ASIC 칩(100)에 구현할 수 있다.
도 10은 본 발명에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 출력처리부의 프로그램 동작을 설명하기 위한 도면이다.
본 발명에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 출력처리부(230)는 프로그램 기능을 통해 문법언어모델처리부(220)의 출력인 단어글자(word text)를 사용자가 이용하기 편리하게 변환한다.
즉, 출력처리부(230)는 상기 문법언어모델처리부(220)의 출력인 단어글자(word text)를, 상기 스마트폰(200)의 디스플레이(231)에 표시하고, 상기 스마트폰의 메모리(232)에 저장하고, 음성합성장치(233)를 통하여 음성으로 변환하여 상기 스마트폰에 유선 또는 무선으로 연결된 스피커(234)를 통하여 출력하거나, 상기 스마트폰의 무선전송장치(235)를 통하여 상기 스마트폰 외부의 다른 장치(400)로 전송할 수 있다.
도 11은 본 발명의 제2 실시예에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 블록도이다.
도11 과 도 1을 비교하면, 도 11은 도 1에 DRAM칩(500), DRAM 제어부(170)와 다섯 개의 신호가 추가되었다. 상기 다섯 개의 신호는 각각 제1 파라미터 데이터(Dp1), 제2 파라미터 데이터(Dp2), 제3 파라미터 데이터(Dp3), 제4 파라미터 데이터(Dp4)와 제6 제어신호(C6)이다. 본 발명의 제1 실시예에서는, 신경망(neural network) 계층(layer) 수가 3이고 상태(state)수가 250인 GRU-RNN을 구현하기 위해 대략 120만개의 파라미터가 필요하며(수학식 7), 이를 도 5에 도시된 음성모델처리부(130)의 파라미터 메모리(133)에 저장한다.
본 발명의 제1 실시예에서는 상기 파라미터 메모리(133)를 아식(ASIC)칩 내부에 SRAM(static random access memory) 형태로 제작하는데 상당히 넓은 칩 면적을 차지한다. 따라서 본 발명의 제1 실시예에서는 상기 파라미터 메모리(133)의 칩 면적 제약 때문에 신경망 계층(neural network layer) 숫자를 4 이상으로 증가시키기가 어렵다. 최근 단어(word) 정확도가 95% 이상인 음성인식장치에서는 신경망 계층 수가 7이다.
본 발명의 제2 실시예에서는, 신경망 계층 숫자를 8 이상으로 증가시켜 단어 정확도를 향상시키기 위해 별도의 DRAM칩(500)을 추가하여 GRU-RNN 동작에 필요한 파라미터를 상기 DRAM칩에 저장한다. GRU-RNN 동작수행에 필요한 파라미터 값은 필요할 때마다 상기 DRAM칩(500)에서 읽어오는데, 이를 위해 상기 DRAM칩(500)은 제1 파라미터 데이터(Dp1)을 출력하고 상기 DRAM 제어부(170)는 상기 제1 파라미터 데이터(Dp1)를 입력하고 제3 파라미터 데이터(Dp3)를 출력한다. 음성모델처리부(130)는 제3 파라미터 데이터(Dp3)를 입력하여 GRU-RNN 동작을 수행한다. 신경망 트레이닝 과정에서 상기 스마트폰(200)에서 상기 DRAM칩(500)으로 파라미터 값들을 다운로드하는데, 이를 위해 상기 연결장치(150)는 상기 데이터 포트(210)를 통하여 상기 스마트폰(200)으로부터 데이터를 입력받고 제6 제어신호(C6)와 제4 파라미터 데이터(Dp4)를 출력한다.
상기 DRAM 제어부(170)는 상기 제6 제어신호(C6)와 상기 제4 파라미터 데이터(Dp4)를 입력하고 상기 제6 제언신호에 따라 상기 제4 파라미터 데이터(Dp4)를 제2 파라미터 데이터(Dp2)로 출력한다. 상기 DRAM칩(500)은 상기 제2 파라미터 데이터(Dp2)를 입력하여 상기 DRAM칩(500) 내부에 저장한다. 상기 DRAM칩(500)은 그래픽 DRAM으로 하고 상기 제1 파라미터 데이터(Dp1), 상기 제2 파라미터 데이터(Dp2)와 상기 제3 파라미터 데이터(Dp3)는 8비트 또는 그 이상의 디지털 바이너리(binary, 이진) 신호이다.
도 12는 본 발명의 제2 실시예에 따른 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치의 음성모델처리부의 상세 블록도이다.
DRAM 제어부(170)는, 상기 연결장치(150)의 출력신호인 제6 제어신호(C6)와 상기 DRAM칩(500)의 출력신호인 제1 파라미터 데이터(Dp1)를 입력으로 받고, 상기 제6 제어신호에 따라 상기 제1 파라미터 데이터(Dp1)를 제3 파라미터 데이터(Dp3)로 출력한다. 버퍼 메모리(138)는 상기 제3 파라미터 데이터(Dp3)를 입력으로 받아 파라미터값(param)을 출력한다. 상기 파라미터값(param)은 GRU-RNN(131)에 입력되어 상기 수학식 4, 상기 수학식 5와 상기 수학식 6의 여섯 개 매트릭스(Wz, Uz, W, U, Wr, Ur)의 구성요소 값으로 대체된다.
상기 GRU-RNN이 250개의 병렬 MAC(multiplier and accumulator)로 구성될 경우에 상기 파라미터값(param)은 250개의 파라미터 값을 나타낸다. 한 파라미터가 16비트인 경우에 상기 파라미터값(param)은 250 x 16 = 4,096비트 신호이다. 상기 제3 파라미터 데이터(Dp3)가 32비트 바이너리 디지털 신호이면, 상기 버퍼메모리(138)의 입력신호(Dp3)와 출력신호(param)의 비트 수는 각각 32비트와 4,096비트로서 입력신호와 출력신호의 비트 수가 서로 달라서, 상기 버퍼메모리(138)는 입력신호의 비트 수와 출력신호의 비트 수를 조정하는 역할을 수행한다.
상기 GRU-RNN이 250개의 병렬 MAC로 구성되고 상기 DRAM칩(500)이 GDDR5(graphic double data rate 5) 표준을 사용하여 5Gbps 32비트 병렬 출력하는 그래픽 DRAM이면, 상기 제1 파라미터 데이터(Dp1), 상기 제2 파라미터 데이터(Dp2), 상기 제3 파라미터 데이터(Dp3)이 모두 데이터 대역폭(data bandwidth)이 32 x 5Gbps = 160 Gbps가 된다.
상기 버퍼메모리(138)의 동작에 의해 상기 제3 파라미터 데이터(Dp3)와 상기 파라미터값(param)은 데이터 대역폭이 모두 160 Gbps가 된다. 또 파라미터 한 개가 16비트이면, 상기 경우에 250개의 병렬 MAC로 구성된 상기 GRU-RNN의 동작 클락속도는 160 Gbps / (250 x 16) = 40MHz 또는 그 이하이어야 한다.
도 13은 본 발명의 제2 실시예에서 연결장치와 스마트폰의 상세 블록도이다. 상기 DRAM칩(500)은 상기 ASIC칩(100)에서 공급하는 제3 직류전압(DC3)을 공급전압으로 사용한다.
이상에서 본 발명의 바람직한 실시예에 대하여 상세히 설명하였지만, 본 발명의 권리범위가 이에 한정되는 것이 아니라 다음의 청구범위에서 정의하는 본 발명의 기본 개념을 바탕으로 보다 다양한 실시예로 구현될 수 있으며, 이러한 실시예들 또한 본 발명의 권리범위에 속하는 것이다.

Claims (29)

  1. 실시간 음성인식 장치에 있어서,
    제1 디지털 음성신호를 입력으로 받아 특징벡터를 생성하고 상기 특징벡터로부터 음소확률점수를 출력하는 아식(ASIC)칩; 및
    데이터 포트를 통해 상기 아식(ASIC)칩과 연결되며 상기 아식(ASIC)칩으로부터 상기 음소확률점수를 입력으로 받아 단어글자를 출력하고 상기 단어글자를 사용자의 필요에 따라 처리하여 출력하는 스마트폰;을 포함하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  2. 제1 항에 있어서, 상기 아식(ASIC)칩은
    입력선택 제어신호(SEL)에 따라 제2 디지털 음성신호와 제3 디지털 음성신호 중에서 한 개를 선택하여 상기 제1 디지털 음성신호(AIN)로 출력하는 입력신호 선택부;
    상기 제1 디지털 음성신호와 하나 이상의 제1 제어신호(C1)를 입력으로 받아 상기 특징벡터를 출력하는 특징추출부;
    상기 특징벡터와 하나 이상의 제2 제어신호(C2)를 입력으로 받아 상기 음소확률점수를 출력하는 음성모델처리부;
    상기 음성모델처리부로부터 상기 음소확률점수를 입력으로 받아 상기 스마트폰으로 출력하며 상기 스마트폰으로부터 데이터와 제1 직류전압(DC1)을 입력으로 받아 상기 제2 디지털 음성신호, 상기 입력선택 제어신호(SEL), 상기 제1 제어신호(C1), 상기 제2 제어신호(C2) 및 제2 직류전압(DC2)을 출력하는 연결장치; 및
    상기 제2 직류전압(DC2)을 입력으로 받아 제3 직류전압(DC3)을 출력하는 전원전압변환부;를 구비하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  3. 제 2항에 있어서, 상기 연결장치는
    상기 스마트폰의 데이터 포트를 통하여 상기 스마트폰과 연결되고,
    상기 입력신호선택부로 상기 제2 디지털 음성신호(A2)와 상기 입력선택 제어신호(SEL)를 출력하며,
    상기 특징추출부로 하나 이상의 상기 제1제어신호를 출력하고,
    상기 음성모델처리부로 하나 이상의 상기 제2제어신호를 출력하고,
    상기 전원전압변환부로 제2 직류전압(DC2)을 출력하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  4. 제 3항에 있어서, 상기 연결장치는
    상기 아식칩에 포함되는 연결장치 회로부; 및
    커넥터 또는 케이블을 통해 상기 스마트폰의 데이터 포트와 연결되는 전기적 연결장치;를 구비하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  5. 제 4항에 있어서, 상기 연결장치는
    상기 전기적 연결장치를 통해 상기 스마트폰으로부터 전원을 공급받는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  6. 제 1항 또는 제 2항에 있어서, 상기 스마트폰과 상기 아식칩은
    USB 1.1 또는 USB 2.0 표준에 따라 연결되는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  7. 제 2항에 있어서, 상기 전원전압변환부는
    상기 제3 직류전압(DC3)을 상기 연결장치, 상기 입력신호선택부, 상기 특징추출부 및 상기 음성모델처리부로 각각 출력하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  8. 제 2항에 있어서, 상기 음성모델처리부는
    LSTM(long short term memory) 또는 GRU(gated recurrent unit) 방식의 RNN(recurrent neural network) 알고리즘을 사용하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  9. 제 2항에 있어서, 상기 아식(ASIC)칩은
    상기 제3 디지털 음성신호를 생성하여 상기 입력신호 선택부에 제공하는 제3 디지털 음성신호 생성부를 더 구비하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  10. 제 9항에 있어서, 상기 제3 디지털 음성신호 생성부는
    외부의 마이크로폰에서 출력되는 적어도 하나 이상의 아날로그 오디오 신호를 각각 입력으로 받아 이를 증폭하여 적어도 하나 이상의 아날로그 출력신호를 출력하는 적어도 하나 이상의 아날로그 증폭기;
    상기 적어도 하나 이상의 아날로그 출력신호를 입력으로 받아 적어도 하나 이상의 디지털 음성신호를 출력하는 적어도 하나 이상의 아날로그-디지털 변환기; 및
    상기 적어도 하나 이상의 디지털 음성신호를 입력으로 받아 하나의 제3 디지털 음성신호를 출력하는 디지털 신호처리부;를 구비하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  11. 제 10항에 있어서, 상기 디지털 신호처리부는
    빔포밍 기능을 포함하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  12. 제 1항 또는 제 2항에 있어서, 상기 스마트폰은
    상기 아식(ASIC)칩으로부터 상기 음소확률점수를 입력으로 받아 단어글자(word text)를 출력하여 문법언어모델 처리 기능을 수행하는 문법언어모델 처리부; 및
    상기 단어글자(word text)를 입력으로 받아 상기 사용자의 필요에 따라 출력 처리하는 기능을 수행하는 출력처리부;를 구비하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  13. 제 12항에 있어서, 상기 출력처리부는
    상기 단어글자를 상기 스마트폰에 내장된 디스플레이 장치에 표시하거나, 상기 스마트폰의 메모리부에 저장하거나, 상기 스마트폰의 무선통신 기능을 이용하여 외부 장치로 전송하거나, 상기 스마트폰에서 음성으로 합성하여 상기 스마트폰에 내장된 음성출력장치 또는 상기 스마트폰과 유선 또는 무선으로 연결된 외부 음성출력장치로 출력하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  14. 제 12항에 있어서, 상기 문법언어모델 처리부는
    상기 문법언어모델 처리 기능을 수행하기 위해 상기 스마트폰에 내장된 중앙처리장치(Central Processing Unit:CPU) 및 그래픽처리장치(Graphic Processing Unit:GPU)를 동시에 사용하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  15. 실시간 음성인식 장치에 있어서,
    제1 파라미터 데이터(Dp1)를 출력하고 제2 파라미터 데이터(Dp2)를 입력으로 받는 디램(DRAM)칩;
    제1 디지털 음성신호와 상기 제1 파라미터 데이터(Dp1)를 입력으로 받아 음소확률점수(PS)와 제2 파라미터 데이터(Dp2)를 출력하는 아식(ASIC)칩; 및
    데이터 포트를 통해 상기 아식(ASIC)칩과 연결되며 상기 아식(ASIC)칩으로부터 상기 음소확률점수를 입력으로 받아 단어글자를 출력하고 상기 단어글자를 사용자의 필요에 따라 처리하여 출력하는 스마트폰;을 포함하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  16. 제 15항에 있어서, 상기 아식(ASIC)칩은
    입력선택 제어신호(SEL)에 따라 제2 디지털 음성신호와 제3 디지털 음성신호 중에서 한 개를 선택하여 상기 제1 디지털 음성신호(AIN)로 출력하는 입력신호 선택부;
    상기 제1 디지털 음성신호와 하나 이상의 제1 제어신호(C1)를 입력으로 받아 상기 특징벡터를 출력하는 특징추출부;
    상기 특징벡터와 하나 이상의 제2 제어신호(C2)와 제3 파라미터 데이터(Dp3)를 입력으로 받아 상기 음소확률점수를 출력하는 음성모델처리부;
    상기 제1 파라미터 데이터(Dp1), 제4 파라미터 데이터(Dp4), 하나 이상의 제6 제어신호(C6)를 입력으로 받고 상기 제2 파라미터 데이터와 상기 제3 파라미터 데이터를 출력하는 디램(DRAM) 제어부;
    상기 음성모델처리부로부터 상기 음소확률점수를 입력으로 받아 상기 스마트폰으로 출력하며 상기 스마트폰으로부터 데이터와 제1 직류전압(DC1)을 입력으로 받아 상기 제2 디지털 음성신호(A2), 상기 제4 파라미터 데이터(Dp4), 상기 입력선택 제어신호(SEL), 상기 제1 제어신호(C1), 상기 제2 제어신호(C2), 상기 제6 제어신호(C6) 및 제2 직류전압(DC2)을 출력하는 연결장치; 및
    상기 제2 직류전압(DC2)을 입력으로 받아 상기 제3 직류전압(DC3)을 출력하는 전원전압변환부;를 구비하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  17. 제 16항에 있어서, 상기 연결장치는
    상기 스마트폰의 데이터 포트를 통하여 상기 스마트폰과 연결되고,
    상기 입력신호선택부로 상기 제2 디지털 음성신호(A2)와 상기 입력선택 제어신호(SEL)를 출력하며,
    상기 특징추출부로 하나 이상의 상기 제1제어신호를 출력하고,
    상기 음성모델처리부로 하나 이상의 상기 제2제어신호를 출력하고,
    상기 디램(DRAM) 제어부로 하나 이상의 상기 제6제어신호와 상기 제4 파라미터 데이터를 출력하고,
    상기 전원전압변환부로 제2 직류전압(DC2)을 출력하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  18. 제16항에 있어서, 상기 전원전압변환부는
    상기 제3 직류전압(DC3)을 상기 입력신호선택부, 상기 특징추출부, 상기 음성모델처리부, 상기 연결장치, 상기 DRAM 제어부 및 상기 DRAM칩으로 각각 출력하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  19. 제 15항에 있어서, 상기 DRAM칩은
    상기 DRAM칩의 동작에 필요한 모든 직류공급전압을 상기 아식(ASIC)칩으로부터 공급받는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  20. 제 15항에 있어서, 상기 제1 파라미터 데이터(Dp1)와 상기 제2 파라미터 데이터(Dp2)는
    각각 8비트 이상의 비트수를 가지는 이진(바이너리) 디지털 신호인 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  21. 제 17항에 있어서, 상기 연결장치는
    커넥터 또는 케이블을 통해 상기 스마트폰의 데이터 포트와 연결되는 전기적 연결장치를 통해 상기 스마트폰으로부터 전원을 공급받는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  22. 제 15항 또는 제 16항에 있어서, 상기 스마트폰과 상기 아식칩은
    USB 1.1 또는 USB 2.0 표준에 따라 연결되는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  23. 제 16항에 있어서, 상기 음성모델처리부는
    LSTM(long short term memory) 또는 GRU(gated recurrent unit) 방식의 RNN(recurrent neural network) 알고리즘을 사용하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  24. 제 16항에 있어서, 상기 아식(ASIC)칩은
    상기 제3 디지털 음성신호를 생성하여 상기 입력신호 선택부에 제공하는 제3 디지털 음성신호 생성부를 더 구비하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  25. 제 24항에 있어서, 상기 제3 디지털 음성신호 생성부는
    외부의 마이크로폰에서 출력되는 적어도 하나 이상의 아날로그 오디오 신호를 각각 입력으로 받아 이를 증폭하여 적어도 하나 이상의 아날로그 출력신호를 출력하는 적어도 하나 이상의 아날로그 증폭기;
    상기 적어도 하나 이상의 아날로그 출력신호를 입력으로 받아 적어도 하나 이상의 디지털 음성신호를 출력하는 적어도 하나 이상의 아날로그-디지털 변환기; 및
    상기 적어도 하나 이상의 디지털 음성신호를 입력으로 받아 하나의 제3 디지털 음성신호를 출력하는 디지털 신호처리부;를 구비하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  26. 제 25항에 있어서, 상기 디지털 신호처리부는
    빔포밍 기능을 포함하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  27. 제 15항 또는 제 16항에 있어서, 상기 스마트폰은
    상기 아식(ASIC)칩으로부터 상기 음소확률점수를 입력으로 받아 단어글자(word text)를 출력하여 문법언어모델 처리 기능을 수행하는 문법언어모델 처리부; 및
    상기 단어글자(word text)를 입력으로 받아 상기 사용자의 필요에 따라 출력 처리하는 기능을 수행하는 출력처리부;를 구비하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  28. 제 27항에 있어서, 상기 출력처리부는
    상기 단어글자를 상기 스마트폰에 내장된 디스플레이 장치에 표시하거나, 상기 스마트폰의 메모리부에 저장하거나, 상기 스마트폰의 무선통신 기능을 이용하여 외부 장치로 전송하거나, 상기 스마트폰에서 음성으로 합성하여 상기 스마트폰에 내장된 음성출력장치 또는 상기 스마트폰과 유선 또는 무선으로 연결된 외부 음성출력장치로 출력하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
  29. 제 27항에 있어서, 상기 문법언어모델 처리부는
    상기 문법언어모델 처리 기능을 수행하기 위해 상기 스마트폰에 내장된 중앙처리장치(Central Processing Unit:CPU) 및 그래픽처리장치(Graphic Processing Unit:GPU)를 동시에 사용하는 것을 특징으로 하는 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치.
PCT/KR2018/004853 2017-06-28 2018-04-26 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치 WO2019004582A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/626,862 US11183177B2 (en) 2017-06-28 2018-04-26 Real-time voice recognition apparatus equipped with ASIC chip and smartphone

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2017-0081608 2017-06-28
KR1020170081608A KR102033929B1 (ko) 2017-06-28 2017-06-28 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치

Publications (1)

Publication Number Publication Date
WO2019004582A1 true WO2019004582A1 (ko) 2019-01-03

Family

ID=64742449

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2018/004853 WO2019004582A1 (ko) 2017-06-28 2018-04-26 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치

Country Status (3)

Country Link
US (1) US11183177B2 (ko)
KR (1) KR102033929B1 (ko)
WO (1) WO2019004582A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112926733A (zh) * 2021-03-10 2021-06-08 之江实验室 一种语音关键词检测专用芯片
CN114937450A (zh) * 2021-02-05 2022-08-23 清华大学 一种语音关键词识别方法及系统

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107679618B (zh) * 2017-07-28 2021-06-11 赛灵思电子科技(北京)有限公司 一种静态策略定点化训练方法及装置
CN107688849B (zh) * 2017-07-28 2021-04-13 赛灵思电子科技(北京)有限公司 一种动态策略定点化训练方法及装置
US11138334B1 (en) 2018-10-17 2021-10-05 Medallia, Inc. Use of ASR confidence to improve reliability of automatic audio redaction
US11398239B1 (en) 2019-03-31 2022-07-26 Medallia, Inc. ASR-enhanced speech compression
KR102637341B1 (ko) 2019-10-15 2024-02-16 삼성전자주식회사 음성 생성 방법 및 장치
US11715469B2 (en) * 2021-02-26 2023-08-01 Walmart Apollo, Llc Methods and apparatus for improving search retrieval using inter-utterance context

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100861653B1 (ko) * 2007-05-25 2008-10-02 주식회사 케이티 음성 특징을 이용한 네트워크 기반 분산형 음성 인식단말기, 서버, 및 그 시스템 및 그 방법
KR20090035944A (ko) * 2007-10-08 2009-04-13 삼성전자주식회사 음성 인식 방법 및 그 장치
KR20140001711A (ko) * 2012-06-28 2014-01-07 엘지전자 주식회사 이동 단말기 및 그것의 음성 인식 방법
KR20140112360A (ko) * 2013-03-13 2014-09-23 삼성전자주식회사 음성 인식의 단어 통합 시스템 및 단어군 추가 방법
WO2016137042A1 (ko) * 2015-02-27 2016-09-01 삼성전자 주식회사 사용자 인식을 위한 특징 벡터를 변환하는 방법 및 디바이스
JP2016212273A (ja) * 2015-05-11 2016-12-15 国立研究開発法人情報通信研究機構 リカレント型ニューラルネットワークの学習方法及びそのためのコンピュータプログラム、並びに音声認識装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010008073A (ko) * 2000-11-07 2001-02-05 조용범 음성 인식 및 번역 전용 에이직을 이용한 휴대용 다국어번역 단말장치
KR100554399B1 (ko) * 2003-03-25 2006-02-22 조승호 휴대용 통역 시스템 및 그 제어 방법
KR100693284B1 (ko) * 2005-04-14 2007-03-13 학교법인 포항공과대학교 음성 인식 장치
US8463610B1 (en) * 2008-01-18 2013-06-11 Patrick J. Bourke Hardware-implemented scalable modular engine for low-power speech recognition
US8346549B2 (en) * 2009-12-04 2013-01-01 At&T Intellectual Property I, L.P. System and method for supplemental speech recognition by identified idle resources
US10255911B2 (en) * 2014-12-17 2019-04-09 Intel Corporation System and method of automatic speech recognition using parallel processing for weighted finite state transducer-based speech decoding
US11107461B2 (en) * 2016-06-01 2021-08-31 Massachusetts Institute Of Technology Low-power automatic speech recognition device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100861653B1 (ko) * 2007-05-25 2008-10-02 주식회사 케이티 음성 특징을 이용한 네트워크 기반 분산형 음성 인식단말기, 서버, 및 그 시스템 및 그 방법
KR20090035944A (ko) * 2007-10-08 2009-04-13 삼성전자주식회사 음성 인식 방법 및 그 장치
KR20140001711A (ko) * 2012-06-28 2014-01-07 엘지전자 주식회사 이동 단말기 및 그것의 음성 인식 방법
KR20140112360A (ko) * 2013-03-13 2014-09-23 삼성전자주식회사 음성 인식의 단어 통합 시스템 및 단어군 추가 방법
WO2016137042A1 (ko) * 2015-02-27 2016-09-01 삼성전자 주식회사 사용자 인식을 위한 특징 벡터를 변환하는 방법 및 디바이스
JP2016212273A (ja) * 2015-05-11 2016-12-15 国立研究開発法人情報通信研究機構 リカレント型ニューラルネットワークの学習方法及びそのためのコンピュータプログラム、並びに音声認識装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114937450A (zh) * 2021-02-05 2022-08-23 清华大学 一种语音关键词识别方法及系统
CN112926733A (zh) * 2021-03-10 2021-06-08 之江实验室 一种语音关键词检测专用芯片
CN112926733B (zh) * 2021-03-10 2022-09-16 之江实验室 一种语音关键词检测专用芯片

Also Published As

Publication number Publication date
KR102033929B1 (ko) 2019-10-18
KR20190001692A (ko) 2019-01-07
US11183177B2 (en) 2021-11-23
US20200135178A1 (en) 2020-04-30

Similar Documents

Publication Publication Date Title
WO2019004582A1 (ko) 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치
WO2020256471A1 (ko) 머신 러닝 기반의 발화 동영상 생성 방법 및 장치
WO2021066399A1 (ko) 관계 설정을 이용한 실감형 인공지능기반 음성 비서시스템
WO2010067976A2 (ko) 신호 분리 방법, 상기 신호 분리 방법을 이용한 통신 시스템 및 음성인식시스템
WO2020256475A1 (ko) 텍스트를 이용한 발화 동영상 생성 방법 및 장치
WO2020054980A1 (ko) 음소기반 화자모델 적응 방법 및 장치
WO2020045794A1 (ko) 전자 장치 및 그 제어 방법
CN111683317B (zh) 一种应用于耳机的提示方法、装置、终端及存储介质
CN110827826A (zh) 语音转换文字方法、电子设备
WO2021091145A1 (en) Electronic apparatus and method thereof
WO2014142422A1 (ko) 지시 표현 처리에 기반한 대화 처리 방법 및 장치
WO2023224433A1 (en) Information generation method and device
WO2022097919A1 (ko) 뉴럴 네트워크를 이용한 빔포밍 방법 및 빔포밍 시스템
WO2021049802A1 (ko) 전자 장치 및 이의 제어 방법
WO2020141898A1 (ko) 뉴럴 네트워크 모델에 기반하여 무선 통신을 수행하는 장치 및 방법
WO2022025359A1 (ko) 발화 영상 생성 방법 및 장치
WO2021137551A1 (en) Equalizer for equalization of music signals and methods for the same
WO2019216551A1 (ko) 대화문장 생성 장치, 이를 포함하는 대화로봇 및 대화문장 생성 방법
WO2022270669A1 (ko) 발화 영상 제공 방법 및 이를 수행하기 위한 컴퓨팅 장치
WO2019078567A1 (ko) 소리 신호를 처리하는 반도체 장치 및 이를 포함하는 마이크 장치
WO2023277231A1 (ko) 발화 영상 제공 방법 및 이를 수행하기 위한 컴퓨팅 장치
WO2022092790A1 (ko) 음성을 처리할 수 있는 모바일 단말기 및 이의 작동 방법
WO2022196955A1 (ko) 인공지능 모델을 사전 학습시키는 방법 및 장치
WO2023096309A1 (ko) 유해 언어를 필터링하기 위한 전자 장치 및 방법
WO2024049025A1 (ko) 음성 인식 모델을 학습시키기 위한 전자 장치 및 이의 제어 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18823848

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18823848

Country of ref document: EP

Kind code of ref document: A1