만 자의 긴 기사는 자율 주행 분야에서 대형 모델의 적용을 설명합니다.

통신 그룹|  "센서 그룹/스케이트보드 섀시 그룹/자동차 기본 소프트웨어 그룹/도메인 컨트롤러 그룹"을 입력하고 기사 끝에 있는 QR 코드를 스캔 하고 Jiuzhang Assistant를 추가하고 교환 그룹  + 실제 이름 을 메모하십시오. 이름 + 회사 + 직위 (비고 없음 친구 인증 불가)


62cbeceeee46d7656d07f386d6adb6f8.png

저자 | 장 맹규

ChatGPT의 인기로 인해 대형 모델이 점점 더 주목을 받고 있으며 대형 모델이 보여주는 기능은 놀랍습니다.

이미지 생성, 추천 시스템 및 기계 번역과 같은 영역에서 대형 모델이 이미 역할을 하기 시작했습니다. 이미지 생성 웹사이트 미드저니(Midjourney)는 몇 가지 즉각적인 말을 통해 많은 전문 디자이너의 수준을 능가하는 디자인 도면을 생성했습니다.

대형 모델이 놀라운 기능을 발휘할 수 있는 이유는 무엇입니까? 모델의 매개변수 개수와 용량이 커질수록 모델의 성능이 좋아지는 이유는 무엇입니까?

AI 알고리즘 회사의 전문가는 저자에게 다음과 같이 말했습니다. 모델의 매개변수 수의 증가는 모델의 차원의 증가로 이해될 수 있습니다. 방법. 가장 간단한 시나리오를 예로 들어, 평면 그래프에 산점도를 제공합니다. 그래프에서 산점의 법칙을 설명하기 위해 직선(변수 1개 함수)을 사용하면 매개변수가 몇 개이든 관계없이 이 선 밖에는 항상 어떤 점이 있을 것입니다. 포물선(이진 함수)을 사용하여 이러한 점의 법칙을 설명하면 이 선에 더 많은 점이 떨어질 수 있습니다. 함수의 차원이 증가하거나 자유도가 증가함에 따라 점점 더 많은 점이 이 선에 놓이게 되며 이는 이러한 점의 규칙이 더 정확하게 맞춰질 것임을 의미합니다.

즉, 모델의 매개변수 수가 많을수록 모델이 대용량 데이터의 법칙에 더 쉽게 적합합니다.

ChatGPT의 출현으로 사람들은 모델의 매개변수가 특정 수준에 도달하면 제시된 효과가 단순히 "더 나은 성능"이 아니라 "예상보다 더 나은" 효과임을 발견했습니다.

NLP(자연어 처리) 분야에서 학계와 산업계가 구체적인 원리를 설명하지 못하는 흥미로운 현상이 있다.

"출현"이란 무엇입니까? "발현"이란 모델의 매개변수 양이 어느 정도 선형적으로 증가하면 모델의 정확도가 기하급수적으로 증가하는 것을 의미합니다.

우리는 그림을 볼 수 있습니다.아래 그림의 왼쪽은 2022년 이전에 OpenAI 연구원들이 발견한 현상인 스케일링 법칙(Scaling Law)을 보여줍니다. 모델이 감소한 다음 선형으로 증가합니다. 왼쪽의 모델 매개변수는 기하급수적으로 증가하지 않고 선형적으로 증가합니다.

2022년 1월까지 일부 연구자들은 모델의 매개변수 척도가 일정 수준을 초과하면 모델 정확도의 개선 정도가 아래 그림의 오른쪽과 같이 비례 곡선을 크게 초과한다는 사실을 발견했습니다. 

d5caad8e6ef6bd9e2c0f43f04eb69e66.png △"창출"의 개략도

응용 프로그램 수준에서 구현할 때 대형 모델은 덧셈과 뺄셈을 수행할 수 있는 대형 모델 및 간단한 추론과 같이 소형 모델이 수행할 수 없는 일부 작업을 수행할 수 있음을 알 수 있습니다.

어떤 종류의 모델을 대형 모델이라고 부를 수 있습니까?

일반적으로 말해서 우리는 1억 개 이상의 매개변수를 가진 모델을 "빅 모델"이라고 부를 수 있다고 믿습니다. 자율 주행 분야에서 대형 모델은 크게 두 가지 의미가 있습니다: 하나는 1억 개 이상의 매개 변수가 있는 모델이고 다른 하나는 함께 중첩된 여러 개의 작은 모델로 구성된 모델입니다."빅 모델"의 경우.

이 정의에 따르면 자율주행 분야에서는 대형 모델이 널리 쓰이기 시작했다. 클라우드에서는 모델 매개변수 수의 증가로 인한 용량 이점을 활용할 수 있고, 대형 모델을 사용하여 데이터 마이닝 및 데이터 레이블 지정과 같은 일부 작업을 완료할 수 있습니다. 자동차 측면에서 서로 다른 하위 작업을 담당하는 여러 소형 모델을 "대형 모델"로 결합하여 자동차 컴퓨팅 링크의 추론 시간을 절약하고 보안을 강화할 수 있습니다.

특히 대형 모델이 어떻게 도움이 될 수 있습니까? 저자가 다양한 업계 전문가들과 주고받은 정보에 따르면 현재 업계에서는 지각 분야에서 주로 대형 모델을 사용하고 있다. 다음으로, 대형 모델이 클라우드와 차량 측에서 인식 작업을 강화하는 방법을 소개합니다.

1. 대형 모델 적용

1.1

클라우드에서 대형 모델 적용

1.1.1 데이터의 자동 라벨링

자동 라벨링은 대형 모델 사전 훈련을 사용하여 달성할 수 있습니다. 비디오의 클립 주석을 예로 들면, 자체 감독을 통해 레이블이 지정되지 않은 대량의 클립 데이터로 대규모 모델을 사전 학습한 다음 수동으로 레이블이 지정된 소량의 클립 데이터로 미세 조정하여 모델이 가능하도록 만들 수 있습니다. 모델은 클립 데이터에 자동으로 레이블을 지정할 수 있습니다.

모델의 라벨링 정확도가 높을수록 인간 대체 정도가 높습니다.

