|
통신 장비 제조사들이 자체적으로 구축해왔던 모바일 기지국의 인터페이스를 통합한 O-RAN 환경에 맞는 AI/ML 프레임워크 오픈소스를 소개합니다. |
들어가며
안녕하세요. 차세대통신연구센터 통신S/W 연구팀의 이회주입니다. 네트워크 도메인에서는 현재 클라우드 기반의 네트워크 기기의 가상화(Virtualization)와 AI를 적용한 네트워크 운용 효율화에 대한 연구가 활발히 진행중입니다.
대규모 사물 통신으로 더욱 많아지는 통신기기들을 효율적으로 관리하고 고신뢰, 저지연 통신을 기반으로 하는 높은 수준의 서비스를 제공하기 위해 통신사와 제조사들은 네트워크 기기들을 SW화하여 물리적인 제약으로부터 벗어나기 위한 연구를 진행하고 있습니다. 삼성전자에서 최초로 상용화에 성공한 5G vRAN을 비롯하여 이미 모바일 네트워크 구성 요소들은 S/W 모듈, 특히 클라우드 환경에 맞는 마이크로 서비스로 대체되기 시작하였고, AI를 활용한 네트워크 운영 자동화와 리소스 최적화 기술 개발도 활발히 진행 중입니다.
이번 기술 블로그 포스팅에서는 네트워크 모듈의 가상화와 클라우드 기술을 기반으로 Radio Access Network(RAN)의 제어 지능화를 위한 AI 기술 적용 방법에 대해 이야기하려고 합니다. 특히 제조사에 특화되어 있던 RAN 기기들의 인터페이스를 통합하고, 관련 SW 모듈과 AI 적용 프로세스 등을 표준화하고 있는 O-RAN Alliance[1] 관련 오픈소스를 소개하고, 그중 당사가 주도적으로 개발하고 있는 AI/ML 프레임워크 오픈소스의 구성 및 동작에 대하여 자세히 설명하려고 합니다.
O-RAN Alliance는 2018년에 조직되었고, 이듬해 2019년 4월에는 리눅스 재단과 함께 O-RAN의 구조와 스펙에 기반한 오픈소스를 개발하기 위해 O-RAN Software Community(O-RAN SC)[2]를 개설했습니다.
Samsung Research는 2019년부터 네트워크 사업부와 협력하여 O-RAN Alliance에서 새롭게 정의하는 스펙과 오픈소스에 대한 이해를 기반으로, RAN Intelligent Controller(RIC[3])로 불리는 RAN 제어 애플리케이션 플랫폼과 O-RAN 환경에 AI 모델을 적용하기 위한 AI/ML Workflow(AIMLFW) 기능을 개발하였습니다. 특히 AI/ML Workflow를 오픈소스로 공개하기 위해 O-RAN SC 내에 ‘AIMLFW’라는 이름의 프로젝트를 신설하고 개발을 주도하고 있습니다.
O-RAN AI/ML Workflow와 AIMLFW 프로젝트
O-RAN Alliance에는 11개의 Work Group(WG)이 있습니다. 그중 WG2[4]에서는 O-RAN의 구성 요소들에 AI 기술을 적용하기 위해 AI 모델의 학습과 배포를 포함한 전체 라이프 사이클을 AI/ML Workflow라는 스펙으로 정의하고 있습니다.
그림 1. WG2 스펙의 AI/ML Workflow 구성도
해당 스펙에는 그림 1과 같이, AI/ML Workflow의 전반적인 개념과 구성, 모듈 간 인터페이스에 대한 정의와 아래 명시된 주요 기능 리스트의 상세 요구사항들이 포함되어 있습니다.
- S모델 생성/학습/선택
- S모델 배포 및 추론
- S모델 성능 모니터링
- S모델 재학습/재배포 및 종료
당사에서는 그림 1의 개념 구성도와 위에 나열된 기능 리스트를 고려하여 AI/ML Workflow를 직접 SW로 구현하기 위한 설계를 진행하고 구현에 필요한 오픈소스들을 선정하였습니다.
AIML Workflow의 구성 요소들은 유즈 케이스별 요구사항에 맞게 다양한 형태로 배포될 수 있습니다. WG2의 스펙에는 가장 일반적인 배포 형태 4종이 아래 표1과 같이 정의되어 있습니다. 시나리오별로 RIC, Open CU(O-CU), Open DU(O-DU), Open RU(O-RU)가 AI/ML Workflow를 위해 담당해야 할 기능들이 명시됩니다.
|
Deployment Scenario
|
Data Preparation
|
AI/ML Training
|
AI/ML Inference
|
Model Management
|
Subject of Action
|
Policy
|
Enrichment Data
|
|---|---|---|---|---|---|---|---|
|
Scenario 1.1
|
Non-RT RIC
|
Non-RT RIC
|
Non-RT RIC
|
Non-RT RIC
|
Near-RT RIC
|
A1
|
SMO internal
|
|
O-CU/DU/RU
|
-
|
||||||
|
Scenario 1.2
|
Non/Near-RT RIC
|
Non-RT RIC
|
Near-RT RIC
|
Out of Non-RT RIC
|
Near-RT RIC
|
Near-RT RIC internal
|
A1
|
|
O-CU/DU/RU
|
E2
|
E2
|
|||||
|
Scenario 1.3
|
Out of Non-RT RIC
|
Out of Non-RT RIC
|
Non-RT RIC
|
Out of Non-RT RIC
|
Near-RT RIC
|
Near-RT RIC internal
|
A1
|
|
O-CU/DU/RU
|
TBD
|
TBD
|
|||||
|
Scenario 1.4
|
Non-RT RIC
|
Non-RT RIC
|
O-CU/O-DU
|
Non-RT RIC
|
O-CU/O-DU
|
TBD
|
TBD
|
AIMLFW 구성 및 활동 내역
O-RAN SC는 올해 末 공개될 9번째 공식 버전인 I Release를 준비 중입니다. AIMLFW 관련 소스는 앞선 G Release에 일부 Seed Code가 적용되었고, 최근 H Release에 추가 모듈이 포함되었습니다.
그림 2. AIMLFW 전체 아키텍처
AIMLFW는 WG2의 4종 배포 시나리오 중 표1의 Scenario 1.2를 가장 현실적인 대안으로 고려했습니다. 그림 2와 같이 데이터 저장 및 전처리, 모델 학습 등이 일어나는 Training Host는 Non-RT RIC와 함께 Service Management and Orchestration(SMO)[6] 클러스터에 배포되고, 생성된 모델은 Near-RT RIC로 배포되어 모델 추론과 추론 결과를 이용한 제어를 진행하는 구성입니다.
AI Training Host Platform은 SMO 내에 저장된 데이터를 모델 입력 포맷에 맞게 추출하고 모델 학습 파이프라인에 연동하여 학습을 진행하는 플랫폼입니다. 모델 학습 파이프라인이란 데이터 전처리, 모델 학습, 모델 평가, 재학습 그리고 모델 배포까지 진행되는 일련의 프로세스를 하나의 파이프라인으로 정의한 것을 말합니다. 파이프라인의 최초 입력 데이터와 학습 완료 후 생성된 모델의 저장소만 연동해 주면 지정된 순서에 따라 모델 학습을 진행합니다. 파이프라인은 다른 모델 학습을 위해 재활용할 수도 있으며, 파이프라인 자체를 Edge Cluster로 배포하면 Online Training도 가능합니다. 이렇게 학습 파이프라인을 정의하고 구동시키는 기능을 그림 2의 Training Platform Service(TPS)가 제공합니다. AIMLFW 프로젝트에서는 Kubeflow[7]를 기본 TPS로 사용합니다. 또, Kubeflow가 아닌 다른 학습 플랫폼과의 연동을 위해 TPS Adapter라는 모듈을 구현하여 Feature Store와 같이 데이터를 제공하는 모듈과 학습 파이프라인을 구동하는 TPS 간 데이터가 연결될 수 있도록 구현했습니다. 학습 완료 후 생성된 모델은 Training Host 내의 모델 저장소에 저장됩니다.
저장된 모델은 추론 서비스 형태로 패키징되어 Inference Host에 배포됩니다. 추론 서비스는 모델의 입력 데이터를 외부로부터 받아 추론을 진행하고 모델의 추론값을 결과로 다시 돌려주는 서비스를 일컫는데, 모델을 이런 서비스 형태로 만들어서 배포하는 기능을 Inference Platform Service(IPS)에서 제공합니다. AIMLFW에서는 Kserve[8]를 기본 IPS로 사용합니다. Kserve는 Kubeflow의 산하 프로젝트에서 독립한 오픈소스 프로젝트로 ‘InferenceService’라는 K8s의 CRD(Custom Resource Definition)[9]를 정의하여 AI 서비스를 배포/관리하며 Istio(Service Mesh)와 KNative(Serverless Application Framework)[10]를 활용하여 모델 입출력 데이터의 트래픽 분산과 서비스 오토스케일링 등의 기능을 제공합니다. RIC에 배포되는 여러 애플리케이션 중 AI 모델을 포함하고 있는 애플리케이션은 데이터 처리 시간이 모델 추론 시간만큼 길어지는데, Near-RT RIC에 배포되는 RAN 제어 애플리케이션은 근실시간의 Closed-loop 요구사항을 만족해야 하기 때문에 추론 호스트의 로드밸런싱과 서비스의 스케일 조정 기능은 필수적입니다.
이렇게 구성된 AI/ML Workflow가 RIC 플랫폼과 연동하여 동작하기 위해서는 RIC 플랫폼의 동작과 AI/ML Workflow를 이어주는 보조 애플리케이션이 필요합니다. AIMLFW 프로젝트에서는 이 애플리케이션을 ML Assist xApp으로 정의했습니다. Assist xApp은 RIC 내부의 Shared Data Layer(SDL)에 접근하거나, DU/CU로 Subscription을 요청하여 필요한 데이터를 수집합니다. 그리고 ML xApp에서 요구하는 입력 데이터 타입에 맞게 데이터를 정제하여 추론 요청을 보내고 그 결괏값을 이용하여 RAN 제어 메시지를 생성하거나 혹은 다른 서비스에 전달해 주는 역할을 합니다. 현재 오픈소스에는 Kubeflow Adapter, Kserve Adapter, Feature Store 및 UI Dashboard를 포함한 8개의 Repo가 생성되어 있으며, O-RAN에서 정의하는 유즈 케이스 중 하나인 Traffic Steering을 지원하기 위한 QoE Prediction Assist xApp이 구현되어 있습니다. 또, 가장 최근 발행된 H Release에는 O-RAN에서 정의하는 Cloud Interface를 지원하기 위해 DMS(Deploy Management Service)[11] 모듈과의 호환 테스트를 완료한 Kserve Adapter가 적용되었습니다.
AIMLFW는 아직 초기 단계로, RIC를 포함한 O-RAN 구성 요소들과의 유기적인 연동을 비롯하여 필요 리소스의 최적화나 추론 성능 향상 등 다양한 과제들이 많이 남아 있습니다. Samsung Research에서는 현재 I/J Release를 목표로 AI/ML 모델의 성능을 모니터링하기 위한 모듈을 제안하고 내부 개발을 진행 중입니다. 모델 입출력 데이터와 관련 KPI를 Edge Cluster에서 수집하고 분석 모듈로 전달하는 기능을 제공할 예정입니다. 모델 입출력 데이터의 트렌드 분석을 통해 모델이 배포된 환경 변화를 감지하고, AI 모델이 생성한 제어 메시지에 따른 KPI 변화를 분석하면 모델의 성능 하락 여부를 확인할 수 있습니다. AI 모델을 환경에 적용하기 위해서는 해당 모델로 인한 리스크를 최소화하고 예방하는 것이 필수적입니다. 모니터링 프로세스가 안정화되면 모델의 업데이트 시점 결정과 학습, 배포 동작 자동화도 가능할 것입니다.
감사합니다.
|
|
