제퍼넷 로고

Voila 및 Saturn Cloud를 사용하여 대시 보드 생성 및 배포

시간

Voila 및 Saturn Cloud를 사용하여 대시 보드 생성 및 배포

대규모 데이터 세트로 작업 및 교육하고, 모두 한곳에서 유지하고, 프로덕션에 배포하는 것은 어려운 작업입니다. 이 기사에서는 Saturn Cloud가 무엇인지, 엔드 투 엔드 파이프 라인의 속도를 높이는 방법, Voila 및 Python을 사용하여 대시 보드를 생성하고 몇 가지 간단한 단계로 프로덕션에 게시하는 방법에 대해 설명했습니다.


By 드루 밀 파텔, NVIDIA의 성능 분석가 인턴

은행 거래 데이터 필터링 및 시각화

 
대규모 데이터 세트로 작업 및 교육하고, 모두 한곳에서 유지 관리하고, 프로덕션에 배포하는 것은 어려운 작업입니다. 하지만 몇 번의 클릭만으로이 모든 것을 처리 할 수있는 방법이 있다고 말하면 어떻게 될까요?
 
우리가 그것을 어떻게 쉽게 할 수 있는지 이해합시다. 이 기사 전체에서 우리는 기계 학습 모델을 실행하는 대시 보드 (Python 및 Voila 사용)를 생성하여 사기성 트랜잭션을 제거하고 시각화를 통해 남은 데이터를 표시하고 더 쉽게 액세스 할 수 있도록 Saturn Cloud의 프로덕션 서버에 게시합니다. 여기에 기사의 개요가 있습니다. 세부 사항을 알고 있다면 한두 섹션을 자유롭게 이동하십시오.

  1. 토성 구름?
  2. 대시 보드 만들기 (데이터 필터링 및 시각화 사용)
  3. 대시 보드 배포 (로컬 및 프로덕션)
  4. 미주

토성 구름이란?

 
Saturn 클라우드는 DevOps 및 ML 인프라를 자동화하는 기계 학습 플랫폼입니다. 게다가 그들은 jupyter와 dash를 사용하여 엄청난 양의 데이터를 위해 파이썬을 확장합니다. 다음은 Saturn Cloud가 제공하는 몇 가지 추가 기능입니다.

  • 당신이 사용할 수 다 스크 필요한만큼의 컴퓨터에서 병렬로 코드를 실행하려면
  • 번거 로움없이 GPU에서 코드를 실행할 수 있습니다.
  • 별도의 팀에 의존하지 않고 작업을 배포 할 수 있습니다.
  • 전적으로 오픈 소스 도구를 기반으로 구축되었습니다. 
  • AWS 계정에서도 실행할 수 있습니다. 또한 Saturn Cloud는 기존 데이터에 연결되므로 이동할 필요가 없습니다. 필요한 자격 증명을 추가하면됩니다.
  • Google Colab에서 Dask에 연결할 수 있습니다. Python을 호스팅 할 수있는 모든 GCP 서비스에 연결할 수도 있습니다.

멋지지 않나요? 몇 가지 간단한 단계로 대시 보드를 만들고 Saturn을 사용하여 프로덕션에 게시하는 방법을 알아 보겠습니다.

대시 보드 생성

 
짜잔 101

대시 보드를 배포하기 전에 먼저 Python을 사용하여 기본 대시 보드를 만들고 빌라. Voila를 사용하여 대시 보드를 만드는 데는 세 가지 주요 구성 요소가 있습니다.

  1. 위젯 정의 (상호 작용을위한 버튼 클릭 또는 검색 필드)
  2. 1 단계에서 만든 대화 형 필드 (클래스 기반 또는 함수 기반)에 대한 논리 (이벤트 처리기)
  3. 출력 위젯 (결과가 표시되는 위치)

촬영 가짜 거래 데이터, 사기 거래를 제거한 후 필터링 된 데이터를 제공하고 거래가 얼마나 다양한 지 (통화와 관련하여) 시각적으로 보여주는 대시 보드를 구축해 보겠습니다. 사기 거래를 식별하는 기계 학습 모델이 있다고 가정 해 보겠습니다. 이 기사의 단순성을 위해 우리는 단순히 if 문을 사용할 것이지만 걱정하지 마십시오. 모델이있는 경우 자신의 모델을 가져 오는 방법을 보여 드리겠습니다. 

 
기본 대시 보드

