(New page: See also: [Fisher Linear Discriminant] In this derivation, we assume the dimension of the space being projected to, k, is k=1. We attempt to find a linear projection (line that passes th...)
 
(Removed broken (accidentaly replaced) animation which was not relavant to the discussion any more.)
 
(15 intermediate revisions by 3 users not shown)
Line 1: Line 1:
See also: [Fisher Linear Discriminant]
+
See also: [[Fisher Linear Discriminant_OldKiwi]]
  
 
In this derivation, we assume the dimension of the space being projected to, k, is k=1.
 
In this derivation, we assume the dimension of the space being projected to, k, is k=1.
  
We attempt to find a linear projection (line that passes through the origin) s.t. the projected data can be "best" separated. The following animation shows how we can achieve the "best" separation between classes on the projected data by changing the projection plane <math>\omega</math>.
+
We attempt to find a linear projection (line that passes through the origin) s.t. the projected data can be "best" separated.
  
**sorry, I did not realize that this image would change while I was working on [Lecture 11] I changed the name of the other image so whoever has the original animation can put it back**
+
Assume <math>y_1,..., y_{d_1}</math> belongs to Class 1 and <math>y_{d_1+1}</math>,..., <math>y_d</math> belongs to Class 2.
 
+
.. image:: projection.gif
+
 
+
.. |y_d_1| image:: tex
+
  :alt: tex: y_{d_1}
+
.. |y_d_1+1| image:: tex
+
  :alt: tex: y_{d_1+1}
+
.. |m1s| image:: tex
+
  :alt: tex: \tilde{m_1}
+
.. |m1-| image:: tex
+
  :alt: tex: \tilde{m_1} = \frac{1}{d_1} \sum_{i=1}^{d_1} \pi(y_i) = \frac{1}{d_1}\sum_{i=1}^{d_1} \vec{w} \cdot y_i
+
 
+
Assume <math>y_1</math>, ..., <math>y_{d_1}</math> belongs to Class 1 and <math>y_{d_1+1}</math>,..., <math>y_d</math> belongs to Class 2.
+
  
 
Consider the sample mean of the projected data for each class
 
Consider the sample mean of the projected data for each class
Line 24: Line 11:
 
<math>\tilde{m_1} = \frac{1}{d_1} \sum_{i=1}^{d_1} \pi(y_i) = \frac{1}{d_1}\sum_{i=1}^{d_1} \vec{w} \cdot y_i</math>, if <math>||\omega || =1</math>
 
<math>\tilde{m_1} = \frac{1}{d_1} \sum_{i=1}^{d_1} \pi(y_i) = \frac{1}{d_1}\sum_{i=1}^{d_1} \vec{w} \cdot y_i</math>, if <math>||\omega || =1</math>
  
**Observation:** <math>m1 = \vec{w} \frac{1}{d_1} \sum_{i=1}^{d_1} y_i</math>, which is the projection of the sample mean for Class 1.  
+
=== Observation 1 ===
 +
<math>\tilde{m1} = \vec{w} \frac{1}{d_1} \sum_{i=1}^{d_1} y_i</math>, which is the projection of the sample mean for Class 1.
  
 
Also, <math>\tilde{m_2} = \frac{1}{d-d_1}\sum_{i=d_1+1}^{d} \vec{w} \cdot y_i = \vec{w} \cdot m_2</math> .
 
Also, <math>\tilde{m_2} = \frac{1}{d-d_1}\sum_{i=d_1+1}^{d} \vec{w} \cdot y_i = \vec{w} \cdot m_2</math> .
Line 37: Line 25:
 
Define the following cost function, <math>J(\vec{w}) = \frac{|\tilde{m1} - \tilde{m2}|^2}{\tilde{S_1}^2+ \tilde{S_2}^2}</math> .
 
Define the following cost function, <math>J(\vec{w}) = \frac{|\tilde{m1} - \tilde{m2}|^2}{\tilde{S_1}^2+ \tilde{S_2}^2}</math> .
  
The above equation is the "[Fisher linear discriminant]".
+
The above equation is the "[[Fisher linear discriminant_OldKiwi]]".
  
**Observation:** Demanding <math>||\tilde{m_1} - \tilde{m_2}||</math> to be maximized would not do, since <math>||\tilde{m_1} - \tilde{m_2}|| = |\vec{w} \cdot m_1 - \vec{w} \cdot m_2 | = | \vec{w} \cdot (m_1 - m_2)| \rightarrow \infinity</math>
+
=== Observation 2 ===
 +
Demanding <math>||\tilde{m_1} - \tilde{m_2}||</math> to be maximized would not do, since <math>||\tilde{m_1} - \tilde{m_2}|| = |\vec{w} \cdot m_1 - \vec{w} \cdot m_2 | = | \vec{w} \cdot (m_1 - m_2)| \rightarrow \infty</math>
  
  
 
Need to fix <math>|| \omega || = 1</math> , resulting in a Constrained Optimization Problem.
 
Need to fix <math>|| \omega || = 1</math> , resulting in a Constrained Optimization Problem.
 
 
.. |s1-| image:: tex
 
  :alt: tex: \tilde{S_1}^2
 
.. |s2-| image:: tex
 
  :alt: tex: \tilde{S_2}^2
 
.. |eq1| image:: tex
 
  :alt: tex: \vec{w} \cdot (m_1 - m_2)
 
.. |Jw| image:: tex
 
  :alt: tex: J(\vec{w})
 
  
 
By dividing by <math>\tilde{S_1}^2 + \tilde{S_2}^2</math> we demand that <math>\vec{w} \cdot (m_1 - m_2)</math> be large in comparison with the scatter. This allows you to bypass the coordinate scale problem because <math>J(\vec{w})</math> is independent of <math>\omega</math>.
 
By dividing by <math>\tilde{S_1}^2 + \tilde{S_2}^2</math> we demand that <math>\vec{w} \cdot (m_1 - m_2)</math> be large in comparison with the scatter. This allows you to bypass the coordinate scale problem because <math>J(\vec{w})</math> is independent of <math>\omega</math>.
  
.. |eq2| image:: tex
+
<math>|\tilde{m_1} - \tilde{m_2}|^2 = | w(m_1 - m_2)|^2 = |w|^2 | \frac{w}{|w|}(m_1-m_2)|^2</math>
  :alt: tex: |\tilde{m_1} - \tilde{m_2}|^2 = | w(m_1 - m_2)|^2 = |w|^2 | \frac{w}{|w|}(m_1-m_2)|^2
+
 
+
.. |eq3| image:: tex
+
  :alt: tex: \tilde{S_1}^2 = \sum (\vec{w}(y_i - m_1))^2 = |w|^2 \sum (\frac{w}{|W|} (y_i - m_1))^2
+
 
+
.. |eq4| image:: tex
+
  :alt: tex: \tilde{S_2}^2 = \sum (\vec{w}(y_i - m_1))^2 = |w|^2 \sum (\frac{w}{|W|} (y_i - m_2))^2
+
 
+
|eq2|
+
  
 
Similarly,
 
Similarly,
  
|eq3|
+
<math>\tilde{S_1}^2 = \sum (\vec{w}(y_i - m_1))^2 = |w|^2 \sum (\frac{w}{|W|} (y_i - m_1))^2</math>
  
 
and,
 
and,
  
|eq4|
+
<math>\tilde{S_2}^2 = \sum (\vec{w}(y_i - m_1))^2 = |w|^2 \sum (\frac{w}{|W|} (y_i - m_2))^2</math>
 +
 
  
 
and,
 
and,
  
 
+
<math>J(\vec{w}) = \frac{|m_1-m_2|^2}{S_1^2+S_2^2} =\frac{|w|^2 | \frac{w}{|w|}(m_1-m_2)|^2}{|w|^2(\sum (\frac{w}{|W|} (y_i - m_1))^2 + \sum (\frac{w}{|W|} (y_i - m_2))^2 )}
.. |eq5| image:: tex
+
</math> is independent of <math>||\omega||</math>.
  :alt: tex: J(\vec{w}) = \frac{|m_1-m_2|^2}{S_1^2+S_2^2} =\frac{|w|^2 | \frac{w}{|w|}(m_1-m_2)|^2}{|w|^2(\sum (\frac{w}{|W|} (y_i - m_1))^2 + \sum (\frac{w}{|W|} (y_i - m_2))^2 )}  
+
 
+
|eq5| is independent of || |ome| ||.
+
  
 
Importance of scatter:
 
Importance of scatter:
  
.. image:: fld_explanation2.JPG
+
[[Image:fld_explanation2_OldKiwi.JPG]]
 
+
If we find  |ome| which makes |Jw| large, we are guaranteed that the classes are well-separated.
+
 
+
.. image:: fld_explanation3a.JPG
+
 
+
We can write |Jw| using matrices:
+
 
+
 
+
.. |eq6| image:: tex
+
  :alt: tex: J(\vec{w}) = \frac{\vec{w}^{\top}S_B \vec{w}}{\vec{w}^{\top}S_w \vec{w}}
+
 
+
|eq6|, which is called the "[Generalized Rayleigh Quotient]".
+
 
+
([Lecture 11] begins here)
+
 
+
.. |fisher_1| image:: tex
+
  :alt: tex: J(\vec{w})=\frac {{\vec{w}}^{T}{S}_{B}\vec{w}}  {{\vec{w}}^{T}{S}_{W}\vec{w}} 
+
 
+
.. |w_bar| image:: tex
+
  :alt: tex: \vec{w}
+
 
+
.. |func_1| image:: tex
+
  :alt: tex: \| \tilde{m_1}-\tilde{m_2} \|^2 = \| w(m_1-m_2) \|^2 =  \| (m_1-m_2)^T w \|^2
+
 
+
.. |func_1_1| image:: tex
+
  :alt: tex: =w^T (m_1-m_2)(m_1^T-m_2^T)w
+
 
+
 
+
.. |S_B| image:: tex
+
  :alt: tex: (m_1-m_2)(m_1^T-m_2^T) =S_B
+
 
+
.. |func_2_1| image:: tex
+
  :alt: tex: \tilde{s_1}^2 + \tilde{s_2}^2
+
 
+
.. |func_2_2| image:: tex
+
  :alt: tex:  \tilde{s_1}^2 =\displaystyle  \sum_{\vec y \; in \; class} (w y_i- \tilde{m_i} )^2   
+
 
+
.. |func_2_3| image:: tex
+
  :alt: tex:  =\displaystyle  \sum_{\vec y \; in \; class}} w^T (y_i-m_i)(y_i^T-m_i^T)w
