본문 바로가기
728x90
반응형

분류 전체보기116

밑바닥부터 시작하는 딥러닝 Chapter6 - 가중치의 초깃값 w 를 모두 0으로 초기화할 경우 업데이트도 모두 같은 값으로 바뀐다. 이렇게 되면 제대로 된 학습이 이루어지지 않는다. 때문에 초깃값은 랜덤하게 설정해야 한다. 정규분포(가우시안 분포) 분산 : 표준편차 σ의 제곱 그래프의 면적은 1에 수렴한다. 왼쪽 두 그래프를 보면 표준편차 σ는 절반이지만 높이는 2배이다. sigmoid 함수에서의 가중치 w 초깃값 w 의 분포를 표준편차 σ를 1로 설정했을 경우 w ~ N(0, 1^2) 에 sigmoid 함수의 출력값(활성화값) 분포 각 층의 활성화값들이 0과 1에 치우쳐 분포되어 있다. 시그모이드 함수는 그 출력이 0 또는 1에 가까워지면 그 미분값은 0에 가까워진다. 그래서 데이터가 0과 1에 치우쳐 분포하게 되면 역전파의 기울기 값이 점점 작아지다가 사라진다.. 2022. 6. 26.
밑바닥부터 시작하는 딥러닝 Chapter6 - 학습 관련 기술들 등방성 함수 f(x, y) = x^2 + y^2 등방성 함수는 각 위치에서 기울어진 방향의 본래의 최솟값을 가리킨다. 따라서 등방성 함수의 경우 SGD를 이용해도 무방하다. SGD의 단점 비등방성 함수 비등방성 함수는 각 위치에서의 기울기가 가리키는 지점이 하나가 아니라 여러개이다. 기울기의 대부분은 최소값의 위치인 (0,0)을 가리키지 않는다. 이 상태에서 SGD를 적용하면 결과가 다음과 같다. 심하게 굽이진 움직임으로 상당히 비효율적이다. 위와 같은 SGD의 단점을 개선해주는 모멘텀, AdaGrad, Adam 에 대해 알아보자. 모멘텀 모멘텀은 '운동량' 을 뜻하는 단어 물리에서 p(운동량) = m(질량) * v(속도) 인데, 신경망에서는 질량을 1로 두고 운동량을 속도로만 나타낸다. 여기서 v 변수.. 2022. 6. 26.
밑바닥부터 시작하는 딥러닝 Chapter5 - 오차역전파법 Chain Rule z = t^2, t = x + y라 하면 계산 그래프로 나타내면 다음과 같다. 덧셈노드 역전파 상류의 값이 그대로 하류로 간다. 곱셈노드 역전파 상류의 값에 순전파 때의 입력 신호들을 서로 바꾼 값을 곱해서 하류로 간다. Affine Layer - 계산(행렬의 곱과 편항의 합)하는 계층 차원을 맞추기 위해 transpose 할 수도 있다. 배치용 Affine 계층 - 데이터를 N개 묶어 순전파 하는 경우에 대한 배치(Batch)용 Affine 사진 출처 https://mathsathome.com/chain-rule-differentiation/ https://velog.io/@kyj93790/%EB%B0%91%EB%B0%94%EB%8B%A5%EB%B6%80%ED%84%B0-%EC%8B.. 2022. 6. 25.
Python input().split(), list.sort(reverse=True) 공백으로 자르기, 내림차순 정렬 입력 받은 string 을 공백기준으로 자르고 int 형으로 바꾼 후 내림차순하기 data = list(map(int, input().split())) data.sort(reverse=True) print(data) 32 84 15 93 47 [93, 84, 47, 32, 15] map() 의 리턴값의 개수가 정해져 있다면 변수에 바로 넣을 수 있다. a, b, c = map(int, input().split()) print(a, b, c) 45 13 87 45 13 87 입력을 최대한 빠르게 받기 data = sys.stdin.readline().rstrip() print(data) abcdefg abcdefg - 입력이 너무 많아서 입력 받는것 만으로도 시간이 오래걸려서 시간초과 판정을 받을 수 있다.. 2022. 6. 20.
Python 내장함수 issubclass(), isinstance(), lambda(), filter(), map(), sorted(), zip() issubclass 함수 # Eagle 클래스는 Bird 클래스를 상속받음. class Eagle(Bird): pass insubclass(Eagle, Bird) True == Eagle 은 Bird 이다. == Eagle 클래스는 Bird 클래스를 상속받았다. == Eagle 클래스는 자식클래스이고 Bird 클래스는 부모클래스이다. isinstance 함수 a = Eagle() ininstance(a, Eagle) True b = 3 ininstance(b, Eagle) False lambda 함수 함수를 생성할 때 사용하는 예약어로 def와 동일한 역할. 보통 함수를 한 줄로 간결하게 만들고자 할 때 사용. def sum(a, b): return a+b sum = lambda a, b: a+b sum.. 2022. 6. 19.
728x90
반응형