7월 312016
 

머신러닝이라는 과목에 대하여 어떻게 하면 공부를 효율적으로 즐겁게 할 수 있을지를 고민하던 중 “코세라”에 대하여 알게 되었다. 코세라는 컴퓨터과학과 교수인 Andrew Ng과  Daphne Koller가 공동 창업하여, 비싼 등록금을 내지 못하고 교육의 기회를 가지지 못하는 사람들을 위해 공짜로 온라인 수업을 제공하는 서비스이다[1]. 코세라에서 다양한 머신러닝 수업이 열려있는 것을 확인할 수 있었는데, 이 중 가장 빨리 시작하면서 강의가 길지 않고 요점만 들을 수 있는 수업을 찾다가 창업자인 Andrew Ng교수가 직접 강의하는 ML수업을 선택하게 되었다.

Coursera ML - https://www.coursera.org/learn/machine-learning

Coursera ML – https://www.coursera.org/learn/machine-learning

코세라의 좋은 점은 첫 번째로 공간에 제약없이 공짜로 좋은 강의를 들을 수 있다는 점이다. 일반적으로 이러한 강의를 듣기 위해서는 지정된 시각에 직접 수업하는 장소에 가서 수업을 들어야 한다는 문제가 있다. 스타트업에 다니고 있는 본인은 평일에 시간을 낸다거나 하는 것은 거의 불가능 하다. 그렇기 때문에 온라인 강의는 나에게 매우 필요하였고 이를 선택한 것은 적절한 결정이였다. 또한 세계 유수 대학의 수업을 들을 수 있다는 부분도 고무적이였다. 두 번째로는 돈을 내면 수료증을 받을 수 있다는 점이다. 물론 수업을 듣는 것은 공짜지만, 수료증은 돈(수업당 USD 79)을 내야한다는 점이 안타까운 점인데 그 부분은 수료증을 필요로 하는 사람만 하면 될 것이다. 수료증을 링크드인에 자격증 항목에 등록이 가능하다는 점, 수료증을 대학교 학점으로 인정해주는 곳도 있는 만큼 돈을 낸 값어치는 한다고 생각한다. 세 번째는 수업을 같이 듣고 있는 사람들과 함께 스터디를 하거나 멘토를 통해 도움을 받을 수 있다는 점이다. 수업이 시작하는 기간이 정해져 있기 때문에 수업을 나 뿐만 아니라 다른 사람도 함께 시작하기 때문에 이러한 시스템이 가능한 듯 하다. 물론 영어를 잘 해야한다.

하지만 이에 반해 단점도 있는데, 이는 결국은 영어권 기반의 서비스라는 한계이다. 물론 수업의 자막 번역 기부를 하는 것이 가능하기 때문에 자막이 여러 언어로 번역 되어 있긴 하지만 기본적으로 퀴즈나 과제 문서는 영어로 되어 있기 때문에 영어를 모르고서는 수업을 듣는 것, 과제 하고 퀴즈를 푸는 것이 불가능하다. 포럼에 질문 글을 올리거나 스레드를 여는 것 조차도 영어가 필요하다는 점이 하나의 장벽이 된다. 이번에 들은 ML수업은 일어, 중어, 스페인어 등으로 번역이 완료되어 있으나 한국어는 최초 강의 하나만 번역되어있었다.

Coursera ML - 두 번째 주 강의 스크린샷

Coursera ML – 두 번째 주 강의 스크린샷

ML수업의 경우 동영상 수업, 퀴즈, 과제로 구성되어 있다. 위의 그림은 ML 수업 둘째 주 수업에 대한 스크린 샷이다. 총 11주의 수업으로 구성되어 있으며, 모든 과제 제출, 강의 듣기, 퀴즈 풀기(각각 80점 이상)를 하면 수료상태가 되어 수료증을 받을 수 있게된다. 물론 수료증 없이도 진행 가능하며, 나중에 필요하게 된다면 신청 가능하다. 단 퀴즈를 풀 때 과제를 푸는 사람이 본인이 맞는지 확인하기위해 확인 과정을 거치게 되는데 이 부분에 대해서 설정 및 진행을 해두어야만 한다는 점을 유의 해야 한다. 퀴즈를 풀기 전에 인증 없이 퀴즈를 풀면 수료증을 받을 수 없는 듯 하다.

자막의 언어를 설정할 수 있음

자막의 언어를 설정할 수 있음

동영상 수업을 들을 때 플레이어를 통해 자막을 설정할 수 있다. 물론 아래 쪽에 자막의 스크립트 전문을 볼 수있다. 수업 중간중간에 간단한 퀴즈를 푸는 것도 있는데, 잘 이해했는지 확인하기 위해서 나오는 듯 하며, 풀고 싶지 않으면 스킵하는 것도 가능하다. 딱히 성적에 반영되는 것 같지는 않다.

