Deep Learning - 얼굴형 분류 모델: 모델 정의

sjongyuuu·2021년 7월 26일
0

DeepLearning

목록 보기
1/2
post-thumbnail

지난 학기 졸업 프로젝트에서 분류 모델 개발을 담당했었다. 그때까지만 하더라도 학교에서 인공지능 수업만 들었을 뿐 개발을 직접해본 적은 없었다.
하지만, 직접 모델 개발을 진행하면서 한 학기 동안 정말 죽어라😭 열심히했고 어느정도? 의미 있는 결과물을 만들어 낼 수 있었다.

이번 포스팅을 시작으로 Deep Learning 시리즈를 연재하여 지난 학기 모델 개발을 하면서 고생 끝에 배우고 얻은 지식들을 정리해 보려고 한다.😁

Deep Learning 시리즈는 졸업 프로젝트 개발 주제인
"얼굴형 분류"를 예시로 하면서 포스팅을 할 계획이다.

이번 포스팅에서는 개발하려는 모델을 정의하는 과정에 대해 알아보려 한다.

💡 모델 정의하기

먼저, 모델을 어떤 식으로 학습시킬지 생각해 보자.
학습 방법에는 지도학습(Supervised Learning)비지도학습(Unsupervised Learning), 강화학습(Reinfocement Learning)이 있다.

비지도학습과 강화학습의 경우, 이번 딥러닝 시리즈에서 다루는 내용이 아니기 때문에(사실 잘 모르기 때문에) 간단하게 의미만 짚고 넘어가자.

  • 지도학습(Supervised Learning)
    데이터에 대한 정답(Label)을 알려주고 학습을 진행하는 방법으로
    회귀(Regression) 문제분류(Classification) 문제로 나뉜다.
  • 비지도학습(Unsupervised Learning)
    데이터에 대한 정답(Label)없이 학습을 진행하는 방법으로 대표적으로 클러스터링(Clustering)이 있다.
    👉 클러스터링(Clustering)이란, 비슷한 성질을 가진 데이터끼리 그룹화하는 기법으로 군집화라고도 한다.
    이에 대한 내용은 여기(위키백과 - 클러스터 분석)를 참고하면 된다.

개발하려는 모델의 기능은 얼굴(데이터)을 인식하면 특정 얼굴형(정답)으로 판단하는 것이다.
이를 위해서는 모델이 정답에 대해 꼭 알아야 하기 때문에

📝 지도학습(Supervised Learning)

의 방법으로 학습을 진행하기로 하였다.

다음으로, 지도학습의 2가지 종류인 회귀(Regression)분류(Classification) 중에서 어떤 개념으로 모델을 정의할지 생각해 보았다.

먼저, 두 개념은 다음과 같이 정의된다.

  • 회귀(Regression)
    원인(독립변수)과 결과(종속변수)가 선형 관계를 이루고 있는 것으로 원인에 대한 결과가 분류(범주)와는 달리 연속적인 값으로 나타난다.
    대표적으로, 키와 몸무게의 관계에서 키를 통해 몸무게를 예측하는 회귀분석 예제가 있다.
  • 분류(Classification)
    원인(독립변수)에 대한 결과(종속변수)가 수치값이 아닌 범주형으로 나타난다.
    즉, 원인에 대한 결과가 A아니면 B와 같은 식으로 나타난다는 것이다.
    이중(Binary) 분류 문제
    "맞다", "틀리다"와 같이 2개의 결과로 분류되는 문제
    다중(Multiple) 분류 문제
    "A", "B", "C", ...와 같이 2개 이상의 결과로 분류되는 문제
    대표적으로, Iris 데이터 분류 예제가 있다.

사실, 정의를 자세히 볼 것도 없이 "분류"라는 글자만 보고도 모델을 분류 모델로 정의할 수 있지만,
정의를 하나씩 따져보면서 보다 더 신뢰할 수 있는 모델을 개발하려고 했다.

다음으로, 이것이 이중 분류 문제인지 다중 분류 문제인지 알아보자.

일반적으로 얼굴형은 2개 이상으로 나누어 지는데 그 기준을 확실히 정하기 위해 여러 검색 자료들과 다음 논문을 참고하였다.

참고 자료: 논문 - 얼굴형의 특성을 보완한 헤어스타일 연구

따라서, 얼굴형을 다음과 같이 분류하였다.
[사진 출처 - 얼굴형에 맞는 바캉스 모자 고르는 TIP]
왼쪽부터 역삼각형, 계란형, 둥근형, 각진형으로 기준을 설정하였다.

이렇게 총 4개의 얼굴형으로 분류할 수 있었고 이를 통해 내가 개발하려는 모델을 지도학습을 통한

📋 다중 분류 모델(Multiple Classification)

로 정의하였다.

모델의 정의가 끝났으니, 이제 정의한 학습 방법에 맞게 데이터셋을 구축해야 한다.
데이터셋을 구축하는 과정은 개발하려는 모델의 성능에 가장 중요한 영향을 끼치는 부분으로써 개발 목표에 맞게✅ 데이터를 처리하고 확보하는 과정이다.

따라서, 데이터셋 구축 과정은 다음 포스팅에서 제대로 다루어 보도록 하자.😁

.

.

.

Deep Learning - 얼굴형 분류 모델: 모델 정의 [끝]

  • 읽어 주셔서 정말 감사드립니다.
  • 오타나 잘못된 정보를 댓글로 남겨주시면 정말 감사하겠습니다.
profile
내 생각 저장소

3개의 댓글

comment-user-thumbnail
2023년 5월 30일

안녕하세요! 얼굴형 분석 관련해서 과제중인데 혹시 소스코드 받을 수 있을까요??ㅠㅠ

답글 달기
comment-user-thumbnail
2023년 12월 3일

안녕하세요 ! 얼굴형 분석 관련하여 프로젝트 과제 진행중인 대학생입니다.. 실례가 되지 않는다면 혹시 소스코드 받을 수 있을까요 ?

1개의 답글