🤖

003. 머신러닝

1. 인공지능이란?

인공지능이란 무엇일까요?
1. 인간처럼 생각하는 시스템 2. 인간처럼 행동하는 시스템 3. 이성적으로 생각하는 시스템 4. 이성적으로 행동하는 시스템 스튜어트 러셀, 피터 노빅의 인공지능:현대적 접근법
 
여러분들이 흔히 생각하는 인공지능은 인간처럼 행동하는 시스템, 즉 강한 인공지능인 경우가 굉장히 많습니다. 여기서는 우리를 도와주는 수준의 약한 인공지능에 대해 설명하려고 합니다.
약한 인공지능으로는 IBM의 Watson, Google의 AlphaGo가 대표적입니다. 이러한 것들을 개발하는 것이 과연 어려운 일일까요? 여러분들도 하실 수 있습니다. 아무것도 모르셔도 괜찮습니다. 하지만 알아가야겠다는 의지는 필요합니다.
 
전에 언급했었던 의료인공지능 얘기부터 해 드리겠습니다. 어떻게 암의 종류를 맞출 수 있을까요?
여러분들은 어떻게 풀과 꽃과 나무를 비교할 수 있나요? 아마 여러분이 어렸을 때 누군가가 여러분에게 알려줬을 겁니다. 그러면 여러분들은 다양한 상황 속의 꽃과 나무들을 보면서 그것들을 구분할 수 있었을 겁니다. 즉, 여러분들 머리에는 그것들에 대한 특징이 남고, 수많은 반복 학습을 통해 구분이 가능했습니다.
컴퓨터도 여러분들처럼 반복 학습을 통해 학습할 수 있습니다.
Teachable Machine(https://teachablemachine.withgoogle.com/) 사이트에 접속해 보세요.
 
notion imagenotion image
Get Started를 클릭해주세요.
 
notion imagenotion image
Image Project를 클릭해보세요! 웹 캠을 허용하신다면 여러분의 얼굴로 트레이닝 시킬 수 있습니다.
 
notion imagenotion image
예를 들어, 저는 마스크와 노마스크를 분류해보도록 하겠습니다. 마스크를 쓴 사진과 마스크를 쓰지 않은 사진을 각각 라벨링(이름을 붙이는 것입니다. 풀, 꽃, 나무처럼요!)하여 Hold to Record 하도록 하겠습니다. 마우스로 길게 누르면 계속해서 촬영합니다.
 
notion imagenotion image
반복학습을 통해 신기하게도 보여준 적이 없는 이미지도 맞힐 수 있습니다!
 
notion imagenotion image
제대로 맞히는지는 평가도 해 볼게요.
 
어떻게 하는지 아셨으니까 다양한 아이디어를 내는 것도 좋을 것 같습니다. 가위 바위 보 게임을 한다거나 친구들의 얼굴을 녹화해서 비교를 할 수도 있겠고요. 더 깊게는 X-Ray나 법 같은 전문 분야에도 인공지능을 사용할 수 있습니다.
 
Teachable Machine 말고도 다양한 예제 사이트가 많이 있습니다. 딥러닝 자동 채색 사이트(https://petalica-paint.pixiv.dev/index_en.html)도 그 예시가 되겠죠.
 
이와 같이 인공지능은 학습을 기반으로 그림을 그리고, 음악을 연주하며, 춤을 추고 심지어 가짜뉴스도 만들어냅니다.

2. 실습

이제 좀 더 현실적인 이야기를 해 보겠습니다. 예를 들어, 제주 유명 카페들의 원두배송 서비스를 만들려 합니다.
notion imagenotion image
제 서비스가 안정화돼서 원두 판매량이 톤으로 계산이 나왔다고 가정합시다. 이제 저는 8월 8일에 원두가 얼마나 팔릴지 궁금합니다. 그것을 예측할 수 있다면 신선한 원두를 공급할 수 있겠죠.
이 테이블에서 row 값을 즉, 행을 관측치라고 하고 Column 값 즉, 열은 특성을 나타냅니다.
원두 판매량에 영향을 미치는 모든 것들을 독립변수라고 하고요, 내가 알고 싶은 변수를 종속 변수라고 합니다. 그래서 독립변수는 원인, 종속변수는 결과라고 할 수 있습니다.
사실, 원인과 결과로 표현하는 것은 올바른 표현은 아닙니다. '데이터 분석'에서 설명드렸던 것처럼 상관관계는 인과관계가 아니기 때문입니다.
 
Data는 Data일 뿐입니다. 여러분들이 테이블을 만드셨다면 그건 테이블일 뿐이지만 인공지능을 활용해서 예측을 한다면 이야기가 달라집니다. 어려울 것 같다고요? 여러분들도 충분히 코드로 만들 수 있는 수준의 코드입니다. 여러분들이 자동차를 다 뜯어봐야 자동차 운전을 할 수 있는 게 아닌 것처럼 말입니다.
 
예측을 조금 더 정확하게 하고 싶다면 더 많은 데이터를 확보해야 합니다. 더 많은 유효한 독립 변수를 말입니다. 앞서 말씀 드린 의학인공지능 시스템에서는 의사 분께서 데이터를 모두 라벨링 작업을 하셨습니다. 그 데이터의 개수가 100개, 200개일 때는 정확도가 낮지만 데이터가 1000장, 2000장이 넘어가면 정확도가 훨씬 올라가게 될 겁니다.
 
👉
실습 코드는 차후 동영상 강좌가 올라간 이후 책에도 공개해드리도록 하겠습니다.
 

3. 머신러닝 도표

이제 머신러닝에 대해 더 깊게 알아볼까요?
notion imagenotion image
지도학습과 비지도학습, 강화 학습으로 나뉘어 있습니다. 딥러닝은 기계 학습 속에 속해 있는 겁니다.
  • 지도학습 : 지도 학습은 데이터와 답을 동시에 학습시키는데요. 예를 들어, 의학인공지능 때처럼 여러 암 사진들을 주고 그 사진이 무슨 암인지 학습시키면 새로운 데이터가 들어왔을 때 기존 학습을 토대로 어떤 암인지 알려주게 됩니다. 즉, 라벨링을 하게 되는 거죠. 지도학습은 분류와 회귀로 나뉩니다.
  • 비지도 학습 : 비지도학습은 데이터는 있지만 답을 함께 주지 않습니다. 예를 들어, 동물 사진 수십만장을 준다면 따로 답을 주지 않아도 그 특징에 맞게 묶어줍니다.
  • 강화학습 : 행위에 대한 보상을 주며 학습시킵니다. 예를 들어 아래의 이미지를 봅시다. 탁구 기계에서 공이 날라왔을 때 로봇이 일단 공을 쳐냅니다. 공이 바깥으로 나가게 되면 리워드가 감소하고 안으로 잘 들어오면 보상이 주어지는 거죠. 이 과정을 반복한다면 리워드에 따른 학습 결과를 체득하게 됩니다.
    • notion imagenotion image
       
      머신러닝 알고리즘 키워드를 정리해 보았습니다. 더 자세히 알고 싶으신 분들은 이 키워드에 대해서 정리를 하시면서 공부해 나가면 좋을 것 같습니다.
      notion imagenotion image