현재 많은 회사에서 대형 모델의 자동 라벨링 정확도를 개선하는 방법을 연구하고 있으며, 정확도가 표준에 도달한 후 완전한 무인 자동 라벨링을 실현하기를 희망합니다.

SenseTime Intelligent Driving의 제품 이사인 Leo는 저자에게 "우리는 평가를 수행했으며 도로의 일반적인 대상에 대해 SenseTime의 대형 모델의 자동 라벨링 정확도는 98% 이상에 도달할 수 있습니다.

스마트 운전 제품 개발 과정에서 Shangtang Jueying은 대부분의 감지 작업에 대해 대형 모델의 자동 사전 라벨링을 도입했습니다.과거와 비교하여 동일한 번호를 획득함으로써 라벨링 주기 및 라벨링 비용을 수만까지 줄일 수 있습니다. 데이터 샘플 시간을 단축하여 개발 효율성을 크게 향상시킵니다. 

일반적으로 라벨링 작업에 대한 모든 사람의 기대는 주로 라벨링 프로세스의 높은 효율성, 라벨링 결과의 높은 정확도 및 높은 일관성을 포함합니다. 고효율과 고정밀은 이해하기 쉽지만 높은 일관성은 무엇을 의미합니까? 3D 인식을 위한 BEV 알고리즘에서 엔지니어는 라이더와 비전의 공동 주석을 사용해야 하며 포인트 클라우드와 이미지 데이터를 공동으로 처리해야 합니다. 이 처리 링크에서 엔지니어는 타이밍 수준에서 일부 주석을 작성해야 할 수도 있으므로 이전 프레임과 후속 프레임의 결과가 크게 다를 수 없습니다.

수동 라벨링을 사용하는 경우 라벨러의 라벨링 수준에 따라 라벨링 효과가 달라집니다.라벨러의 레벨이 고르지 않으면 라벨링 결과가 일관되지 않을 수 있습니다.한 사진에는 큰 라벨 상자가 있고 다음 사진에는 작은 라벨 상자가 있을 수 있습니다. 그러나 대형 모델의 라벨링 결과는 일반적으로 일관성이 있습니다.

그러나 일부 업계 전문가들은 특히 자율주행 회사와 라벨링 회사 간의 연결에서 실제 애플리케이션에서 대형 모델로 자동 라벨링을 구현하는 데 여전히 어려움이 있다고 보고했습니다. 많은 자율주행 회사가 라벨링 작업의 일부를 라벨링 회사 및 일부 회사는 내부 라벨링 팀이 없으며 모든 라벨링 작업을 아웃소싱합니다.

현재 대형 모델 사전 마킹 방식으로 표시된 대상은 주로 일부 동적 3D 대상이며 자율 주행 회사는 먼저 대형 모델을 사용하여 마킹이 필요한 비디오를 추론한 다음 결과를 사용합니다. 추론의 - 모델에 의해 생성된 3D 프레임을 라벨링 회사에 제공합니다. 먼저 대형 모델로 사전 라벨링한 다음 사전 라벨링된 결과를 라벨링 회사에 전달할 때 두 가지 문제가 수반됩니다. 하나는 일부 라벨링 회사의 라벨링 플랫폼이 사전 라벨링된 결과 로드를 반드시 지원하지 않는다는 것입니다. , 다른 하나는 라벨링 회사가 사전 라벨링 결과를 반드시 수정할 의향이 없다는 것입니다.

라벨링 회사가 사전 라벨링된 결과를 로드하려면 대형 모델에서 생성된 3D 프레임 로드를 지원하는 소프트웨어 플랫폼이 필요합니다. 그러나 일부 라벨링 회사는 주로 수동 라벨링을 사용하고 모델 사전 라벨링 결과를 로드하는 것을 지원하는 소프트웨어 플랫폼이 없기 때문에 고객과 연결 시 사전 라벨링된 모델 결과를 얻는다면 이를 수행할 방법이 없습니다. .

또한 라벨링 회사의 관점에서 볼 때 사전 라벨링 효과가 충분할 때만 실제로 "노력을 절약"할 수 있습니다. 그렇지 않으면 작업량이 증가할 수 있습니다.

사전 라벨링의 효과가 충분하지 않은 경우에도 라벨링 회사는 누락된 상자 표시, 잘못 표시된 상자 삭제, 상자 크기 통일 등 향후 많은 작업을 수행해야 합니다. 그런 다음 사전 라벨링을 채택해도 업무량을 줄이는 데 실제로 도움이 되지 않을 수 있습니다.

따라서 실제 적용에 있어 사전 라벨링을 위해 대형 모델을 사용할 것인지 여부는 자율주행 업체와 라벨링 업체가 저울질할 필요가 있다.

물론 현재 수동 라벨링 비용은 상대적으로 높습니다. 라벨링 회사가 처음부터 시작한다면 1,000프레임의 비디오 데이터에 대한 수동 라벨링 비용은 10,000위안에 달할 수 있습니다. 따라서 자율 주행 회사는 여전히 대형 모델 사전 라벨링의 정확도를 최대한 높이고 수동 라벨링 작업량을 최대한 줄여 라벨링 비용을 절감하기를 희망합니다.

1.1.2 데이터 마이닝

대형 모델은 일반화가 강력하고 롱테일 데이터 마이닝에 적합합니다.

WeRide의 전문가는 저자에게 다음과 같이 말했습니다. 기존의 레이블 기반 방법을 사용하여 롱테일 장면을 마이닝하는 경우 모델은 일반적으로 알려진 이미지 범주만 구별할 수 있습니다. OpenAI는 2021년 CLIP 모델(그림의 레이블에만 의존하지 않고 텍스트를 기반으로 그림을 분류하기 위해 감독되지 않은 사전 훈련 후 텍스트와 이미지에 대응할 수 있는 텍스트-이미지 멀티모달 모델)을 출시했습니다. 텍스트 설명이 있는 드라이브 로그에서 이미지 데이터를 검색하기 위해 이러한 텍스트-이미지 다중 모드 모델을 사용할 수도 있습니다. 예를 들어 '물건을 질질 끄는 건설 차량', '전구 2개가 동시에 켜진 신호등' 등 롱테일 장면.

또한 대형 모델은 데이터에서 기능을 더 잘 추출한 다음 유사한 기능을 가진 객체를 찾을 수 있습니다.

