Upload
yuriy-guts
View
768
Download
0
Tags:
Embed Size (px)
Citation preview
Experiments with Machine Learning
Yuriy GutsSolutions Architect
First Things FirstWhat Is Machine Learning?
“ A computer program is said to learn from experience Ewith respect to some class of tasks T and performance measure P,if its performance at tasks in T, as measured by P,improves with experience E.
— Tom M. Mitchell
Categories of Machine Learning
1. Supervised Learning.
2. Unsupervised Learning.
3. Reinforcement Learning.
RegressionPredict a continuous dependent variable
based on independent predictors
Linear Regression
ClassificationAssign an observation to some categoryfrom a known discrete list of categories
Logistic Regression
hypothesis = 1 / (1 + exp(-‐theta' * x));
Logistic Regression: Cost Function
hypotheses = sigmoid(X * theta);cost = (1 / m) * (-‐y' * log(hypotheses) -‐ (1 -‐ y)' * log(1 -‐ hypotheses));
Let’s classify human speech!Decide whether a spoken phrase contains the word ‘Google’ or not
‘Google’ Detector: Feature Mapping
Options for building X[ ]:
Input: Audio file (WAV, 16 bit mono, 44.1 kHz)Output: 1 if it contains the word ‘Google’, otherwise 0
1. Use raw waveform as a feature vector.But: will have 66150 features for a 1.5 second file.Kinda scary, and easy to overfit.
2. Use Mel-Frequency Cepstral Coefficients (MFCC).Believed to be closer to human auditory response.Depending on parameters, can give about 80 features per file.
[cepstra, aSpectrum, pSpectrum] = MFCC(waveform);
x = [cepstra(1); cepstra(2); ...; cepstra(n)];
Let’s code it upMATLAB, logistic regression with conjugate gradient optimization
yuriy . guts @ gmail . com
linkedin . com / in / yuriyguts
github.com/YuriyGuts/gdg-speech-classifier
Q & A