- Tensor Manipulation (new)
 - Reduce Mean
 - Reduce Sum
 - Argmax
 - Reshape
 - One hot
 - Casting
 - Stack
 - One and Zeros like
 - Zip
 
Tensor Manipulation (new)

결과값이 달라진다 !
반드시 Matrix 곱인지 일반적인 곱인지 제대로 알고 사용해야한다.
일반적 곱이 일어난 이유는
Broadcasting개념 때문이다.
굉장히 유용하지만 독이 될 수도 있다.

각각 다른 Rank에 대해 계산을 할 때
임의로 맞춰주는게 Broadcasting이다.

width=”1000”
위 사진처럼 Shape이 바뀐 상태로 계산을 한다.

Q. matrix2가 어떤 구조로 바껴서 계산이 되는거지 ?
Reduce Mean

Reduce mean은 말그대로 평균을 구하는데 줄여서 구한다 !
1번째 Example을 보면
Integer이기 때문에 평균은 1이 나온다.
같은 reduce_mean을 사용하더라도 axis에 따라 값이 달라진다 !
Reduce Sum

- 
    
첫 번째 사진은 축값에 따라 어떻게 보는가를 보여준다.
 - 
    
두 번째 사진은 축을 기준으로 연산을 하였을 때 결과 값이 어떻게 달라지는가를 확인할 수 있다.
 
Argmax

- Argmax는 주어진 List에서 가장 큰 값의 Index를 Return한다.
 
Reshape
Reshape은Tense에Shpae을 변경하기 위해 사용한다.

- 가장 중요하다 !
 
tr.reshape(t, shape=[-1, 3]).eval()
에서 '-1'은 알아서 값을 잡으라는 뜻이다.
그리고 Rank는 []안에 값이 -1, 3이기 때문에 2로 지정해주는 것이다.

- 
    
squeeze는 펴준다는 느낌으로 사용한다. - 
    
특정 Array의 Dimention을 추가하고 싶을 때
expand_dims를 사용한다. 
One hot

- 
    
배열의 Index를 가리키는 [0, 1, 2, 3]와 같은게 아니라
 - 
    
해당되는 값만 Point를 주기위해 사용한다.
 
- 
    
one_hot을 하게 되면 rank = rank + 1이 된다.
 - 
    
그래서 reshape을 해주면 된다.
 
Casting

Stack

One and Zeros like

- 0 또는 1로만 채워진 tense를 만들고 싶을 때 사용한다.
 
Zip

- 복수개의 tense를 가지고 있을 때 사용한다.