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

  • 맑음대관령1.6℃
  • 맑음울진9.3℃
  • 맑음상주8.8℃
  • 구름많음원주5.3℃
  • 맑음의령군11.5℃
  • 맑음고산11.7℃
  • 맑음정선군4.5℃
  • 맑음고창4.1℃
  • 맑음울산11.8℃
  • 맑음부안4.9℃
  • 맑음임실5.4℃
  • 맑음북춘천-2.3℃
  • 맑음동두천3.2℃
  • 맑음문경7.3℃
  • 맑음포항12.9℃
  • 맑음청주6.5℃
  • 맑음제주11.6℃
  • 맑음백령도2.2℃
  • 맑음강화2.6℃
  • 맑음대구11.5℃
  • 맑음남해12.7℃
  • 맑음북부산10.7℃
  • 맑음영월5.3℃
  • 맑음의성8.1℃
  • 맑음순창군7.0℃
  • 맑음성산11.2℃
  • 맑음철원3.2℃
  • 맑음제천4.8℃
  • 맑음순천9.0℃
  • 맑음부산13.2℃
  • 맑음영천10.3℃
  • 맑음보령3.0℃
  • 맑음보성군9.8℃
  • 맑음영주7.1℃
  • 맑음김해시13.7℃
  • 맑음광양시11.2℃
  • 맑음청송군8.8℃
  • 맑음거제13.2℃
  • 맑음강릉9.2℃
  • 맑음강진군7.8℃
  • 맑음해남7.2℃
  • 맑음태백3.5℃
  • 맑음인천2.7℃
  • 맑음충주1.2℃
  • 맑음천안4.5℃
  • 맑음이천4.6℃
  • 맑음세종5.9℃
  • 맑음부여2.9℃
  • 맑음홍천1.0℃
  • 맑음진도군7.0℃
  • 맑음금산6.0℃
  • 맑음흑산도6.9℃
  • 맑음북강릉4.6℃
  • 맑음경주시11.4℃
  • 맑음여수11.7℃
  • 맑음북창원12.0℃
  • 맑음대전6.4℃
  • 맑음서청주3.5℃
  • 맑음정읍5.4℃
  • 맑음광주7.2℃
  • 맑음인제4.3℃
  • 맑음창원12.6℃
  • 맑음합천8.9℃
  • 맑음홍성4.8℃
  • 맑음안동7.6℃
  • 맑음고창군3.7℃
  • 맑음영광군4.7℃
  • 맑음영덕10.3℃
  • 맑음장흥6.8℃
  • 맑음파주0.5℃
  • 맑음보은4.5℃
  • 맑음울릉도8.0℃
  • 맑음양평5.9℃
  • 맑음춘천-1.4℃
  • 맑음봉화1.0℃
  • 맑음속초8.4℃
  • 맑음양산시11.8℃
  • 맑음완도8.5℃
  • 맑음통영12.0℃
  • 맑음밀양12.9℃
  • 맑음서울4.3℃
  • 맑음고흥9.2℃
  • 맑음동해9.3℃
  • 맑음함양군9.1℃
  • 맑음거창7.4℃
  • 맑음추풍령7.6℃
  • 맑음구미8.6℃
  • 맑음수원2.9℃
  • 맑음서귀포12.2℃
  • 맑음진주8.5℃
  • 맑음서산1.6℃
  • 맑음산청10.1℃
  • 맑음목포5.7℃
  • 맑음남원6.1℃
  • 맑음장수4.5℃
  • 맑음군산4.3℃
  • 맑음전주5.7℃
  • 2026.01.15 (목)

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