많은 사진에서 환경미화원이 포함된 사진을 찾고 싶다고 가정해 보겠습니다. 먼저 사진에 레이블을 지정할 필요가 없습니다. 환경미화원이 포함된 많은 사진을 사용하여 큰 모델을 사전 훈련할 수 있으며, 큰 모델은 일부를 추출할 수 있습니다. 그들로부터 위생 노동자 기능. 그런 다음 사진에서 환경미화원의 특성과 일치하는 샘플을 찾아 환경미화원이 있는 거의 모든 사진을 마이닝합니다.

1.1.3 지식 증류를 통한 소규모 모델 "교육"

큰 모델은 또한 지식 추출을 통해 작은 모델을 "가르칠" 수 있습니다.

지식 증류란 무엇입니까? 가장 일반적인 단어로 설명하자면, 대형 모델은 먼저 데이터에서 일부 지식을 학습하거나 일부 정보를 추출한 다음 학습된 지식을 사용하여 소형 모델을 "가르칩니다".

실제로는 큰 모델에 레이블을 지정해야 하는 그림을 먼저 학습하고 큰 모델은 이러한 그림에 레이블을 지정할 수 있습니다. 지식 증류의 가장 간단한 방법.

물론 대용량 데이터에서 특징을 추출하기 위해 대형 모델을 사용하는 것과 같은 보다 복잡한 방법을 사용할 수도 있으며 이렇게 추출된 특징을 사용하여 소형 모델을 학습시킬 수도 있습니다. 즉, 디자인을 좀 더 복잡하게 만들 수도 있고, 대형 모델과 소형 모델 사이에 중형 모델을 추가할 수도 있습니다. 기능을 추출하고 작은 모델에 넘겨 사용합니다. 엔지니어는 필요에 따라 설계 방법을 선택할 수 있습니다.

저자는 Pony.ai를 통해 대형 모델에서 추출한 특징을 기반으로 증류 및 미세 조정을 통해 보행자 주의, 보행자 의도 인식과 같은 소형 모델을 얻을 수 있음을 알게 되었습니다. 계산량을 줄일 수 있습니다.

1.1.4 시승차 모델의 성능 상한

대형 모델은 자동차용 모델의 성능 한계를 테스트하는 데에도 사용할 수 있습니다. 일부 회사는 차량 측에 어떤 모델을 배치할지 고려할 때 먼저 클라우드에서 여러 후보 모델을 테스트하여 매개 변수 수를 늘린 후 어떤 모델이 가장 효과가 좋고 성능이 가장 좋은지 확인합니다.

그런 다음 효과가 가장 좋은 모델을 기본 모델로 사용하고 기본 모델을 잘라내어 최적화하여 차량 끝단에 배치합니다.

1.1.5 자율주행 시나리오 재구성 및 데이터 생성

Momo Zhixing은 2023년 1월 AI DAY에서 다음과 같이 언급했습니다. 드라이빙 씬을 연출할 수 있습니다.”

예를 들어 네트워크에 그림, 해당 포즈 및 조밀하게 색상이 지정된 장면 포인트 클라우드를 입력하고 포인트 그리드 네트워크를 기반으로 입력 사진의 포즈를 기반으로 다른 해상도로 컬러 포인트 클라우드를 래스터화할 수 있습니다. 확장한 다음 네트워크를 통해 다양한 규모의 기능을 융합합니다.

그런 다음 생성된 조밀한 점 구름 설명자, 위치, 해당 카메라 매개변수 및 이미지 노출 매개변수를 후속 네트워크에 입력하여 톤 매핑을 미세 조정한 다음 일관된 색상과 노출로 사진을 합성합니다.

이런 식으로 장면의 재구성을 실현할 수 있습니다. 그리고 화각의 변화, 조명의 변화, 질감과 재질의 변화 등을 통해 다양한 고사실 데이터를 생성할 수 있다. 우회, 유턴, 심지어 임박한 충돌을 시뮬레이션하는 고위험 장면 데이터.

1.2

차량에 대형모델 적용

1.2.1 다양한 작업 감지를 위한 작은 모델 결합

차량 측에서 대형 모델을 사용하는 주요 형태는 서로 다른 하위 작업을 처리하는 소형 모델을 결합하여 "대형 모델"을 형성한 다음 공동 추론을 수행하는 것입니다. 여기서 "큰 모델"은 전통적인 의미에서 많은 수의 매개변수가 아닙니다(예: 1억 개 이상의 매개변수가 있는 큰 모델). 물론 결합된 모델은 다른 하위 작업을 처리하는 작은 모델보다 훨씬 큽니다. .

전통적인 자동차 측 인식 모델에서는 서로 다른 하위 작업을 다루는 모델이 독립적으로 추론됩니다. 예를 들어 한 모델은 차선 감지 작업을 담당하고 다른 모델은 신호등 감지 작업을 담당하며, 인식 작업이 증가함에 따라 엔지니어는 시스템의 특정 대상 모델에 대한 인식을 증가시킵니다.

기존 자율주행 시스템은 기능이 적고 인지 작업이 상대적으로 쉬웠지만, 자율주행 시스템의 기능이 업그레이드되면서 인지 작업이 점점 많아지고 시스템 지연이 너무 커서 보안 위험이 있습니다.

Juefei Technology의 BEV 다중 작업 인식 프레임워크에서 서로 다른 대상의 단일 작업 인식 소형 모델이 결합되어 차선, 지상 화살표, 교차로의 얼룩말 횡단을 포함하여 정적 정보를 동시에 출력할 수 있는 정적 정보를 형성합니다. , 정지선 등 및 교통 참여자의 위치, 크기, 방향 등을 포함한 동적 정보. Juefei Technology의 BEV 다중 작업 인식 알고리즘 프레임워크는 아래 그림과 같습니다.

a55795590cd6cdc194408fae04c292e1.png △Juefei Technology의 BEV 멀티태스킹 인식 알고리즘 프레임워크의 개략도

다중 작업 인식 모델은 기능의 시간적 융합을 실현합니다. 과거 순간의 BEV 기능을 기능 대기열에 저장합니다. 시공간 정렬(기능 회전 및 변환 포함)을 수행한 다음 정렬된 과거 BEV 기능을 현재 BEV와 접합합니다. 특징.

