인공지능(AI) 전문 매체 싱크드에 따르면, 구글 브레인 팀(Google Brain Team)이 자동화 머신러닝(AutoML, 이하 '오토ML')의 새로운 프로그래밍 방법을 제안했다. 기호 프로그래밍(symbolic programming)을 기반으로 한다.
오토ML 발전의 문제
신경망 네트워크 구조가 갈수록 복잡해지면서 적합한 작업을 찾는 데 오랜 시간이 걸린다는 문제가 있다. 이에, 구글이 신경 구조망 탐색(NAS) 솔루션을 위해 오토ML이라는 용어를 만들어냈다.
신경 구조망 탐색과 함께 구글은 자동화 네트워크 하이퍼 변수(hyperparameter), 아키텍처 선택을 자동화하는 과정에서 머신러닝 연구 동향에 주목했다. 그러나 소프트웨어에 제약이 있어, 오토ML의 발전 속도가 더딘 상황이다.
인기 NAS 알고리즘은 오토ML 검색 공간과 검색 알고리즘을 결합하기 위한 구현이 필요하다. 또, 이러한 오토ML의 구성 요소 간 동적 상호작용을 처리하기 위한 복잡한 검색 흐름을 구현하는 것은 여전히 어려운 상황이다.
이에, 구글 브레인 팀 소속 연구원은 논문을 통해 오토ML이 지닌 문제의 잠재적인 해결책을 제기했다. 바로 오토ML의 프로그램 논리를 상징적인 방식으로 머신러닝 프로그램을 조작하기 위한 자동화된 프로세스로 재구성하는 것이다.

연구팀의 문제 접근 방식
연구팀의 오토ML을 위한 기호 프로그래밍 접근 방식은 나무 형태의 기호를 기반으로 표현을 조작한다. 이때, 머신러닝 프로그램의 중요한 요소를 코드로 변환한다. 그 결과, 머신러닝 프로그램은 변수를 지닐 수 있는 객체가 돼, 생성 후 복제와 수정을 할 수 있게 되었다.
위와 같은 방식으로 머신러닝 프로그램을 수정하면, 처음부터 개체를 반복해서 생성할 필요가 없다. 또, 기호 프로그래밍을 사용하면, 하위 프로그램과 검색 공간 및 검색 알고리즘 간의 상호작용이 더욱 유동성을 지니게 된다. 결과적으로 오토ML 프로그래밍이 한 단계 더 유연해지는 것이다.
연구팀은 이를 실험하기 위해 파이글러브(PyGlove)라는 파이썬용 일반 기호 프로그래밍 라이브러리를 적용했다. 파이글러브는 오토ML을 별다른 어려움 없이 머신러닝 파이프라인에 적용하도록 한다. 이 과정에서는 코드 몇 줄만 있으면, 검색 공간과 검색 알고리즘, 검색 흐름 등을 수정할 수 있다.
연구팀의 접근 방식은 검색 기반 프로그램 개발을 단순화하며, 의학 설계와 영상 감시와 같은 연구에도 도움이 될 수 있다고 말한다. 구글의 오토ML은 이미 개발자가 실용적인 용도로 효율적인 새로운 신경망을 설계하는 데 큰 도움을 주었다. 이번 구글 브레인 팀이 파이글러브와 기호 프로그래밍을 결합한 덕분에 오토ML이 생산성 향상에 도움을 주고, 머신러닝 실무자의 접근성도 향상할 것으로 기대된다.
[ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]