ControlNet 및 StarCoder: Generative AI를 위한 Roblox 연구 발전 - Roblox Blog

ControlNet 및 StarCoder: Generative AI를 위한 Roblox 연구 발전 – Roblox Blog

소스 노드 : 2864546

우리는 인공지능(AI)을 포함한 모든 분야에서 책임감 있고 커뮤니티에 참여하는 연구를 추구하는 데 전념하고 있습니다. 우리는 투명성, 외부 검증, 협력과 후원을 통한 교육 기관 지원을 통해 이를 달성합니다. 이러한 접근 방식을 통해 우리는 생성적 AI, 데이터 센터 확장 및 온라인 안전이라는 세 가지 중점 영역에서 가장 큰 발전을 가속화할 수 있습니다. 오늘 우리는 두 가지 생성 AI 연구 프로젝트의 통찰력과 결과를 공유하려고 합니다. 컨트롤넷 보다 정확한 이미지 출력을 위해 이미지 생성 모델에 조건부 제어를 추가하는 오픈 소스 신경망입니다. 스타코더 코드 생성을 위한 최첨단 오픈 소스 LLM(대형 언어 모델)입니다. 

두 프로젝트 모두 학계와 산업계의 협력입니다. 두 가지 모두 제작자인 3D 아티스트와 프로그래머를 위한 훨씬 더 강력한 도구에 중점을 두고 있습니다. 가장 중요한 것은 혁신적인 연구를 통해 장기적인 관점에 투자한다는 우리의 사명에 부합하는 이러한 프로젝트는 많은 응용 분야에서 AI에 대한 근본적인 과학적 이해 및 제어의 발전을 보여줍니다. 우리는 이 작업이 Roblox의 미래와 해당 분야 전체에 중대한 영향을 미칠 수 있다고 믿으며 이를 공개적으로 공유하게 된 것을 자랑스럽게 생각합니다.

컨트롤넷

최근의 AI 혁신, 특히 심층 신경망을 사용한 데이터 기반 기계 학습(ML) 방법은 제작 도구의 새로운 발전을 주도했습니다. 이러한 발전에는 다음이 포함됩니다. 코드 어시스트재료 생성기 무료 도구인 Roblox Studio에서 공개적으로 제공되는 기능입니다. 최신 생성 AI 시스템에는 수십억 건의 훈련 작업을 통해 정제된 모델이라는 데이터 구조가 포함되어 있습니다. 오늘날 가장 강력한 모델은 다중 모드입니다. 즉, 텍스트, 이미지, 오디오와 같은 미디어가 혼합되어 훈련된다는 의미입니다. 이를 통해 색상 팔레트나 철자와 같은 데이터 세트의 특정 요소에 과적합하는 대신 미디어 전반에 걸쳐 공통된 기본 의미를 찾을 수 있습니다. 

이러한 새로운 AI 시스템은 상당한 표현력을 가지고 있지만 그 힘은 주로 "신속한 엔지니어링"을 통해 전달됩니다. 이는 검색 엔진 쿼리가 예상한 결과를 반환하지 않을 경우 이를 구체화하는 것과 유사하게 입력 텍스트를 간단히 변경하는 것을 의미합니다. 이는 방향이 지정되지 않은 챗봇과 같은 새로운 기술을 활용하는 매력적인 방법일 수 있지만 콘텐츠를 만드는 효율적이거나 효과적인 방법은 아닙니다. 대신 제작자에게는 추측보다는 능동적인 제어를 통해 효과적으로 활용할 수 있는 강력한 도구가 필요합니다.

