본문 바로가기
728x90
반응형

파이썬(Python), 머신러닝, 딥러닝21

(딥러닝 with 파이썬) 폐암 수술 환자의 생존율 예측 모델 폐암 수술환자의 생존율을 예측하는 모델 데이터 : github "taehojo" 님이 업로드하신 폐암 수술환자 파일 사용 *16개의 독립변수(X)와 1개의 종속변수(y / 생존여부(Binary)) 파이썬 코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 #텐서플로 라이브러리 안에 있는 케라스 API에서 필요한 함수들을 호출 from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense #numpy 라이브러리 호출 import numpy as np #폐암.. 2022. 8. 2.
(딥러닝 with 파이썬) 오차역전파 / 활성화 함수 1. 오차역전파(Back propagation) 인간의 지능은 뇌에서 뉴런들의 작용으로 인해 형성된 것처럼, 인공지능도 이와 같은 원리로 개발되지 않을까하는 생각으로 출발한 퍼셉트론(Perceptron) 단일 퍼셉트론이 해결하지 못한 XOR 문제를 해결한 다층퍼셉트론(Multi Layer Perceptron)으로 인공지능의 겨울을 극복하게 되었다. 이때, 작은 문제가 생기게 된다. 그것은 바로 다층신경망에서의 경사하강법을 적용하는 방법이다. 경사 하강법은 임의의 가중치를 선언하고 결괏값을 이용해 오차를 구한 후 이 오차가 최소인 지점으로 계속해서 조금씩 이동시키는 것이다. 하지만, 위에서 언급한 것은 입력층과 출력층만 존재한 단일 퍼셉트론일때 가능한 것이다. 은닉층(Hidden layer)이 생기면서, .. 2022. 8. 2.
딥러닝에서 중간층을 은닉층이라 부르는 이유? 딥러닝을 하다보면, 입력층(Input Layer)과 출력층,(Output Layer) 그리고 중간에 있는 층(은닉층 / Hidden layer)으로 구성되어 있는데, 왜 중간에 있는 층을 중간층이라 부르지 않고, 은닉층(Hidden Layer)로 부르는지 궁금했다. 1.딥러닝에서 중간층을 은닉층이라 부르는 이유 중간층이 은닉층(Hidden layer)라고 불리는 이유는, 훈련 데이터셋(Training data set) 중 해당 층에 위치한 노드들의 실제 값이 은닉(알 수 없는)되어 있기 때문이다. 즉, 우리 눈에 안보여서 은닉한다고 표현하는 것이 아니라, 신경망 알고리즘 계산 간 마치 내부에 꽁하고 감춰놓고 계산한다고 해서 불리는 것이다. (물리적으로 안보인다는 의미가 아니라, 계산 과정을 마치 은닉된 .. 2022. 8. 2.
(파이썬 코드)다중퍼셉트론으로 XOR문제 해결하기 기존에 퍼셉트론이 해결하지 못했던 문제인 XOR 문제로 인해, 인공지능의 발전에 큰 위기가 찾아왔다. 이를 해결한 것이 바로 다층 퍼셉트론이다. 기존에는 입력(Input)층과 출력(Output)층만 존재했기에 XOR 문제를 해결하지 못했으나, 1개의 층을 더 추가하면서 XOR 문제를 해결할 수 있게 되었다. 아래 그림은 XOR 문제의 예시이다. XOR 게이트는 1) 입력층에서 첫번째 은닉층으로 전파될때 a) NAND 처리와 b) OR 처리를 사용하고 2) 첫번째 은닉층에서 출력층으로 전파될때 AND 처리를 사용하는 논리 구조를 가지고 있다. 이를 코딩을 통해 구현하면 아래와 같은 결과 값이 나오게 된다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22.. 2022. 8. 2.
728x90
반응형