전체 글125 Weight Initialization [Xavier Initialization (Glorot Initialization)] loss 그래프에서 loss가 최저인 지점을 찾는 것이 network의 목표다. 하지만 실제 loss 그래프는 굉장히 복잡하기에 그래서 local minimum에 빠지거나 saddle point에 도달하게 되는 위험이 있다. 이때, 출발점을 잘 설정한다면 위험 없이 global minimum에 도착할 수 있다. 이전까지 사용했던 weight initialization은 평균이 0, 분산이 1이었다. Xavier Initialization은 평균이 0, 분산이 2/Channel_in + Channel_out이다. Channel_in은 input으로 들어가는 Channel의 개수를 말하고, Channel_out은 outpu.. 2023. 8. 20. Relu [Problem of Sigmoid] 1. Network에 데이터를 입력해서 나온 output과 ground-truth 값의 차인 loss를 구한다. 2. 구한 loss 값의 미분 값을 Backpropagation 해서 Network를 학습시킨다. 이때 Backpropagation으로 전달되는 loss를 미분한 것을 gradient라고 한다. 3. gradient 값은 그래프의 기울기 값이라고 할 수 있는데, sigmoid 함수 그래프의 가운데 부분은 0보다 매우 크다. 반면에 극단 좌표의 gradient값은 0에 가까워 매우 작다. 4. Network가 deep할 경우 sigmoid 함수가 많아지고, 매우 작은 gradient 값들이 sigmoid 함수의 개수만큼 곱해진다. 결국 gradient 값이 .. 2023. 8. 13. XOR 문제 딥러닝으로 풀기 [Neural Net] XOR 문제를 3개의 network로 풀어보자. 1. 두 개의 입력 값 X1, X2에 대하여 weight, bias 값과 함께 WX+b 연산을 진행한다. 2. 위 과정을 두 개의 유닛에서 진행하여 출력 값 Y1, Y2를 얻는다. 3. 출력 값 Y1, Y2에 sigmoid 함수를 적용하여 최종 값 Y1, Y2를 얻는다. 4. 두 개의 입력 값 Y1, Y2에 대하여 weight, bias 값과 함께 WX+b 연산을 진행한다. 5. 출력 값 Y’에 sigmoid 함수를 적용하여 최종 값 Y’를 얻는다. 6. 최종 값 Y’의 값이 XOR 연산 결과 값과 일치하는지 확인한다. [Forward propagation] 위 계산 과정을 다음과 같이 두 개의 유닛으로 구성된 하나의 Neural N.. 2023. 8. 13. 딥러닝의 기본 개념 [Ultimate dream: thinking machine] 인간의 뇌는 굉장히 복잡한 반면에 뉴런이라고 불리는 유닛은 굉장히 단순하게 동작이 된다. 어떤 input이 들어오면 그 input에 weight를 곱한 만큼 신호가 들어온다. 신호의 값들이 합쳐지고 통과하면서 bios가 더해지는데 이 최종 값이 특정 값 이상이면 활성화되고, 특정 값을 넘지 못하면 활성화되지 않는다. [Activation Functions] 뉴런의 동작 방식을 이용해 Activation Function을 만들었다. [(Simple) XOR problem: linearly separable?] Activation Function을 이용하여 직접 Hardware를 구현했다. AND/OR 문제의 경우 선형적으로 구분이 가능하기에 쉽.. 2023. 8. 13. 엑셀로 해보는 탐색적 데이터 분석 [데이터 불러오기] mpg.txt 파일을 복사해서 엑셀에 붙여넣는다. 다음과 같이 엑셀에 데이터가 정리된다. [데이터 준비하기] 정리된 데이터에 표 서식을 적용하고, 수치형을 갖는 속성에 조건부 서식을 적용해보자. 엑셀의 조건부 서식은 각 셀 값에 따라 자동으로 서식을 결정해주는 기능으로, 클릭 한 번으로 값 분포를 한눈에 볼 수 있다. E열, H열, I열에 셀 값에 따라 색상이 달라지는 조건부 서식을 적용해보자. 실습 과정은 다음과 같다. 1. 워크시트의 데이터 전체를 선택한다. 2. 메뉴에서 표 서식을 선택한 후 적절한 모양을 선택한다. 3. 표 서식을 적용한다. 4. 서식을 적용할 셀의 범위를 선택한다. 5. 조건부 서식 메뉴에서 적절한 서식을 고른다. 6. 조건부 서식이 적용된 결과는 다음과 같다.. 2023. 8. 13. [백준 2739번] 구구단 (python) [문제] [풀이] dan = int(input()) for i in range(1, 10): print(dan, "*", i, "=", dan*i) int(input())을 사용하여 입력받은 값을 변수 dan에 저장한다. 입력한 구구단 단에 대해 1부터 9까지 반복하여 출력한다. 2023. 8. 13. 이전 1 2 3 4 5 6 7 ··· 21 다음