Return to Video

How to Make a Prediction - Intro to Deep Learning #1

  • 0:00 - 0:04
    안녕하세요 Siraj입니다
    딥러닝 시작하기에 오신 것을 환영합니다
  • 0:04 - 0:05
    이 첫 번째 에피소드에서는
  • 0:05 - 0:09
    동물들의 뇌의 무게만 가지고
    몸무게를 예측해 볼 것입니다
  • 0:09 - 0:12
    이 강의는 4개월정도 걸리고
    제 채널에 게시됩니다
  • 0:12 - 0:16
    수요일 태평양 표준시 오전 10시마다
    라이브 세션을 가질 것이고
  • 0:16 - 0:18
    매주 깊게 주제에 대해 설명해 볼게요
  • 0:18 - 0:22
    그리고 Udacity와 협력하고 있습니다
    이 과정을 성공적으로 마친다면
  • 0:22 - 0:23
    Nanodegree가 주어집니다
  • 0:23 - 0:26
    이 코스는 강력한 신경망을 활용하고
  • 0:26 - 0:30
    딥러닝 엔지니어가 되는 방법을
    배우려는 사람들을 위한 과정입니다
  • 0:30 - 0:33
    경력이 있는 개발자이거나
    수학자일 필요가 없습니다
  • 0:33 - 0:37
    유일한 조건은 양자역학에 대한 지식입니다
  • 0:37 - 0:39
    농담이고 파이썬의 기초만 알면 됩니다
  • 0:39 - 0:42
    우리는 인공지능을 구축함으로써
    우리가 필요로 하는걸 배울 겁니다
  • 0:42 - 0:45
    테슬라 주가를 예측하는 AI부터
  • 0:45 - 0:48
    초현실주의 명화를 그려내는 것까지요
  • 0:48 - 0:51
    전통적으로, 프로그래밍은
    매 과정을 정의하며 결과에 도달합니다
  • 0:51 - 0:53
    전통적으로, 프로그래밍은
    매 과정을 정의하며 결과에 도달합니다
  • 0:53 - 0:55
    머신러닝은 정 반대입니다
  • 0:55 - 0:57
    머신러닝은 결과를 정의하고
  • 0:57 - 0:59
    프로그램이 결과로 갈 수 있는
    과정을 찾아냅니다
  • 0:59 - 1:04
    만약 캘리포니아의 번호판을
    인식할 수 있는 앱을 만들고 싶다면
  • 1:04 - 1:07
    수백 개에 이르는 번호판의 모양을
    인식시키는 것부터 시작합니다
  • 1:07 - 1:11
    번호판의 글자나 모양, 색깔
    상태같은 것을요
  • 1:11 - 1:15
    그리고 캘리포니아 번호판
    샘플을 넣고
  • 1:15 - 1:17
    결과를 도출하는 데 필요한 과정을
    알아서 배우리고 하는 것이죠
  • 1:17 - 1:20
    혹은 슈퍼 마리오를 깰 수 있는 봇을 원한다면
  • 1:20 - 1:24
    점프같은 모든 가능한 시나리오의
    코드를 작성하는것 대신
  • 1:24 - 1:28
    우리는 계속 달리면서 죽지 않고
    골인 지점에 도달하는 것을 목표로 주고
  • 1:28 - 1:30
    봇은 거기에 도착하는 단계를 배우게 됩니다
  • 1:30 - 1:34
    때로 우리는 어떤 단계가 왜 가능한지
    전혀 이해할 수 없을 수도 있습니다
  • 1:34 - 1:38
    예를 들어 우리가 은행이라면
    어떤 종류의 금융사기가 벌어지는 것으로 의심되지만
  • 1:38 - 1:42
    그걸 어떻게 탐지할지
    무엇을 찾아야 할지 모른다고 할 때
  • 1:42 - 1:45
    모든 사용자의 행동에 대한
    로그를 살펴보면서
  • 1:45 - 1:47
    나머지와 다른
    비정상 사용자를 찾고
  • 1:47 - 1:50
    스스로 이상현상을
    탐지하는 단계를 배우게 되는 것입니다
  • 1:50 - 1:52
    머신러닝은 인터넷에 널려 있습니다
  • 1:52 - 1:55
    모든 유명 서비스는 머신러닝을 사용합니다
  • 1:55 - 1:58
    사실 유튜브도 지금 여러분이 이 동영상을 볼 때
  • 1:58 - 2:00
    머신러닝을 사용해 추천 동영상을 찾고 있죠
  • 2:00 - 2:02
    그리고 사용은 시간이 지남에 따라 증가할 것입니다
  • 2:02 - 2:05
    인공지능은 인터넷에 연결 가능한
    모든 장치에 탑재될 것입니다
  • 2:05 - 2:09
    모든 냉장고, 자동차, 개인 비서까지요
  • 2:09 - 2:11
    다시 배우고 우리의 필요에 따라 적응할 겁니다
  • 2:11 - 2:15
    어떤 기술같은 것을 완전히 익히려면
    1만 시간이 필요하다는 법칙 아시죠?
  • 2:15 - 2:18
    그 1만 시간의 학습을
    기계가 대신 해줄 수 있고
  • 2:18 - 2:20
    그것은 바로 우리에게 초능력을 줄 것입니다
  • 2:20 - 2:23
    누구나 교향곡을 작곡할 수 있게 될 것입니다
  • 2:23 - 2:25
    알렉사, 나 우울해
  • 2:25 - 2:25
    이 감정을 피아노로 연주해줘
  • 2:25 - 2:27
    이 감정을 피아노로 연주해줘
  • 2:27 - 2:29
    비트를 추가해줘
  • 2:29 - 2:31
    모든 사람이 영화를 만들 수 있을 것입니다
  • 2:31 - 2:33
    좋아, 휴고. 스타 워즈를 다시 만들고
    거기에 나를 넣어
  • 2:33 - 2:36
    난 내 코드에 도커를 쓰지
  • 2:36 - 2:38
    당신은 내 마음을 아프게해요
  • 2:38 - 2:39
    당연하지
  • 2:39 - 2:41
    머신러닝과 함께라면
    상상이 현실이 됩니다
  • 2:41 - 2:45
    그리고 이 영역은 현재
    연구자들끼리 서로 도와가며
  • 2:45 - 2:46
    매우 빠르게 발전하고 있고
  • 2:46 - 2:48
    내 신경망은 망했네
  • 2:48 - 2:49
    더 깊게 만들어봐
  • 2:49 - 2:52
    와우, 완벽해
  • 2:52 - 2:54
    머신러닝의 모델은 굉장히 많이 있습니다
  • 2:54 - 2:56
    그 중 하나는 신경망이라고 합니다
  • 2:56 - 2:59
    신경망을 사용하는 경우
    단지 한 두 개의 레이어만을 사용하지 않고
  • 2:59 - 3:03
    많고 깊게 만들어 예측하게 한다면
    이것을 딥러닝이라고 부릅니다
  • 3:03 - 3:06
    딥러닝은 머신러닝의 한 종류이고
    그 성능은
  • 3:06 - 3:10
    거의 대부분의 다른 모델들보다 뛰어납니다
    아주 다양한 작업들 수행 시 말이죠
  • 3:10 - 3:13
    우리는 다음 에피소드부터
    딥러닝에 뛰어들 것이지만
  • 3:13 - 3:16
    이 동영상은 일반적인 머신러닝에
    초점을 맞출 것입니다
  • 3:16 - 3:18
    우리는 일반적으로
    머신러닝을 세 종류로 구분합니다
  • 3:18 - 3:21
    첫 번째는 지도 학습입니다
  • 3:21 - 3:23
    모델에 레이블된 데이터셋을 주는 것인데요
    '자동차 사진 데이터셋' 처럼요
  • 3:23 - 3:26
    어떤 것이 맞고 어떤 것이 아닌지
    그 모델은 피드백을 받으며
  • 3:26 - 3:29
    레이블과 데이터 사이 간의
    맵핑 관계를 학습하면
  • 3:29 - 3:33
    주어진 문제를 해결할 수 있습니다
    자동차의 종류를 구분하는 일 같은 거요
  • 3:33 - 3:35
    그것은 상대적으로 직관적이고
  • 3:35 - 3:37
    우리는 이미 놀라운 결과를 얻었습니다
  • 3:37 - 3:40
    두 번째는 비지도 학습이죠
  • 3:40 - 3:42
    모델에 레이블이 없는
    데이터셋을 입력하면
  • 3:42 - 3:45
    레이블이 없으니 모델은
    맞는지 틀린지 피드백을 얻지 못합니다
  • 3:45 - 3:47
    자기 스스로 학습해야하며
  • 3:47 - 3:50
    주어진 문제를 해결하기 위해
    데이터의 구조가 어떤지 파악해야합니다
  • 3:50 - 3:52
    이것은 더 어렵지만 더 편리한데
  • 3:52 - 3:56
    모두가 완벽히 레이블된 데이터셋을
    가지고 있지는 않으니까요
  • 3:56 - 3:57
    대부분의 데이터들에는 레이블이 없습니다
  • 3:57 - 3:58
    거의 다 지저분하고 복잡하죠
  • 3:58 - 4:01
    세 번째 유형은 강화 학습입니다
  • 4:01 - 4:04
    이 모델은 피드백이 곧바로 제공되지는 않고
  • 4:04 - 4:06
    목표를 달성 할 경우에만
    피드백을 받습니다
  • 4:06 - 4:08
    사람과 체스를 두어 이길 수 있는
    강화 학습 봇을 만든다면
  • 4:08 - 4:12
    이 봇은 게임에 이겼을 때만
    피드백을 받을 것입니다
  • 4:12 - 4:16
    지도 학습이었다면 매 수를 둘 때마다
    피드백을 받았을 것이고
  • 4:16 - 4:20
    비지도 학습이었다면
    이기든 지든 피드백을 받지 못할 겁니다
  • 4:20 - 4:23
    다른 두 개의 학습과는 달리
    강화 학습은
  • 4:23 - 4:27
    시행 착오를 통해 환경과
    상호작용한다는 개념을 이용합니다
  • 4:27 - 4:29
    이제 각기 다른 동물들의
    무게를 측정한 데이터셋을 가지고
  • 4:29 - 4:33
    뇌의 무게로 몸무게를 예측해보려 합니다
  • 4:33 - 4:36
    데이터에 레이블이 때문에
    지도 학습을 이용할 것이며
  • 4:36 - 4:40
    이런 형태의 머신러닝 태스크는
    회귀라고 불리는 작업을 수행합니다
  • 4:40 - 4:42
    이걸 하기 위해 10줄의
    파이썬 코드를 작성할 겁니다
  • 4:42 - 4:44
    같이 하면서 알아보죠
  • 4:44 - 4:46
    3개의 라이브러리들을 가져오며 시작할께요
  • 4:46 - 4:49
    첫 번째는 pandas입니다
    데이터셋을 읽을 수 있게 됩니다
  • 4:49 - 4:52
    두 번째는 scikit
    여기서 사용할 머신러닝 라이브러리입니다
  • 4:52 - 4:54
    두 번째는 scikit
    여기서 사용할 머신러닝 라이브러리입니다
  • 4:54 - 4:57
    그리고 세 번째는 matplotlib입니다
    모델과 데이터를 시각화 할 수 있게 해 줍니다
  • 4:57 - 5:00
    이제 필요한 라이브러리들을 가져왔고
  • 5:00 - 5:02
    pandas를 이용하여
    데이터셋을 읽어보겠습니다
  • 5:02 - 5:05
    read_fwf 함수를 사용해
    동물 데이터셋을 읽어옵니다
  • 5:05 - 5:09
    고정길이로 규격화된 데이터셋 테이블을
    pandas data frame 객체에 넣습니다
  • 5:09 - 5:12
    이는 행과 열로 구성된
    2차원 데이터 구조입니다
  • 5:12 - 5:16
    우리의 데이터셋에는 여러 동물들의
    뇌와 몸무게의 평균값이 들어있습니다
  • 5:16 - 5:19
    dataframe에 데이터를 넣기만 하면
    쉽게 파싱할 수 있고
  • 5:19 - 5:22
    두 가지 측정값들을 두 변수로
    쉽게 읽어올 수 있습니다
  • 5:22 - 5:25
    뇌 무게 측정값을 x_values에 저장하고
  • 5:25 - 5:27
    몸무게 측정값을 y_values에 저장합니다
  • 5:27 - 5:30
    지금 데이터를 일반적인 2D 그래프로 그린다면
  • 5:30 - 5:31
    이렇게 보일 것입니다
  • 5:31 - 5:35
    그리고 우리의 목표는
    새로운 동물의 뇌무게가 주어졌을 때
  • 5:35 - 5:37
    그 몸무게를 예측하는 것입니다
  • 5:37 - 5:39
    어떻게 그걸 할 건가요?
  • 5:39 - 5:40
    그래, 어 - 허
  • 5:40 - 5:41
    그게 뭔지 알잖아요
  • 5:41 - 5:44
    독립과 종속
    독립과 종속
  • 5:44 - 5:47
    내 데이터엔 값이 있어
    뇌무게와 몸무게
  • 5:47 - 5:50
    난 궁금해 이 두 개를
    어떻게 연관 짓나
  • 5:50 - 5:51
    선형 회귀로 관계를 찾지
  • 5:51 - 5:53
    선형 회귀로 관계를 찾지
  • 5:53 - 5:56
    측정해서 제일 잘 맞는 직선을 만들어
  • 5:56 - 5:59
    방정식 y = mx + b가 내게 필요한 전부
  • 5:59 - 6:02
    B는 y 편향 , m은 기울기
  • 6:02 - 6:05
    이 그래프와 함께 뇌무게를
    이용해 몸무게를 예측해보자
  • 6:05 - 6:08
    꽁지 머리, 팝 샴페인
  • 6:08 - 6:10
    모델 초기화를 위해
  • 6:10 - 6:14
    linear_model의 LinearRegression을 불러
    body_reg에 저장합니다
  • 6:14 - 6:17
    그 다음 x, y 쌍에
    모델을 피팅시킵니다
  • 6:17 - 6:22
    가장 좋은 라인을 얻기 위해
    x, y를 scatter plot에 피팅시킵니다
  • 6:22 - 6:25
    다음으로 회귀선을 그리는데
    모든 x 값에 대해
  • 6:25 - 6:29
    연계된 y값을 예측하여 그리며
    이들 점을 지나가는 선도 그려줍니다
  • 6:29 - 6:31
    show 함수를 이용하여
    화면에 표시할 수 있습니다
  • 6:31 - 6:34
    터미널에서 컴파일해 봅시다
  • 6:34 - 6:37
    우리의 데이터에 맞는
    그래프가 출력될 겁니다
  • 6:37 - 6:40
    X 축은 뇌무게를 나타내고
    Y 축은 몸무게입니다
  • 6:40 - 6:44
    회귀 라인이 대부분 데이터와 잘 맞는 것
    같아 보입니다
  • 6:44 - 6:47
    뇌무게와 몸무게 간에
    매우 강한 상관 관계가 있는 것 같습니다
  • 6:47 - 6:49
    선을 따라 이동하는 방식으로
  • 6:49 - 6:52
    어떤 뇌무게가 입력되더라도
    그에 맞는 몸무게를 예측할 수 있습니다
  • 6:52 - 6:57
    기존에는 결과를 위해
    여러 단계들을 정의해주어야 했지만
  • 6:57 - 7:00
    머신러닝에서는
    결과물을 정의만 하면
  • 7:00 - 7:02
    프로그램이 이를 위한 각 단계들을
    알아서 학습합니다
  • 7:02 - 7:07
    세 가지 다른 학습이 있습니다
    지도 학습, 비지도 학습 그리고 강화 학습입니다
  • 7:07 - 7:09
    그리고 선형 회귀 모델은
  • 7:09 - 7:12
    독립변수와 종속변수의 관계를 이용하여
  • 7:12 - 7:16
    최적의 라인을 만들어주며
    이를 이용해 결과값을 예측할 수 있습니다.
  • 7:16 - 7:19
    지난 주의 코딩 챌린지의 승자는
    Mick Van Hulst입니다
  • 7:19 - 7:21
    그는 게임을 수정해서
    더 복잡하게 만들었습니다
  • 7:21 - 7:26
    그리고 그의 "Q learning" 학습 봇은
    제가 만든 데모 봇 보다 훨씬 더 효율적이었습니다
  • 7:26 - 7:27
    그래서 이번 주의 마법사입니다
  • 7:27 - 7:29
    그리고 2등은 Vishal Batchu입니다
  • 7:29 - 7:32
    그는 셀룰러 오토마타를
    사용하여 맵을 생성했습니다
  • 7:32 - 7:36
    이 비디오의 과제는 scikit을 이용하여
    회귀 직선을 그리는 법을 배우는 것입니다
  • 7:36 - 7:38
    다른 데이터셋을 제공해 드릴 것이고
  • 7:38 - 7:42
    예측과 실제 값 사이의 오류를 출력하세요
  • 7:42 - 7:45
    자세한 사항은 README 파일에 게시되어 있습니다
    여러분의 GitHub 링크를 코멘트로 남겨주시면
  • 7:45 - 7:46
    일주일 이내에 승자를 발표하겠습니다
  • 7:46 - 7:48
    구독버튼을 눌러 주시고요
  • 7:48 - 7:51
    저는 배우러 가야 해서요
    시청해 주셔서 감사합니다
Title:
How to Make a Prediction - Intro to Deep Learning #1
Description:

more » « less
Video Language:
English
Duration:
07:52

Korean subtitles

Revisions