"분류:딥러닝 기능 구현"의 두 판 사이의 차이

Pywiki
둘러보기로 가기 검색하러 가기
 
(같은 사용자의 중간 판 2개는 보이지 않습니다)
2번째 줄: 2번째 줄:
  
 
== 층을 어떻게 구현할 것인가? ==
 
== 층을 어떻게 구현할 것인가? ==
 +
특정 기능을 구현하기 위해 어떤 층을 몇개나 준비해야 하나 고민에 빠지게 된다.
  
=== 무조건 크게? ===
+
사실,모델의 성능은 준비된 데이터, 데이터 증폭법, 활성화함수 등에 영향을 받아 짧은 글 안에 그 지혜를 담기 어렵지만, 이런 논의는 그 지혜로 다가가는 문이 되어주리라 기대한다.
너무 많은 파라미터는 과적합의 원인이 되기도 한다. 과적합을 막기 위해 네트워크의 크기를 줄이는 것도 전략이다. 손실이 감소할때까지 점차 유닛의 수를 늘려가는 것이 일반전략.(일반적으로 네트워크가 크면 작은 네트워크보다 더 빠르게 과적합 되었다.) 네트워크가 크면 오히려 성능이 안좋아진다.
 
  
== 다양한 사례의 연구결과 공유 ==
+
세세한 조정값까진 이곳에서 다루긴 어렵지만, 대강 어떤 문제에서 어느정도 크기의 층을 사용하는지 참고하면 시작지점을 찾을 수 있다.
특정 기능을 구현하기 위해 어떤 층을 몇개나 준비해야 하나 고민에 빠지게 된다.
 
  
 
* 다양한 경험이 주는 강점은... 대강 어느 정도면 어떤 기능을 구현할 수 있겠다는 감각을 얻는 것. 대략적인 경험의 사례공유는 커다란 도움이 된다.
 
* 다양한 경험이 주는 강점은... 대강 어느 정도면 어떤 기능을 구현할 수 있겠다는 감각을 얻는 것. 대략적인 경험의 사례공유는 커다란 도움이 된다.
 +
 +
== 다양한 사례의 연구결과 공유 ==
 
*  
 
*  
  
17번째 줄: 18번째 줄:
 
!성과
 
!성과
 
!링크
 
!링크
|-
 
|0~9의 아라비아 숫자를 구분하는 것.
 
|렐루 활성화함수로 512개, 소프트맥스 활성화함수로 10개.
 
2개 층만으로도 충분하다... 놀랍네; 고작 2층으로!
 
|정확도는 97.8%
 
|[https://github.com/gilbutITbook/006975/blob/master/2.1-a-first-look-at-a-neural-network.ipynb 링크]
 
 
|-
 
|-
 
|영화 리뷰 분류.
 
|영화 리뷰 분류.
47번째 줄: 42번째 줄:
 
|
 
|
 
|[https://github.com/gilbutITbook/006975/blob/master/3.5-classifying-newswires.ipynb 링크]
 
|[https://github.com/gilbutITbook/006975/blob/master/3.5-classifying-newswires.ipynb 링크]
 +
|}
 +
 +
=== 이미지 ===
 +
{| class="wikitable"
 +
!사례
 +
!시도
 +
!성과
 +
!링크
 +
|-
 +
| rowspan="2" |0~9의 아라비아 숫자를 구분하는 것.
 +
|렐루 활성화함수로 512개, 소프트맥스 활성화함수로 10개.
 +
2개 층만으로도 충분하다... 놀랍네; 고작 2층으로!
 +
|정확도는 97.8%
 +
|[https://github.com/gilbutITbook/006975/blob/master/2.1-a-first-look-at-a-neural-network.ipynb 링크]
 +
|-
 +
|CNN 3층과 일반 신경망 2층.
 +
|99.2%
 +
|[https://github.com/gilbutITbook/006975/blob/master/5.1-introduction-to-convnets.ipynb 링크]
 +
|-
 +
|개와 고양이 이진분류
 +
|CNN 4층과 신경망 2층.
 +
|약 85%
 +
|[https://github.com/gilbutITbook/006975/blob/master/5.2-using-convnets-with-small-datasets.ipynb 링크]
 
|}
 
|}
 
[[분류:인공지능 기능구현]]
 
[[분류:인공지능 기능구현]]

2021년 12월 7일 (화) 17:38 기준 최신판

다양한 기능을 어떻게 구현할 것인가에 대한 문서를 분류하기 위한 분류.

1 층을 어떻게 구현할 것인가?[편집 | 원본 편집]

특정 기능을 구현하기 위해 어떤 층을 몇개나 준비해야 하나 고민에 빠지게 된다.

사실,모델의 성능은 준비된 데이터, 데이터 증폭법, 활성화함수 등에 영향을 받아 짧은 글 안에 그 지혜를 담기 어렵지만, 이런 논의는 그 지혜로 다가가는 문이 되어주리라 기대한다.

세세한 조정값까진 이곳에서 다루긴 어렵지만, 대강 어떤 문제에서 어느정도 크기의 층을 사용하는지 참고하면 시작지점을 찾을 수 있다.

  • 다양한 경험이 주는 강점은... 대강 어느 정도면 어떤 기능을 구현할 수 있겠다는 감각을 얻는 것. 대략적인 경험의 사례공유는 커다란 도움이 된다.

2 다양한 사례의 연구결과 공유[편집 | 원본 편집]

사례 시도 성과 링크
영화 리뷰 분류.

긍정리뷰와 부정리뷰 분류.

model = models.Sequential()
model.add(layers.Dense(16, activation='relu', input_shape=(10000,)))
model.add(layers.Dense(16, activation='relu'))
model.add(layers.Dense(1, activation='sigmoid'))
정확도는 약 90% 링크
뉴스 분류

46개의 토픽으로 뉴스를 분류한다.

model = models.Sequential()
model.add(layers.Dense(16, activation='relu', input_shape=(10000,)))
model.add(layers.Dense(16, activation='relu'))
model.add(layers.Dense(1, activation='sigmoid'))
링크

2.1 이미지[편집 | 원본 편집]

사례 시도 성과 링크
0~9의 아라비아 숫자를 구분하는 것. 렐루 활성화함수로 512개, 소프트맥스 활성화함수로 10개.

2개 층만으로도 충분하다... 놀랍네; 고작 2층으로!

정확도는 97.8% 링크
CNN 3층과 일반 신경망 2층. 99.2% 링크
개와 고양이 이진분류 CNN 4층과 신경망 2층. 약 85% 링크

하위 분류

다음은 이 분류에 속하는 하위 분류 2개 가운데 2개입니다.