반응형

포트란은 IBM이 개발한 고급 프로그래밍 언어로 주로 과학 계산용으로 쓴다.  요즘은 인공지능 프로그래밍에 가장 많이 쓰는 언어는 '파이선(Python)'이다. 이러한 컴퓨터 프로그래밍 언어는 인간과 컴퓨터 사이의 소통과 번역 수단이다. 컴퓨터는 인간의 언어를 이해하지 못하고, 단지 2진수로 표현한 기계어(Machine Code)만을 읽을 수 있기 때문이다.


이렇게 인간의 생각과 계획을 컴퓨터가 이해하는 언어로 정확하고 효율적으로 변환하고 컴퓨터에 입력하는 작업을 '코딩'이라고 부른다. 코딩을 효율적이고 경제적으로 하려면 프로그래밍 언어, 컴퓨터 구조, 데이터 구조, 메모리 계층, 나아가 구현하려는 알고리즘도 정확하고 깊이 있게 이해해야 한다. 이처럼 고도의 전문적 지식과 경험이 필요한 컴퓨터 코딩 작업도 이제는 인공지능인 챗 GPT가 하기 시작했다. 더욱 놀랍게도 '인공지능인 챗 GPT'가 '인공지능 프로그램의 코딩'도 인간을 대신해서 직접 할 수 있게 되었다.

챗 GPT는 오픈 AI가 개발한 자연어를 기반으로 하는 대화형 인공지능이다. 대화, 작문, 번역과 검색 기능이 있다. 여기서 GPT는 'Generative Pre-trained Transformer Model'의 약자다. 약자 GPT에서 알 수 있듯이 차별화되는 중요한 특징이 세 가지 있다. 제일 먼저 기존 인공지능 모델과 달리 텍스트 속의 문자와 문장뿐 아니라 문단의 '맥락(Context)'까지도 학습한다. 예를 들어 각 단어 사이의 관계 중요도를 파악해서 서로 연결하는 맥락 연결망(Attention Network)을 갖췄다. 연결망은 책의 첫 단어부터 마지막 단어까지 전체 맥락을 서로 연결한다.

이러한 구조의 인공지능망을 '변환 모델(Transformer Model)'이라고도 부른다. 이러한 맥락 학습을 위해서 백과사전 책 한 권을 통째로 읽고, 맥락을 학습하고 기억한다. 나아가 인터넷, 도서관뿐 아니라 인류 전체의 문서와 책을 모두 학습할 수 있다. 영어로 된 책뿐만 아니라 한글로 된 책도 읽고 학습한다. 이러한 과정을 거쳐 인공지능은 문해력(文解力)을 갖는다. 다음 특징으로 챗 GPT는 '사전 학습(Pre-training)'을 한다. 다시 말해서 예습을 최대한 많이 하는 인공지능이다. 미리 책을 많이 읽어 대부분의 주제에 대해서는 사전에 파악하려 한다. 그래서 웬만한 질문에는 바로 대답할 수 있다.

마지막으로 챗 GPT의 중요한 기능은 창작을 위한 '생성(Generative) 능력'이다. 학습 과정에서 책이나 문서 속 한 단어, 한 문장, 혹은 한 문단을 비워 놓고, 그 속을 채워 넣는 연습을 끝없이 한다. 일종의 글 채우기 게임을 하는 것이다. 잘 채워 넣으면 높은 점수로 보상을 준다. 수많은 작문 연습을 하다 보면 결국 창작 능력까지 생기게 된다. 그리고 인간의 평가도 받고 보상 점수도 받는다. 한발 더 나아가 챗 GPT는 자기들끼리 게임하듯 학습한다. 서로 문답(問答)하고, 서로 평가하고, 그리고 보상하면서 학습하고 성장한다. 알파고에서 사용하던 강화 학습 방법이다. 이러한 방식의 창작 인공지능 모델을 '생성 인공지능망'이라 부른다. 오픈 AI가 다음으로 출시할 것으로 예상되는 GPT-n은 문장 외에도 영상, 비디오, 음악 등 다양한 형식의 생성 기능을 가진 다중 모드(Multi-modal) 인공지능 모델이 될 것으로 전망한다.

이제 챗 GPT의 생성 능력은 컴퓨터 프로그래밍 코딩 능력에까지 이르렀다. 인간이 대화를 통해 요구 조건을 입력하면 인간을 대신해서 직접 코딩한다. 이에 더해서 자신이 생성한 코드가 어떻게 작동하는지 원리를 인간에게 설명해 줄 수도 있다. 또한 인간이 작성한 코드를 분석해서 실수를 고쳐주는 디버깅 작업도 할 수 있다. 그리고 기존 코드를 다른 프로그래밍 언어로 변환도 해 줄 수 있다.

챗 GPT에 간단한 코딩 과제로 수학 '사칙연산'과 '피보나치수열' 코딩을 요구해 보았다. 챗 GPT가 쉽게 코딩 숙제를 해 내는 것을 확인했다. 파이선, C, 자바(Java) 언어뿐 아니라 시스템 반도체 설계에 사용하는 언어인 베릴로그(Verilog)로도 코딩을 해냈다. 나아가 챗 GPT는 인공지능 코딩 과제도 수행해 냈다. 인간이 대화로 요구한 심층 인공 신경망 DNN (Deep Neural Network) 코딩 과제도 파이선으로 직접 작성했다. 설명문도 첨부했다. 여기에 더해 바둑 인공지능 알파고에 사용되었던 강화 학습도 파이선으로 구현하고 설명했다. 현재 챗 GPT의 코딩 실력은 대학 2~3학년 수준은 된다고 생각한다. 하지만 조금 먼 미래에는 인공지능이 자신 스스로를 구동하는 인공지능 프로그램의 코딩마저도 인간 손을 떠나 스스로 작성할 수도 있다.

인간의 윤리(倫理)를 선택된 데이터를 통해서 인공지능에 학습시키기 전까지는 인공지능 스스로가 윤리적일 수는 없다. 따라서 인간은 인공지능을 직접 제어하거나 통제할 수 있어야 한다. 인간이 인공지능 코딩을 할 수 있는 능력을 선제적으로 배우는 것은 그런 측면에서 큰 도움이 될 수 있다. 인공지능에 지나치게 종속되거나 지배되지 않고, 인간 생활을 더욱 풍요롭게 하는 도구로 활용하는 장밋빛 미래를 위해서라도 인공지능 문맹(文盲)을 최소화하는 방안을 강구해야 한다. 언어를 자연스레 배우듯 일찍부터 자연스럽게 코딩 학습을 접할 수 있는 환경 조성이 필요한 이유다.

 

출처: 조선일보

반응형

'IT' 카테고리의 다른 글

지문으로 도장 대신 지장  (2) 2023.11.01
'7나노 반도체' 첨단설비 극자외선 장비  (0) 2023.03.05
겨자(Mustard)  (0) 2023.01.08
가문비나무  (1) 2022.12.25
클라우드 cloud 인터넷에 있는 저장 공간  (0) 2022.12.22

+ Recent posts