CWN(CHANGE WITH NEWS) - IBM, AI의 프로그램 코드 작성 개발 과정 담은 논문 게재

  • 구름많음영덕-1.0℃
  • 맑음홍성-4.4℃
  • 맑음김해시-0.6℃
  • 맑음진주-5.7℃
  • 구름많음영광군1.8℃
  • 구름조금목포2.4℃
  • 맑음동해-1.0℃
  • 맑음여수0.8℃
  • 흐림원주-3.6℃
  • 맑음서울-6.2℃
  • 맑음인제-5.9℃
  • 흐림구미-0.2℃
  • 맑음제천-4.1℃
  • 구름조금서귀포5.3℃
  • 흐림문경-1.8℃
  • 구름많음서청주-3.4℃
  • 흐림정읍-0.6℃
  • 흐림고창군-2.8℃
  • 구름조금순천-0.9℃
  • 맑음북창원-0.2℃
  • 구름조금포항-1.5℃
  • 맑음합천-4.3℃
  • 맑음창원-1.0℃
  • 맑음속초-2.4℃
  • 맑음홍천-5.5℃
  • 안개광주-1.1℃
  • 흐림의성-7.1℃
  • 맑음광양시-0.2℃
  • 맑음동두천-7.4℃
  • 흐림임실-2.7℃
  • 흐림세종-2.9℃
  • 흐림금산-1.0℃
  • 구름조금대구-4.3℃
  • 눈전주-0.9℃
  • 맑음양산시0.8℃
  • 흐림보은-1.7℃
  • 구름많음부여-2.0℃
  • 눈대전-1.8℃
  • 구름많음함양군0.6℃
  • 맑음춘천-6.9℃
  • 구름조금순창군-2.4℃
  • 맑음강화-7.0℃
  • 맑음남해2.0℃
  • 맑음의령군-6.8℃
  • 맑음부산0.5℃
  • 구름많음제주6.4℃
  • 맑음밀양-6.5℃
  • 구름많음청송군-3.5℃
  • 맑음백령도-3.6℃
  • 맑음경주시-7.9℃
  • 흐림정선군-4.7℃
  • 흐림영월-5.8℃
  • 구름많음강진군2.5℃
  • 구름조금울진-2.0℃
  • 맑음보성군-0.5℃
  • 흐림추풍령-2.3℃
  • 눈울릉도0.0℃
  • 구름조금충주-3.5℃
  • 맑음이천-4.9℃
  • 맑음고흥0.0℃
  • 구름많음남원-3.1℃
  • 구름많음거창0.1℃
  • 구름조금보령-3.0℃
  • 흐림고산6.3℃
  • 구름조금군산-1.4℃
  • 맑음파주-9.9℃
  • 구름많음진도군3.6℃
  • 구름많음영주-2.1℃
  • 맑음인천-6.4℃
  • 구름조금영천-3.1℃
  • 맑음북춘천-6.0℃
  • 구름조금태백-6.3℃
  • 맑음완도3.2℃
  • 흐림상주-1.5℃
  • 맑음천안-3.9℃
  • 구름많음장흥-2.4℃
  • 맑음북부산-4.2℃
  • 맑음수원-6.4℃
  • 구름많음흑산도3.1℃
  • 맑음서산-4.8℃
  • 구름많음해남1.9℃
  • 구름많음봉화-3.6℃
  • 눈안동-5.1℃
  • 구름조금청주-2.9℃
  • 맑음대관령-9.0℃
  • 구름많음고창-1.2℃
  • 맑음철원-10.8℃
  • 맑음산청1.0℃
  • 흐림부안0.6℃
  • 맑음강릉-1.3℃
  • 맑음양평-5.1℃
  • 맑음북강릉-4.5℃
  • 맑음통영1.8℃
  • 맑음거제1.9℃
  • 흐림장수-2.2℃
  • 구름많음성산4.9℃
  • 맑음울산-3.9℃
  • 2026.01.24 (토)

IBM, AI의 프로그램 코드 작성 개발 과정 담은 논문 게재

고다솔 / 기사승인 : 2021-05-20 11:30:36
  • -
  • +
  • 인쇄

인공지능(AI)이 발전을 거듭하면서 일각에서는 인간의 일을 빼앗길 것을 우려한다. 실제로 공장과 물류 창고를 중심으로 AI가 인간 노동력을 대체하는 가운데, 개발자도 AI에게 밀릴 것이라는 전망이 제기됐다. 프로그램 코드를 작성하는 AI 프로그램이 등장했기 때문이다.

