2017-11-08

Nov 8 In-Class Exercise .

Post to this thread your solutions to the Nov 8 In-class Exercise.

Best,

Chris

Post to this thread your solutions to the Nov 8 In-class Exercise. Best, Chris

-- Nov 8 In-Class Exercise

W' = [[2,0,0], [0,0,-1], [0,3,0]] x = [-1,3,-3]

For OMP -2 number of non zero entries in h is 1

Case 1 : Let h = [c,0,0] || x - W'h|| = (1+2c)^2 + 9 + 9 --> min value . = 18 when c = -1/2

Case 2: || x - W'h|| = (3+3c)^2 + 1 + 9 --> min value . = 10 when c = -1 and h=[0,-1,0]

Case 3: || x - W'h|| = (3+c)^2 + 1 + 9 --> min value . = 10 when c = -3 and h=[0,0,-3]

Both case 2 and case 3 provide the answer

(Edited: 2017-11-08)
W' = @BT@[[2,0,0], [0,0,-1], [0,3,0]]@BT@ x = @BT@[-1,3,-3]@BT@ For OMP -2 number of non zero entries in h is 1 Case 1 : Let h = @BT@[c,0,0]@BT@ || x - W'h|| = @BT@(1+2c)^2@BT@ + 9 + 9 --> min value . = 18 when c = -1/2 Case 2: || x - W'h|| = @BT@(3+3c)^2@BT@ + 1 + 9 --> min value . = 10 when c = -1 and @BT@h=[0,-1,0]@BT@ Case 3: || x - W'h|| = @BT@(3+c)^2@BT@ + 1 + 9 --> min value . = 10 when c = -3 and @BT@h=[0,0,-3]@BT@ Both case 2 and case 3 provide the answer

-- Nov 8 In-Class Exercise
  • assuming h = [0, 0, C]
  • W' * h = [ 0, -C, 0]
  • X - W'*h = [-1, 3+C, -3]
  • argmin = 1+(3+c)^2 + (-3)^2 ==> C = -3
  • h = [0, 0, -3]
  • we still need to do the two other cases. h=[0,C,0], h=[C,0,0]
(Edited: 2017-11-08)
* assuming h = [0, 0, C] * W' * h = [ 0, -C, 0] * X - W'*h = [-1, 3+C, -3] * argmin = 1+(3+c)^2 + (-3)^2 ==> C = -3 * h = [0, 0, -3] * we still need to do the two other cases. h=[0,C,0], h=[C,0,0]

-- Nov 8 In-Class Exercise

we have w as a 3x3 matrix, x = 3x1 matrix, h = 3x1 matrix, since k = 2, h can only contain 1 non zero entry.

write the magnitude as a system of equations, distance = ||x - w*h|| solving for h1, h2, h3 we get h1 = -1/2, h2=3, h3=1

evaluate the arrays for each of these h values with the other entries as 0.

import numpy as np

x = np.matrix([[-1], [3], [-3]])
w = np.matrix([[2, 0, 0], [0, 0, -1], [0, 3, 0]])
print(x)
print(w)

h = np.matrix([[-1 / 2], [0], [0]])
distance = np.linalg.norm(x - w * h)
print(distance)

h = np.matrix([[0], [3], [0]])
distance = np.linalg.norm(x - w * h)

print(distance)

h = np.matrix([[0], [0], [1]])
distance = np.linalg.norm(x - w * h)
print(distance)
4.24264068712
12.409673646
5.09901951359

since h1 = -1/2 had the lowest distance, we can use h = [-1/2,0,0]

(Edited: 2017-11-08)
we have w as a 3x3 matrix, x = 3x1 matrix, h = 3x1 matrix, since k = 2, h can only contain 1 non zero entry. write the magnitude as a system of equations, distance = ||x - w*h|| solving for h1, h2, h3 we get h1 = -1/2, h2=3, h3=1 evaluate the arrays for each of these h values with the other entries as 0. import numpy as np x = np.matrix([[-1], [3], [-3]]) w = np.matrix([[2, 0, 0], [0, 0, -1], [0, 3, 0]]) print(x) print(w) h = np.matrix([[-1 / 2], [0], [0]]) distance = np.linalg.norm(x - w * h) print(distance) h = np.matrix([[0], [3], [0]]) distance = np.linalg.norm(x - w * h) print(distance) h = np.matrix([[0], [0], [1]]) distance = np.linalg.norm(x - w * h) print(distance) 4.24264068712 12.409673646 5.09901951359 since h1 = -1/2 had the lowest distance, we can use h = [-1/2,0,0]

