김호쭈
DevForYou
김호쭈
전체 방문자
오늘
어제
  • 분류 전체보기 (321)
    • • 데이터베이스(DB) (9)
      • __SQL__ (9)
    • •알고리즘(Algorithm ) (117)
      • 문제풀이 (99)
      • 스터디 (14)
      • 알고리즘 팁 (4)
    • •Compter Science (57)
      • Operating System (25)
      • Computer Network (1)
      • Computer Vision (16)
      • Artificial Intelligence (14)
      • Software Technology (1)
    • • 독서 (36)
      • Design Pattern (24)
      • 객체지향의 사실과 오해 (1)
      • Object Oriented Software En.. (11)
    • • 개발 (26)
      • React (3)
      • node.js (6)
      • Django (11)
      • Spring boot (6)
    • • 개발Tip (4)
      • GitHub (0)
    • •프로젝트 (2)
      • 물물 (2)
    • •App (54)
      • 안드로이드 with Kotlin (50)
      • 코틀린(Kotiln) (4)
    • •회고 (8)
    • •취준일기 (3)
    • • 기타 (2)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • KMU_WINK
  • 깃허브데스크탑
  • ㄱ
  • 로컬저장소
  • 원격저장소
  • Remote저장소
  • local저장소
  • GitHubDesktop

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
김호쭈

DevForYou

[인공지능#12/11-16] 목적함수의 알맞은 쓰임, 데이터 전처리
•Compter Science/Artificial Intelligence

[인공지능#12/11-16] 목적함수의 알맞은 쓰임, 데이터 전처리

2022. 11. 21. 01:00
 

[인공지능#11/11-14] CNN - LeNet, AlexNet, VGCNet, GoogLeNet, ResNet, 심층학습

[인공지능#10/11-07] CNN의 구조 및 특징, 패딩, 보폭(Stride), Pooling [인공지능#9/10-31] 깊은 신경망(DNN)과 CNN 맛보기 [인공지능#8/10-12] 인공신경망, 퍼셉트론 개념 [인공지능#7/10-05] 정보이론과 엔트로피,

devforyou.tistory.com

본 포스팅은 2022-11-16(수), 국민대학교 이재구 교수님의 인공지능 수업을 통해 배운내용을 정리하기 위해 작성하는 게시글입니다.


# 시작하며

이번시간부터 새로운 단원에 들어왔다. 단원 명은 "심층학습 최적화 기법"이다.

수업시간에 상어를 그려봤다.

잘그린거 같다

# 목적함수

 기계학습은 전체데이터셋과, 검증 데이터셋을 통해서, 최적의 가중치값을 찾아내는 과정이다. 이 과정에서 목적(손실,로스)함수를 사용해서 Loss값을 판단하고 이 값을 낮추기 위해서 학습을 진행한다. 

 이러한 목적학수는 MSE, NLL, CE등 다양하게 존재한다. 그러나 적재 적소에 맞게 목적함수를 사용할 필요가 있다. 먼저 MSE와 시그모이드를 사용했을때의 문제점을 살펴보자.

 

## MSE 목적함수

 목적함수의 정의를 인간에 비유 해보자면, 시험에 틀린점수만큼 감점을 받고, 감점이 클 수록 더 많이 공부를 해야 할 것이다.

평균 제곱 오차(MSE)는 2차놈으로 표현 할 수 있다. 과연 MSE는 감점만큼 공부를 할까?

 놀랍게도, 시그모이드와 MSE를 조합해서 사용했을때의 상황에서는, 오른쪽이 Error가 더 커 더 많은 가중치를 갱신해야 하지만, 실상은 왼쪽이 더 많이 갱신한다.

 이유는 시그모이드 활성함수의 특징이기도 하다.

시그모이드는 양 끝으로 갈 수록 미분 값이 0에 가까워지기 때문이다. 


## 교차엔트로피

 위와 같은 크로스 엔트로피를 사용하면, 이 문제를 해결 할 수 있다.

 

# 소프트 맥스 함수



출력값들을 0~1의 확률적 요인으로 바꿔줄 수 있다.

 

# 음의 로그 우도

소프트맥스와 잘 조합이 됨과 동시에, 멀티분류일경우 크로스엔트로피와 똑같이 계산 할 수 있다.

 로그우도는 입력 샘플의 정답 부류에 해당하는 노드만을 보고 계산한다.

# 적용

아래와 같이, 출력값을 softmax로 0~1사이의 확률적 요인으로 근사화 시킨 뒤, 정답 라벨과의 오차를 구하게 된다.

 

# 데이터 전처리

 데이터 전처리의 필요성중 첫번째는 Scale에서 온다. 예를들어 1.8m와 180cm는 우리가 보기에는 같은 값이기 때문에 별차이 없어보이지만, 단위가 붙어기 때문이다. 그래서 전처리 단계에서는 이러한 단위들을 잘 맞추어 줘야 한다. 그렇지 않으면, 큰 스케일의 값에 끌려가는 일이 벌어진다. 

키와 몸무게의 데이터가 있다고 가정하자

  • 1.885m , 1.525m는 0.36m가 차이난다
  • 66.5kg와 45.0kg는 20.5kg이 차이가 난다.

이 두 데이터를 그대로 사용하는게 맞을까?

저작자표시 (새창열림)

'•Compter Science > Artificial Intelligence' 카테고리의 다른 글

[인공지능#14/11-23] 경사하강법, 규제  (0) 2022.11.29
[인공지능#13/11-21] 성능향상 기법 - 정규화, 배치 정규화, 가중치 초기화, 활성함수, one-hot-encoding  (0) 2022.11.22
[인공지능#11/11-14] CNN - LeNet, AlexNet, VGCNet, GoogLeNet, ResNet, 심층학습  (0) 2022.11.16
[인공지능#10/11-07] CNN의 구조 및 특징, 패딩, 보폭(Stride), Pooling  (0) 2022.11.09
[인공지능#9/10-31] 깊은 신경망(DNN)과 CNN 맛보기  (0) 2022.10.31
    '•Compter Science/Artificial Intelligence' 카테고리의 다른 글
    • [인공지능#14/11-23] 경사하강법, 규제
    • [인공지능#13/11-21] 성능향상 기법 - 정규화, 배치 정규화, 가중치 초기화, 활성함수, one-hot-encoding
    • [인공지능#11/11-14] CNN - LeNet, AlexNet, VGCNet, GoogLeNet, ResNet, 심층학습
    • [인공지능#10/11-07] CNN의 구조 및 특징, 패딩, 보폭(Stride), Pooling
    김호쭈
    김호쭈
    공부하고 정리하고 기록하기

    티스토리툴바