본문 바로가기
info : 유용한 정보, 체험기

딥러닝 생초보 무료 강의 코세라 (coursera) generative AI for everyone (모두를 위한 제너레이티브 에이아이) 추천 vs 비추천

by 퇴근길에 삼남매가 알려드림 2023. 11. 5.

딥러닝 생초보 무료 강의 코세라 (coursera) generative AI for everyone

최근 모두를 위한 제너레이티브 에이아이(Generative AI for everyone)이라는 강의가 코세라에서 시작되었다. 앤드류 응 (Andrew Ng) 교수의 강의로  3주 프로그램이며 코세라 (coursera)에서 무료로 들을 수 있다. 본 글은 코세라 강의가 본인에게 괜찮을 지 고민하시는 분이나 기본 개념을 확인하고 싶은 분께 추천드린다. 코세라의 다른 강의들은 한글 자막도 잘 되어있는 경우가 많다. 나중에 업데이트되겠지만 현 강의는 영어 자막만 제공한다. 

 

모두를 위한 제너레이티브 에이아이 강의 아이콘

일단 강의 난이도는 비기너이다. 제목에 들어있는 모두를 위한 (for everyone) 처럼 제너레이티브 에이아이를 전혀 모르는 왕초보들에게 기술적이지 않은 표현으로 전체적인 개념을 알려주는 짧은 코스이다.

 

1. 무료 강의와 유료 강의 차이

코세라는 무료로 수업을 들을 수도 있고 유료로 들을 수 도 있다. 일부 강의는 무료는 처음 두 세 수업을 들을 수 있고 나머지를 들으려면 유료 (보통 49달러/월)로 돈을 내야 한다. 또는 강의 내용은 다 들을 수 있는데 퀴즈, 코딩 내용, 강의 수료증을 받으려면 돈을 내야 한다. 이 글에서 다루는 Generative AI for everyone 는  강의는 후자에 속한다. 강의 내용을 다 들을 수 있지만 퀴즈를 제출하여 채점을 받거나 강의 수료증을 받으려면 돈을 내야 한다.

 

2. 누구에게 적합한 강의인가?

제목에서 알 수 있듯이 강의가 모든 사람들을 위한 강의로 큰 개념을 비전문가에게도 알려주는 내용이다. 개념도 전문적인 개념이 아니라 제너레이티브 에이아이란 어떤 것이고 어디에 이용되는지를 설명하는 것부터 시작한다. 따라서 이 강의는 아래와 같은 사람들에게 추천한다.

  • 제너레이티브 에이아이 란 것을 처음 듣는 분.
  • 제너레이티브 에이아이가 현실에 어떻게 적용되는지 아이디어를 얻고 싶은 분.
  • 제너레이티브 에이아이를 사업에 이용할지 고민하시는 분.
  • 제너레이티브 에이아이를 비전문가에게 어떻게 소개할지 고민하시는 분.
  • 진짜 초보

이 강의를 들어서 별로 득이 될 것 없는 분은 아래와 같은 분들이다. 

  • 제너레이티브 에이아이 수업이나 강의를 한 번이라도 들은 분.
  • 코딩이나 전문 역량을 기르고 싶은 분.
  • 이력서에 도움이 될지 고민하시는 분.

한 마디로 보다 전문적인 역량을 기르고 싶거나 코딩을 하고 싶으신 분은 코세라의 다른 강의들을 듣는 것이 도움이 된다. 특히 직접 코딩을 해보는 강의는 돈을 내고 한 번쯤 들어볼 가치가 있다. 인터넷에 이미 다 있는 코드여도 나를 위해서 핵심 부분을 빈칸으로 만들어두고 코딩을 하게 하는 선별작업이 되어 있는 학습 자료를 이용하는 건 보다 효율적이다.

 

3. 유료 강의를 들어야 할까?

유료 강의로 얻을 수 있는 부분은 각 학습마다 있는 열 몇개 문항의 객관식 문제 답과 수업을 들었다는 수료증이다. 왕초보용 강의라서 퀴즈 내용이 매우 쉽고 간단해서 굳이 답이 궁금하거나 필요하지 않을 것이다. 초보자라서 이 강의를 듣는 게 좋다고 생각하더라도, 수료증이나 퀴즈의 답을 아는데 5만 원의 가치가 있다고 보긴 어렵다. 필자는 제너레이티브 에이아이를 사업에 어떻게 넣을지 고민하는 분들이나 제너레이티브 에이아이 쪽 역량을 기르고 싶어 해서 수업을 듣는 분에게나 이 강의의 수료증은 도움이 되지 않는다고 판단된다. 무료 강의로 들으시고 그 돈을 더 도움 되는 다른 강의를 듣길 추천드린다.

 