ControlNet 프로젝트는 이러한 문제 중 일부를 해결하기 위한 단계입니다. 이는 다음과 같은 사전 훈련된 대규모 AI 모델의 성능을 활용하는 효율적인 방법을 제공합니다. 안정적인 확산, 신속한 엔지니어링에 의존하지 않고. ControlNet은 아티스트가 단순한 텍스트 프롬프트 이상의 추가 입력 조건을 제공할 수 있도록 하여 제어력을 향상시킵니다. Roblox 연구원이자 스탠포드 대학교 교수인 Maneesh Agrawala와 스탠포드 연구원 Lvmin Zhang은 공동 ControlNet 프로젝트의 목표를 다음과 같이 설정합니다.

  1. 생성적 AI 도구를 위한 더 나은 사용자 인터페이스를 개발합니다. 모호한 프롬프트 조작을 넘어 아이디어나 창의적인 개념을 전달하는 보다 자연스러운 방법을 구축하세요.
  2. 보다 정밀한 공간 제어를 제공하여 '같은 이미지', '... 스타일의 이미지'를 만드는 것을 넘어 창작자가 생각하는 이미지를 정확하게 구현할 수 있도록 합니다.
  3. 생성적 AI 훈련을 더 빠르게 실행하고, 더 적은 메모리를 필요로 하며, 더 적은 전기 에너지를 소비하는 더욱 컴퓨팅 효율적인 프로세스로 전환하세요.
  4. 이미지 생성 AI를 재사용 가능한 빌딩 블록으로 확장합니다. 그런 다음 표준화된 이미지 처리 및 3D 렌더링 파이프라인과 통합될 수 있습니다. 

제작자가 공간 제어를 위한 추가 이미지를 제공할 수 있도록 함으로써 ControlNet은 최종 생성된 이미지에 대한 더 큰 제어권을 부여합니다. 예를 들어, 기존 텍스트-이미지 생성기에서 "뿔이 있는 수컷 사슴"이라는 프롬프트는 아래와 같이 다양한 이미지를 생성했습니다.

이전 AI 솔루션으로 생성된 이러한 이미지는 매력적이지만 불행하게도 본질적으로 임의의 결과이므로 제어할 수 없습니다. 이전 이미지 생성 시스템에는 텍스트 프롬프트를 수정하는 것 외에는 출력을 조정할 수 있는 방법이 없습니다.

ControlNet을 사용하면 제작자는 이제 훨씬 더 많은 권한을 갖게 됩니다. ControlNet을 사용하는 한 가지 방법은 따라야 할 일반적인 모양을 결정하기 위해 프롬프트와 소스 이미지를 모두 제공하는 것입니다. 이 경우 결과 이미지는 여전히 다양성을 제공하지만 결정적으로 지정된 모양을 유지합니다.

작성자는 가장자리 세트, 프롬프트가 전혀 없는 이미지 또는 시스템에 표현 입력을 제공하는 기타 여러 가지 방법을 지정할 수도 있습니다.

ControlNet을 생성하기 위해 대규모 확산 모델의 네트워크 내의 가중치를 두 가지 버전으로 복제합니다. 하나는 훈련 가능한 네트워크 (이것은 제어를 제공합니다. "ControlNet"입니다) 다른 하나는 잠긴 네트워크. 잠긴 네트워크는 수십억 개의 이미지에서 학습된 기능을 유지하며 이전 이미지 생성기가 될 수 있습니다. 그런 다음 작업별 데이터 세트에 대해 훈련 가능한 네트워크를 훈련하여 추가 이미지에서 조건부 제어를 학습합니다. 학습 가능하고 잠긴 복사본은 우리가 호출하는 고유한 유형의 컨볼루션 레이어와 연결됩니다. 제로 컨볼루션여기서 컨볼루션 가중치는 학습된 방식으로 XNUMX에서 최적화된 매개변수까지 점진적으로 증가합니다. 즉, 처음에는 영향을 미치지 않으며 시스템은 잠긴 네트워크에 적용할 최적의 제어 수준을 도출합니다.

원래 가중치는 잠긴 네트워크를 통해 보존되므로 모델은 다양한 크기의 훈련 데이터 세트와 잘 작동합니다. 그리고 제로 컨볼루션 레이어는 프로세스를 훨씬 빠르게 만듭니다. 처음부터 새 레이어를 학습하는 것보다 확산 모델을 미세 조정하는 데 더 가깝습니다. 

