Applying Machine Learning to Everyday ScenariosHuman-machine-interaction is increasingly ubiquitous as technologies leveraging audio and language for artificial intelligence evolve. For many of our interactions with businesses—retailers, banks, even food delivery providers—we can complete our transactions by communicating with some form of AI, such as a chatbot or virtual assistant. Language is the foundation of these communications and, as a result, a critical element to get right when building AI. With the combination of language processing and audio and speech technologies, companies can create more efficient, personalized customer experiences. This frees up human agents to spend more time on higher-level, strategic tasks. The potential ROI has been enough to entice many organizations to invest in these technologies. With more investment comes more experimentation, driving new advancements and best practices for successful deployments.
Natural Language ProcessingNatural Language Processing, or NLP, is a field of AI that concerns itself with teaching computers how to understand and interpret human language. It’s the foundation of text annotation, speech recognition tools, and various other instances in AI where humans conversationally interact with machines. With NLP used as a tool in these use cases, models can understand humans and respond to them appropriately, unlocking enormous potential in many industries.
Audio and Speech ProcessingIn machine learning, audio analysis can include a wide range of technologies: automatic speech recognition, music information retrieval, auditory scene analysis for anomaly detection, and more. Models are often used to differentiate between sounds and speakers, segmenting audio clips according to classes, or collecting sound files based on similar content. You can also take speech and convert it to text with ease. Audio data requires a few preprocessing steps, including collection and digitization, prior to being ready for analysis by an ML algorithm.
Audio Collection and DigitizationTo kick off an audio processing AI project, you need a great deal of high-quality data. If you’re training virtual assistants, voice-activated search functions, or other types of transcription projects, you’ll need customized speech data that covers the required scenarios. If you can’t find what you’re looking for, you may need to create your own, or work with a partner like Appen to collect it. This might include scripted responses, role-plays, and spontaneous conversations. For example, when training a virtual assistant like Siri or Alexa you’ll need audio of all of the commands you may expect your customer to give to the assistant. Other audio projects will require non-speech sound excerpts, such as cars driving by or children playing, depending on the use case. Data may come from a number of sources: a smartphone collection app, telephone server, professional audio recording kit, or other customer devices. You’ll need to ensure your collected data is in a format that you can use for annotation. Sound excerpts are all digital audio files in wav, MP3, or WMA format and they’re digitized by sampling them at consistent intervals (also known as the sampling rate). After you’ve extracted values at your sampling rate, a machine viewing your audio sample will see the amplitude of the sound wave at that particular time in order to be able to interpret its meaning.
Audio AnnotationAfter you have sufficient audio data prepared for your use case, you’ll need to annotate it. In the case of audio processing, this usually means segmenting the audio into layers, speakers, and timestamps as necessary. You’ll likely want to use a crowd of human labelers for this time-consuming annotation task. If you’re working with speech data, you’ll need annotators who are fluent in the required languages, so sourcing globally may be your best option.
Audio AnalysisWhen your data is ready, you’ll leverage one of several techniques to analyze it. To illustrate, we’ll highlight two of the most popular methods for extracting information:
Audio Transcription, or Automatic Speech RecognitionPerhaps one of the more common forms of audio processing, transcription or Automatic Speech Recognition (ASR) is widely used across industries to facilitate interactions between humans and technology. The goal of ASR is to transcribe spoken audio into text, leveraging NLP models for accuracy. Before ASR existed, computers simply recorded the peaks and valleys of our speech. Now, algorithms can detect patterns in audio samples, match them with sounds from various languages, and determine which words each speaker said. An ASR system will include several algorithms and tools to produce text output. Typically, these two types of models are involved:
- Acoustic model: Turns sound signals into a phonetic representation.
- Language model: Maps possible phonetic representations to words and sentence structure representing the given language.
Audio ClassificationAudio input can be extraordinarily complex, especially if several different types of sounds are present in one file. For example, at a dog park, you may hear people conversing, dogs barking, birds chirping, and cars driving by. Audio classification helps solve this problem by differentiating sound categories. An audio classification task typically starts with annotation and manual classification. Teams will then extract useful features from the audio inputs and apply a classification algorithm to process and sort them. Often audio is classified by more than just its overall sound category. For instance, with files containing people talking, audio classification can differentiate by the language, dialect, and semantics used by speakers. If music is present in the file, audio classification can recognize different instruments, genres, and artists.
Real-Life ApplicationsSolving real-world business problems with audio, speech, and language processing can create enhancements to customer experience, cut down costs and tedious human labor, and direct focus toward more high-level company processes. Already, solutions in this space are present in our daily lives. Some examples of these solutions include:
- Virtual assistants and chatbots
- Voice-activated search functions
- Text-to-speech engines
- In-car command prompts
- Transcriptions of meetings or calls
- Enhanced security with voice recognition
- Phone directories
- Translation services
Outlook and Challenges in Audio, Speech, and Language ProcessingTo achieve a world where machines fully understand our speech and written word, there are still several barriers to overcome. For an audio or text processing algorithm to succeed, it will need to address these key challenges:
Noisy DataNoisy data is data that contains meaningless information. For audio and speech recognition, this term can be meant literally: if you’re trying to understand a speaker, but you keep hearing background voices or cars driving by, you have noisy data. An effective process for analyzing audio or text data must be able to filter out which features of the data matter and which don’t.
Variability of LanguageWhile much progress has been made in NLP to understand human speech better, machines aren’t yet perfect and face a lot of complexity. Humans speak different languages, in different dialects, and with different accents. The way we type also reflects in the language and word choice. The only way to tackle this challenge has been to provide machines with sufficient examples to cover all of these use cases and edge cases. Having access to a global crowd of annotators who speak various languages on your project is a significant step toward solving the problem if your end-users will be diverse.
Speech ComplexitiesSpoken language is much different than the written word. When we talk, we use sentence fragments, filler words, and random pauses. We also don’t pause between every word. We have a lifetime of experiences that help us contextualize and understand these ambiguities when listening to others, but a computer doesn’t have that benefit. Computers also have to manage variabilities in pitch, volume, and word speed for each speaker. With these challenges in mind, experts are turning increasingly to neural networks and deep learning techniques to provide speedier, more accurate opportunities for training machines in human language. The hope is that someday, these advances will make it possible for computers to understand all of us—no matter who we are or how we speak.
Expert Insight From Simon Hammond – Senior Computational LinguistAt Appen, we rely on our team of experts to help you build cutting-edge models utilizing audio, speech, and language processing. Simon Hammond, Senior Computational Linguist at Appen, works to ensure Appen customers are successful in their audio, speech, and language processing. Simon’s top three insights include:
- Make sure you understand the representation of the languages you’re working with. Encodings (the systems computers use to represent characters) can vary and it’s important to choose one that reflects your user base and gives your AI system the best chance for success;
- Don’t underestimate the importance of consistency! Spelling standardisation can greatly improve the performance of your language models, and even of acoustic models in end-to-end systems;
- Language is dynamic and its use changes over time, even within a speaker group or a specific domain. Consider regular data refreshes to make sure your training data doesn’t drift out of alignment with your user base.