-- Nov 8 In-Class Exercise

Still Working

(Edited: 2017-11-08)
Still Working

-- Nov 8 In-Class Exercise

W' = [[2,0,0],[0,0,-1],[0,3,0]] x=[[-1],[3],[-3]]

k=2, h has 1 non-0 entry

x - W' * h

  1. h = [c,0,0]
  2. h = [0,c,0]
  3. h = [0,0,c]
(Edited: 2017-11-08)
@BT@W' = [[2,0,0],[0,0,-1],[0,3,0]]@BT@ @BT@x=[[-1],[3],[-3]]@BT@ k=2, h has 1 non-0 entry @BT@x - W' * h@BT@ 1. h = [c,0,0] 2. h = [0,c,0] 3. h = [0,0,c]

-- Nov 8 In-Class Exercise

W' = [[2,0,0],[0,0,-1],[0,3,0]] x = [-1,3,-3]

let h = [a, b, c] W'h = [2a, -b, 3c]

W' = [[2,0,0],[0,0,-1],[0,3,0]] x = [-1,3,-3] let h = [a, b, c] W'h = [2a, -b, 3c]

-- Nov 8 In-Class Exercise

If we can have X = W'h, then we will have norm to be zero. But, in that case we might not have two out of those 3 entries to be zero.

So finding [h1, h2, h3] which makes X = W'h, i.e. making h = h = [-1/2, -1, -3] and then finding x-W'h for
[h1,0,0] as (1), [0,h2,0] as (2) [0,0,h3] as (3)

and comparing (1), (2) and (3) will 3 different values. taking the h which minimizes ||x- W'h||^2 gives the solution. In our case, (2) and (3) give the result with ||x- W'h||^2 being minimum.

h can be [0, -1, 0] or [0, 0, -3].

(Edited: 2017-11-08)
If we can have X = W'h, then we will have norm to be zero. But, in that case we might not have two out of those 3 entries to be zero. So finding [h1, h2, h3] which makes X = W'h, i.e. making h = h = [-1/2, -1, -3] and then finding x-W'h for [h1,0,0] as (1), [0,h2,0] as (2) [0,0,h3] as (3) and comparing (1), (2) and (3) will 3 different values. taking the h which minimizes ||x- W'h||^2 gives the solution. In our case, (2) and (3) give the result with ||x- W'h||^2 being minimum. h can be [0, -1, 0] or [0, 0, -3].

-- Nov 8 In-Class Exercise

W’ = [[2,0,0], [0,0,-1], [0,3,0]] x = [-1,3,-3]

For OMP -2 number of non zero entries in h is 1

Case 1 : Let h = [c,0,0] || x - W’h|| = (1+2c)^2 + 9 + 9 --> min value . = 18 when c = -1/2

Case 2: || x - W’h|| = (3+3c)^2 + 1 + 9 --> min value . = 10 when c = -1 and h=[0,-1,0]

Case 3: || x - W’h|| = (3+c)^2 + 1 + 9 --> min value . = 10 when c = -3 and h=[0,0,-3]

Both case 2 and case 3 provide the answer

W’ = @BT@[[2,0,0], [0,0,-1], [0,3,0]]@BT@ x = @BT@[-1,3,-3]@BT@ For OMP -2 number of non zero entries in h is 1 Case 1 : Let h = @BT@[c,0,0]@BT@ || x - W’h|| = @BT@(1+2c)^2@BT@ + 9 + 9 --> min value . = 18 when c = -1/2 Case 2: || x - W’h|| = @BT@(3+3c)^2@BT@ + 1 + 9 --> min value . = 10 when c = -1 and @BT@h=[0,-1,0]@BT@ Case 3: || x - W’h|| = @BT@(3+c)^2@BT@ + 1 + 9 --> min value . = 10 when c = -3 and @BT@h=[0,0,-3]@BT@ Both case 2 and case 3 provide the answer

-- Nov 8 In-Class Exercise

Resource Description for IMG_4387.jpg

((resource:IMG_4387.jpg|Resource Description for IMG_4387.jpg))
[ Next ]
X