4. 1추자 내용 요약 및 코멘트(주석)

제너레이티브 에이아이의 활용 예시

인공지능은 이곳저곳에 이미 많이 쓰이고 있다. 구글 검색, 아마존에서 물건 추천, 신용카드 회사에서 사기 거래 탐지, 매번 챗봇으로 연결되는 고객센터 등등 정말 많다. 특히 챗GPT 덕분에 제너레이티브 에이아이 역시 많이 들으셨을 것이다. 제너레이티브 에이아이는 말 그대로 무언가를 만들어내는 인공지능 기술을 뜻한다. 챗GPT나 달리처럼 글이나 그림을 만들어준다. 이 외에도 사용자가 작성한 문서를 읽고 요약정리를 하거나 그와 관련된 행동을 하는 것도 포함된다. 이 수업에서는 이해를 돕기 위해 제너레이티브 에이아이의 용도를 쓰고, 읽고, 챗봇으로 이용하고 이렇게 세 분류로 크게 나누었다.  

 

인공지능의 분류

제너레이티브 에이아이로 더 들어가기 전에 인공지능의 분류를 살펴보자. 이 수업은 이 분류를 네 가지로 나뉜다. 물론 이 분류는 합쳐서 이용될 수도 있다.  Supervised learning (지도학습), unsupervised learning (비지도 학습), reinforcement learning (강화 학습), generative ai(생산해 내는 인공지능)이다. 지도 학습은 문제와 답을 둘 다 주어서 학습시키는 방법이다. 예를 들어서 사과 그림과 사과라는 글자를 함께 제공해서, 사과 그림을 보면 사과라고 답할 수 있게 하는 방법이다. 비지도 학습은 그냥 온갖 그림을 주고 네가 알아서 분석해봐 하는 것이다. 백장의 사과 그림과 강아지 그림을 보면 사과 그림과 강아지 그림의 차이를 누가 알려주지 않아도 모양새 차이를 파악할 수 있게 되는 것이다. 강화 학습은 결이 조금 다르다. 여기서는 보상이라는 개념이 들어간다. 즉, 보상을 많이 받을 수 있는 방식으로 행동하는 걸 배우는 게 강화 학습이다. 그렇기 때문에 지도/비지도 학습과 필요한 데이터의 종류와 목표가 다르기 때문에 다른 분류로 구분된 것이다. 물론, 보상과 지도/비지도 학습을 섞어서 이용하는 것 당연히 생각될 수 있는 점이고 그렇게 이용된다. 제너레이티브 에이아이는 새로운 걸 생성하는 분야라고 위에서 이야기했다.

 

필자의 의견에 인공지능을 분류할 때 무엇에 따라 분류하느냐로 나뉠 수 있다.

학습 방법으로 따지면 Supervised learning (지도학습), unsupervised learning (비지도 학습), reinforcement learning (강화 학습)으로 나뉜다. 위에서 개념을 설명했으니 생략하겠다.  학습 결과물/목표로 나누면 예측모델 (predictive ai)과 생성모델 (generative ai)로 나뉜다. 예측 모델은 주어진 데이터가 있을 때 새로운 결괏값을 예측하는 방법이다. 분류를 하든지 (사진 보고 강아지, 고양이 분류등) 아니면 특정 값을 예측하든지 (특정 물질의 용해도 예측 등)이다. 생성모델은 반대로 예측모델에게 주어진 데이터를 생성하는 역할이라고 할 수 있다. 고양이나 강아지 사진을 만든다던가, 특정 물질의 화학식을 제안한다든가 하는 것이다. 사람에게 어떤 대답을 하는 문장을 만들어내는 것도 있다. 

 

이 수업을 위해서 그냥 저렇게 인공지능을 큰 그림으로 두고 거기에 네 가지 분류를 설명한 듯하다.

 

챗GPT 가 이용하는 것?

