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

  • 맑음구미7.5℃
  • 구름조금경주시6.7℃
  • 구름많음울산10.9℃
  • 맑음북춘천3.1℃
  • 구름조금철원6.6℃
  • 맑음광주11.1℃
  • 맑음청주10.3℃
  • 맑음순천4.5℃
  • 맑음북강릉11.4℃
  • 맑음봉화0.7℃
  • 맑음청송군2.7℃
  • 맑음보령7.0℃
  • 맑음여수12.5℃
  • 맑음정선군3.4℃
  • 맑음장흥6.0℃
  • 맑음순창군6.6℃
  • 맑음대관령5.0℃
  • 맑음영덕8.1℃
  • 맑음동두천7.1℃
  • 구름많음서귀포15.4℃
  • 맑음수원8.0℃
  • 맑음의성3.6℃
  • 맑음영주3.4℃
  • 맑음흑산도12.8℃
  • 맑음서울10.2℃
  • 맑음남해9.8℃
  • 구름많음제주14.9℃
  • 맑음문경8.4℃
  • 맑음군산9.4℃
  • 맑음충주6.5℃
  • 맑음목포12.7℃
  • 맑음속초11.1℃
  • 맑음영광군8.6℃
  • 맑음영월5.9℃
  • 맑음임실6.5℃
  • 맑음세종9.2℃
  • 구름조금밀양7.1℃
  • 맑음추풍령7.4℃
  • 구름많음성산11.3℃
  • 구름많음북창원12.3℃
  • 맑음진주7.2℃
  • 맑음의령군5.6℃
  • 맑음천안6.0℃
  • 맑음이천8.9℃
  • 맑음홍성9.3℃
  • 구름많음창원12.0℃
  • 맑음울릉도13.3℃
  • 맑음홍천5.0℃
  • 맑음인제4.2℃
  • 맑음상주10.6℃
  • 맑음정읍8.5℃
  • 구름조금포항10.1℃
  • 맑음강릉11.3℃
  • 맑음완도12.9℃
  • 맑음보성군8.5℃
  • 맑음파주6.5℃
  • 맑음대전10.4℃
  • 맑음안동6.6℃
  • 맑음부여6.8℃
  • 맑음서산6.4℃
  • 맑음백령도10.3℃
  • 맑음합천7.5℃
  • 맑음진도군8.8℃
  • 구름조금고흥7.8℃
  • 맑음대구8.2℃
  • 맑음거창4.8℃
  • 구름많음양산시9.3℃
  • 구름많음북부산9.5℃
  • 맑음서청주5.5℃
  • 맑음부안10.3℃
  • 맑음인천10.7℃
  • 맑음보은4.3℃
  • 구름많음부산13.9℃
  • 구름많음고산15.6℃
  • 구름많음김해시12.2℃
  • 맑음원주9.9℃
  • 맑음영천5.6℃
  • 맑음강진군8.6℃
  • 맑음제천3.1℃
  • 맑음장수4.0℃
  • 맑음전주9.8℃
  • 맑음광양시10.8℃
  • 맑음울진7.6℃
  • 맑음양평6.9℃
  • 맑음해남8.2℃
  • 맑음남원7.4℃
  • 구름조금강화7.7℃
  • 맑음산청6.8℃
  • 구름조금통영14.1℃
  • 맑음함양군5.3℃
  • 맑음고창7.7℃
  • 맑음금산7.5℃
  • 맑음동해9.2℃
  • 맑음태백4.2℃
  • 구름많음거제12.9℃
  • 맑음춘천3.8℃
  • 맑음고창군8.3℃
  • 2025.11.25 (화)

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