모델, 데이터 및 프레임워크에 대한 심층 분석: 효율적인 대규모 언어 모델에 대한 철저한 54페이지 검토
대규모 언어 모델(LLM)은 자연어 이해, 언어 생성, 복잡한 추론을 비롯한 여러 중요한 작업에서 강력한 기능을 입증했으며 사회에 지대한 영향을 미쳤습니다. 그러나 이러한 뛰어난 기능을 사용하려면 상당한 교육 리소스(왼쪽 이미지 참조)와 긴 추론 시간(오른쪽 이미지 참조)이 필요합니다. 따라서 연구자들은 효율성 문제를 해결하기 위한 효과적인 기술적 수단을 개발해야 합니다.
또한 그림의 오른쪽에서 볼 수 있듯이 Mistral-7B와 같은 일부 효율적인 LLM(언어 모델)이 LLM 설계 및 배포에 성공적으로 사용되었습니다. 이러한 효율적인 LLM은 LLaMA1-33B와 유사한 정확도를 유지하면서 추론 메모리 사용량을 크게 줄이고 추론 대기 시간을 줄일 수 있습니다. 이는 이미 LLM의 설계 및 사용에 성공적으로 적용된 실현 가능하고 효율적인 방법이 있음을 보여줍니다.
이 리뷰에서는 오하이오 주립 대학교, 임페리얼 칼리지, 미시간 주립 대학교, 미시간 대학교, Amazon, Google, Boson AI 및 Microsoft Asia Research의 연구원들이 효율적인 LLM 연구에 대한 통찰력을 제공합니다. 시스템 조사. 그들은 LLM의 효율성을 최적화하기 위한 기존 기술을 모델 중심, 데이터 중심, 프레임워크 중심의 세 가지 범주로 나누고 관련 최신 기술을 요약하고 논의했습니다.
- 논문: https://arxiv.org/abs/2312.03863
- GitHub: https://github.com/AIoT-MLSys-Lab/Efficient -LLM s -Survey
심사에 포함된 논문을 편리하게 정리하고 최신 상태로 유지하기 위해 연구자는 GitHub 저장소를 만들어 적극적으로 유지관리하고 있습니다. 그들은 이 저장소가 연구원과 실무자가 효율적인 LLM의 연구 및 개발을 체계적으로 이해하고 이 중요하고 흥미로운 분야에 기여하도록 영감을 주는 데 도움이 되기를 바랍니다.
창고 URL은 https://github.com/AIoT-MLSys-Lab/Efficient-LLMs-Survey입니다. 이 저장소에서는 효율적인 저전력 기계 학습 시스템에 대한 조사와 관련된 콘텐츠를 찾을 수 있습니다. 이 저장소는 사람들이 효율적인 저전력 기계 학습 시스템을 더 잘 이해하고 탐색하는 데 도움이 되는 연구 논문, 코드 및 문서를 제공합니다. 이 분야에 관심이 있다면 이 저장소를 방문하여 더 많은 정보를 얻을 수 있습니다.
모델 중심
모델 중심 접근 방식은 모델 자체가 초점이 되는 알고리즘 수준과 시스템 수준의 효율적인 기술에 중점을 둡니다. LLM에는 수십억 또는 심지어 수조 개의 매개변수가 있고 소규모 모델에 비해 출현과 같은 고유한 특성이 있으므로 LLM의 효율성을 최적화하려면 새로운 기술을 개발해야 합니다. 이 기사에서는 모델 압축, 효율적인 사전 훈련, 효율적인 미세 조정, 효율적인 추론, 효율적인 모델 아키텍처 설계를 포함하여 모델 중심 방법의 5가지 범주에 대해 자세히 설명합니다.
1. 압축 모델 기계 학습 분야에서는 모델 크기가 중요한 고려 사항인 경우가 많습니다. 모델이 클수록 더 많은 저장 공간과 컴퓨팅 리소스가 필요한 경우가 많으며 모바일 장치에서 실행할 때 제한이 발생할 수 있습니다. 따라서 모델을 압축하는 것은 모델의 크기를 줄이기 위해 일반적으로 사용되는 기술입니다. 모델 압축 기술은 주로 양자화, 매개변수 가지치기, 하위 순위 추정 및 지식 증류(아래 그림 참조)의 네 가지 범주로 나누어지며, 그 중 양자화(Quantization)가 있습니다. 모델의 가중치 또는 활성화 값을 높은 정밀도에서 낮은 정밀도로 압축합니다. 매개변수 가지치기는 모델 가중치 중 더 중복되는 부분을 검색하고 삭제합니다. 낮은 순위 추정은 모델의 가중치 행렬을 여러 개의 낮은 정밀도로 변환합니다. 작은 행렬의 순위를 지정합니다. 제품 및 지식 증류는 큰 모델을 직접 사용하여 작은 모델을 훈련하므로 작은 모델은 특정 작업을 수행할 때 큰 모델을 대체할 수 있습니다.
2. 효율적인 사전 교육
LLM 사전 교육 비용은 매우 비쌉니다. 효율적인 사전 교육은 효율성을 향상하고 LLM 사전 교육 프로세스의 비용을 줄이는 것을 목표로 합니다. 효율적인 사전 훈련은 혼합 정밀 가속, 모델 스케일링, 초기화 기술, 최적화 전략 및 시스템 수준 가속으로 나눌 수 있습니다.
혼합 정밀 가속은 낮은 정밀도 가중치를 사용하여 기울기, 가중치 및 활성화를 계산한 다음 이를 다시 높은 정밀도로 변환하고 이를 적용하여 원래 가중치를 업데이트함으로써 사전 훈련의 효율성을 향상시킵니다. 모델 확장은 작은 모델의 매개변수를 사용하여 큰 모델로 확장함으로써 사전 훈련 수렴을 가속화하고 훈련 비용을 줄입니다. 초기화 기술은 모델의 초기화 값을 설계하여 모델의 수렴 속도를 높이는 기술입니다. 최적화 전략은 모델 훈련 중에 메모리 소비를 줄이기 위해 경량 최적화 프로그램을 설계하는 데 중점을 둡니다. 시스템 수준 가속은 분산 및 기타 기술을 사용하여 시스템 수준에서 모델 사전 훈련을 가속화합니다.
3. 효율적인 미세 조정
효율적인 미세 조정은 LLM 미세 조정 프로세스의 효율성을 향상시키기 위해 설계되었습니다. 일반적인 효율적인 미세 조정 기술은 두 가지 범주로 구분됩니다. 하나는 매개변수 기반 효율적 미세 조정이고, 다른 하나는 메모리 효율적인 미세 조정입니다.
PEFT(Parameter Efficient Fine-Tuning)는 전체 LLM 백본을 동결하고 소수의 추가 매개변수 세트만 업데이트하여 LLM을 다운스트림 작업에 적용하는 것을 목표로 합니다. 본 논문에서는 PEFT를 어댑터 기반 미세 조정, 하위 순위 적응, 접두어 미세 조정 및 프롬프트 단어 미세 조정으로 더 나누었습니다.
효율적인 메모리 기반 미세 조정은 최적화 상태 및 활성화 값에 의해 소비되는 메모리를 줄이는 등 LLM 미세 조정 프로세스 전체에서 메모리 소비를 줄이는 데 중점을 둡니다.
4. 효율적인 추론
효율적인 추론의 목표는 LLM 추론 프로세스의 효율성을 높이는 것입니다. 연구자들은 일반적인 고효율 추론 기술을 크게 두 가지 범주로 분류합니다. 하나는 알고리즘 수준 추론 가속이고 다른 하나는 시스템 수준 추론 가속입니다.
알고리즘 수준의 추론 가속은 추측적 디코딩과 KV(캐시 최적화)라는 두 가지 범주로 나눌 수 있습니다. 추측 디코딩은 더 작은 초안 모델을 사용하여 병렬로 토큰을 계산하여 더 큰 대상 모델에 대한 추측 접두사를 생성함으로써 샘플링 프로세스 속도를 높입니다. KV - 캐시 최적화는 LLM 추론 프로세스 중에 KV(키-값) 쌍의 반복 계산을 최적화하는 것을 의미합니다.
시스템 수준 추론 가속은 지정된 하드웨어의 메모리 액세스 수를 최적화하고 알고리즘 병렬 처리량을 늘리는 등 LLM 추론을 가속화하는 것입니다.
5. 효율적인 모델 아키텍처 설계
LLM을 위한 효율적인 아키텍처 설계는 LF를 최소화하면서 성능과 확장성을 향상시키기 위해 모델 구조와 계산 프로세스를 전략적으로 최적화하는 것을 의미합니다. 효율적인 모델 아키텍처 설계를 모델 유형에 따라 효율적인 주의 모듈, 하이브리드 전문가 모델, 긴 텍스트 대형 모델, 변환기를 대체할 수 있는 아키텍처의 네 가지 주요 범주로 나눕니다.
효율적인 주의 모듈은 주의 모듈의 복잡한 계산과 메모리 사용을 최적화하는 것을 목표로 합니다. 하이브리드 전문가 모델(MoE)은 LLM의 일부 모듈의 추론 결정을 여러 개의 소규모 전문가 모델로 대체합니다. 텍스트 대형 모델은 매우 긴 텍스트를 효율적으로 처리하기 위해 특별히 설계된 LLM입니다. 변환기를 대체할 수 있는 아키텍처는 모델 아키텍처를 재설계하여 모델의 복잡성을 줄이고 사후 변환기 아키텍처에 필적하는 추론 기능을 달성하는 것입니다.
데이터 중심
데이터 중심 접근 방식은 LLM의 효율성을 향상시키는 데 있어 데이터 품질과 구조의 역할에 중점을 둡니다. 이 기사에서 연구자들은 데이터 선택 및 단서 엔지니어링을 포함하여 두 가지 유형의 데이터 중심 방법을 자세히 논의합니다.
1. 데이터 선택
LLM의 데이터 선택은 중복되거나 유효하지 않은 데이터를 제거하는 등 사전 훈련/미세 조정 데이터를 정리하고 선택하여 훈련 프로세스 속도를 높이는 것을 목표로 합니다.
2. 프롬프트 단어 엔지니어링
프롬프트 단어 엔지니어링은 LLM이 효과적인 입력(프롬프트 단어)을 설계하여 원하는 출력을 생성하도록 안내합니다. 그 효율성은 지루한 미세 조정 후에 상당한 모델 성능을 달성할 수 있다는 것입니다. . 연구자들은 일반적인 프롬프트 단어 엔지니어링 기술을 소수 샘플 프롬프트 단어 엔지니어링, 프롬프트 단어 압축 및 프롬프트 단어 생성의 세 가지 주요 범주로 나눕니다.
소수 샘플 프롬프트 단어 엔지니어링은 수행해야 하는 작업에 대한 이해를 돕기 위해 LLM에 제한된 예 세트를 제공합니다. 프롬프트 단어 압축은 긴 프롬프트 입력을 압축하거나 프롬프트 표현을 사용하여 LLM의 입력 처리를 가속화합니다. 프롬프트 단어 생성은 수동으로 주석이 달린 데이터를 사용하는 대신 모델이 구체적이고 관련성 있는 응답을 생성하도록 안내하는 효과적인 프롬프트를 자동으로 생성하는 것을 목표로 합니다.
프레임워크 중심
연구원들은 최근 인기 있는 효율적인 LLM 프레임워크를 조사하고 사전 훈련, 미세 조정 및 추론을 포함하여 최적화할 수 있는 효율적인 작업을 다음과 같이 나열했습니다. 그림에 표시됨).
요약
이 설문 조사에서 연구원들은 효율적인 LLM에 대한 체계적인 검토를 제공합니다. 이는 LLM을 더욱 민주화하는 데 전념하는 중요한 연구 영역입니다. 효율적인 LLM이 필요한 이유를 설명하는 것부터 시작합니다. 본 논문은 질서 있는 프레임워크 하에서 LLM의 알고리즘 수준과 시스템 수준의 효율적인 기술을 각각 모델 중심, 데이터 중심, 프레임워크 중심 관점에서 조사합니다.
연구원들은 LLM 및 LLM 중심 시스템에서 효율성이 점점 더 중요한 역할을 할 것이라고 믿습니다. 그들은 이 설문조사가 연구원과 실무자가 이 분야에 신속하게 진입하고 효율적인 LLM에 대한 새로운 연구를 활성화하는 촉매제 역할을 하는 데 도움이 되기를 바랍니다.
위 내용은 모델, 데이터 및 프레임워크에 대한 심층 분석: 효율적인 대규모 언어 모델에 대한 철저한 54페이지 검토의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Alter Table 문을 사용하여 SQL의 기존 테이블에 새 열을 추가하십시오. 특정 단계에는 다음이 포함됩니다. 테이블 이름 및 열 정보 결정, Alter Table 문 작성 및 진술 실행. 예를 들어, 고객 테이블에 이메일 열을 추가하십시오 (Varchar (50)) : Alter Table 고객 이메일 추가 Varchar (50);