먼저 위젯을 정의해야합니다. 사용 사례에서는 사용자가 데이터를 업로드하고 사기 거래를 제거한 후 필터링 된 데이터와 차트를 제공하기를 원합니다. 업로드 버튼을 정의하는 것으로 시작합니다.

영상

여기에 두 개의 버튼이 있습니다. 하나는 파일 (upload_file) 업로드 용이고 다른 하나는 (upload_btn) 이벤트 핸들러 (upload_btn_eventhandler)가 작업을 수행 할시기를 알 수 있도록합니다. 알고 있겠지만 우리의 이벤트 핸들러는 어디에 있습니까? 다음에 정의하겠습니다. 그러나 그 전에 input_widgets는 두 버튼을 결합하고 출력 위젯 (upload_btn_output)의 도움으로 버튼을 표시합니다. 먼저 이벤트 핸들러를 작성해 보겠습니다.

영상

업로드 버튼을 누르 자마자 이벤트 핸들러가 파일을 가져와 pandas 데이터 프레임으로 변환하여 데이터를 쉽게 처리합니다. 파일 이름을 fullstop으로 분할하여 파일 확장자를 찾은 다음 Excel 또는 CSV 인 경우 데이터를 저장합니다. 이제 마지막 부분 인 출력 위젯입니다. 기억 하시나요? 우리는 이미 upload_btn_output이라는 출력 위젯을 작성 했으므로 그렇게 할 것입니다.

영상

이제 아직 설치하지 않은 경우 로컬에서 실행하려면 voila를 설치해야합니다. 지침을 찾을 수 있습니다. 여기에서 지금 확인해 보세요.. 하지만 저는 Saturn Cloud를 사용하여 쉽게 할 수있는 방법을 보여 드리겠습니다. 계정을 만들고 로그인하면 대시 보드에 "대시 보드 배포"가 표시되고이를 클릭 한 다음 jupyter 랩을 시작합니다. 이제 방금 만든 노트북을 토성 구름의 jupyter 실험실에 업로드합니다. 내 github에서 전체 jupyter 노트북을 찾을 수 있습니다. 여기에서 지금 확인해 보세요.. 또한 Saturn Cloud가 제공해야하는 다른 가속화 된 데이터 과학 라이브러리 및 파이프 라인 중에서 선택할 수 있습니다.

영상

끝난? 완전한. 이제 URL을 복사하고 새 탭에 붙여 넣은 다음…. / your-username / dashboard /…를 바꿉니다. / your-username / dashboard / voila로 이동 한 다음 projects> examples> dashboard.ipynb로 이동하여 실행합니다. 업로드 버튼이 보일 것입니다. 

문제가 발생하거나 Saturn Cloud에서 Voila로 대시 보드를 만드는 방법에 대해 자세히 알아 보려면 다음을 참조하십시오. 안내.

영상

 
사기 거래

이제 우리는 아직 필터링 된 데이터가 없으며 파일을 업로드하고 그 내용을 저장하고 있습니다. 사기 거래를 처리하기 위해 더 많은 코드를 작성해 보겠습니다. 

영상

여기에서 찾을 수있는 가짜 데이터에서 csv를 생성했습니다. 자유롭게 사용할 수 있습니다. 여기서는 특정 임계 값을 초과하면 사기로 간주하여 값을 제거합니다. 금액이 1000 이상인 모든 거래가 사기라고 가정 해 보겠습니다. 간단히 upload_btn_eventhandler에 다음을 작성하여이를 달성 할 수 있습니다.

AWS와 같은 클라우드에 데이터가 있어도 걱정할 필요가 없습니다. 자격 증명을 획득하기 만하면됩니다. 쉽게 할 수있는 한 가지 방법은 s3fs AWS 파일 시스템에 액세스하기위한 Python 라이브러리 인 라이브러리. 자세한 내용은 선적 서류 비치 여기를 클릭해 문의해주세요.

 
사전 훈련 된 모델 사용 (추가)

사용하려는 사전 학습 된 모델이있는 경우 아래에서했던 것처럼 가져올 수 있지만 상황이 어떻게 작동하는지 알고 싶고 기계 학습 모델을 가져 오는 데 관심이 없다면 다음 단계를 건너 뛸 수 있습니다. 암호. 우리는 기본적으로 joblib를 사용하여 카운트 벡터 라이저와 모델을로드 한 다음 값을 예측합니다. 

