반응형

이번 강의 주요내용

Generative Learning Algorithm
- Gaussian Distributed Analysis(GDA)
- Generative vs Descriptive comparison
- Naive Bayes(나이브 베이즈)

Generative learning algorithm

지난 시간에 배운 로지스틱 회귀에 대해서 다시 생각해봅시다. 종양을 보고 양성인지 음성인지 판단하는 모델을 생각해봅시다. 아래와 같이 x는 양성(암) o는 음성이라고 할 경우 우리는 선을 그려가면서 어떤 선이 가장 잘 판단하는지를 구분하는, 좋은 '선'을 찾는 문재로 생각할 수 있습니다. 이런게 Descritive 방법이지요.


로지스틱 회귀와 다르게 GLA는 알고리즘은 클래스의 특징을 먼저 배웁니다. 악성종양의 데이터들을 보면서 아! 악성종양은 위쪽에 모여있구나 이것을 배우고 음성종양의 데이터를 보면서 음성종양은 아래쪽에 모여있구나를 학습하게 됩니다. 그렇게 해서 악성종양 모델은 위쪽 빨간색 동그라미에 모여있고 음성 종양모델은 아래쪽 빨간색 동그라미에 모여있다는 것을 모델이 학습하게됩니다. 이를 이용해서 새로운 빨간점 데이터가 들어왔을때 어느 모델의 동그라미에 속하는 지를 보고 판단하는 방법이 GLA(Generative learning algorithm)입니다.


다시 말하면 Descriptive 학습은 x가 주어지면 h(x)함수가 0인지 1인지 알려주는 모델이었습니다. 그에 반해 Generative 는 먼저, y(양성 또는 음성 중 하나의 클래스)가 주어졌을때 x가 나올 확률을 계산합니다. 전체 중에 y의 확률은 전체 데이터를 가지고 구할 수 있습니다(사전확률). 여기에 베이즈 룰을 적용해서 x가 주어졌을때 y가 1(악성)일 확률을 구할 수 있습니다. 이러한 방법이 Generative 알고리즘의 프레임웍 입니다. 사전확률과 개별 사건의 확률을 구하고 이를 이용해서 새로운 x에 대한 y일 확률을 구할 수 있습니다. 이 설명을 관련 공식으로 정리하면 아래와 같습니다. 왼쪽이 사전확률과 개별확률을 구하는 공식이고 오른쪽이 새로운 x가 들어왔을 때 확류을 구하는 공식입니다. 잘 보시면 왼쪽에서 빨간색 사각형 부분들과 오른쪽 아래에 빨간색 사각형의 공식을 이용해서 오른쪽 위에있는 P(y=1 | x)를 구할 수 있습니다.


오늘 두가지 유형의 데이터(연속형 continuous-GDA, 이산형 discrete-Naive Bayer)에 대한 모델을 배울 것 입니다.

*** Discriminative와 Generative 모델의 이해를 위해 위키피디아에서 Generative model 에 대한 정의를 찾아봤습니다.
In statistical classification, two main approaches are called the generative approach and the discriminative approach. These compute classifiers by different approaches, differing in the degree of statistical modelling. Terminology is inconsistent,[a] but three major types can be distinguished, following Jebara (2004):

  1. A generative model is a statistical model of the joint probability distribution {\displaystyle P(X,Y)} on given observable variable X and target variable Y;[1]
  2. A discriminative model is a model of the conditional probability {\displaystyle P(Y\mid X=x)} of the target Y, given an observation x; and
  3. Classifiers computed without using a probability model are also referred to loosely as "discriminative".

Discriminative 모델은 조건부 확률이고 Generative모델은 결합 확률 분포를 이용한다는게 다른 점 입니다. 강의 중에도 내용이 나오니까 계속 보겠습니다.

Gaussian Distributed Analysis(GDA)

GDA의 가정들은 아래와 같습니다. 가장 중요한 가정은 사용되는 데이터가 가우시안 분포라고 가정합니다.