SQL에서 열을 추가하기위한 구문은 Alter Table_Name ADD CORMEN_NAME DATY_TYPE [NOT NULL] [DEFAULT DEFAULT_VALUE]; 여기서 table_name은 테이블 이름이고 column_name은 새 열 이름, data_type는 데이터 유형이며 NULL은 NULL 값이 허용되는지 여부를 지정하고 기본값 기본값을 지정합니다.

SQL 테이블 개선 성능을 개선하기위한 팁 : 삭제 대신 Truncate 테이블을 사용하고 공간을 확보하고 ID 열을 재설정하십시오. 계단식 삭제를 방지하기 위해 외국의 주요 제약 조건을 비활성화하십시오. 트랜잭션 캡슐화 작업을 사용하여 데이터 일관성을 보장합니다. 배치는 빅 데이터를 삭제하고 한계를 통해 행 수를 제한합니다. 쿼리 효율성을 향상시키기 위해 지우고 지수를 재구성하십시오.

새로 추가 된 열에 대한 기본값을 설정하고 Alter Table 문을 사용하십시오. 문 : 열 추가를 지정하고 기본값을 설정하십시오. Alter Table_Name Add Column_name Data_Type Default_value; 구속 조건 조항을 사용하여 기본값을 지정하십시오. ALTER TABLE TABLE_NAME CORMENT CORMEN_NAME DATA DATA DATA DATA DATA DATA DATA DATAY_TYPE 제한 DEFAULT_COSSTRANT DEFAULT DEFAULT_VALUE;

