Lecture video link: https://youtu.be/YQA9lLdLig8
(Source: https://youtu.be/YQA9lLdLig8?t=1m58s)
Sources: .
: speaker at time .
. (: what microphone records)
E.g., 5 speakers and 5 microphones, will be a 5 x 5 matrix.
(It will be covered that what happens if # of speakers ≠ # of microphones.)
Goal: Find .
.
Cocktail party problem
(Source: https://youtu.be/YQA9ILdLig8?t=3m4s)
Q. Why is ICA even possible? Given two overlapping voices, how is it even possible to separate them out?
A. 2nd image — initial state. 3rd image — state after 2nd image passes through .
What to do? To find an unmixing matrix that maps this data back to the square.
Q. Why is this example possible?
A. Date of the 2nd image are distributed uniformly between -1 and 1. However, human voices are not distributed uniformly.
If data Gaussian, not possible, due to rotational ambiguity.
Formally stated, ICA is possible only if your data is non-Gaussian. So long as your data is non-Gaussian, it is possible to recover the independent sources.
(: random variable, : some constant)
Relation: .
→ Incorrect for continuous probability densities. (Actually this works with pmf (probability mass function) for discrete probability distributions.)
E.g.,
Note that .
Our choice of cdf: .
( speakers are independently speaking.)
MLE:
SGD:
where .
Q. What is the closest non-linear extension of this (ICA)?
A. We don’t have a great answer to that right now frankly.
Interesting research on hierarchical versions of sparse coding is a different algorithm that turns out to be very closely related to ICA and then you can show that they’re optimizing very similar things.
There has been less attention from research on this topic than it really deserves.
(Source: https://youtu.be/YQA9lLdLig8?t=33m15s)
ICA example
(ICAs are routinely used to clean up EEG data today.)
What’s an EEG (electroencephalogram)?
→ Plcae many electrode on your scalp to measure low electrical recordings on the surface of the scalp.
Your brain handles many tasks at the same time — blinking eyes, regulating heartbeat, breathing, etc.
(Source: https://youtu.be/YQA9lLdLig8?t=35m11s)
(Source: https://youtu.be/YQA9lLdLig8?t=36m44s)
To use an EEG to categorize very coarse level thoughts..
(Source: https://youtu.be/YQA9lLdLig8?t=37m52s)
(Source: https://youtu.be/YQA9lLdLig8?t=38m05s)
(Source: https://youtu.be/YQA9lLdLig8?t=39m15s)
What ICA tells us is that the world is made up of edges or patches like the above and just by adding all of the voices you obtain a typical image fashion of the world. An interesting neuroscience theory has some parallels with sparse coding and ICA.
Q. Should the number of microphones and that of people be equal?
A. If microphones outnumber the people, it would be no problem — the rest sources would be silent. In the opposite case, it is a cutting edge research problem. E.g., two people consist of man and woman and you have only one microphone. The algorithm might separate out two voices since one has the higher pitch and the other the lower. However, separating out two male voices or two female ones is still very hard.
Q. Do you ever see a problem with ?
A. I’m sure you can. It’s not usually done in this version of the algorithm, but I would not be surprised if there are some other versions where you do.
Andrew Ng’s comment: K-means clustering, EM algorithm for the mixture of Gaussians, factor analysis model, PCA, and ICA. All of these are algorithms that could take as input an unlabeled training set, just ’s and no labels. We’ve covered three major topics — supervised learning, machine learning, and unsupervised learning.
Assume you need to train a model (computer) that runs helicopter.
It turns out that it’s very difficult to know what’s the one right answer for how to move the control sticks of a helicopter. → It’s hard to use supervised learning for that.
Your job: specify a reward function that just tells the helicopter when it’s flying well or not.
Credit assignment problem — the problem of determining the actions that lead to a certain outcome.
(https://ai.stackexchange.com/questions/12908/what-is-the-credit-assignment-problem)
MDP (Markov Decision Process
RL algorithms will solve problems using this formalism.
MDP is a 5 tuple: .
— set of states.
E.g., the set of all possible chess positions in chess; the set of all the possible positions, orientations, and velocities of helicopter
— set of actions.
E.g., all the moves you can make in chess; all of your conrol sticks for flying helicopter.
— state transition probabilities .
If you take a certain action at a certain state , what is the chance of you ending up at a particular different state ?
— discount factor, .
— reward function.
E.g. Simpified MDP in which you have a robot navigating the simple maze below.
(Source: https://youtu.be/YQA9lLdLig8?t=1h3m12s)
→ 11 states, 4 actions .
E.g.,
When the robot is commanded to head straight, its wheel may slips to veer off at a single angle.
It is actually important to model the noisy dynamics of a robot wheel slipping slightly or the orientation being slightly off.
To train the model fast?
→ Put a very small negative penalty, e.g., for all other states
(when ).
→ Charge it a little bit for using up electricity and wandering around.
Choose action
Get to
Choose action
Get to
Total payoff (Sum of discounted rewards):
is usually chosen to be just slightly less than , e.g., .
Discounting factor has the effect of giving a smaller weight to rewards in distant future, which encourages the robot to get deposited rewards faster.
2 pragmatic reasons for using :
Time value of money.
All the RL algorithms converge much faster or they werem’t much better.
Goal of RL: Choose actions over time to maximize the expected total payoff
Policy (controller) .
Q.
A. In chess game, a state consists of two stages: you make a move and then your opponent makes a move.
Q.
A. It’s quite common to use data to learn state transition probabilities as well, but we’ll cover this topic later.