영상

 
데이터 필터링

이제 우리는 사기 거래없이 깨끗한 데이터를 갖게되었습니다. 통화를 기준으로 거래를 필터링하는 기능을 추가하는 것은 어떻습니까? 업로드 버튼에 대해 생성 한 것과 같은 다른 로직을 생성하여이를 달성 할 수 있습니다. 사용자로부터 데이터를 가져 오는 대신 이제 우리가 만든 깨끗한 데이터 프레임을 전달합니다. 코드를 살펴 보겠습니다.

영상

여기서도 같은 패턴을 따를 것입니다. 먼저 통화 열의 모든 고유 값에 대한 드롭 다운을 만듭니다. 그런 다음 기본적으로 통화와 일치하는 또 다른 함수 common_filtering을 호출하고 통화가 일치하는 값, 즉 필터링 만 제공하는 이벤트 핸들러를 만듭니다. 그런 다음 방금 만든 출력 위젯에 표시합니다. 내가 추가 한 동일한 데이터 파일을 사용하는 경우 다음과 같이 보일 것입니다. 

영상

 
시각화

우리가 가지고있는 필터링 된 데이터를 시각화 해 보겠습니다. 데이터의 통화 수에 대한 선 차트를 만들어 거래가 여러 통화에 대해 어떻게 발생했는지 확인합니다. 

영상

먼저 새 열 수를 만들고 각 통화의 발생을 계산합니다. 그리고 그것을 우리의 plot_data로 전달합니다. X 축에서는 통화를 유지하고 Y 축에서는 카운트를 유지합니다. 여기서 plotly를 사용하고 있습니다. – plotly를 px로 가져오고 – 플롯에 대해 호출하는 별도의 도우미 함수를 유지합니다. 모든 것이 성공적으로 실행되면 대시 보드에서 이와 같은 막대 차트를 볼 수 있습니다.

영상
 

그리고 짜잔 (말장난 의도), 작동하는 대시 보드가 있습니다. 이제 Saturn Cloud를 사용하여 프로덕션에 게시 할 수 있으며 클릭 몇 번만하면됩니다. 

프로덕션에 게시

 
배포를 생성하려면 프로젝트 페이지로 이동하여 "배포 생성 버튼"을 클릭합니다.

영상

 
배포 만들기

구성 페이지가 표시됩니다. 아래에서 볼 수 있듯이 이름과 명령 만 설정하면 준비가 완료됩니다. 하나; Saturn Cloud에서 탐색 할 수있는 많은 옵션이 있습니다. 여기에서 지금 확인해 보세요..

영상

 
구성

이제 구성이 준비되었으므로 대시 보드를보고 URL 옆에있는 작은 재생 버튼을 누르고 활성화되는 즉시 URL을 방문하여 대시 보드에 액세스 할 수 있습니다.

미주

 
이 기사에서는 Saturn Cloud가 무엇인지, 어떻게 엔드 투 엔드 파이프 라인 속도를 높일 수 있는지, Voila 및 Python을 사용하여 대시 보드를 생성하고 Saturn Cloud를 사용하여 프로덕션에 게시하는 방법을 몇 가지 간단한 단계로 다루었습니다. 올바른 도구가 있으면 많은 도움이되며 Saturn Cloud는 처리 또는 데이터 과학 파이프 라인을 가속화하는 데 도움이됩니다. 궁금한 사항이 있으면 언제든지 다음을 통해 저에게 연락하십시오. 트위터 or 링크드 인, 또는 그냥 들러 인사를 나누세요.

 
바이오 : 드루 밀 파텔 (뿡 빵뀨)는 NVIDIA의 성능 분석가 인턴입니다. 그의 관심은 Django와 같은 최신 프레임 워크를 사용하여 대규모 데이터 작업과 웹 애플리케이션 개발에 있습니다. 그는 또한 막대한 소셜 미디어 데이터를 처리하면서 NLP에 직접 노출됩니다. 일 외에도 그는 책을 읽고 종이 접기를 즐깁니다.

관련 :

코인 스마트. 유로파 최고의 비트 코인-보르 스
출처 : https://www.kdnuggets.com/2021/06/create-deploy-dashboards-voila-saturn-cloud.html

spot_img

최신 인텔리전스

spot_img

우리와 함께 채팅

안녕하세요! 어떻게 도와 드릴까요?