인간의 뇌 활동 패턴, 프로그래밍 AI 시스템과 놀랍도록 유사

문광주 기자 / 기사승인 : 2023-01-02 21:49:12
  • -
  • +
  • 인쇄
3;30" 읽기
- 컴퓨터 코드가 분석될 때 두 개의 뇌 회로가 활성화된다는 것이 밝혀져
- 전두엽과 두정엽 영역의 다중 요구 네트워크와 왼쪽 측두엽의 언어 센터가 모두 프로그래머의 뇌에서 켜졌다.
- 인간과 기계는 매우 유사한 활동 패턴과 신경 표현을 생성한다는 것이 밝혀져

프로그래머의 두뇌에 대한 새로운 시각
인간의 뇌 활동 패턴은 프로그래밍 AI 시스템과 놀랍도록 유사하다.


놀라울 정도로 유사하다. 프로그래머가 컴퓨터 스크립트를 분석하고 정신적으로 이해하면 뇌의 두 뇌 회로에서 매우 특정한 활동 패턴이 트리거된다. 한 실험에서 밝혀진 것처럼 이러한 패턴은 고려 중인 코드의 특성을 드러낼 뿐만 아니라 동일한 작업을 수행하는 인공 신경망에서 생성된 패턴과 매우 유사한다. 이것은 우리 뇌의 기본 기능에 대한 귀중한 통찰력을 제공한다.