자율 주행 시나리오에서 타이밍 융합은 인식 알고리즘의 정확도를 향상시키고 단일 프레임 인식의 한계를 어느 정도 보상할 수 있습니다. 그림에 표시된 3D 대상 감지 하위 작업을 예로 들어 타이밍 융합을 통해 인식 모델은 단일 프레임 인식 모델에서 감지할 수 없는 일부 대상(예: 현재 가려진 대상)을 감지할 수 있습니다. 목표를 보다 정확하게 판단할 수 있습니다.이동 속도 및 보조 다운스트림 작업의 궤적 예측.

Juefei Technology의 BEV 인식 기술 책임자인 Qi Yuhan 박사는 저자에게 다음과 같이 말했습니다. 이러한 모델 아키텍처를 사용하면 인식 작업이 점점 더 복잡해질 때 다중 작업 공동 인식의 프레임워크가 실시간 인식 및 출력을 보장할 수 있습니다. 자율주행 시스템의 후속 사용을 위해 점점 더 정확한 인식 결과가 제공됩니다.

그러나 멀티태스킹 소형 모델을 병합하면 몇 가지 문제가 발생합니다. 알고리즘 수준에서 다른 하위 작업에 대한 병합된 모델의 성능은 "롤백" 현상을 가질 수 있습니다. 즉, 모델 감지 성능이 독립적인 단일 작업 모델의 성능보다 낮습니다. 다른 작은 모델에 의해 병합된 큰 모델의 네트워크 구조는 여전히 매우 미묘할 수 있지만 병합된 모델은 다중 작업 공동 훈련 문제를 해결해야 합니다.

다중 작업 공동 훈련에서 각 하위 작업은 동시 및 동시 수렴을 달성하지 못할 수 있으며 각 작업은 "부정적 전송"의 영향을 받으며 결합된 모델은 일부 특정 작업에서 정확도의 "회귀"를 갖습니다. . ". 알고리즘 팀은 결합된 모델 구조를 최대한 최적화하고 공동 훈련 전략을 조정하며 "부정적 전이" 현상의 영향을 줄여야 합니다.

1.2.2 객체 감지

업계 전문가는 저자에게 "상대적으로 고정된 참 값을 가진 일부 개체는 대형 모델을 사용한 탐지에 적합합니다.

그렇다면 상대적으로 고정된 진리값을 가진 객체란 무엇일까요?

참값이 고정된 소위 객체는 차선, 기둥, 가로등 기둥, 신호등, 횡단보도, 지하실의 주차선, 주차 공간 등과 같이 날씨 및 시간과 같은 요인에 의해 참값이 영향을 받지 않는 객체입니다. 이러한 물체는 No로 존재하며 어디에 있든 위치가 고정되어 있으며 비나 어둠과 같은 요인에 의해 변경되지 않으며 차량이 해당 지역을 통과하는 한 위치가 고정되어 있습니다. 이러한 물체는 대형 모델로 감지하기에 적합합니다.

1.2.3 차선 토폴로지 예측

자율주행 업체는 자사의 AI DAY에서 "BEV의 피처맵을 기반으로 표준맵을 가이드 정보로 활용하고, BEV 피처를 구조화된 토폴로지 포인트 시퀀스로 디코딩하기 위해 autoregressive 코덱 네트워크를 사용한다. , 차선 토폴로지 예측을 달성합니다.”

2. 대형 모델을 잘 활용하는 방법

업계의 오픈 소스 추세에 따라 기본 모델 프레임워크는 비밀이 아닙니다. 많은 경우 회사가 좋은 제품을 만들 수 있는지 여부를 결정하는 것은 엔지니어링 능력입니다.

엔지니어링 기능은 시스템 기능을 개선하는 데 효과적일 수 있는 몇 가지 방법을 생각할 때 이 아이디어의 실행 가능성을 신속하게 확인할 수 있는지 여부를 결정합니다. Tesla와 Open AI의 공통점은 두 회사 모두 강력한 엔지니어링 역량을 보유하고 있다는 것입니다.

실제로 대형 모델의 기능을 최대한 발휘하려면 회사의 엔지니어링 기능이 매우 중요합니다. 다음으로 모델 개발 과정에 따라 대형 모델을 잘 활용하기 위해 어떤 엔지니어링 역량이 필요한지 설명하겠습니다.

2.1

데이터 저장, 파일 전송 시스템 업그레이드

대형 모델의 매개변수가 크면 그에 따라 대형 모델을 훈련시키는 데 사용되는 데이터의 양도 많습니다. 예를 들어 Tesla의 알고리즘 팀은 작년 AI 데이에서 팀이 이야기한 3D 점유 네트워크를 훈련하기 위해 약 14억 장의 사진을 사용했습니다.

사실 사진 개수의 초기값은 실제 사용된 개수의 수십배, 수백배가 될 것이다. 14억이면 원본 사진의 수는 14억보다 훨씬 커야 합니다.

그렇다면 수백억 또는 수천억 개의 이미지 데이터를 저장하는 방법은 무엇입니까? 이것은 파일 읽기 시스템과 데이터 저장 시스템 모두에게 큰 도전입니다. 특히 현재의 자율주행 데이터는 클립 형태로 되어 있고, 파일의 수도 많기 때문에 작은 파일의 랜덤 저장 효율이 매우 높다.

이러한 문제에 대처하기 위해 업계의 일부 회사는 데이터에 슬라이스 스토리지를 사용하고 분산 아키텍처를 채택하여 다중 사용자 및 다중 동시 액세스를 지원합니다.데이터 처리량 대역폭은 100G/s에 도달할 수 있으며 I/ O 지연은 2밀리초 정도로 낮을 수 있습니다. 소위 다중 사용자는 많은 사용자가 동시에 데이터 파일에 액세스하는 것을 의미하고 다중 동시성은 데이터 파일이 여러 스레드에서 액세스되어야 함을 의미합니다.예를 들어 엔지니어가 모델을 교육할 때 다중 스레드를 사용하는 경우 , 각 스레드 데이터 파일이 필요합니다.

2.2

적합한 네트워크 아키텍처를 효율적으로 찾기