예, 삭제 명령문은 SQL 테이블을 지우는 데 사용될 수 있습니다. 단계는 다음과 같습니다. 삭제 명령문 사용 : table_name에서 삭제; TABLE_NAME을 제거 할 테이블 이름으로 바꾸십시오.

Redis 메모리 조각화는 할당 된 메모리에 재 할당 할 수없는 작은 자유 영역의 존재를 말합니다. 대처 전략에는 다음이 포함됩니다. REDIS를 다시 시작하십시오 : 메모리를 완전히 지우지 만 인터럽트 서비스. 데이터 구조 최적화 : Redis에 더 적합한 구조를 사용하여 메모리 할당 및 릴리스 수를 줄입니다. 구성 매개 변수 조정 : 정책을 사용하여 최근에 가장 적게 사용 된 키 값 쌍을 제거하십시오. 지속 메커니즘 사용 : 데이터를 정기적으로 백업하고 Redis를 다시 시작하여 조각을 정리하십시오. 메모리 사용 모니터링 : 적시에 문제를 발견하고 조치를 취하십시오.

phpmyadmin을 사용하여 데이터 테이블을 만들려면 다음 단계가 필수적입니다. 데이터베이스에 연결하고 새 탭을 클릭하십시오. 테이블의 이름을 지정하고 저장 엔진을 선택하십시오 (InnoDB 권장). 열 이름, 데이터 유형, NULL 값 허용 여부 및 기타 속성을 포함하여 열 추가 버튼을 클릭하여 열 디테일을 추가하십시오. 기본 키로 하나 이상의 열을 선택하십시오. 저장 버튼을 클릭하여 테이블과 열을 만듭니다.

Redis 데이터베이스의 효과적인 모니터링은 최적의 성능을 유지하고 잠재적 인 병목 현상을 식별하며 전반적인 시스템 신뢰성을 보장하는 데 중요합니다. Redis Exporter Service는 Prometheus를 사용하여 Redis 데이터베이스를 모니터링하도록 설계된 강력한 유틸리티입니다. 이 튜토리얼은 Redis Exporter Service의 전체 설정 및 구성을 안내하여 모니터링 솔루션을 원활하게 구축 할 수 있도록합니다. 이 자습서를 연구하면 완전히 작동하는 모니터링 설정을 달성 할 수 있습니다.
