[TIL] 20.08.25

우주먼지·2020년 8월 25일
0

GAN(생성적 적대 신경망)

생성기와 판별기가 경쟁적으로 학습시켜 성능을 향상시키는 방법.

생성기에서는 판별기가 원본데이터로 착각할만한 위조데이터를 만들어내는 역할을 하고,
판별기는 원본 데이터와 생성기의 데이터를 분간하는 역할을 한다.

생성기는 판별기를 속이는 것에 성공했는지에 대한 여부인 이진판단문제에 대한 학습을 수행하고,
판별기는 원본 이미지의 특성을 자신의 신경망 파라미터에 축적하며 점차 실제 데이터와 생성기의 데이터를 구별하는 능력을 가진다.

이러한 GAN모델은 적은 양의 학습데이터만으로도 좋은 성능을 보이고, 데이터를 생성할 수 있다는 것이 새로웠다.

<판별기의 학습과정>
1. 원본데이터와 생성기의 순전파 과정을 통해 나온 위조데이터를 하나로 합쳐준다
2. 데이터를 판별기를 통해 데이터가 원본일 가능성을 로짓값 벡터로 얻어낸다.
3. 원본 데이터에 1을, 위조 데이터에 0의 값을 레이블 정보로 지정하여 정답 벡터를 구성한다.
4. 로짓값 벡터와 정답 벡터사이의 시그모디으 교차 엔트로피를 손실함수로 구하고 손실기울기를 구한다.

<생성기의 학습 과정>
1. 데이터를 이용하여 위조 데이터를 출력한다.
2. 출력된 데이터를 판별기에 넣고 로짓값 벡터를 얻어낸다.
3. 위조데이터를 속이기 위해 1로 지정하여 정답벡터를 생성한다.
4. 시그모이드 교차 엔트로피를 손실함수로 손실기울기를 구한다.
5. 이 값을 통해 생성기는 학습을 진행.

특성 공학

특정 애플리케이션에 가장 적합한 데이터 표현을 찾는 과정.

특성을 추가하거나 유용한 특성을 서낵하여 특성의 수를 줄이는 과정.

일변량 통계

특성과 타겟 사이에 중요한 통계적 관계가 있는지 계산하고 깊게 관련있는 것만 선택.

너무 많은 특성 때문에 모델을 만들기 어려울때나 많은 특성들이 도움이 안된다고 생각할 때 사용.

모델 기반 선택

지도학습 모델을 이용하여 특성의 중요도를 평가해서 가장 중요한것만 선택하여 사용

특성선택을 위한 모델은 각 특성의 중요도를 측정하여 순위를 매길수 있어야하며, 결정트리 기반의 모델의 경우는 각 특성의 중요도를 featureimportances에 저장한다.

반복적 특성 선택

종료 조건에 도달할 때까지 특성을 하나씩 추가하며 학습을 진행. 다른 방법으로는 모든 특성을 가지고 시작하여 특정 조건의 종료시까지 특성을 하나씩 제거.

이 중 가장 특성 선택을 잘함. 특성 선택이 제대로 된다면 선형 모델의 성능은 랜덤 포레스트와 견줄만 하다.

반복적 특성 선택이 가장 좋은 성능을 보였으나 시간이 오래걸렸다.

느낀점

  • 내일부터 자연어 처리 미니 프로젝트에 들어간다. 일단 가장 간단한 주제부터 선정했으며, 이를 통해 어떻게 진행하는 지를 배우고 나머지 주제에 대해서 혼자 진행해볼 생각이다.
    (진행한 내용은 꼭! velog에 남기도록 하겠따!!!)
  • 내일부터 태풍이 온다고 한다. 다들 날라가지 않게 집에 콕 처박혀 있기를..
  • 점점 주변 사람들이 취직을 한다... 조금씩 불안해진다. 내가 더 좋은 회사에 꼭 가고 싶다.
profile
안녕하세요 ㅎㅎ

0개의 댓글