빅 데이터를 사용하여 모델이 데이터 정보를 더 잘 추상화하도록 보장하는 방법은 무엇입니까? 이를 위해서는 모델이 해당 작업에 적합한 네트워크 아키텍처를 갖추어 모델의 많은 매개 변수의 이점을 충분히 활용하여 모델이 정보를 추출하는 강력한 능력을 갖도록 해야 합니다.

SenseTime의 대규모 모델 연구 개발 수석 관리자 Lucas는 저자에게 "우리는 표준화된 산업 등급 반자동 초대형 모델 설계 시스템을 보유하고 있습니다. 이 시스템에 의존하여 일련의 신경망을 사용할 수 있습니다. 초대형 모델의 네트워크 구조를 설계할 때 검색 시스템을 기반으로 대규모 데이터 학습에 가장 적합한 네트워크 구조를 찾습니다.

작은 모델을 설계할 때 우리는 주로 수동 설계, 튜닝 및 반복에 의존하여 최종적으로 만족스러운 결과를 가진 모델을 얻습니다.이 모델은 최적이 아닐 수 있지만 기본적으로 반복 후 요구 사항을 충족할 수 있습니다.

대형 모델의 경우 대형 모델의 네트워크 구조가 매우 복잡하기 때문에 수동 설계, 튜닝 및 반복을 사용하면 컴퓨팅 성능 소비가 커지고 그에 따라 비용이 높아집니다. 그렇다면 한정된 자원 하에서 훈련에 충분한 효과를 내는 네트워크 구조를 어떻게 빠르고 효율적으로 설계하느냐가 해결해야 할 문제다.

Lucas는 다음과 같이 설명했습니다. 우리는 일련의 연산자 라이브러리를 가지고 있으며 모델의 네트워크 구조는 일련의 순열 및 연산자 조합으로 간주될 수 있습니다. 이 산업 등급 검색 시스템은 더 나은 모델 효과를 달성하기 위해 몇 개의 네트워크 계층과 몇 개의 매개변수를 포함하여 기본 매개변수 설정을 전제로 연산자를 배열하고 결합하는 방법을 계산할 수 있습니다.

모델의 효과는 일부 데이터 세트의 예측 정확도, 모델이 실행 중일 때의 메모리 사용량 및 모델의 실행 시간을 포함한 일부 지표에 따라 평가할 수 있습니다. 이러한 지표에 해당 가중치를 할당하면 만족스러운 모델을 찾을 때까지 계속 반복할 수 있습니다. 물론 검색 과정에서 먼저 모델 효과를 평가하기 위해 일부 작은 장면을 사용할 것입니다.

모델의 효과를 평가할 때 좀 더 대표적인 장면을 선택하는 방법은 무엇입니까?

일반적으로 몇 가지 일반적인 시나리오를 선택할 수 있습니다. 네트워크 아키텍처를 설계하는 주된 목적은 모델이 특정 시나리오의 특성을 목표로 하는 방식으로 학습할 수 있기를 바라는 것이 아니라 모델이 대량의 데이터에서 핵심 정보를 추출할 수 있는 능력을 갖도록 하는 것입니다. 모델 아키텍처가 결정되면 모델을 사용하여 롱테일 시나리오 마이닝의 일부 작업을 완료하지만 모델 아키텍처를 선택할 때 일반 시나리오를 사용하여 모델의 기능을 평가합니다.

고효율, 고정밀 신경망 검색 시스템으로 계산 효율과 계산 정확도가 충분히 높고, 모델 효과를 빠르게 수렴할 수 있으며, 효과가 좋은 네트워크 구조를 넓은 공간에서 빠르게 찾을 수 있습니다.

2.3

모델 학습 효율성 향상

앞선 기본 작업을 마치고 수련회에 오는데 수련회에는 최적화할 만한 곳이 많다.

2.3.1 최적화 연산자

신경망은 많은 기본 연산자의 조합으로 이해할 수 있으며 연산자의 계산은 한편으로는 컴퓨팅 리소스를, 다른 한편으로는 메모리를 차지합니다. 연산자를 최적화하여 연산자의 계산 효율성을 향상시킬 수 있으면 교육 효율성을 높일 수 있습니다.

현재 시장에는 이미 PyTorch, TensorFlow 등과 같은 일부 AI 교육 프레임워크가 있습니다. 이러한 교육 프레임워크는 기계 학습 엔지니어가 자신의 모델을 구축하기 위해 호출할 수 있는 기본 연산자를 제공할 수 있습니다. 일부 회사는 교육 효율성을 향상시키기 위해 자체 교육 프레임워크를 구축하고 기본 연산자를 최적화합니다.

PyTorch와 TensorFlow는 최대한 범용성을 보장해야 하므로 제공되는 연산자는 일반적으로 매우 기본적입니다. 기업은 필요에 따라 기본 연산자를 통합하여 중간 결과를 저장하는 단계를 줄이고 비디오 메모리 사용량을 절약하고 성능 손실을 방지할 수 있습니다.

또한 일부 특정 연산자는 계산 중 중간 결과에 대한 의존도가 높아 GPU의 병렬성을 잘 활용하지 못하는 문제를 해결하기 위해 업계의 일부 회사는 이러한 연산자의 종속성을 줄이기 위해 자체 가속 라이브러리를 구축했습니다. 중간 결과에서 계산 프로세스가 GPU의 병렬 컴퓨팅 이점을 최대한 활용하고 교육 속도를 향상시킬 수 있도록 합니다.

예를 들어, 4개의 주요 Transformer 모델에서 ByteDance의 LightSeq는 PyTorch를 기반으로 최대 8배의 속도 향상을 달성했습니다.

2.3.2 병행 전략을 잘 활용하라

병렬 컴퓨팅은 "공간을 시간으로 교환"하는 방법, 즉 가능한 한 계산 종속성이 없는 데이터를 병렬화하고, 큰 배치를 작은 배치로 분할하고, 각 계산 단계에서 GPU의 유휴 대기 시간을 줄이고, 계산을 개선합니다. 처리량.

현재 많은 회사에서 DDP 모드가 있는 PyTorch의 교육 프레임워크를 채택했습니다. 분산 데이터 병렬 교육 모드로 DDP 모드는 다중 머신 다중 카드 교육을 지원하는 데이터 배포 메커니즘을 설계했습니다. 8개의 서버, 각 서버에는 8개의 카드가 있으므로 동시에 훈련에 64개의 카드를 사용할 수 있습니다.

