본문 바로가기
SingleStoreDB/사례연구

ML 플랫폼 "MindsDB"에서 SingleStore 데이터베이스를 통한 실시간 머신 러닝

by 에이플랫폼 [Team SingleStore Korea] 2021. 6. 29.

SingleStore와 MindsDB는 최근 SingleStore 데이터베이스 내에서 머신러닝 혁신 추진과 머신러닝 기능을 제공하는 파트너십을 발표했습니다. SingleStore는 실시간 추론(Inference)을 지원하는 것 외에도 머신러닝을 위한 학습 성능을 향상시키는 다양한 기능들을 제공합니다. MindsDB Business Development 부사장 Erik Bovee가 게시한 이 블로그에는 이러한 흥미로운 통합에 대한 개요가 나와 있습니다.

이전 게시물에서는 데이터 계층의 머신러닝스트림 데이터에 대한 머신러닝 및 대량의 다변수 시계열 과 같은 어려운 머신러닝 문제 해결에 대해 살펴본 적이 있으며, SingleStore 데이터베이스는 이전에 살펴본 활용 사례의 모든 영역에서 머신러닝을 강화하는 다양한 기능과 성능을 제공합니다.

SingleStore는 원래 메모리 내 실행을 위해 설계된 고성능 데이터베이스로, 대량 데이터에 고성능을 제공하며 특히 온라인 분석과 트랜잭션 모두에 적합합니다.

Column stats, Histograms, and Windowing 함수들

SingleStore로 MindsDB를 실행하면 데이터 사이즈와 타입 그리고 ML 모델의 사이즈와 특징에 따라 매우 집약적일 수 있는 머신러닝 알고리즘을 학습하는 컴퓨팅 요구사항을 줄이고 그 성능을 크게 향상시킬 수 있습니다.

많은 머신러닝 애플리케이션의 경우 전체 데이터 셋이 아닌 일부 데이터에 대한 학습이 이루어집니다. 머신러닝 엔지니어는 학습을 위해 통계적으로 중요한 데이터 서브셋(Subset)을 추출하고 데이터를 준비하고 변환하는 업무를 종종 담당합니다. SingleStore에는 이러한 작업을 단순화하고 학습을 가속화하는 2가지 중요한 기능이 있습니다. 즉, 자동화된 통계를 사용한 데이터 샘플링과 윈도우 함수들입니다.

SingleStore에는 쿼리 플랜에 사용되는 정보를 수집하는 'autostats' 라는 기능을 포함하는 통계 기능이 있으며, 이 기능은 머신러닝을 위한 데이터 샘플링에도 매우 유용합니다. autostats는 2가지 유형의 정보를 제공합니다.

• 컬럼의 카디널리티(cardinality)에 대한 정보를 포함한 "Column stats"(높은 카디

널리티는 ML에서 문제가 될 수 있으나 MindsDB는 이를 잘 처리함

• 컬럼의 데이터 분포에 대한 정보를 제공하는 " Histograms" 또는 " range

statistics "

 

‘column stats’의 정보는 MindsDB가 데이터에 대한 학습을 위해 ML 모델 또는 믹서를 자동으로 선택하는데 매우 유용하며, 히스토그램은 데이터 준비 및 변환에 필요한 데이터 샘플 및 통계 정보를 매우 빠르게 제공을 합니다. SingleStore에서 'autostats'를 설정하면 MindsDB가 데이터를 준비하는 데 걸리는 시간을 단축하고, 학습 시간을 단축하는데 도움이 되는 통계를 생성할 수 있으며, 학습된 모델 품질을 높일 수 있습니다.

보다 효율적인 학습을 위한 또 다른 유용한 기능은 SingleStore 'Window' 함수입니다.

Window함수는 SQL GROUP BY와 유사하게 여러 행(Row)에 걸쳐 집계를 수행하고 값을 반환합니다. 또한 Window함수는 GROUP BY와 달리 행 값을 단일 집계로 축소하지 않지만 관련 집계 (최소, 최대 또는 평균과 같은 통계 값)를 추가하는 동안 개별 행 값을 유지합니다.

윈도잉(Windowing)은 서브 샘플(Subsample)을 얻는 동시에 학습에 필요한 집계 값을 생성하는 매우 효율적인 방법이며 학습용 시계열 모델을 위한 샘플링을 위한 좋은 방법입니다.

매우 빠른 추론(Inference)

Singlestore는 고객이 예측 변수를 데이터 스트림에 바인딩하고 예측 스트림을 생성해야 하는 선도적인 스트리밍 플랫폼과 유사하게 실시간 머신러링을 해야 하는 기능과 특성들을 지원합니다 (예, 이상 감지와 같은 실시간활용 사례). 'Streaming AI Layer' (SAIL) 보시기 바랍니다.

또한 SingleStore에는 다음과 같은 몇 가지 ML 지원 기능이 있습니다.

데이터 스트리밍을 위한 내장 데이터 파이프라인,

ML 모델로 빠른 데이터 파이핑을 위한 병렬 조회 쿼리에 대응하는 개별 파티션

으로 분할된 테이블

실시간 예측기에 대한 즉각적인 파이핑을 위한 고속 트랜잭션 지원

 

이상징후 감지 예에서 지속적으로 새로운 항목이 데이터베이스에 기록이 되는 시계열 데이터가 있다고 가정을 해보면, 새 항목의 데이터는 SingleStore에서 MindsDB로 파이프 될 수 있으며 각 타임 스탬프에 대해 즉시 예측이 생성됩니다. 실제 데이터와 예측 데이터를 비교하고 실제 데이터가 예측된 신뢰 한계를 벗어나면 실시간으로 이상 징후가 감지됩니다.

실시간 머신러닝을 위한 최고 성능

이미 SingleStore 사용자 인 경우 기존 SingleStore 기능을 빠르게 활용하여 SingleStore를 MindsDB 서비스에 연결하기만 하면 데이터베이스에서 직접 빠르고 효율적인 머신 러닝 기능을 사용할 수 있습니다.

 

MindsDB와 SingleStore는 올해 공동 기능, 활용 사례 및 모범 활용 사례에 대한 심층 조사를 위한 다양한 이벤트를 개최할 예정입니다.

June 21st, 2021


출처: https://www.singlestore.com/blog/real-time-machine-learning-with-mindsdb/

 

Real-time Machine Learning in SingleStore with MindsDB

SingleStore and MindsDB recently announced a partnership to advance machine learning innovation and provide machine learning features within the SingleStore database.

www.singlestore.com

 

 

 www.a-platform.biz | info@a-platform.biz