+
 
+
.. |func_2_4| image:: tex
+
  :alt: tex:  = w^T \displaystyle  \sum_{\vec y \; in \; class}}  (y_i-m_i)(y_i^T-m_i^T)w 
+
  
.. |func_2_5| image:: tex
+
If we find  <math>\omega</math> which makes <math>Jw</math> large, we are guaranteed that the classes are well-separated.
  :alt: tex: \displaystyle \sum_{\vec y \; in \; class}}  (y_i-m_i)(y_i^T-m_i^T) =S_w
+
  
 +
[[Image:fld_explanation3a_OldKiwi.jpg]]
  
Last time we considered |fisher_1|, explicit function of |w_bar|
+
We can write <math>Jw</math> using matrices:
  
one can do this because
+
<math>J(\vec{w}) = \frac{\vec{w}^{\top}S_B \vec{w}}{\vec{w}^{\top}S_w \vec{w}}
 +
</math>, which is called the "[Generalized Rayleigh Quotient]".
  
(numerator of J) = |func_1|
+
([[Lecture 11_OldKiwi]] begins here)
|func_1_1|
+
  
where, |S_B| is 'between class scatter matrix'.
+
Last time we considered <math>J(\vec{w})=\frac {{\vec{w}}^{T}{S}_{B}\vec{w}}  {{\vec{w}}^{T}{S}_{W}\vec{w}}</math>, explicit function of <math>\vec{w}</math>
  