또, 많은 기업이 프로그램 코드 작성 능력을 지닌 AI 프로그램 개발에 나서고 있다. 그 대표적인 기업 중 한 곳은 IBM이다. 해외 온라인 테크 매체 테크톡스에 따르면, 최근 IBM은 '프로젝트 코드넷(Project CodeNet)'을 통해 코드 작성 능력을 갖춘 AI 프로그램에 대해 설명했다.

AI가 코드를 작성하기까지의 과정
2010년대 초, 머신러닝 기술의 발달과 함께 갈수록 많은 사람이 인간 대신 AI가 프로그램 코드를 작성할 것으로 기대했다. 이에, IBM은 프로젝트 코드넷을 진행하면서 프로그램 코드 작성을 비롯한 여러 업무를 할 머신러닝 모델 훈련을 시작했다.

IBM 엔지니어팀은 복잡한 소프트웨어 엔지니어링과 데이터 엔지니어링 과정을 거쳐 데이터세트를 신중하게 선택하고는 완성도가 높은 코드 작성 툴을 개발했다.

IBM이 훈련에 사용한 데이터세트에는 55가지 프로그래밍 언어로 작성된 총 5억 줄의 코드로 구성된 1,400만 개의 코드 샘플이 포함됐다. 모두 온라인 코딩 플랫폼 AIZU와 앳코더(AtCoder)로 확보했으며, 간혹 틀린 코드도 존재한다.

코드넷에서 주목할 만한 한 가지 핵심 사항은 훈련에 사용한 데이터세트에 다양한 사례에 다량의 주석이 추가됐다는 점이다. 훈련에 사용한 데이터세트에 존재하는 코딩 과정에서 발생하는 여러 문제는 CPU 시간 및 메모리 제한과 함께 텍스트 설명이 포함됐다. 제출된 모든 코드에는 프로그래밍 언어와 제출된 데이터, 데이터 크기, 실행 시간, 에러 유형 등 총 10여 가지 정보가 있다.

또, IBM 연구팀은 데이터세트가 프로그래밍 여러 차원에서 균형을 이루었음을 확인했다.

IBM의 머신러닝, 어떤 능력 갖추었나?
코드넷은 단순히 프로그래밍 작업을 위한 머신러닝 모델만 보유하고 있는 것이 아니다. 다양한 언어와 함께 다량의 샘플을 지녔다. 특히, 주석이 다양하게 추가되면서 다양한 작업을 수행하기 적합하도록 머신러닝을 훈련했다. 이러한 점에서 연구팀은 정확한 프로그램 코드를 작성하리라 기대했다.

우선, 연구팀은 코드넷 말뭉치 머신러닝 모델 훈련이 수월하게 이루어지도록 하는 사전 처리 툴을 개발했다. 다른 프로그래밍 언어와 구문 트리, 그래프 신경망을 위한 그래프 표현식 생성기 등이 포함됐다.

이후, 코드넷의 프로그래밍 작업을 담당하는 머신러닝은 기존의 다른 AI 프로그램과 다른 특징을 지니도록 훈련 과정을 거쳤다. 여기서 가장 눈에 띄는 점은 프로그래밍 언어 전환을 할 수 있다는 점이다. 연구팀은 각각의 데이터세트에 존재하는 코딩 문제에 다양한 언어로 구성된 데이터가 포함됐다는 점이 포함된 사실을 고려해, 프로그래밍 언어 변환이 가능하도록 머신러닝을 개발했다. 이 덕분에 누구나 오래된 프로그래밍 언어로 작성된 코드를 삽입하면, 자동으로 최신 버전의 언어나 다른 언어로 변환하고는 편리하게 개발 툴 관리, 유지를 할 수 있다.

머신러닝 모델이 코드 추천을 한다는 점도 눈에 띈다. 코드 추천 툴은 작업 중인 코드 라인이 더 복잡한 시스템과 함께 작업을 완료하도록 하는 것만큼 매우 간단하게 코드 작성 작업을 완료하도록 도움을 준다.

[저작권자ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]

최신기사

뉴스댓글 >

- 띄어 쓰기를 포함하여 250자 이내로 써주세요.
- 건전한 토론문화를 위해, 타인에게 불쾌감을 주는 욕설/비방/허위/명예훼손/도배 등의 댓글은 표시가 제한됩니다.

댓글 0

Today

Hot Issue