낮은 텐서는 큰 언어 모델의 적응을 순위에 올랐습니다
이 저장소는 LOTR (ARXIV : 2402.01376)의 원래 구현으로, LLM의 매개 변수 효율적인 미세 조정에 대한 새로운 접근법 인 텐서 분해 형태로 매개 변수에 대한 그라디언트 업데이트를 나타냅니다. 각 층의 저 순위 어댑터는 3 개의 행렬의 생성물로 구성되며 텐서 구조는이 제품의 왼쪽 및 오른쪽 승수를 층간에 공유하여 발생합니다. 낮은 순위 텐서 표현을 갖는 일련의 레이어 시퀀스의 동시 압축을 통해 LOTR은 특히 심층 모델의 경우 LORA보다 더 나은 파라미터 효율을 보관할 수 있습니다. 또한, 코어 텐서는 원래 중량 치수에 의존하지 않으며 임의의 작게 만들 수 있으므로 매우 저렴하고 빠른 다운 스트림 미세 조정이 가능합니다.
@misc { bershatsky2024lotr ,
title = { {LoTR}: Low Tensor Rank Weight Adaptation } ,
author = { Daniel Bershatsky and Daria Cherniuk and Talgat Daulbaev and Aleksandr Mikhalev and Ivan Oseledets } ,
year = { 2024 } ,
eprint = { 2402.01376 } ,
archivePrefix = { arXiv } ,
primaryClass = { cs.CL }
} 우리는 모든 원시 실험 결과 (예 : 로깅 파일, 무엇보다도) log 디렉토리에 있다고 가정합니다. 이 디렉토리의 고급 구조는 실험 설정을 반영해야합니다. 따라서이 디렉토리에 대한 경로에는 다음과 같이 구조가 있어야합니다.
<dataset>/<model>/<method>/<param1>/<param2>/.../<seed>/<tfevents-file>
모델 세그먼트는 대개 모델의 수가 일반적으로 모델과 훈련 파이프 라인의 수가 모델과 방법별로 매개 변수에 따라 더 작기 때문에 메소드 경로 세그먼트를 사전에 전달합니다. 모든 부동 소수점 매개 변수는 과학 표기법에 사용되어야합니다. LAT 디렉토리는 실험을 실행하는 데 사용되는 임의의 종자입니다.
완전한 기능을 갖춘 기계 학습 실험 관리 소프트웨어가 없기 때문에 위의 요구 사항은 비자발적입니다.
Tensorboard tfvents -file은 읽고로드하는 데 눈에 띄게 오랜 시간이 걸리는 상당히 큰 파일입니다. 따라서 다음 명령으로 tfevents -files를 parquet -files로 변환합니다.
python -m lotr.tb2parquet log/glue data/glue.parquet
--names model method task lr rank seed 이제 다음과 같이 모든 시계열이있는 단일 parquet -파일을 읽을 수 있습니다.
import pandas as pd
df = pd . read_parquet ( 'data/glue.parquet' ) 보다 구체적으로, 20MB의 tfevents -file은 200kb의 parquet -file로 변환됩니다.