이 모드가 없으면 엔지니어는 여러 카드가 있는 단일 시스템만 사용하여 모델을 교육할 수 있습니다. 이제 모델을 훈련하기 위해 100,000개의 사진을 사용한다고 가정하면 단일 시스템 다중 카드 모드에서 훈련 시간은 일주일을 초과합니다. 특정 추측을 평가하기 위해 학습 결과를 사용하거나 여러 후보 모델 중 가장 좋은 것을 선택하려는 경우 이러한 학습 시간은 추측을 빠르게 검증하고 모델의 효과를 빠르게 확인하기 위한 대기 시간을 매우 길게 만듭니다. 그러면 연구 개발 효율성이 매우 낮습니다.

다중 기계 및 다중 카드 병렬 학습을 통해 대부분의 실험 결과를 2-3일 이내에 볼 수 있으므로 모델의 효과를 검증하는 과정이 훨씬 빨라집니다.

구체적인 병렬 방식으로는 모델 병렬과 시퀀스 병렬을 주로 사용할 수 있다.

모델 병렬화는 아래 그림과 같이 파이프라인 병렬화와 텐서 병렬화로 나눌 수 있습니다.

6fe9492f10fc36607f489c72e117a3b9.png △파이프라인 병렬 및 텐서 병렬 개략도, 그림은 NVIDIA에서 가져옴

파이프라인 병렬 처리는 레이어 간 병렬 처리(그림의 상단 부분)입니다. 엔지니어는 학습 프로세스 중에 계산을 위해 모델의 다른 레이어를 다른 GPU로 나누는 것을 기억할 수 있습니다. 예를 들어, 그림의 윗부분과 같이 녹색 부분과 파란색 부분의 레이어를 서로 다른 GPU에서 계산할 수 있습니다.

Tensor 병렬 처리는 계층 내 병렬 처리(그림 하단)이며 엔지니어는 계층의 계산을 다른 GPU로 나눌 수 있습니다. 이 모드는 GPU 간의 로드 밸런싱을 달성할 수 있기 때문에 큰 매트릭스 계산에 적합하지만 통신 횟수와 데이터 양이 상대적으로 많습니다.

모델 병렬 외에 Sequence 병렬도 있는데, Tensor 병렬은 Layer-norm과 Dropout을 나누지 않기 때문에 이 두 연산자가 각 GPU 사이에서 반복적으로 계산됩니다. 많은 활성 비디오 메모리.

이 문제를 해결하기 위해 실제 프로세스에서는 Layer-norm과 Dropout이 시퀀스의 차원을 따라 서로 독립적이라는 사실을 활용할 수 있습니다. 기타) 레이어의 경우 아래 그림과 같이 Norm과 Dropout이 분할됩니다. 이 분할의 장점은 트래픽을 증가시키지 않고 메모리 사용량을 크게 줄일 수 있다는 것입니다.

a4ea6621afcea577f982b11d7c43825a.png △시퀀스 병렬 개략도, 사진 출처: NVIDIA

실제로 다른 모델은 다른 병렬 전략에 적합하며 엔지니어는 모델의 특성, 사용된 하드웨어의 특성 및 중간 계산 프로세스에 따라 지속적인 디버깅 후 적합한 병렬 전략을 찾아야 합니다.

2.3.3 "희소성"을 잘 활용하라

모델을 훈련할 때 희소성을 잘 활용하는 것도 필요합니다. 즉, 모든 뉴런이 "활성화"되어야 하는 것은 아닙니다. 즉, 훈련 데이터를 추가할 때 모든 모델 매개변수가 새로 추가된 데이터에 따라 업데이트되어야 하는 것은 아닙니다. 그러나 일부 모델 매개변수는 변경되지 않고 일부 모델 매개변수는 새로 추가된 데이터로 업데이트됩니다.

우수한 희소 처리는 정확도를 유지하면서 모델의 교육 효율성을 보장할 수 있습니다.

예를 들어 인식 작업에서 새 사진이 들어올 때 이러한 사진을 기반으로 업데이트해야 하는 매개변수를 선택하여 대상이 지정된 방식으로 특징 추출을 수행할 수 있습니다.

2.3.4 기본정보의 통합처리

일반적으로 회사 내에서 하나 이상의 모델이 사용되며 이러한 모델은 동일한 데이터를 사용할 수 있습니다.예를 들어 대부분의 모델은 비디오 데이터를 사용합니다. 각 모델이 비디오 데이터를 불러와 처리하면 반복되는 계산이 많을 것입니다. 대부분의 모델에서 요구하는 비디오, 포인트 클라우드, 맵, CAN 신호 등 다양한 형식의 정보를 처리할 수 있으므로 다른 모델에서 처리 결과를 재사용할 수 있습니다.

2.3.5 하드웨어 구성 최적화

실제로 분산 훈련을 할 경우 1,000대의 머신이 사용될 수 있는데, 기울기 등 데이터를 저장하는 서로 다른 서버에서 훈련 과정의 중간 결과를 어떻게 얻어 대규모 분산 훈련을 하느냐가 큰 과제다.

이 문제를 해결하려면 먼저 CPU, GPU 등을 구성하는 방법, 네트워크 카드를 선택하는 방법, 네트워크 카드의 속도를 고려하여 머신 간의 전송이 빨라질 수 있어야 합니다.

둘째, 매개변수를 동기화하고 중간 결과를 저장해야 하지만 규모가 크면 이 문제가 매우 어려워지고 일부 네트워크 통신 작업이 필요합니다.

또한 전체 학습 과정이 오래 걸리므로 클러스터의 안정성이 높아야 합니다.

3. 모델 매개변수를 계속 늘리는 것이 의미가 있습니까?

이제 대형 모델이 자율주행 분야에서 어느 정도 역할을 할 수 있게 되었는데, 계속해서 모델 매개변수를 늘려간다면 대형 모델이 어떤 놀라운 효과를 보여줄지 기대할 수 있을까요?