▲ 프로그램 코드를 분석할 때 프로그래머의 뇌에서는 어떤 일이 일어날까? (출처: https://commons.wikimedia.org/wiki/File:Anatomy-1751201_1280.png)

알고리즘과 컴퓨터 프로그램은 우리 일상생활의 필수적인 부분이 되었다. 이러한 코드와 스크립트를 개발, 평가 및 디버그하는 사람들의 뇌에서는 어떤 일이 일어날까?
MIT(Massachusetts Institute of Technology)의 Shashank Srikant는 "오늘날 많은 사람이 프로그램 코드를 읽고, 쓰고, 개발하거나 디버깅함으로써 프로그램 코드와 상호작용하지만, 아무도 자신의 뇌에서 무슨 일이 일어나고 있는지 정확히 알지 못한다"고 말했다.

최근 몇 년 동안 그러한 스크립트를 읽고 이해할 때 프로그래머의 두뇌 활동에 대한 초기 연구가 있었지만 모순된 결과를 낳았다. 일부에서는 언어 센터가 주로 활성화되었고 다른 한편에서는 다중 요구 문제 해결, 논리 및 공간적 상상력을 담당하는 뇌 네트워크가 임무를 수행했다.

테스트 작업으로서의 Python 스크립트

이러한 불일치를 명확히 하기 위해 Srikant와 그의 동료들은 프로그래머의 두뇌를 면밀히 관찰했다. 그들은 프로그래밍 언어 Python으로 작성된 짧은 스크립트를 읽고 분석하는 동안 기능적 자기 공명 영상(fMRI)을 사용하여 24명의 피험자의 뇌 활동을 기록했다. 작업은 코드의 기능을 이해하고 출력 결과를 올바르게 예측하는 것이었다.

연구진은 이전 연구와 달리 뇌 활동 데이터를 통합하지 않고 피험자별로 결과를 개별적으로 분석했다. 그들은 또한 프로그래머가 스크립트의 특정 기능(예: 프로그램 루프, if 스위치 또는 단계별 지침)을 이해할 때 프로그래머의 뇌에서 일어나는 일을 보다 정확하게 분석했다. 코드의 복잡성, 변수 이름의 언어 및 기타 특성도 고려되었다.

“우리는 서로 다른 코드 기능이 서로 다른 뇌 영역에 인코딩되어 있을까? 그리고 뇌 활동 패턴에서 프로그래머가 무엇을 보고 있는지 추론할 수 있을까? 알고 싶었다”라고 Srikant는 말했다.

두뇌 회로의 협력

컴퓨터 코드가 분석될 때 두 개의 뇌 회로가 활성화된다는 것이 밝혀졌다. 전두엽과 두정엽 영역의 다중 요구 네트워크와 왼쪽 측두엽의 언어 센터가 모두 프로그래머의 뇌에서 켜졌다. 코드 변수의 이름이 어떤 언어로 지정되었는지는 중요하지 않다. 그러나 어떤 네트워크가 얼마나 강력하게 우세한지는 실험에서 밝혀진 것처럼 분석된 코드 유형에 따라 다르다.

"다중 수요 시스템은 언어 시스템보다 프로그램 스크립트의 동적 속성을 더 잘 해독한다"고 과학자들은 설명했다. 따라서 MD 네트워크는 프로그램의 가능한 런타임이나 필요한 단계 및 루프 패스와 같은 기능을 주로 처리한다. 따라서 이 뇌 회로는 프로그래머가 프로그램의 프로세스와 실행을 정신적으로 이해하는 데 도움이 된다. 반면에 언어 센터는 프로그램 스크립트의 구문에 연결된 더 많은 정적 기능을 평가한다.
▲ 개요. 이 작업의 목표는 코드의 뇌 표현을 (1) 특정 코드 속성 및 (2) 코드에서 훈련된 언어 모델에 의해 생성된 코드 표현. 실험 1, 뇌 MRI에서 다양한 정적 및 동적 분석 메트릭을 예측한다. 72개의 고유한 Python 프로그램(N)을 읽는 24명의 인간 피험자의 기록(차원 DB 각각) 각 주제 및 메트릭에 대해 별도의 선형 모델을 교육한다. 실험 2에서는 아핀 맵을 학습한다. 뇌 표현에서 코드 언어 모델에 의해 생성된 해당 표현까지(차원 DM의 각각) 이 72 프로그램에. (출처: 관련논문 Preprint / Convergent Representations of Computer Programs in Human and Artificial Neural Networks)

뇌에서 읽을 수 있는 코드 기능

이 두 두뇌 네트워크의 활동은 프로그래머가 현재 생각하고 있는 코드 블록의 유형을 결정하는 데에도 사용할 수 있다. "코드의 모든 핵심 기능은 이러한 뇌 시스템에서 읽을 수 있다"라고 팀은 보고했다. 테스트 담당자가 스크립트에서 루프를 검사하는지 아니면 스위치를 검사하는지 활동 패턴에서 확인할 수 있다. 그들의 두뇌는 또한 프로그램에 더 많은 수학적 기호나 단어가 포함되어 있는지, 프로그래머가 실제 코드를 읽는지 또는 알고리즘에 대한 구두 설명만 읽는지 알 수 있다.

이 결과는 프로그래머가 코드를 분석할 때 뇌에서 일어나는 일에 대한 더 깊은 통찰력을 제공할 뿐만 아니라 뇌가 작동하는 방식에 대한 전반적인 이해에도 도움이 된다. 신경과학자들이 특정 작업, 인상 및 행동이 뇌에서 어떻게 암호화되고 처리되는지를 보다 정확하게 분석할 수 있기 때문에 뇌의 질병, 부상 또는 발달 장애에서 무엇이 잘못되었는지 더 잘 이해할 수 있다.

"예를 들어, 우리의 작업은 스마트 보철물을 개선하는 데 도움이 될 수 있다"고 Srikant와 그의 동료는 설명했다. 그러한 뇌-컴퓨터 인터페이스조차도 특정 움직임과 행동의 신경 코딩을 가능한 한 정확하게 해독할 수 있는 능력에 의존하기 때문이다.

AI 모델은 매우 유사한 방식으로 프로그램 코드를 처리한다.

또 다른 흥미로운 점은 두 번째 실험 세트에서 연구원들은 다양한 인공 신경망이 인간 테스트 대상과 동일한 프로그램 코드를 읽고 평가하도록 했다. 인간과 기계는 매우 유사한 활동 패턴과 신경 표현을 생성한다는 것이 밝혀졌다. 인간 두뇌의 MD 시스템의 인코딩은 특히 인공 네트워크와 높은 일치를 보였다.

뇌와 AI가 분석한 프로그램 코드의 특성도 비슷한 패턴을 보였다. "기계 학습 모델이 동일한 코드 조각을 이해하려고 할 때 매우 유사한 패턴을 볼 수 있다." 이 현상은 또한 인간 두뇌의 프로세스를 더 잘 이해하는 데 도움이 될 수 있다.
(Neural Information Processing Systems Conference 2022, Preprint)
출처: 매사추세츠 공과대학(MIT)

[더사이언스플러스=문광주 기자]

[저작권자ⓒ the SCIENCE plus. 무단전재-재배포 금지]

  • 글자크기
  • +
  • -
  • 인쇄
뉴스댓글 >

주요기사

+

많이 본 기사

Basic Science

+

AI & Tech

+

Photos

+