이 수업에서 다룬 건 아닌데 써보겠다. 챗GPT 는 Human reinforcement learning  또는 reinforcement learning from human feedback -사람이 관여하는 강화학습- 방법과 unsupervised learning, supervised learning을 이용한 generative ai이다. 즉 다 이용했다. 일단, unsupervised learning으로 언어 모델을 학습시키고, 이걸 supervised learning으로 fine-tuning , 더 세세하게 알도록 조율하고, 이걸 사람이 포함된 강화학습으로  학습시킨 것이다. 예를 들어서 인공지능이 만들어낸 결과를 사람이 채점하는 것이다. 그리고 이게 보상점수가 되어서 기계는 사람이 높은 점수를 주는 내용을 더 많이 쓰도록 학습하는 것이 사람이 포함된 강화 학습의 일종이다. 그래서 크게 보았을 때 제너레이티브 에이아아이는 보통 지도 학습과 함께 쓰인다는 말이 맞기는 하지만, 세세히 보면 쓸 수 있는 건 다 쓰고 있다도 맞는 말이다.

 

또한 이 수업에서 LLM (거대 언어 모델, large language model) 은 문장의 다음 문자를 순차적으로 예측하는 supervised learning이라고 이야기를 한다. 물론 맞지만 이건 현재 수업 내용에 맞게 이야기한 것이다. 실제 사업에 이용되는 건 지도 학습이 포함되었기 때문이다.  LLM 자체는 많은 언어 데이터를 이용한 모델로, unsupervised learning, semi-supervised learning, supervised learning 모두로 학습시킬 수 있다. 학습 방법 (지도학습/비지도학습/강화학습)과 학습이 된 모델 종류, 그리고 특정 모델을 자주 학습시키는 방법이 구분된다면 이해가 쉬울 것으로 보인다.

 

언어 모델 기반 생성 인공지능 한계

  • 학습 시점까지의 정보에 한해서만 대답할 수 있다. 
  • 그럴 싸한 잘못된 답을 말할 수 있다 (hallucination)
  • 틀린 정보를 이야기할 수 있다.
  • 주어진 데이터나 대답하는 데이터의 크기에 제한이 있다. 
  • 학습된 정보에 의한 편향이 있을 수 있다. 
  • 위험한 정보를 제공할 수 있다. 

 

 

수업 내 코딩 예시들

이 수업에서는 open ai 라이브러리이용해서 LLM에게 질문해 보는 방법과 응용해서 원하는 대답을 찾는 함수를 만드는 방법이 있다. 두 경우 모두 openai.ChatCompletion.create 함수를 이용한다. 함수에 필요한 인풋으로 모델, 메시지, 온도가 있다. 모델은 model='gpt-3.5-turbo'를 이용하고 메세지 형식도 messages=[{'role':'user','content':prompt}] 를 이용하면 된다. 이런 경우에 이용되는 온도는 실제 온도라기보다 샘플링할 때 어느 정도로 극단적이거나 다양한 정보를 대답할지를 정하는 내용이다. 엔트로피에서 온도를 생각하면 될 것 같다. 참고로 ChatCompletion 모델은 어떤 식으로 질문할 것인지 chatGPT보다 자세히 이야기해 주어야 한다. 예를 들어서 이 문장이 좋은지 나쁜지 말해봐  - 오늘 기분이 안 좋다. 이런 식으로 말이다. 오늘 날씨는 어때? 와 같은 질문은 이 함수에서 대답해주지 못한다.

 

이렇게 질문하는 법을 했으면 응용으로는 다음과 같은 것을 예시로 들어주었다. 여러 문장을 리스트로 넣고 이 리스트를 챗봇이 긍정적인 리뷰와 부정적인 리뷰로 구분하게 한 뒤에 긍정적인 리뷰와 부정적인 리뷰 개수를 세는 함수를 만드는 것이다. 

 

듣다가 2배속으로 들었다. 2,3주차 강의도 슬쩍 보았는데 필자에게는 맞지 않는 내용이다. 필자는 여기까지만 강의 확인했고 하차한다. 2배속 말고 4배속까지 지원해 주면 좋겠다.

 

copyright. 2023. 퇴근길 afterwork-fyi. All rights reserved.

copyright. 2023. 퇴근길 afterwork-fyi. All pictures cannot be copied without permission.

모든 포스트 내 사진과 글은 무단도용, 영리목적의 사용, 저작물의 변경 등을 허용하지 않습니다.

728x90
반응형

댓글


TOP