저자가 자율주행 분야의 알고리즘 전문가들과 소통한 결과, CV(컴퓨터 비전) 분야에서는 위에서 언급한 '창출' 현상이 아직 나타나지 않았기 때문에 현재 답은 아마도 '아니오'일 것이다. 현재 자율주행 분야에서 모두가 사용하는 모델 파라미터의 양은 ChatGPT보다 훨씬 적습니다. "발현" 효과가 없을 때 모델 성능 향상과 매개변수 수 증가 간의 관계는 대략 선형이기 때문에 비용 제약을 고려할 때 회사는 아직 모델의 매개변수 수를 최대화하지 못했습니다.

왜 아직까지 컴퓨터 비전에서 "출현" 현상이 나타나지 않았습니까? 전문가는 이렇게 설명했습니다.

우선, 이 세상에는 텍스트 데이터보다 시각적 데이터가 훨씬 더 많지만 이미지 데이터는 희박합니다. 즉, 대부분의 사진은 효과적인 정보가 많지 않을 수 있으며 각 이미지의 대부분의 픽셀은 효과적인 정보를 제공하지 않습니다. 셀카를 찍으면 가운데 얼굴을 제외하고 배경 영역에는 유효한 정보가 없습니다.

둘째, 이미지 데이터는 상당한 스케일 변화를 겪고 있으며 완전히 구조화되어 있지 않습니다. 스케일 변경은 동일한 의미를 포함하는 객체가 해당 그림에서 크거나 작을 수 있음을 의미합니다. 예를 들어 셀카를 찍고 멀리 있는 친구에게 사진을 찍어달라고 부탁했는데, 두 사진에서 얼굴 비율이 많이 달랐다. 구조화되지 않음은 각 픽셀 간의 관계가 불확실함을 의미합니다.

그러나 자연어 처리 분야에서 언어는 사람 간의 의사소통을 위한 도구이기 때문에 일반적으로 문맥이 연관되어 있고, 일반적으로 각 문장의 정보 밀도가 크고 스케일 변화의 문제가 없다. 모든 언어에서 "사과"라는 단어는 일반적으로 그리 길지 않습니다.

따라서 시각적 데이터 자체에 대한 이해는 자연어보다 어려울 것이다.

업계 전문가는 저자에게 다음과 같이 말했습니다. 매개변수 수가 증가함에 따라 모델의 성능이 증가할 것으로 기대할 수 있지만 현재 매개변수 수를 계속 늘리는 것은 비용 효율성이 떨어집니다.

예를 들어 모델의 용량을 기존 기준의 10배로 확장하면 상대 오류율을 90%까지 줄일 수 있습니다. 이때 모델은 이미 얼굴 인식과 같은 일부 컴퓨터 비전 작업을 완료할 수 있습니다. 이때 모델의 용량을 10배로 계속 확장하고 상대 오류율은 계속해서 90%로 떨어지지만 실현할 수 있는 값은 10배로 증가하지 않으면 모델의 용량을 확장합니다.

모델 용량을 확장하면 모델이 커질수록 더 많은 교육 데이터와 더 많은 컴퓨팅 성능이 필요하기 때문에 비용이 증가합니다. 모델의 정확도가 허용 가능한 범위에 도달하면 비용 증가와 정확도 증가 사이에서 균형을 이루고 실제 필요에 따라 허용 가능한 정확도 조건에서 비용을 최대한 줄여야 합니다.

여전히 정확도를 개선해야 하는 몇 가지 작업이 있지만 대형 모델은 주로 자동 레이블 지정, 데이터 마이닝 등과 같은 클라우드의 일부 수동 작업을 대체하여 사람이 수행할 수 있습니다. 비용이 너무 높으면 경제 계정이 "압도"될 것입니다.

그러나 일부 업계 전문가는 저자에게 “아직 질적 변화점에 도달하지는 않았지만 모델의 매개변수가 증가하고 데이터 양이 증가함에 따라 모델의 정확도가 향상되고 있음을 확실히 볼 수 있다”고 말했다. 모델 정확도의 향상은 자동 레이블링을 피드백할 수 있으며 레이블링 작업에 사용되는 모델의 정확도는 충분히 높으며 레이블링 작업은 많은 인력을 줄일 수 있습니다. 모델의 크기가 커짐에 따라 학습 비용이 증가하지만 현재 비용과 모델 매개변수의 수는 기본적으로 선형입니다. 인력 감소는 교육 비용 증가를 상쇄할 수 있으므로 전반적으로 매개 변수 수를 늘리는 것이 여전히 유리합니다.

또한 모델 매개변수의 수가 증가하면 훈련 효율성을 높이고 훈련 비용을 최대한 줄이기 위한 몇 가지 방법도 채택할 것입니다. 기존 모델 스케일에서 기본적으로 모델의 매개변수 수를 늘리고 비용을 기본적으로 변경하지 않고 모델의 정확도를 향상시킬 수 있습니다. 이는 모델 매개변수의 증가에 따라 모델 비용이 선형적으로 증가하지 않도록 하는 것과 동일하며 비용 증가가 거의 없거나 약간만 증가할 수 있습니다.

4. 기타 대형 모델 적용 가능

위에서 언급한 응용 프로그램 외에도 대형 모델의 가치를 어떻게 찾을 수 있습니까?

4.1

지각 분야에서

CMU 연구 과학자 Max는 저자에게 다음과 같이 말했습니다. 대형 모델을 사용하여 인식 작업을 실현하려면 핵심은 매개변수를 쌓는 것이 아니라 '내부 루프'가 될 수 있는 프레임워크를 만드는 것입니다. 전체 모델이 내부 루프를 달성할 수 없거나 지속적인 온라인 교육을 달성할 수 없다면 좋은 결과를 얻기 어려울 것입니다.

그렇다면 모델의 "내부 루프"를 구현하는 방법은 무엇입니까? 아래 그림과 같이 ChatGPT의 교육 프레임워크를 참조할 수 있습니다.

168f816f164bd4771bc4a977b5cf969f.png

△ChatGPT 교육 프레임워크, 사진은 Open AI 공식 홈페이지에서 가져옴

ChatGPT의 모델 프레임워크는 3단계로 나눌 수 있습니다: 첫 번째 단계는 감독 학습이고, 엔지니어는 먼저 데이터의 일부를 수집하고 레이블을 지정한 다음 이 데이터 부분을 사용하여 모델을 교육합니다. 두 번째 단계는 보상을 설계하는 것입니다. 모델(Reward Model), 모델 일부 레이블링 결과를 스스로 출력할 수 있으며, 세 번째 단계에서는 강화 학습과 유사한 경로를 통해 자기 지도 학습을 실현할 수 있으며, 또는 "내부 루프" .