(denominator of J) = |func_2_1|
+
one can do this because
  
|func_2_2|
+
(numerator of J) = <math>\| \tilde{m_1}-\tilde{m_2} \|^2 = \| w(m_1-m_2) \|^2 =  \| (m_1-m_2)^T w \|^2</math>
  
|func_2_3|
+
<math>=w^T (m_1-m_2)(m_1^T-m_2^T)w</math>
  
|func_2_4|
+
where, <math>(m_1-m_2)(m_1^T-m_2^T) =S_B</math> is 'between class scatter matrix'.
  
where, |func_2_5| is 'within class scattter matrix'.
+
(denominator of J) = <math>\tilde{s_1}^2 + \tilde{s_2}^2</math>
  
 +
<math>\tilde{s_1}^2 =\displaystyle  \sum_{\vec y \; in \; class} (w y_i- \tilde{m_i} )^2
 +
</math>
  
 +
<math> = \displaystyle \sum_{\vec{y} \; in \; class} w^T (y_i-m_i)(y_i^T-m_i^T)w</math>
  
From thanh.h.ha.1 Sat Feb 16 11:53:49 -0500 2008
+
<math>w^T \displaystyle  \sum_{\vec{y} \; in \; class}  (y_i-m_i)(y_i^T-m_i^T)w</math>
From: thanh.h.ha.1
+
Date: Sat, 16 Feb 2008 11:53:49 -0500
+
Subject: the animation??
+
Message-ID: <20080216115349-0500@https://engineering.purdue.edu>
+
  
