paint-brush
딥 러닝을 위한 레이크하우스인 Deep Lake: 논의와 한계~에 의해@dataology
166 판독값

딥 러닝을 위한 레이크하우스인 Deep Lake: 논의와 한계

너무 오래; 읽다

연구원들은 딥 러닝 프레임워크를 위한 복잡한 데이터 스토리지 및 스트리밍을 최적화하는 딥 러닝용 오픈 소스 레이크하우스인 Deep Lake를 소개합니다.
featured image - 딥 러닝을 위한 레이크하우스인 Deep Lake: 논의와 한계
Dataology: Study of Data in Computer Science HackerNoon profile picture
0-item

저자:

(1) Sasun Hambardzumyan, Activeloop, Mountain View, CA, USA;

(2) Abhinav Tuli, Activeloop, 미국 캘리포니아주 마운틴뷰;

(3) Levon Ghukasyan, Activeloop, Mountain View, CA, USA;

(4) Fariz Rahman, Activeloop, 미국 캘리포니아주 마운틴뷰;.

(5) Hrant Topchyan, Activeloop, Mountain View, CA, USA;

(6) David Isayan, Activeloop, 미국 캘리포니아주 마운틴뷰;

(7) 마크 맥퀘이드(Mark McQuade), 미국 캘리포니아주 마운틴뷰 소재 Activeloop;

(8) Mikayel Harutyunyan, Activeloop, 미국 캘리포니아주 마운틴뷰;

(9) Tatevik Hakobyan, Activeloop, 미국 캘리포니아주 마운틴뷰;

(10) Ivo Stranic, Activeloop, Mountain View, CA, USA;

(11) Davit Buniatyan, Activeloop, Mountain View, CA, USA.

링크 표

7. 논의 및 제한

Deep Lake의 주요 사용 사례에는 (a) 딥 러닝 모델 교육, (b) 데이터 계보 및 버전 제어, (c) 데이터 쿼리 및 분석, (d) 데이터 검사 및 품질 관리가 포함됩니다. 우리는 NumPy [55] 배열을 기본 블록으로 사용하여 구현했습니다.


그림 10: 1B 매개변수 CLIP 모델을 훈련하는 동안 단일 16xA100 GPU 시스템의 GPU 활용 [60]. 데이터 세트는 AWS us-east에서 GCP us-central 데이터 센터로 스트리밍되는 LAION-400M[68]입니다. 각 색상은 훈련에 대한 단일 A100 GPU 활용도를 보여줍니다.


버전 관리, 스트리밍 데이터로더, 처음부터 시각화 엔진.

7.1 디자인 공간 포맷

TSF(Tensor Storage Format)는 많은 기계 학습 및 딥 러닝 알고리즘에 사용되는 숫자 값의 다차원 배열인 텐서를 저장하기 위해 특별히 설계된 바이너리 파일 형식입니다. TSF 형식은 효율적이고 컴팩트하게 설계되어 텐서 데이터를 빠르고 효율적으로 저장하고 액세스할 수 있습니다. TSF 형식의 주요 장점 중 하나는 동적으로 모양이 지정된 텐서를 포함하여 광범위한 텐서 데이터 유형을 지원한다는 것입니다.


이에 비해 Parquet [79] 및 Arrow [13] 형식은 대규모 분석 데이터 세트를 저장하고 처리하기 위해 설계된 열 형식 파일 형식입니다. 텐서 데이터용으로 특별히 설계된 TSF와 달리 Parquet 및 Arrow는 테이블 형식 및 시계열 데이터에 대한 분석 워크로드를 효율적으로 저장하고 쿼리하는 데 최적화되어 있습니다. 컬럼형 저장 및 압축 기술을 사용하여 저장 공간을 최소화하고 성능을 향상시켜 빅데이터 애플리케이션에 적합합니다. 그러나 TSF는 텐서 데이터와 관련하여 Parquet 및 Arrow에 비해 몇 가지 장점이 있습니다. TSF는 텐서 작업과 딥 러닝 프레임워크로의 효율적인 스트리밍을 지원할 수 있습니다.


다른 텐서 형식[18, 52, 23, 57]은 청크 간 조정이 필요하지 않기 때문에 대량 병렬화 가능한 워크로드에 효율적입니다. Tensor Storage Format의 주요 절충점은 패딩 메모리 공간 없이 텐서 내부에 동적으로 모양의 배열을 저장할 수 있다는 것입니다. 예를 들어 컴퓨터 비전에서는 다양한 모양의 여러 이미지나 동적 길이의 비디오를 저장하는 것이 매우 일반적입니다. 유연성을 지원하기 위해 실제로 프로덕션 워크로드에 미치는 영향은 관찰되지 않은 이전에 논의한 청크 인코더의 형태로 사소한 오버헤드가 도입되었습니다.

7.2 데이터로더

Deep Lake는 대형 이미지 반복에 대한 벤치마크에서 볼 수 있듯이 로컬 및 원격 설정에서 최첨단 결과를 달성합니다. 그림 7. 주로 ImageNet 모델 훈련의 감소를 주장하는 FFCV[39]보다 빠릅니다. 모델 학습당 최대 98센트. 또한 Deep Lake는 WebDataset[19]과 유사한 수집 성능을 달성합니다. Deep Lake는 더 큰 이미지에서 훨씬 뛰어난 성능을 발휘합니다. Parquet은 소규모 셀 및 분석 워크로드에 최적화되어 있는 반면, Deep Lake는 동적으로 형성되는 대규모 텐서리 데이터에 최적화되어 있습니다. 다른 데이터 레이크 솔루션과 비교하여 최소한의 Python 패키지 설계를 통해 Deep Lake를 대규모 분산 교육 또는 추론 워크로드에 쉽게 통합할 수 있습니다.

7.3 향후 작업

현재 Deep Lake 구현에는 추가 개선의 기회가 있습니다. 첫째, 저장 형식은 벡터 검색이나 키-값 인덱싱에 필요한 더욱 효율적인 저장 레이아웃을 위한 사용자 정의 순서를 지원하지 않습니다. 둘째, Deep Lake는 동시 액세스를 위해 분기 기반 잠금을 구현합니다. Delta ACID 트랜잭션 모델[27]과 유사하게 Deep Lake는 고성능 병렬 워크로드로 확장될 수 있습니다. 셋째, 현재 TQL 구현은 SQL 작업의 하위 집합만 지원합니다(즉, 조인과 같은 작업은 지원하지 않습니다). 추가 작업은 SQL을 완성하고, 더 많은 숫자 연산으로 확장하고, 외부 데이터 소스에서 통합 쿼리를 실행하고, SQL 엔진에 대한 벤치마킹에 중점을 둘 것입니다.


이 문서는 CC 4.0 라이선스에 따라 arxiv에서 볼 수 있습니다.