728x90
반응형
https://docs.ray.io/en/latest/ray-overview/installation.html
Ray란?
Ray는 AI와 Python 어플리케이션의 확장을 위한 통합 프레임워크이다. Ray는 핵심 분산 runtime과 ML 계산의 단순화를 위한 라이브러리 툴킷으로 구성되어 있다.
Ray AIR
- Datasets : 분산된 데이터 전처리
- Train : 분산 학습
- Tune : 확장 가능한 하이퍼파라미터 튜닝
- Serve : 확장 및 프로그래밍 가능한 서빙
- RLib : 확장 가능한 강화학습
Ray Core
- Tasks : 클러스터에서 실행되는 상태 비저장 함수
- Actors : 클러스터에서 생성된 상태 저장 작업자 프로세스
- Objects : 클러스터 전체에서 접근할 수 있는 변경 불가능한 값
특징
- 분산 / 병렬 애플리케이션을 쉽게 구축하기 위한 프레임워크
- 기존의 코드를 거의 변경하지 않고 코드를 쉽게 분산 / 병렬화
- python 병렬 처리에서 많이쓰는 multiprocessing은 기존 코드를 수정해야함. 또한 여러 클러스터로 분산처리하기에 초심자 입장에서 어려울 수 있음
- Ray는 버클리 대학의 RISE연구실에서 만들어서 Apache Arrow를 사용해 데이터를 효율적으로 처리함
장점
- 기존코드에서 약간의 수정으로 병렬 처리 가능
- 클러스터 환경에서 구축 가능
- dashboard : 성능, 로그 확인
- 멀티프로세싱보다 빠른 성능
- 머신러닝 / 딥러닝에서 활용하기에 좋음
- 다양한 머신러닝 라이브러리 제공
설치
현재 리눅스, 맥OS만 지원하고 있다. 윈도우는 베타버젼이다.
## Ray와 지원되는 dashboard, cluster launcher 포함해서 설치
pip install -U "ray[default]"
## Ray 개별 라이브러리 설치
pip install -U "ray[air]" # Ray + Ray AI Runtime
pip install -U "ray[tune]" # Ray + Ray Tune
pip install -U "ray[rllib]" # Ray + Ray RLLib
pip install -U "ray[air]" # Ray + Ray Server
728x90
반응형
'Programming' 카테고리의 다른 글
[Ray] 2. Ray Core (0) | 2022.10.11 |
---|---|
[자료구조] Heap (0) | 2022.10.07 |
Python functools 모듈의 내장함수[기본] (0) | 2022.08.06 |
파이썬 로그 핸들링 (0) | 2022.08.01 |
파이썬 예외처리 (0) | 2022.08.01 |