When the blue circles move down below the x axis, I think their cooridinates would change to(-1,-y5), (-1, -y6)...., not (-1,y5), (-1,y6)... as in the animation.
+
where, <math>\displaystyle \sum_{\vec y \; in \; class}  (y_i-m_i)(y_i^T-m_i^T) =S_w </math> is 'within class scattter matrix'.

Latest revision as of 10:50, 22 April 2008

See also: Fisher Linear Discriminant_OldKiwi

In this derivation, we assume the dimension of the space being projected to, k, is k=1.

We attempt to find a linear projection (line that passes through the origin) s.t. the projected data can be "best" separated.

Assume $ y_1,..., y_{d_1} $ belongs to Class 1 and $ y_{d_1+1} $,..., $ y_d $ belongs to Class 2.

Consider the sample mean of the projected data for each class

$ \tilde{m_1} = \frac{1}{d_1} \sum_{i=1}^{d_1} \pi(y_i) = \frac{1}{d_1}\sum_{i=1}^{d_1} \vec{w} \cdot y_i $, if $ ||\omega || =1 $

Observation 1

$ \tilde{m1} = \vec{w} \frac{1}{d_1} \sum_{i=1}^{d_1} y_i $, which is the projection of the sample mean for Class 1.

Also, $ \tilde{m_2} = \frac{1}{d-d_1}\sum_{i=d_1+1}^{d} \vec{w} \cdot y_i = \vec{w} \cdot m_2 $ .

Consider the scatter projections:

$ \tilde{S_1}^2 = \sum_{i=1}^{d_1} (\vec{w} \cdot y_i - \tilde{m_1})^2 $

$ \tilde{S_2}^2 = \sum_{i=d_1+1}^{d} (\vec{w} \cdot y_i - \tilde{m_2})^2 $