우리는 이미지 생성을 위해 이 기술을 광범위하게 검증했습니다. ControlNet은 출력 이미지의 품질만 향상시키는 것이 아닙니다. 또한 특정 작업을 위한 네트워크 교육을 더욱 효율적으로 만들어 수백만 명의 제작자를 위해 대규모로 배포하는 데 실용적입니다. 실험에서 ControlNet은 모델을 완전히 재교육해야 하는 대체 시나리오에 비해 최대 10배의 효율성 향상을 제공합니다. 새로운 모델을 만드는 프로세스는 기존 소프트웨어 개발에 비해 시간이 많이 걸리고 리소스 집약적이므로 이러한 효율성은 매우 중요합니다. 교육을 보다 효율적으로 수행하면 전력을 절약하고 비용을 절감하며 새로운 기능을 추가할 수 있는 속도가 높아집니다.

ControlNet의 독특한 구조는 다양한 크기와 다양한 미디어 유형의 훈련 데이터 세트와 잘 작동한다는 것을 의미합니다. ControlNet은 사진, 손으로 그린 ​​낙서 및 그림을 포함하여 다양한 유형의 제어 양식과 함께 작동하는 것으로 나타났습니다. 열린 자세 포즈 감지. 우리는 ControlNet이 생성 AI 콘텐츠를 위한 다양한 유형의 미디어에 적용될 수 있다고 믿습니다. 이것 연구는 공개되어 공개적으로 이용 가능합니다. 커뮤니티가 실험하고 이를 토대로 구축할 수 있도록 하며, 더 많은 발견을 통해 더 많은 정보를 계속 제공할 것입니다.

스타코더

생성적 AI를 적용하여 이미지, 오디오, 텍스트, 프로그램 소스 코드 또는 기타 모든 형태의 리치 미디어를 생성할 수 있습니다. 그러나 다양한 미디어를 통틀어 가장 큰 성공을 거둔 애플리케이션은 결과물이 주관적으로 판단되는 경향이 있습니다. 예를 들어, 이미지는 인간 시청자의 관심을 끌 때 성공합니다. 가장자리의 이상한 특징이나 손에 여분의 손가락 등 이미지의 특정 오류는 전체 이미지가 매력적이면 눈에 띄지 않을 수 있습니다. 마찬가지로, 시나 단편 소설에는 문법적 오류나 논리적 비약이 있을 수 있지만, 요점이 설득력이 있다면 우리는 이를 용서하는 경향이 있습니다. 

주관적인 기준을 고려하는 또 다른 방법은 결과 공간이 연속적이라는 것입니다. 한 결과가 다른 결과보다 나을 수 있지만 결과가 완전히 허용되거나 허용되지 않는 특정 임계값은 없습니다. 다른 영역 및 미디어 형식의 경우 출력이 객관적으로 판단됩니다. 예를 들어, 생성 AI 프로그래밍 도우미가 생성한 소스 코드는 정확할 수도 있고 아닐 수도 있습니다. 코드가 테스트를 통과할 수 없으면 유효한 솔루션의 코드와 유사하더라도 실패합니다. 이는 이산 결과 공간입니다. 기준이 더 엄격하고 점진적으로 좋은 솔루션에 접근할 수 없기 때문에 별도의 공간에서 성공하기가 더 어렵습니다. 즉, 코드가 갑자기 작동할 때까지 바로 분할됩니다.

텍스트 출력에 사용되는 LLM은 챗봇과 같은 주관적이고 지속적인 애플리케이션에 적합합니다. 그들은 또한 영어와 프랑스어와 같은 많은 인간 언어로 산문을 생성하는 데에도 잘 작동하는 것 같습니다. 그러나 기존 LLM은 제대로 작동하지 않는 것 같습니다. 프로그래밍 인간의 언어와 마찬가지로 언어도 마찬가지입니다. 코드는 자연어와는 매우 다르고 의미를 표현하는 객관적인 방법인 수학의 한 형태입니다. 연속적인 결과 공간이 아닌 이산적인 결과 공간입니다. Roblox 제작자를 위한 최고 품질의 프로그래밍 언어 코드 생성을 달성하려면 이 분리되고 객관적인 공간에서 잘 작동할 수 있는 LLM을 적용하는 방법이 필요합니다. 또한 Lua, JavaScript 또는 Python과 같은 특정 언어 구문과 관계없이 코드 기능을 표현하기 위한 강력한 방법이 필요합니다. 