세 번째 단계에 도달하는 한 모델은 더 이상 엔지니어가 표시된 데이터를 추가할 필요가 없지만 레이블이 지정되지 않은 데이터를 얻은 후 자체적으로 손실을 계산한 다음 매개 변수를 업데이트하여 사이클이 계속되고 마지막으로 교육이 완료됩니다. 완전한.

"인식 작업을 수행할 때 적절한 보상 정책을 설계하여 모델 교육이 더 이상 레이블이 지정된 데이터에 의존하지 않도록 할 수 있다면 모델이 '내부 루프'를 실현하고 레이블이 지정되지 않은 데이터를 기반으로 매개변수를 지속적으로 업데이트할 수 있다고 말할 수 있습니다."

4.2

기획분야에서

바둑과 같은 분야에서는 일반적으로 우리의 목표가 결국 게임에서 승리하는 것뿐이기 때문에 각 단계가 좋은지 나쁜지 판단하기가 더 쉽습니다.

그러나 자율주행 계획 분야에서는 자율주행 시스템이 나타내는 행동에 대한 인간의 평가 체계가 명확하지 않다. 안전을 보장하는 것 외에도 모든 사람은 편안함에 대해 다르게 느끼고 목적지에 최대한 빨리 도착하기를 원할 수도 있습니다.

채팅 장면에서 매번 로봇이 주는 피드백이 "좋다" 또는 "나쁘다"라는 바둑과 같은 명확한 평가 시스템이 없습니다. 맞춤 운전도 이와 비슷합니다. 모든 사람은 "좋음"과 "나쁨"에 대한 기준이 다르며, 설명하기 어려운 요구 사항이 있을 수도 있습니다.

ChatGPT 학습 프레임워크의 두 번째 단계에서 주석자는 모델별로 출력된 결과를 정렬한 다음 정렬된 결과를 사용하여 보상 모델을 학습합니다. 처음에는 이 보상 모델이 완벽하지 않지만 지속적인 훈련을 통해 이 보상 모델이 우리가 원하는 효과에 계속 접근하도록 할 수 있습니다.

인공지능 회사의 한 전문가는 저자에게 다음과 같이 말했습니다. 어떤 상황에서 정상적으로 운전할 수 있다면 데이터의 양이 증가할수록 보상 모델은 점점 더 완벽에 가까워질 것입니다.

즉, 우리는 완벽한 보상 모델을 명시적으로 작성하는 것을 포기하고 지속적으로 완벽에 접근하는 솔루션을 얻기 위해 모델에 피드백을 지속적으로 제공함으로써 고려할 수 있습니다.

계획 분야의 현재 일반적인 관행, 즉 수동으로 규칙을 작성하여 명시적으로 최적의 솔루션을 찾으려고 시도하고 먼저 초기 보상 모델을 채택한 다음 데이터에 따라 지속적으로 최적화하는 것과 비교할 때 패러다임 전환입니다.

이 방법을 채택한 후 최적화 계획 모듈은 상대적으로 표준 프로세스를 채택할 수 있습니다.우리가 해야 할 일은 지속적으로 데이터를 수집하고 보상 모델을 훈련시키는 것뿐이며, 이는 더 이상 기존 방법과 같이 전체 계획 모듈에 대한 엔지니어의 이해에 의존하지 않습니다. 깊이.

또한 모든 과거 데이터를 훈련에 사용할 수 있습니다.어떤 규칙이 변경된 후 다시 나타나기 전에 해결된 일부 문제에 대해 걱정할 필요가 없습니다.전통적인 방법을 채택하면 이런 종류의 문제가 발생할 수 있습니다. 문제.


7d27ad71dfbcfb858291a749a4f472a8.png

통신 그룹|   "Sensor Group/Skateboard Chassis Group/Car Basic Software Group/Domain Controller Group"을 입력하고 위의 QR 코드를 스캔하고 Jiuzhang Assistant를 추가하고 통신 그룹 의 이름  + 실명 + 회사 + 위치를 확인하십시오. (비고 없음 친구 인증 불가)

마지막에 쓰기

작가와 소통하다

기사 작성자와 직접 소통하고 싶다면 오른쪽의 QR 코드를 직접 스캔하고 작성자 자신의 WeChat을 추가할 수 있습니다.

   7b8766a2ca14728cc08ca5e9bc035b13.png

참고: WeChat을 추가할 때 실명, 회사 및 현재 직위를 반드시 기록해 주세요. 감사합니다!

기여에 대해

"Nine Chapters Smart Driving"("지식 축적 및 정렬" 유형 기사)에 기여하는 데 관심이 있는 경우 오른쪽의 QR 코드를 스캔하고 직원 WeChat을 추가하십시오.

64e5fb816bd0f46bb38b938165deb258.jpeg

참고: WeChat을 추가할 때 실명, 회사 및 현재 직위를 반드시 기록해 주세요. 감사합니다!


"지식 축적" 원고에 대한 품질 요건:

A: 정보 밀도는 대부분의 증권사 보고서보다 높으며 "Nine Chapters Smart Driving"의 평균 수준보다 낮지 않습니다.

B: 정보는 희소성이 높아야 하고, 정보의 80% 이상이 다른 매체에서 보이지 않아야 하며, 공개된 정보를 기반으로 하는 경우 특히 강력하고 배타적인 관점이 있어야 합니다. 이해와 지원에 감사드립니다.

추천 자료:

9장 - 2022년 기사 모음

"급여는 하루 못 줘도 남을 사람은 있다" ——구장 지가 장사 2주년 리뷰(1부)

"예산이 너무 많아서 협력할 수 없다" - Jiuzhang Zhijia 2주년 리뷰(2부)

SOA 기반 전기·전자 통합 아키텍처란?

자율주행 규제 및 제어에 딥러닝 알고리즘 적용

양산·상업화로 전환하는 와이어 컨트롤의 도전과 여명기

"남이 두려울 땐 욕심내라", '자동주행 겨울' 투자 확대하는 펀드

추천

출처blog.csdn.net/jiuzhang_0402/article/details/130939716