단일 피처 데이터에 대해서는 표준 정규 분포를 이용하면되고 여러 피처에 대해서는 다변량 정규 분포를 이용합니다. 하나의 피처 데이터 항목으로는 많은 문제를 해결할 수 없으므로 여러 피처를 이용하는 다변량 정규 분포를 배우는 것이 중요합니다.



아래는 2개의 피처를 사용하는 2차원 다변량 정규 분포를 시각화 한것 입니다. 이미지 위에 있는 공식의 ∑ 값에 따라 그래프의 모습이 바뀌는 것을 보실 수 있습니다.


이러한 그래프를 2차원 그래프로 바꾸면 아래와 같습니다.(가운데 각 동그라미는 모두 완벽한 원입니다.)



가중치를 바꾸자 완벽한 원이 었던 것이 타원형이 되었습니다.



y의 각 클래스 별로 확률을 구하는 공식은 아래와 같습니다. 둘다 정규분포를 가정하고 작성된 것입니다. 그래서 정규분포의 확률밀도함수와 유사합니다.


그리고 여기에 사용되는 파라메타에 대해서 이야기합니다. 뮤0, 뮤1, 입실론, 피/파이 입니다. 이러한 파라메타를 잘 훈련해서/찾아서 모델을 만들면 앞의 그림에 있는 베이지안 룰을 통해서 새로운 데이터 x가 주어졌을 때 y가 1일 확률을 구할 수 있습니다.

 

훈련데이터에 대한 표기 법을 설명합니다. 그리고 조인트(결합) 가능도를 구하는 공식을 유도합니다.



조건 가능도를 구하는 공식을 유도합니다.


최대 가능도 추정법(MLE)을 통해서 파라메타들을 찾습니다.


각 파라메타들을 공식으로 유도한 내용입니다. 직관적으로 설명하면 오른쪽 아래의 그림처럼 각 클래스 집단의 중간에 있는 값이 평균(뮤)가 됩니다. 뮤0는 전체 데이터중에 y가 0인(음성인) 데이터 피처 벡터들의 합을 y가 0인(음성인) 데이터의 전체 개수로 나눈 값입니다. 즉, 평균값 입니다. 그래서 집단의 중간에 위치하게 됩니다.


입실론도 아래와 같은 공식으로 유도됩니다. 예측 시에는 확률 값을 최대로하는 값을 찾는 argmax함수를 이용합니다.



Generative vs Descriptive comparison(37:00)

선형회귀모델의 최초 학습을 위해 변수를 0으로 셋팅하고 선을 그어본 그림입니다. 반복 iteration을 할 수록 잘 구분하는 선으로 바뀌는 것을 보여 줍니다.

 

Iteration 2: 세타를 2번째로 업데이트해서 다시 그린 모델 선

 

Iteration n: 세타를 n번째로 업데이트해서 다시 그린 모델 선 (이전 보다 잘 분류 합니다.)

이것이 로지스틱 회귀를 이용한 분류 학습 알고리즘 입니다.


반면 GDA는 각 클래스의 분포를 먼저 계산하고 각 분포간의 거리를 기준으로 분류 선을 그립니다. 동그라미 데이터들을 보면서 동그라미 클러스터(집단)의 중앙 위치를 찾습니다. 그다음 x 데이터들을 보면서 x 클러스터의 중앙 위치를 찾습니다. 둘사이의 거리 중간을 기준으로 선을 긋습니다.

 


두 모델의 결과를 비교해보면 아래와 같습니다.

결국 둘다 모두 분류 모델을 만드는 것인데 그 방법이 서로 다르네요 즉, 직선을 그어가면서 제일 잘 분류하는 선을 찾을 것인지 아니면 분류된 분포를 보고 두 분포를 분리하는 선을 찾을 것인지가 다릅니다.



훈련 데이터가 하나인 경우를 가정하고 설명합니다. 종양의 크기라고 해보죠 x로 표시된 것은 악성종양, o로 표시된 것은 음성 종양입니다. 제일 위의 그래프는 직선에 종양 크기별로 표시한 내용이고 그 아래 두번째 그래프는 각 클래스에 대한 빈도를 그린 곡선입니다. 두 개의 정규분포 그래프가 보이네요. 그리고 제일 아래 그림은 새로운 예측 데이터 x가 주어졌을 때 y가 1(악성종양)일 확률을 x의 크기에 따라 그려본 그래프 입니다. 정확하게 시그모이드 함수와 일치합니다.