코드 생성을 위한 새로운 최첨단 오픈 소스 LLM인 StarCoder는 이 기술적 과제에 대한 큰 발전이자 모든 사람을 위한 진정한 개방형 LLM입니다. StarCoder는 다음 중 하나의 결과입니다. 큰 코드 학술 및 산업 연구소 전반에 걸쳐 600명 이상의 회원이 참여하는 연구 컨소시엄입니다. Roblox 연구원이자 Northeastern University 교수인 Arjun Guha는 이 팀을 이끌고 StarCoder를 개발하는 데 도움을 주었습니다. 처음으로 발표된 이 결과는 주관적 방법의 상대적인 성공을 고려할 때 해당 분야에서 새로운 성장이 가장 필요한 영역인 코드 측면에만 초점을 맞췄습니다. 

더 큰 AI 생태계와 Roblox 커뮤니티를 지원하는 LLM을 통해 생성 AI를 제공하려면 적절하게 라이선스가 부여되고 책임감 있게 수집된 데이터 세트에 대해서만 훈련된 모델이 필요합니다. 또한 누구든지 사용하고, 구축하고, 생태계에 다시 기여할 수 있도록 무제한 라이선스를 보유해야 합니다. 오늘날 가장 강력한 LLM은 독점적이거나 제한된 형태의 상업적 사용에 대해 라이센스가 부여되어 연구자가 모델 자체를 실험하는 능력을 금지하거나 제한합니다. 이와 대조적으로 StarCoder는 업계 및 학계 연구자들의 연합을 통해 만들어졌으며 모든 규모의 상업적 적용에 대해 제한 없이 라이센스가 부여된 진정한 개방형 모델입니다. StarCoder는 책임감 있게 수집되고 적절한 라이선스가 부여된 콘텐츠에 대해서만 교육을 받았습니다. 이 모델은 처음에 공개 코드로 훈련되었으며 자신의 코드를 훈련에 사용하지 않으려는 사람들을 위해 옵트아웃 프로세스를 사용할 수 있습니다.

현재 StarCoder는 Python, C++ 및 Java를 포함한 86개의 다양한 프로그래밍 언어로 작동합니다. 논문이 출판된 시점에서 이는 여러 언어를 지원하는 모든 개방형 코드 LLM보다 성능이 뛰어났으며 심지어 많은 폐쇄형 독점 모델과도 경쟁적이었습니다. 

StarCoder LLM은 생태계에 기여하지만 우리의 연구 목표는 훨씬 더 깊습니다. 이 연구의 가장 큰 영향은 코드, 텍스트, 이미지, 음성, 비디오를 포함하여 객관적이고 주관적인 다중 모드 모델의 의미 체계 모델링을 발전시키고 도메인 전달 기술을 통해 훈련 효율성을 높이는 것입니다. 또한 소스 코드 생성과 같은 객관적인 작업을 위한 생성 AI의 유지 관리 가능성과 제어 가능성에 대한 깊은 통찰력을 얻을 수 있을 것으로 기대합니다. 새로운 기술에 대한 흥미로운 시연과 사용자 커뮤니티에 가치를 제공하는 안전하고 안정적이며 효율적인 제품 사이에는 큰 차이가 있습니다. ML 모델의 경우 메모리 공간, 절전 및 실행 시간을 위해 성능을 최적화합니다. 우리는 또한 강력한 인프라를 개발하고, AI 코어를 소프트웨어로 둘러싸서 시스템의 나머지 부분에 연결하고, 새로운 기능이 추가됨에 따라 자주 업데이트할 수 있는 원활한 시스템을 개발했습니다. 

Roblox의 과학자 및 엔지니어와 과학계의 가장 뛰어난 인재를 하나로 모으는 것은 우리가 획기적인 기술을 추구하는 데 있어 핵심 요소입니다. 우리는 이러한 초기 결과를 공유하고 연구 커뮤니티를 초대하여 우리와 협력하여 이러한 발전을 구축하게 된 것을 자랑스럽게 생각합니다.

타임 스탬프 :

더보기 Roblox