ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 벡터가 뭐에요?
    BoostCourse 2023. 1. 5. 02:41

    From BoostCourse 임성빈 교수님

     

    나긋나긋한 목소리로 설명해주신다. 하지만 수업량에 비해 동영상 길이가 짧아 이 강의만으로는 벡터에 대해 이해하기 어려울 수도 있다고 생각된다. 다른 강의를 통해 보충할 필요가 있어 보인다. 어쨌든 시작해보자.


    기본적인 내용은 이전에 Math Mart 황한순 선생님 동영상을 공부하며 적은 필기내용을 첨부하겠다.

    (동영상 링크)

    해당 동영상은 편입 시험을 위한 선형대수 강의이다 ㅎㅎ

     

     

     

    벡터의 노름 구하기

    L1 노름: 각 성분의 절대값의 합

    사용처: Robust 학습, Lasso 회귀

    def l1_norm(x):
        x_norm = np.abs(x)
        x_norm = np.sum(x_norm)
        return x_norm

    L2 노름: 유클리드 거리

    사용처: Laplace 근사, Ridge 회귀

    def l2_norm(x):
        x_norm = x*x
        x_norm = np.sum(x_norm)
        x_norm = np.sqrt(x_norm)
        return x_norm

     

    두 벡터 사이의 각도 구하기(L2 노름)

    def angle(x, y):
        cos = np.inner(x, y) / (l2_norm(x) * l2_norm(y))
        theta = np.arccos(cos)
        return theta

     

    한편, 위 함수에서 내적의 정의를 볼 수 있다.

    np.inner(x, y) == l2_norm(x) * l2_norm(y) * cos

    두 벡터의 유사도가 높을 수록 코사인 값은 1에 가까워지므로 내적 값이 커진다.

    >> 내적은 두 벡터의 유사도를 측정하는 데 사용할 수 있다.

    >> 군집화 분석에 내적을 활용하게 되지 않을까?

     

     

    'BoostCourse' 카테고리의 다른 글

    선형방정식과 선형시스템  (0) 2023.01.07
    행렬은 뭔가요?  (0) 2023.01.07
    Numpy  (1) 2023.01.05
    Exception/File/Log Handling  (0) 2023.01.02
    Module and Project  (0) 2023.01.02

    댓글

Designed by Tistory.