AI/Coursera Machine Learning

[Coursera: Machine Learning] 1주차 리뷰 - 머신러닝 톺아보기

찌리남 2021. 12. 28. 19:33
728x90

왜 듣냐?

저는 지난 6개월간 Fast Campus에서 AI 기반 데이터 사이언티스트 양성 과정에 참여해서 이것저것 허겁지겁 배우는 시간을 가졌습니다. 허겁지겁 배우느라 찍먹 하는 기분이 굉장히 컸는데 기본부터 다시 닦을 겸 취업하기 전까지 수료증 하나라도 더 받을 겸 해서 코세라(Coursera)의 머신러닝(Machine Learning) 강의를 수강하게 되었습니다.

 

코세라(Coursera)는 위키피디아에 의하면 스탠퍼드 대학교의 컴퓨터 공학 교수인 '앤드류 응', '대프니 콜러'가 비싼 등록금을 내지 못하거나, 교육의 기회를 가질 수 없는 사람들을 위해 만든 온라인 강의 사이트입니다. 딱 저에게 맞는 사이트입니다. 전 세계 대학들이 강의를 제공하니 머신러닝 외에 다른 것을 배우고 싶은 사람들에게도 좋은 사이트일 것 같습니다.

 

첫인상?

코세라 수업을 1주 차 밖에 안 들었지만 지금까지 수강했던 어떤 교육 프로그램보다 효과적인 방법을 갖고 있다는 생각이 듭니다. 왜냐하면 녹화 강의지만 영상 중간에 (기습) 퀴즈가 제공되어서 한시도 집중을 놓을 수가 없고 과제, 시험이 제공되어 실제 학원이나 학교에서 수강하는 것과 크게 차이가 없다고 느껴졌습니다. 그리고 무엇보다 세계적 석학들의 강의를 수강하고 수료증을 받을 수 있다는 것이 큰 메리트라고 느꼈습니다.

 

그리고 단순히 일방적인 교육 방식을 탈피하고 전달력을 높이려는 노력이 돋보이는 부분이 보였는데 패스트 캠퍼스 강의를 수강하며 들었던 의문들 중 하나가 "이걸 왜 배우고 있는 거지?" 였는데 이런 것들이 이번 강의에서 아직 없다는 것입니다. 정말로 아무것도 모르는 사람이(영어는 아는 사람) 수강해도 이해하기 수월하고 이걸 왜 이해해야 하는지까지 알게 되어서 정말 효과적인 강의라는 생각이 들었습니다.

 

1주 차에서 배운 내용들

  • What is Machine Learning?
  • Supervised Learning
  • Model Representation
  • Cost Function
  • Gradient Descent
  • Gradient Descent For Linear Regression
  • Matrices and Vectors
  • Matrix-Vector Multiplication
  • Matrix Multiplication Properties
  • Inverse and Transpose

머신러닝이란 무엇인가에 대해 설명을 하시면서 다이어그램을 하나 보여주셨는데 6개월간 배우고 나서 다시 보니 이 다이어그램이 AI 관련 일을 하면서 무한히 반복해야 되는 일인 것을 다시 한번 깨닫게 되었습니다. 다이어그램은 간략하게 소개하면, Training set을 학습한 Learning Algorithm을 h(Hypothesis 혹은 model)이라고 부르는데, 이 h는 난생처음 보는 x값을 입력받아 y값을 예측하기 위해 태어난 존재라는 의미의 다이어그램입니다. 

AI 작업 워크플로우

 

Learning Algorithm 과정에서 필요한 것이 바로 Cost Function, Gradient Descent입니다. Cost Function은 예측한 값과 실제 값의 차이가 얼마나 되는지 알려주는 함수이고, Gradient Descent는 그 차이와 Learning Rate를 감안해 Parameter를 조절하며 최대한 Cost Function의 값이 작아지도록 parameter를 조절하는 것이 AI의 학습입니다. 그리고 행렬(Matrix-Vector) 연산을 사용하면 병렬적으로 연산하여 효율적으로 컴퓨팅할 수 있습니다.

 

Cost Function 값이 최소가 되도록 parameter들을 조절하는 다이어그램

강의 내용의 좋았던 점

배운 내용들을 나열하고 나니 정말 많은 내용을 다룬 것 같은데 몇 번째 보는 내용이어서 그렇게 부담스럽지는 않았습니다. Fast Campus 강의를 들으면서 아쉬웠던 것이 디테일에 매몰되어서 핵심을 잊어버리는 점이었는데 '앤드류 응' 교수님은 영상과 영상이 유기적으로 연결되어서 그런 점이 굉장히 적게 느껴졌습니다. 

 

전에 제 블로그에서 다룬 적이 있을 정도로 익숙한 내용들이라서 어렵지는 않았는데 몇 가지 부분들 예를 들면 Cost Function, Gradient Descent, Matrix-Vector 부분을 공부할 때 피상적으로 문제 해결하는 것에 집중하느라 원리나 본질에 대해 관심을 못 가졌는데 그것에 대해 다루게 되어서 굉장히 만족스러웠습니다.

 

아직 직접적으로 프로그래밍을 하거나 직접 문제 해결을 하는 과제가 없었는데 앞으로 2주 차부터 하게 될 것 같아서 기대가 됩니다. 이번 강의에서는 Python은 사용하지 않고 Octave를 사용한다는데 더 기대가 됩니다. 난생처음 들어보는 것이긴 한데 머신러닝의 기본에 대해 학습하기에 적합한 툴이라고 설명하셔서 툴툴대지 않고 따라가렵니다.

전 포스트에서 다뤘던 내용들

728x90
반응형