퀴즈의 경우 ML수업은 5문제 객관식 문제를 푸는 방식이였고 4문제 이상 맞추면 통과된다. 5지선다 형도 있고 맞는 것 체크하는 것이 있고 계산 문제도 있지만 수업만 열심히 들었으면 크게 푸는데 어려움은 없다. 만약 한 번에 통과하지 못하더라도 세 번까지 연속적으로 풀 수 있으며, 제일 점수가 잘 나온 것을 기준으로 성적이 업데이트 된다. 만약 세 번을 다 했을 경우 8시간 이후에 다시 기회가 주어진다. 만약 제한시간(보통 북태평양기준시(PDT) 일요일 23:59:59, 한국시간(KST)으로 월요일 4시)까지 통과하지 못하면 점수를 깎는 조건으로 일 주일 더 도전 가능하다. 문제와 답이 재도전 할 때 마다 조금씩 바뀌기 때문에 문제와 답안을 잘 읽고 풀어야 한다. 수료증 받기 위한 인증으로는 데스크탑의 경우 타자 패턴, 모바일의 경우 사진 인증을 사용한다. 상황에 맞게 하면 된다. 혹시 사정이 생겨서 수업을 못듣개 되더라도 나중에 다시 들으면 된다고 하니 이 부분에 대해서 걱정은 안해도 될 듯 하다.

과제의 경우 ML은 Matlab(Octave)프로그래밍을 한 후 답을 올리는 방식을 취한다. 처음 보는 언어라도 기본 프로그래밍 실력이 있다면 수업중에 어떻게 하면 되는지 설명만 듣는 것으로 과제 풀이가 가능하다. 계속해서 도전이 가능하며 그 중 점수 제일 높게 나온 것이 최종 성적이 된다. 그러니 중간 중간에 한 문제, 한 문제 풀 때 마다 등록하면 된다. 물론 과제 문서에도 그렇게 하도록 시킨다. 왜냐하면 앞의 문제를 풀어서 정상동작해야 그 다음 과정이 진행 가능한 경우가 많기 때문이다. Octave 3.8이상부터 지원된다고 되어 있지만 Octave 4.0 이상에서는 과제 등록이 안되는 경우가 있는데 이 경우 패치 프로그램을 받아야 한다. 이 부분은 추후 다른 포스팅을 통해 방법을 설명하도록 하겠다.

Octave-gui with ex2 in Coursera ML

Octave gui – 2번째 과제 관련 스크린샷

친절하게 문제 하나 풀 때마다 업로드 시점을 알려 준다. - 코세라 과제Ex1

친절하게 문제 하나 풀 때마다 업로드 시점을 알려 준다.

필자는 주말에 주로 수업을듣고 과제를 풀었으며 다음과 같은 방식으로 스터디를 진행하였다. 첫 번째 차수에 영어자막을 띄어놓고 일단 쭉 봐서 대충 내용 파악을 하였다. 두 번째 차수에서 이해 안되는 부분을 위주로 보고, 만약 이해가 전혀 안되면 처음부터 다시 쭉 보는 방식으로 진행하였다. 세 번째는 일어 자막 스크립트를 가지고 한 번 쭉 보거나, 상황에 따라 번역기를 사용하여 이해를 하는 방향으로 스터디 했다. 마지막으로 스크린샷을 뜨고 요약하여 노트를 만들었다. 과제를 하면서는 소스코드가 공개 되어 있기 때문에 어떻게 동작 되는지, 동작 코드를 전체적으로 쭉 훑어 보는 방식으로 진행하니 ML 구현에서 숨겨진 부분이 어떻게 동작하는지 이해할 수 있었다. 과제도 수업 듣는것과 비슷하게 첫 번째에는 쭉 풀어보고, 실패하면 다시 노트를 확인해서 부족한 부분을 스터디 하는 방식으로 부족한 부분을 채워 나갔다.

에버노트를 이용하여 정리

에버노트를 이용하여 정리 – 코세라 수업 스크린샷 발췌

11주가 지나 마지막 퀴즈를 풀면 아래 그림과 같은 축하 메시지가 나오고, 수료증이 발급 된다. 물론 링크드인으로 수료증을 보낼 수 있다. 11주간의 결실이 나온 것이다.

물론 이 수업 하나를 들었다고 해서 머신 러닝 전문가가 된다거나 하는 것은 아니다. 하지만 머신러닝이 어떤 것이고 어떤 곳에 사용할 수 있는가 어떤 부분을 고려해야하는가와 같은 질문에는 강의를 통해 충분히 답변이 된 것 같다. 응용하는 부분은 좀 더 공부가 필요하겠지만 공부방향을 잡는 것은 가능할 것 같다.

수업 완료 후 화면 스크린샷

수업 완료 후 화면 스크린샷

코세라 인증서 및 링크드인 자격증란 등록 스크린샷

코세라 인증서 및 링크드인 자격증란 등록 스크린샷

처음으로 영어로 된 수업을 들으면서 많은 시행 착오도 있었고 어려움도 있었지만 어떻게 해쳐 나온 것 같다. 모르는 부분이 있다거나 실제 시스템을 잘 알고 이해하기 위해서 영어로된 글을 읽는 것은 대학원에서 짜증날 정도로 했던 일이지만, 여전히 영어로된 글은 적응이 되지 않는 정말 피곤한 일인 것 같다. 간단하게 나마 필자가 경험했던 것을 정리해 두었는데 추후 코세라를 시작하는 분들에게 많은 도움이 되길 바란다. 필자는 앞으로 ML 이외의 수업에도 도전해볼 생각이다.

참고자료

  1. Coursera – Wikipedia Korean, https://ko.wikipedia.org/wiki/%EC%BD%94%EC%84%B8%EB%9D%BC