AIㆍML / 오픈소스

AI·ML 개발자에게 유용한 오픈소스 프로젝트 13선

Peter Wayner | InfoWorld 2022.09.30
딥페이크(Deepface)부터 자연어 처리(NLP)까지 오픈소스 세계가 AI 및 ML의 최전선에서 소프트웨어 개발을 지원하는 프로젝트로 무르익고 있다. 

오픈소스는 특히 AI 및 ML과 같은 최첨단 영역에서 혁신적인 소프트웨어를 개발하기 위한 좋은 토대다. 오픈소스 정신과 협업 도구를 활용하면 코드 및 데이터를 더 쉽게 공유하고, 이미 구축된 기반을 바탕으로 더 쉽게 개발할 수 있다. 여기서는 AI와 ML 세계를 구성하고 있는 13개의 오픈소스 프로젝트를 살펴본다. 
 
ⓒ Getty Images Bank


텐서플로우와 파이토치

텐서플로우(TensorFlow)와 파이토치(PyTorch)가 없다면 AI/ML용 오픈소스 도구 목록이 완성되지 않을 것이다. 이 OG 프레임워크는 별도로 혹은 함께 실험적이고 중요한 머신러닝 및 인공지능 연구를 지원한다. 실제로 아래 언급될 프로젝트 중 일부는 이를 기본 구성 요소로 사용 중이다.
 

폭스파일럿

코딩 시 도움이 필요한 프로그래머라면 ‘폭스파일럿(FauxPilot)’을 사용할 수 있다. 이 시스템은 기존의 프로덕션 코드를 학습해 구조화된 주석과 제안을 생성한다. 깃허브 코파일럿(GitHub Copilot)에서 영감을 얻었으나, 코파일럿과 달리 폭스파일럿을 사용하면 모델 학습에 쓸 리포지토리를 선택할 수 있다. 이러한 제어 계층은 학습을 승인하지 않을 수 있는 소스의 코드 조각 사용을 막는다. 학습 소스를 적절한 사용 권한 및 라이선스가 있는 소스로만 제한하면 활용하는 코딩 도움말과 스니펫이 간결해질 뿐만 아니라 더 신뢰할 수 있게 된다.
 

달리

머신러닝 모델이 ‘사고(think)’하는 방식을 이해하는 가장 쉬운 방법은 인터넷에서 수집한 이미지와 텍스트 설명으로 구성된 모델 ‘달리(DALL-E)’에 단어를 연결하는 것이다. 입력한 단어와 출력된 이미지는 달리가 일치한다고 생각하는 것이다. 달리 플레이그라운드(DALL-E Playground) 및 달리 미니(DALL-E Mini) 등의 오픈소스 프로젝트를 활용하면 이 모델을 더 쉽게 실험할 수 있다. 이는 게임이라고 할 수도 있고, 한편으로는 AI 알고리즘의 마음속으로 들어가는 포털이라고도 할 수 있다(현재는 전작보다 업그레이드된 ‘달리2(DALL-E 2)’가 공개된 상태다).
 

욜로v7

실시간으로 객체를 탐지하는 것 또는 이미지에서 객체를 찾는 것은 AI에게 쉽지 않은 일이다. 또 이는 주변 정보를 정확하게 수집하고 전달해야 하는 자율주행차, 로봇, 보조 장치 등의 분야에서도 중요하다. ‘욜로v7(YOLOv7)’은 가장 빠르고 정확한 오픈소스 객체 탐지 도구 중 하나다. 이 도구에 여러 객체로 가득 찬 이미지 컬렉션을 넣고, 어떤 일이 일어나는지 확인하라.
 

딥페이스랩

딥페이크는 딥러닝을 기반으로 생성, 변경, 합성되는 비디오 및 이미지다. 가장 잘 알려진 예로는 실제 비디오나 이미지를 유명인이나 정치인의 얼굴로 바꾸는 것인데, 보통은 웃음을 유발할 목적으로 쓰지만 때로는 악의적인 목적(범죄)으로 쓰이기도 한다. ‘딥페이스랩(DeepFaceLab)’은 파이썬에서 실행되는 오픈소스 딥페이크 기술이다. 한 얼굴을 다른 얼굴로 바꾸는 것 외에 주름 등을 제거하는 데도 활용할 수 있다.


패들NLP

자연어 처리 엔진은 신경망 탐색 및 감정 분석을 수행해 정보를 추출하여 인간 및 기계 사용자에게 제공한다. 이 기술은 가끔 어설플 때도 있지만 다양한 애플리케이션과 도메인에서 사용할 수 있을 정도로 정교해지고 있다(예: 알렉사(Alexa)). ‘패들NLP(PaddleNLP)’는 이를 위한 인기 있는 오픈소스 NLP 라이브러리다.
 

마인드DB

성공적인 AI 구축을 위한 기존의 방식은 데이터를 데이터베이스에 저장한 다음 추출해 별도의 머신러닝 알고리즘으로 보내는 것이었다. ‘마인드DB(MindsDB)’는 머신러닝 알고리즘을 데이터베이스에 직접 통합하는 SQL 서버다. 데이터베이스 내 머신러닝 또는 이미 저장된 데이터 분석은 머신러닝의 워크플로우 속도를 높이는 빠르고 효율적인 방법이다.


ISR

ISR(Image Super-Resolution)은 이미지 해상도를 높여 더 많은 정보를 추가할 수 있는 도구다. 이 오픈소스 도구는 저해상도 이미지의 세부 사항을 추측하도록 학습시킬 수 있는 머신러닝 모델을 사용한다. 적절한 학습 세트를 활용하면 해당 모델이 정확한 세부 정보와 더욱더 선명한 이미지를 생성할 수 있다.


딥파블로프

많은 기업이 고객 서비스의 최전선을 챗봇으로 대체하고 있으며, 이는 기계가 대화하는 법을 배우고 있다는 것을 의미한다. ‘딥파블로프(DeepPavlov)’는 텐서플로우, 케라스, 파이토치 등 기본 머신러닝 도구를 결합하여 학습할 수 있는 챗봇을 만든다. 그 결과가 이상할 때도 있지만 제대로 학습시킨다면 유용하다.


블렌더(Blender)

3차원 모델을 풍부하게 렌더링된 장면으로 변환하는 가장 좋은 방법은 ‘블렌더(Blender)’를 사용하는 것이다. 많은 사람이 이를 영화 제작자와 애니메이터를 위한 도구로 생각하지만 블렌더는 AI 응용의 좋은 예이기도 하다. 풍부한 인터페이스와 수많은 플러그인을 통해 복잡한 모션 그래픽이나 영화 같은 장면을 만들 수 있다. 약간의 창의력만 있다면 오스카 후보에 지명될지도 모른다. AI는 자기 몫의 크레딧을 요구하지도 않을 것이다.


오픈CV

‘오픈CV(OpenCV)’는 머신 비전(machine vision) 탐구를 위한 오픈소스 컴퓨터 비전 라이브러리다. 여기에는 디지털 이미지에서 객체를 식별하기 위한 많은 인기 있는 알고리즘과 특수 루틴(예: 자동차의 번호판을 발견하고 읽을 수 있는 등)이 포함된다.
 

로보코드(Robocode)

‘로보코드(Robocode)’는 알고리즘판 헝거게임(서바이벌 게임)과 같다. 자바를 기반으로 프로그래밍하는 이 ‘게임’을 통해 (사용자는) 지배권을 두고 탱크를 활용해 전투를 펼친다. 이는 재미있는 게임이며, 자율주행차 전략을 테스트하는 도구로도 유용하다. ciokr@idg.co.kr
 

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.