본문바로가기
[인공지능, 수학으로 타파] 네트워크로 신경망 구성하기
수학동아 2021.04.01 15:12

 

 

Mathematics for AI #12

네트워크로 신경망 구성하기

 

 

 

 

*출제자의 한 마디*

 

저번 시간에는 함수를 통해 인공 신경망을 구성하는 방법에 대하여 간단히 살펴보았습니다. 신경계의 기본 단위인 뉴런이, 어떠한 입력값에 대하여 출력값을 나타내는지를 수학적으로 표현한 함수로 나타낸 다음, 행렬의 곱을 통해서 복잡하게 구성된 인공 신경망의 결괏값을 어떻게 하면 쉽게 구할 수 있는지를 알 수 있었습니다.

 

이번 시간에는 네트워크를 통해 신경망을 표현하는 방법에 대하여 간단히 살펴봅시다.

 

 

 

--------------

 

 

네트워크로 신경망 구성하기 

 

신경계의 기본 단위인 뉴런의 작동 원리를 이용해 만든 인공신경망에서는 인공 뉴런이 입력 신호를 처리합니다. 인공 뉴런으로 구성된 층은 입력층과 중간층, 그리고 출력층으로 이뤄져 있습니다. 각 층은 한 층으로만 이뤄진 것이 아니라 경우에 따라 여러 개의 층으로 구성됩니다.

 

각 인공 뉴런은 함수처럼 작용하며 입력된 신호를 미리 부여한 가중치로 계산한 값이 임계 값을 넘으면 결과를 다른 층에 있는 인공 뉴런으로 전달합니다. 이 같은 인공 뉴런 사이의 관계는 각 인공 뉴런을 점으로 표현한 후 방향과 가중치가 있는 선으로 연결해 쉽게 나타낼 수 있습니다. 그래서 인공 뉴런을 연결점을 뜻하는 ‘노드’라고도 부릅니다.

 

 

                                                 

 

수많은 노드가 서로 연결된 모양이 마치 고기를 잡을 때 쓰는 그물과 비슷하죠. 여러 요소 사이의 연결 관계를 나타내는 ‘네트워크’라는 말은 실제로 그물을 뜻하는 영어 단어인 ‘net’에서 유래했습니다. 노드 사이의 관계도 마찬가지로 네트워크인데요, 네트워크는 인공신경망의 중요한 구성요소입니다.

 

네트워크는 다양한 대상 사이의 관계를 수학적으로 나타내는 ‘그래프 이론’에서 시작됐습니다. 여기서 그래프란 학교에서 배우는 막대 그래프나 함수의 그래프처럼 어떤 값의 변화를 표현한 그래프가 아니라 점(노드)과 선(링크)으로 나타낸 수학적인 구조입니다. 그래프 이론을 연구하는 수학자들은 그래프가 가지는 구조의 특성을 연구하며 다양한 현상을 분석합니다.

 

 

 

그래프에 연결 관계의 방향과 영향력을 표현하기도 합니다. 관계의 방향을 나타낼 때는 화살표를 사용하는데, 인공신경망처럼 화살표로 연결해 방향성을 갖는 그래프를 ‘유향 그래프’라고 합니다. 이때 연결 관계에 있는 요소가 서로 얼마큼의 영향력을 미치는지 나타낼 때는 가중치를 화살표 위에 씁니다.

 

가중치와 방향을 동시에 가지는 유향 그래프는 ‘가중 그래프’라고 부릅니다. 응용수학에서는 이것을 네트워크라고 표현하기도 합니다. 이제 인공신경망에서 인공 뉴런 사이의 관계가 네트워크라는 것을 잘 알겠죠?

 

 

 

 

                                          --------------

 

문제

A, B, C 세 개의 노드가 있다. 노드 A에서 노드 C로 갈 때의 가중치는 0.37, 노드 B에서 노드 C로 갈 때의 가중치는 0.63인 유향 그래프로 나타나는 가중 그래프를 코딩으로 그려보자.

 

 

 

 

 

 

 

 

풀이에 필요한 SageMath 코딩 명령어

 

 

nodes = [('A','C', 0.37), ('B','C', 0.63)]

노드 AC, BC를 연결하고 가중치를 설정한다.

 

 

G = DiGraph(nodes, weighted = True)

앞에서 정의한 방향과 가중치를 갖는 가중 그래프 G를 만든다.

 

 

G.show(edge_labels = True)

그래프 G를 그림으로 출력한다. ‘edge_labels = True’를 추가해 가중치도 같이 표시한다.

 

 

 

 

-끝-

 

 

첫 댓글의 주인공이 되어 보세요!
  • 폴리매스 문제는 2019년도 정부의 재원으로 한국과학창의재단의 지원을 받아 수행된 성과물입니다.

  • ☎문의 02-6749-3911