Define the following cost function, $ J(\vec{w}) = \frac{|\tilde{m1} - \tilde{m2}|^2}{\tilde{S_1}^2+ \tilde{S_2}^2} $ .

The above equation is the "Fisher linear discriminant_OldKiwi".

Observation 2

Demanding $ ||\tilde{m_1} - \tilde{m_2}|| $ to be maximized would not do, since $ ||\tilde{m_1} - \tilde{m_2}|| = |\vec{w} \cdot m_1 - \vec{w} \cdot m_2 | = | \vec{w} \cdot (m_1 - m_2)| \rightarrow \infty $


Need to fix $ || \omega || = 1 $ , resulting in a Constrained Optimization Problem.

By dividing by $ \tilde{S_1}^2 + \tilde{S_2}^2 $ we demand that $ \vec{w} \cdot (m_1 - m_2) $ be large in comparison with the scatter. This allows you to bypass the coordinate scale problem because $ J(\vec{w}) $ is independent of $ \omega $.

$ |\tilde{m_1} - \tilde{m_2}|^2 = | w(m_1 - m_2)|^2 = |w|^2 | \frac{w}{|w|}(m_1-m_2)|^2 $

Similarly,

$ \tilde{S_1}^2 = \sum (\vec{w}(y_i - m_1))^2 = |w|^2 \sum (\frac{w}{|W|} (y_i - m_1))^2 $

and,

$ \tilde{S_2}^2 = \sum (\vec{w}(y_i - m_1))^2 = |w|^2 \sum (\frac{w}{|W|} (y_i - m_2))^2 $


and,

$ J(\vec{w}) = \frac{|m_1-m_2|^2}{S_1^2+S_2^2} =\frac{|w|^2 | \frac{w}{|w|}(m_1-m_2)|^2}{|w|^2(\sum (\frac{w}{|W|} (y_i - m_1))^2 + \sum (\frac{w}{|W|} (y_i - m_2))^2 )} $ is independent of $ ||\omega|| $.

Importance of scatter:

Fld explanation2 OldKiwi.JPG

If we find $ \omega $ which makes $ Jw $ large, we are guaranteed that the classes are well-separated.

Fld explanation3a OldKiwi.jpg

We can write $ Jw $ using matrices:

$ J(\vec{w}) = \frac{\vec{w}^{\top}S_B \vec{w}}{\vec{w}^{\top}S_w \vec{w}} $, which is called the "[Generalized Rayleigh Quotient]".

(Lecture 11_OldKiwi begins here)

Last time we considered $ J(\vec{w})=\frac {{\vec{w}}^{T}{S}_{B}\vec{w}} {{\vec{w}}^{T}{S}_{W}\vec{w}} $, explicit function of $ \vec{w} $

one can do this because

(numerator of J) = $ \| \tilde{m_1}-\tilde{m_2} \|^2 = \| w(m_1-m_2) \|^2 = \| (m_1-m_2)^T w \|^2 $

$ =w^T (m_1-m_2)(m_1^T-m_2^T)w $

where, $ (m_1-m_2)(m_1^T-m_2^T) =S_B $ is 'between class scatter matrix'.

(denominator of J) = $ \tilde{s_1}^2 + \tilde{s_2}^2 $

$ \tilde{s_1}^2 =\displaystyle \sum_{\vec y \; in \; class} (w y_i- \tilde{m_i} )^2 $

$ = \displaystyle \sum_{\vec{y} \; in \; class} w^T (y_i-m_i)(y_i^T-m_i^T)w $

$ w^T \displaystyle \sum_{\vec{y} \; in \; class} (y_i-m_i)(y_i^T-m_i^T)w $

where, $ \displaystyle \sum_{\vec y \; in \; class} (y_i-m_i)(y_i^T-m_i^T) =S_w $ is 'within class scattter matrix'.

Alumni Liaison

EISL lab graduate

Mu Qiao