결국 두 모델 다 시그모이드 함수를 사용한 것과 같습니다. 그러나 접근 방법이 다르기 때문에 위에서 보여드린 두 모델의 비교 그림에서 보이는 것처럼 서로 다른 직선을 만듭니다.



두 모델의 차이점과 특징, 언제 GDA가 더 유용한지?

  • GDA는 정해진 분포를 가정하고 계산하기 때문에 훈련데이터의 분포를 잘 알고 있는 경우 사용하면 좋다.
  • GDA가 더 가정에 강하기 때문에 더 잘 설명한다(중앙의 화살표처럼 GDA로는 로지스틱회귀를 설명할 수 있지만 반대로는 안된다.)
  • GDA는 적은 계산으로 좋은 성능을 낼 수 있다. (반복 계산할 필요없고 평균, 편차에 대한 행렬계산만 하면 끝난다)
  • 로지스틱 회귀는 훈련데이터의 분포를 모를 때도 사용할 수 있고 좋은 결과를 나타낸다.
  • 세상 대부분이 정규분포이기 때문에 데이터가 많이 있으면 로지스틱 회귀를 사용하는게 좋다.
  • 데이터를 점점 더 많이 사용할 수 있게되고 계산 비용(인프라 비용)이 저렴해짐에 따라 로지스틱 회귀를 사용하는 사례가 많아진다.
  • 데이터가 적은 상태에서 모델을 만드려면 고급 스킬이 필요하다. 적은 데이터로도 효과적인 모델을 만들 수 있다.



Naive Bayes 나이브 베이즈

Generative 모델중 하나인 나이브 베이즈에 대한 설명 입니다.
이메일에 대한 스팸 여부를 분류하는 모델 개발을 생각해 봅시다. 10,000개의 단어가 있는 사전을 가지고 있다고 합시다. 하나의 이메일 x 에 대해서 해당 단어가 있는지(1) 없는지(0)에 따라서 아래 처럼 표시할 수 있습니다. (One-hot Encoding)

아래와 같은 가정을 합니다.



각 단어들은 독립적이라고 가정하고 각각의 확률은 체인 룰을 통해 아래와 같이 정리될 수 있습니다.



찾아야할 파라메타는 스팸메일(y=1) 일때 xj 단어가 나타날 확률과, 스팸메일이 아닐 때(y=1) xj 단어가 나타날 확률 입니다. 그리고 전체 메일중에 스팸메일이 나타날 확률 입니다.


GDA와 같이 조인트 가능도를 구합니다. 모습도 GDA와 유사하게 됩니다.



이번 강의 에서는 Generative 모델과 Discretive 모델의 차이와 Generative 모델에 해당하는 Gaussian Distributed Analysis 와 Naive Bayers 알고리즘에 대해서 배웠습니다.



아래는 강의 동영상 링크 입니다.
https://www.youtube.com/watch?v=nt63k3bfXS0&list=PLoROMvodv4rMiGQp3WXShtMGgzqpfVfbU&index=5



반응형
반응형

What is NLP?

스타워즈, 2001 스페이스 오디세이 등 공상 과학(Science Fiction/Sci-Fi/SF) 영화를 보면 주인공이 사랑하는 연인이나 많은 사람을 구하기 위해 많은 기계나 로봇의 도움을 받아 역경을 해치고 목표를 이루어내는 것을 쉽게 볼 수 있습니다. 스타워즈에서의 R2D2, C2PO가, 스페이스 오디세이에서는 HAL 9000이 주인공을 돕는 로봇이나 기계 역할을 했습니다.
 
