기타 98

[신경망] 파이썬으로 인공 신경망 만들기5

신경망 학습시키기 신경망 학습의 두 가지 단계주어진 학습 데이터에 대해 결과 값을 계산해내는 단계.계산한 결과 값을 실제의 값과 비교하고 이 차이를 이용해 가중치를 업데이트 하는 단계 tarin() 함수 코드 입력 계층으로부터의 신호를 최종 출력 계층까지 전파하는 과정은 query() 함수와 동일 하므로 내용은 거의 동일하다. 다만 아래 함수 매개변수를 보면 targets_list 가 추가로 존재한다. 이 매개변수 없이는 신경망을 제대로 학습시킬 수 없다.1def train(self, input_list, targets_list):cs 앞에서 inputs_list를 numpy 배열로 변환했던 것과 동일한 방법으로 targets_list를 변환해줍니다.1targets = numpy.array(targets..

[신경망] 파이썬으로 인공 신경망 만들기 4

신경망에 질의하기 query() 함수는 신경망으로 들어오는 입력을 받아 출력을 반환해준다. 단순한 작업이지만 이를 입력 계층부터 은닉 계층을 거쳐 최종 출력 계층까지 수행해야 한다는 점을 기억해야 한다. 또한 신호는 은닉 노드와 출력 노드로 전달될 때 가중치 연산과 활성화 함수 작용을 거친다는 점을 기억해야 한다. 입력계층과 은닉 계층 사이의 가중치 행렬은 입력 행렬과 조합되어 은닉 계층으로 들어오는 신호가 되며 다음과 같이 표기 할 수 있다. X = W · I 파이썬에서는 numpy 라이브러리의 dot 함수를 쓰면 다음과 같이 표현할 수 있다.hidden_inputs = numpy.dot(self.wih , inputs) 이처럼 파이썬에서는 간단한 코드로 모든 입력 값과 가중치를 연산함으로써 은닉 계층..

[신경망] 파이썬으로 인공 신경망 만들기 3

신경망의 핵심 가중치 신경망에서 가장 중요한 부분은 바로 연결 노드의 가중치 이다.가중치는 전파 시 전달되는 신호와 역전파 시 오차를 계산하는 데 쓰이며, 이를 통해 신경망을 개선하는 역할을 수행한다. 가중치는 행렬로 간결하게 표현될 수 있다. 그러므로 다음과 같은 행렬을 만들 수 있다. (은닉 노드 X 입력 노드)의 크기를 가지는 입력 계층과 은닉 계층 사이의 가중치의 행렬 W(출력 노드 X 은닉 노드)의 크기를 가지는 은닉 계층과 출력 계층 사이의 가중치의 행렬 W 파이썬의 numpy 함수는 0과 1사이에서 임의로 선택한 값을 원소로 가지는 행렬을 생성한다 (행렬의 크기는 행 X 열)numpy.random.rand(rows, columns) numpy 를 사용하기 위해서는 numpy 모듈을 불러와야 ..

[신경망] 파이썬으로 인공 신경망 만들기 2

신경망 초기화 하기 입력계층의 노드, 은닉 계층의 노드, 출력 계층의 노드의 수를 정해야 한다.이를 통해 신경망의 형태와 크기를 정의하게 되는 것이다. 신경망 내에 직접 정의하기보다는 신경망의 객체가 생성될 때 매개변수를 이용해 정의한다.그래야 다른 크기를 가지는 새로운 신경망도 때에 따라 손쉽게 생성할 수 있기 때문이다. 초기화에서 또 한가지 잊지 말아야 할 것은 학습률이다.학습률은 새로운 신경망을 만들 때 매우 중요한 매개변수이다. 1234567891011121314151617181920# 신경망 클래스의 정의class neuralNetwork: # 신경망 초기화 def __init__(self, inputnodes, hiddennodes, outputnodes, learningrate): # 입력,..

[신경망] 파이썬으로 인공 신경망 만들기 1

신경망은 적어도 다음 세가지 기능을 가져야 한다. 초기화 : 입력, 은닉, 출력 노드의 수 설정학습 : 학습 데이터들을 통해 학습하고 이에 따라 가중치를 업데이트질의 : 입력을 받아 연산한 후 출력 노드에서 답을 전달 물론 훨씬 더 많은 기능이 필요하지만 이정도로만 시작. 신경망 클래스의 형태 1234567891011121314# 신경망 클래스의 정의class neuralNetwork: # 신경망 초기화 def __init__(): pass # 신경망 학습 def train(): pass # 신경망에 질의 def query(): passcs