행렬로 연결 관계 분석하기
인공신경망은 수많은 인공 뉴런이 복잡하게 연결된 구조입니다. 각 인공 뉴런을 노드라고 부르는 점으로 나타낸 뒤 방향과 가중치가 있는 선인 링크로 연결해 인공 뉴런 사이의 관계를 표현합니다. 노드와 링크로 이뤄진 인공신경망은 그물처럼 연결돼 ‘네트워크’를 구성하죠. 이를 시각적으로 아래 그림처럼 표현할 수 있습니다.
인공지능에서 데이터를 표현하는 데 사용하는 행렬은 네트워크를 수학적으로 다루는 그래프 이론에서도 사용합니다. 네트워크를 구성하는 점과 선의 수학적 구조를 행렬로 표현하면 복잡한 네트워크를 쉽게 다룰 수 있기 때문입니다. 아래에 어떤 네트워크와 그것을 표현한 행렬이 있습니다.
이 행렬에서 행에 있는 문자는 출발하는 노드, 열에 있는 문자는 도착하는 노드를 뜻합니다. 행렬 안의 숫자는 한 노드에서 다른 노드로 향할 수 있는지를 보여줍니다. 행에 있는 한 노드에서 링크를 이용해 열에 있는 특정 노드로 향할 수 있다면 1로, 링크로 연결돼 있지 않아 향할 수 없다면 0으로 표현합니다.
예를 들어, 네트워크에서 노드 a는 b와 d로 향할 수 있습니다. 이것을 나타내면 나타내면 행렬의 첫 번째 열에서 b와 d에 해당하는 두 번째와 네 번째 값은 1입니다은 1입니다. 이와 달리,이와 달리 노드 e는 다른 노드로 향하는 링크가 없으므로 다섯 번째 열의 값은 모두 0입니다.
행렬을 이용해 네트워크를 표현하고 연결 관계를 분석하는 일은 AI뿐 아니라 기존의 방식으로 처리하기 어려운 방대한 데이터인 빅데이터를 처리할 때 밀접하게 쓰이고쓰이고 있습니다. 미국 빅테크 기업 구글의 공동 창업자인 래리 페이지와 세르게이 브린은은 인터넷에 어떤 정보가 있는지를 파악하기 위한 구조를 수학적으로 연구하는 일에서 시작해 구글이라는 거대한 포털사이트를 개발하고 유지할 수 있었습니다.
문제 a, b, c 세 개의 노드가 서로 연결된 삼각형 모양의 네트워크를 행렬로 나타낸 후 그래프를 코딩으로 그려보자.
★ 폴리매스 홈페이지→[주니어 폴리매스]→[인공지능, 수학으로 타파]에서 자세한 내용을 확인하세요.