(스포일 HAL9000은 도와준건지 방해한건지…ㅋ. ) 스타워즈는 말할 것도 없이 대작이지만 2001 스페이스 오디세이도 정말 훌륭한 영화입니다. 1968년도에 2001년을 상상하며 만든 영화 같은데 정말 대단한 상상력인 것 같습니다. 영화에서 나오는 일부 제품이나 서비스는 이미 우리가 실생활에 사용하고 있는 것들도 있어서 정말 놀랐습니다. 어떤 것인지 찾으면서 영화를 보는 것도 재미있을 것 같네요.
 
제가 이야기 하고 싶은 부분은 주인공이 기계나 로봇과 소통하기 위해 언어를 이용한다는 점입니다. 뭐 놀랍지도 않은 일이지요. 이미 아마존 알랙사(Amazon Alexa), 구글 홈(Google Home), SK텔레콤 누구(SKT Nugu), KT 기가지니(KT GigaGinie), 네이버 클로바(Naver Clova), 카카오 프랜즈(Kakao Friends) 등 여러 종류의 인공지능 스마트 스피커가 판매되고 있지요, 그리고 휴대폰에서는 Apple Seri, Samsung Bixby 등 음성인식을 통해 다양한 서비스가 가능합니다. 이처럼 사람과 로봇 또는 기계의 소통을 위해 사용되는 언어 관련 기술을 자연어 처리(NLP: Natural Language Processing) 라고 합니다.
 
NLP는 인공지능의 한 분야입니다. 그럼 자연어 처리(NLP) 기술에는 어떤 것들이 있을까요? 언어는 말(소리)와 글(문자)로 표현되고 사용될 수 있을 것 같습니다. 보통 친구끼리 말로 소통하는 경우를 생각해보면 한 친구가 말하는 소리를 다른 친구가 1) 듣고 2) 이해한 다음에 3) 적절한 대답을 생각해 내고 그 내용을 4) 말로 하게 되겠지요. 물론 사람은 이러한 과정이 엄청나게 빠른 속도로 이루어집니다.  친구끼리 편지를 보냈다면 어떨까요? 다른 친구가 보낸 편지를 보고 한 단어씩(또는 문구나 문장을) 읽으면서 내용을 이해하고 (중간에도 가능하지만 보통) 마지막까지 다 읽은 다음 적절한 회신 내용을 생각해내고 그 내용을 글로 적어서 다시 편지로 보내겠지요.
 
기계나 로봇이 사람과 같이 언어로 소통하기 위해서는 사람이 소통하는 방법과 유사한 과정이 필요하겠습니다. 적어도 입력(듣고, 읽고), 처리(생각하고), 출력(말하고, 쓰고)이 필요합니다. 위에서 말씀 드린 것처럼 언어를 소리와 문자로 표현할 수 있는데 컴퓨터가 언어를 다룰 때는 문자로 표현하는 방법을 주로 다룹니다. 그 이유는 문자로 다루는 것이 더 경우의 수가 작고(같은 단어도 소리로 표현하려면 무수히 많은 표현이 가능할태니까요) 더 의미가 명확해 진다고할 수 있겠습니다.(물론 말로했을 때 뉘앙스에 따라 의미가 달라지는 것처럼 아닌 경우도 일부 있습니다. 그러나 대부분은 문자가 더 동일한 의미로 사용됩니다.) 말은 문자와 서로 변환 될 수 있으므로 입력에서는 소리를 문자로 바꾸어주고 출력에서는 문자를 소리로 바꾸어 주면 되겠습니다.
 
이런 절차적인 내용을 정리하면 1)소리를 듣고 문자로 바꾼뒤 2) 문자가 의미하는 내용을 이해하고 3) 내용에 적합한 대답을 생각해 내고 4) 생각한 대답을 문자로 만든다음 5)문자를 소리로 바꾸어 주면 되겠습니다. 이러한 내용을 정리하면 아래와 같은 절차와 기술들이 필요합니다.
 
1)소리를 듣고 문자로 전환(음성인식-Speech Recognition or STT: Speech To Text)
2) 문자가 의미하는 내용을 이해(NLU: Natural Language Understanding)
3) 내용에 적합한 대답을 생각(Knowledge DB, Search)
4) 생각한 대답을 문자로 전환(NLG: Natural Language Generation)
5)문자를 소리로 전환(음성합성-Speech Synthesis or TTS: Text To Speech)
 
1)번과 5)번은 음성음향신호처리 분야에 해당하고 다른 부분은 대화(Dialog) 어플리케이션과 관련된 NLP 분야라고 하겠습니다.
 
 

배경과 현황

NLP는 다른 말로 전산언어학이라고 할 수 있습니다. 전산언어학의 시작은 1950년대에 활발하게 연구되었던 기계번역이라고 할 수 있겠습니다. 모든(?대부분의?) 기술과 발전이 전쟁 또는 돈을 벌기위한 목적으로 발전하는데 전산언어학의 발전은 냉전시대에 미국에서 구 소련의 문자정보를 자동으로 번역하고자하는 목적에서 시작되었습니다. 이를 위해 많은 투자가 미국 정부를 주도로 일어나면서 활발한 연구가 이루어졌습니다. 이를 위해서 초기에 언어학 중 형태론과 문법을 기반으로 통계기법을 이용하여 자동번역을 구현하고자 하는 많은 연구가 있었습니다. 그러나 여러가지 이유로(아마도 컴퓨팅 파워, 데이터 부족, 알고리즘의 미성숙 등으로) 혁신적인 서비스나 역사적 이벤트를 만들지는 못했지만, 이러한 연구들이 바탕이 되어 최근 인공지능 딥러닝 기술과 접목되면서 (이번에는 돈을 벌기위한 목적으로) 많은 연구가 이루어지고 혁신적인 서비스들이 만들어 지고 있습니다.)
 
 

어디에 쓸까?

실제 NLP 활용분야는 매우 넓습니다. 왜냐하면 말그대로 자연어를 처리하는 활용분야는 더 많이 있기 때문입니다. 예를 들면 이미 많은 언어로 만들어진 수많은 데이터 들이 인터넷에 있습니다. 이러한 언어 데이터에서 의미를 찾아내고 분석하고 활용하는데 사용되는 것도 자연어를 처리하는 NLP의 분야입니다.
이러한 NLP기술의 주요 활용 분야에는 위에서 예를 든 대화(Dialog) 뿐만 아니라, 질의 응답(QA: Question Answering), 정보추출(IE: Information Extraction), 감성분석(Sentiment Analysis),  번역(Translation), 요약(Summarization) 등이 있습니다. 최근에는 컴퓨터 비전 분야와 결합하여 사진/영상의 내용을 설명/요약 한다든가, 특정 대사/감정이 전달되는 부분의 영상을 찾는 등 다양한 분야로 확대 되고 있습니다. 하드웨어와 인공지능 알고리즘의 발달로 NLP관련 서비스의 품질이 좋아지고 이에 따라 활용 사례가 늘어가면서 많은 어플리케이션이 만들어지고 있습니다. 인공지능 분야에서도 결국 인간과의 소통을 위한 방법으로 NLP의 중요성이 더욱 높아 지고 있습니다.

 

 

아래는 참고 소스 정보 입니다.

참고로 추가한 위키피디아의 정의를 참고하세요.

자연어 처리(自然語處理) 또는 자연 언어 처리(自然言語處理)는 인간의 언어 현상을 컴퓨터와 같은 기계를 이용해서 묘사할 수 있도록 연구하고 이를 구현하는 인공지능의 주요 분야 중 하나다. 자연 언어 처리는 연구 대상이 언어 이기 때문에 당연하게도 언어 자체를 연구하는 언어학과 언어 현상의 내적 기재를 탐구하는 언어 인지 과학과 연관이 깊다. 구현을 위해 수학적 통계적 도구를 많이 활용하며 특히 기계학습 도구를 많이 사용하는 대표적인 분야이다. 정보검색, QA 시스템, 문서 자동 분류, 신문기사 클러스터링, 대화형 Agent 등 다양한 응용이 이루어지고 있다.

https://ko.wikipedia.org/wiki/%EC%9E%90%EC%97%B0%EC%96%B4_%EC%B2%98%EB%A6%AC

 

자연어 처리 - 위키백과, 우리 모두의 백과사전

자연어 처리(自然語處理) 또는 자연 언어 처리(自然言語處理)는 인간의 언어 현상을 컴퓨터와 같은 기계를 이용해서 묘사할 수 있도록 연구하고 이를 구현하는 인공지능의 주요 분야 중 하나다.

ko.wikipedia.org

 

https://ko.wikipedia.org/wiki/%EC%A0%84%EC%82%B0%EC%96%B8%EC%96%B4%ED%95%99

 

전산언어학 - 위키백과, 우리 모두의 백과사전

이 문서는 컴퓨터를 이용해 자연어를 분석하는 학문에 관한 것입니다. 컴퓨터 프로그래밍에 사용되는 언어에 대해서는 프로그래밍 언어 문서를 참고하십시오. 전산언어학(電算言語學, 영어: com

ko.wikipedia.org

 

 
 
 
 

 

반응형

'인공지능-기계학습 > 언어인지_NLP' 카테고리의 다른 글

원 핫 인코딩? One-Hot Encoding?  (0) 2022.04.24
Tokenization이란? 토큰화? 토크나이제이션?  (0) 2022.04.16
TF-IDF tfidf  (0) 2022.03.17
BoW : Bag of Words  (0) 2022.03.15
최고의 챗봇 플랫폼 2021  (0) 2021.11.18
반응형

오래된(?) 강의지만 다시 봐도 참 좋은 강의입니다. 앤드류 응 교수님의 스탠포드 컴퓨터 사이언스 과목의 299번 과목의 첫 번째 강의입니다. 앤드류 응 교수는 MIT에서 석사, UC버클리에서 박사를 받고 스탠포드에서 교수로 일하신 분입니다. 강화 학습 관련 훌륭한 연구를 하셨고, 무엇보다 대중에게는 온라인 학습 포탈로 많이 알려진 MOOC의 일종인 코세라(COURSERA)를 만들고 활성화시킨 분으로 유명합니다. 구글 브레인의 설립자이기도 하시고 바이두에서도 인공지능/기계학습 관련 많은 연구를 주도하신 분입니다.
첫 강의라 전반적인 운영 내용 등 학습과 조금 관련 없는 이야기들이 나오긴하지만 후반부 부터는 기계학습에 대한 간단한 정의와 예를 들어가며 설명해주는 내용이 이해하기 쉽습니다.
들어보면 좋은 내용이 많은 것 같습니다. 주요내용은 아래와 같습니다.
기계학습이란 무엇인지 설명해주고(36:23), 지도학습(Supervised Learning)에 대해서도 예를 들어 설명해줍니다. (39:38) 주택의 크기와 가격을 예로 들어 설명하고, 종양의 크기를 가지고 양성(암)과 음성(물혹)을 학습하는 것도 설명해줍니다. 모델의 아웃풋이 숫자인 경우(Regression)와 0과 1의 분류인 경우(Classification)를 설명합니다. 더 정확한 학습을 위해 종양의 크기와 환자의 나이를 가지고 분류하는 방법을 예로 설명해주고, 실제 현장에서는 더 많은 데이터를 이용하고 이렇게 많은 데이터를 이용할 경우 서포트 백터 머신(Support Vector Machine)이라는 방법(커널)을 이용하여 무한대의 데이터(피처)를 학습할 수 있음을 설명해줍니다.
인공지능(기계학습)의 목적은 인풋 x에 대한 아웃풋 y 를 매핑하는 것을 학습하는 것이라고 설명합니다. x가 주어졌을 때 가장 적합한 y를 매핑하는 것이지요. 그러면서 오래전에 카네기멜론 대학에서 만든 자율주행 자동차에 대한 영상을 보여주면서 x와 y에 대해서 설명해줍니다.(53:00)

Input은 x(도로 전방 사진 이미지)이고 y는 핸들을 오른쪽으로 틀어야할지 왼쪽으로 틀어야 할지입니다. 모델의 학습을 위해서 사람이 도로 전방 사진(x)에 대해서 실제로 어떻게 핸들을 회전하는지를 가지고 학습했다고 합니다.
기계학습 전략(58:10)은 어떻게하면 수많은 의사결정을 내리고 반복적으로 수행해야 하는 모델 개발에서 시스메틱 한 방법으로 진행할지를 찾는 방법에 대해서 이야기한다고 합니다. 몇 개월 씩이나 몰두해서 문제를 해결하기 위한 모델을 개발하지 말고 접근하려는 방법이 잘못되었다는 것을 빨리 알아낼 수 있는 방법에 대해서 향후 수업에서 이야기할 거라고 합니다. 유사한 예로 프로그램 코드를 빠르게 실행시키는 방법은 속도가 빠른 언어로 프로그램을 변경하는 것이 아니라 프로그램 로직에서 병목을 찾아 이를 변경하는 것이 경험 있는 사람들이 해결하는 방법이라고 말합니다.
딥러닝(Deep Learning)에 대해서는 cs230에서 더 깊이 다룬다고 하네요. (1:04:00)
비지도 학습(Unsupervised Learning)에 대해서는 구글 뉴스의 예를 들면서 설명해 줍니다. 방송사나 리포터가 다르더라도 같은 주제의 내용을 묶어서 보여주는 기능이 비지도 학습을 통해 제공되는 것이라고 설명합니다. 또한 칵테일 파티 문제도 비지도 학습으로 다룬다고 합니다.


강화 학습(Reinforcement Learning) (1:11:19)에 대해서는 스탠포드 자율비행 헬리콥터를 예로 들어 설명합니다. 최적의 비행 방법을 찾는 것을 강화 학습하여 진행했다고 합니다. 강화 학습의 예로 애완견에게 좋은 습관을 들이도록 가르칠 때의 예를 들어 설명합니다. 잘했을 때 칭찬해주고 잘못했을 때 벌을 주는 방법으로 강아지가 좋은 습관을 들이도록 한다는 내용입니다. (강아지) 로봇이 장애물을 넘는 방법을 학습하는 것도 강화 학습을 이용한다고 합니다.(1:13:40)

강화학습을 통해 학습한 강아지 로봇이 장애물을 넘는 모습



다음 강의는 아래 링크를 클릭해 주세요
https://bigdatamaster.tistory.com/143


1강의 자세한 내용은 아래의 유튜브 동영상을 참고해주세요.
감사합니다.


https://www.youtube.com/watch?v=jGwO_UgTS7I

반응형
반응형

얼굴인식, 얼굴인증 등 얼굴관련 인공지능 모델 개발에 필요한 데이터 셋 들의 리스트입니다. 인공지능, 특히 딥러닝을 통한 모델 개발시 유용하게 사용될수 있습니다.


http://vis-www.cs.umass.edu/lfw/#resources

LFW Face Database : Main

vis-www.cs.umass.edu


http://shuoyang1213.me/WIDERFACE/

WIDER FACE: A Face Detection Benchmark

News 2017-03-31 The new version of evaluation code and validation resultsis released. 2017-03-31 Add text version ground truth and fix rounding problem of bounding box annotations. 2016-08-19 Two new algorithms are added into leader-board. 2016-04-17 The f

shuoyang1213.me




1| Flickr-Faces-HQ Dataset (FFHQ)

CELEBA-HQ데이터셋 보다 연령, 민족, 그리고 배경에서 더 다양한 이미지를 가지고 있음. 그리고 안경, 선그라스, 모자 등 악세사리 의 경우에도 더 많은 것을 커버함. Flicker로 부터 수집되어 자동으로 편집된 이미지.
Size: The dataset consists of 70,000 high-quality PNG images at 1024×1024 resolution and contains considerable variation in terms of age, ethnicity and image background.
Projects: This dataset was originally created as a benchmark for generative adversarial networks (GAN).
Publication Year: 2019
Download here.

2| Tufts-Face-Database

일반 이미지, 적외선이미지, 비디오 3D 등 다양함
Size: The dataset contains over 10,000 images, where 74 females and 38 males from more than 15 countries with an age range between 4 to 70 years old are included.
Projects: This database will be available to researchers worldwide in order to benchmark facial recognition algorithms for sketches, thermal, NIR, 3D face recognition and heterogamous face recognition.
Publication Year: 2019
Download here.

3| Real and Fake Face Detection

진짜/가짜 얼굴 데이터

Size: The size of the dataset is 215MB
Projects: This dataset can be used to discriminate real and fake images.
Publication Year: 2019
Download here.

4| Google Facial Expression Comparison Dataset

얼굴 표정 데이타 This dataset by Google is a large-scale facial expression dataset that consists of face image triplets along with human annotations that specify, which two faces in each triplet form the most similar pair in terms of facial expression.
Size: The size of the dataset is 200MB, which includes 500K triplets and 156K face images.
Projects: The dataset is intended to aid researchers working on topics related to facial expression analysis such as expression-based image retrieval, expression-based photo album summarisation, emotion classification, expression synthesis, etc.
Publication Year: 2018
Download here.

5| Face Images With Marked Landmark Points

Face Images with Marked Landmark Points is a Kaggle dataset to predict keypoint positions on face images.
Size: The size of the dataset is 497MP and contains 7049 facial images and up to 15 key points marked on them.
Projects: This dataset can be used as a building block in several applications, such as tracking faces in images and video, analysing facial expressions, detecting dysmorphic facial signs for medical diagnosis and biometrics or facial recognition.
Publication Year: 2018
Download here.

6| Labelled Faces in the Wild Home (LFW) Dataset

얼굴과 이름이 정의된 데이터, 얼굴인식과 얼굴인증을 위한 데이터셋
Size: The size of the dataset is 173MB and it consists of over 13,000 images of faces collected from the web.
Projects: The dataset can be used for face verification and other forms of face recognition.
Publication Year: 2018
Download here.

7| UTKFace Large Scale Face Dataset

UTKFace dataset is a large-scale face dataset with long age span, which ranges from 0 to 116 years old. The images cover large variation in pose, facial expression, illumination, occlusion, resolution and other such.
Size: The dataset consists of over 20K images with annotations of age, gender and ethnicity.
Projects: The dataset can be used on a variety of task such as facial detection, age estimation, age progression, age regression, landmark localisation, etc.
Publication Year: 2017
Download here.

8| YouTube Faces Dataset with Facial Keypoints

This dataset is a processed version of the YouTube Faces Dataset, that basically contained short videos of celebrities that are publicly available and were downloaded from YouTube. There are multiple videos of each celebrity (up to 6 videos per celebrity).
Size: The size of the dataset is 10GB, and it includes approximately 1293 videos with consecutive frames of up to 240 frames for each original video. The overall single image frames are a total of 155,560 images.
Projects: This dataset can be used to recognising faces in unconstrained videos.
Publication Year: 2017
Download here.

9| Large-scale CelebFaces Attributes (CelebA) Dataset

CelebFaces Attributes Dataset (CelebA) is a large-scale face attributes dataset with more than 200K celebrity images, each with 40 attribute annotations. The images in this dataset cover large pose variations and background clutter.
Size: The size of the dataset is 200K, which includes 10,177 number of identities, 202,599 number of face images, and 5 landmark locations, 40 binary attributes annotations per image.
Projects: The dataset can be employed as training and testing sets for the following computer vision tasks: face attribute recognition, face detection, landmark (or facial part) localisation, and face editing & synthesis.
Publication Year: 2015
Download here.

10| Yale Face Database

15명의 증명사진 같은 이미지, 인당 11장, 다양한 얼굴표현
Size: The size of the dataset is 6.4MB and contains 5760 single light source images of 10 subjects each seen under 576 viewing conditions.
Projects: The dataset can be used for facial recognition, doppelganger list comparison, etc.
Publication Year: 2001
Download here

10개 데이터셋에 대한 원본 글(https://analyticsindiamag.com/10-face-datasets-to-start-facial-recognition-projects/)

반응형

+ Recent posts