revoscalepy(SQL Server Machine Learning Services의 Python 패키지)

적용 대상: SQL Server 2017(14.x) 이상

revoscalepy는 분산 컴퓨팅, 원격 컴퓨팅 컨텍스트 및 고성능 데이터 과학 알고리즘을 지원하는 Microsoft의 Python 패키지입니다. 이 패키지는 SQL Server Machine Learning Services에 포함되어 있습니다.

패키지는 다음 기능을 제공합니다.

  • 동일한 revoscalepy 버전을 포함하는 시스템의 로컬 및 원격 컴퓨팅 컨텍스트
  • 데이터 변환 및 시각화 함수
  • 분산 또는 병렬 처리를 통해 확장 가능한 데이터 과학 함수
  • Intel 수학 라이브러리 사용을 포함하는 향상된 성능

revoscalepy에서 만든 데이터 원본 및 컴퓨팅 컨텍스트를 기계 학습 알고리즘에서도 사용할 수 있습니다. 이러한 알고리즘에 대한 소개를 보려면 SQL Server의 microsoftml Python 모듈을 참조하세요.

전체 참조 설명서

revoscalepy 패키지는 여러 Microsoft 제품에 배포되지만, 패키지를 SQL Server에서 가져오든 다른 제품에서 가져오든 사용 방식은 동일합니다. 함수는 동일하기 때문에 개별 revoscalepy 함수 설명서Python 참조 아래의 한 위치에만 게시됩니다. 제품별로 고유한 동작이 있는 경우 함수 도움말 페이지에 차이점이 표시됩니다.

버전 및 플랫폼

revoscalepy 모듈은 Python 3.5을 기준으로 하며, 다음 Microsoft 제품 또는 다운로드 중 하나를 설치한 경우에만 사용할 수 있습니다.

참고

전체 제품 릴리스 버전은 SQL Server 2017에서 Windows 전용입니다. Windows 및 Linux는 SQL Server 2019 이상의 revoscalepy에서 둘 다 지원됩니다.

범주별 함수

이 섹션에서는 사용 방법에 대한 이해를 돕기 위해 각 함수를 범주별로 구분해서 제공합니다. 목차를 사용하여 사전순으로 함수를 찾을 수도 있습니다.

1 - 데이터 원본 및 컴퓨팅

revoscalepy에는 데이터 원본을 만들고 위치를 설정하기 위한 함수 또는 컴퓨팅이 수행되는 컴퓨팅 컨텍스트가 포함되어 있습니다. SQL Server 시나리오와 관련된 함수는 아래 표에 나와 있습니다.

경우에 따라 SQL Server와 Python은 다른 데이터 형식을 사용합니다. SQL 및 Python 데이터 형식 간 매핑 목록은 Python-SQL 데이터 형식을 참조하세요.

함수 Description
RxInSqlServer SQL Server 컴퓨팅 컨텍스트 개체를 만들어 원격 인스턴스에 컴퓨팅을 푸시합니다. 여러 revoscalepy 함수는 컴퓨팅 컨텍스트를 인수로 사용합니다. 컨텍스트 전환 예제는 revoscalepy를 사용하여 모델 만들기를 참조하세요.
RxSqlServerData SQL Server 쿼리나 테이블을 기준으로 데이터 개체를 만듭니다.
RxOdbcData ODBC 연결을 기준으로 데이터 원본을 만듭니다.
RxXdfData 로컬 XDF 파일을 기준으로 데이터 원본을 만듭니다. XDF 파일은 종종 메모리 내 데이터를 디스크로 오프로드하는 데 사용됩니다. XDF 파일은 데이터베이스에서 하나의 일괄 처리로 전송될 수 있는 것보다 많은 데이터 또는 메모리에 맞출 수 있는 것보다 많은 데이터를 사용할 경우 유용할 수 있습니다. 예를 들어, R 작업별로 반복적으로 데이터베이스를 쿼리하지 않고 대용량 데이터를 데이터베이스에서 로컬 워크스테이션으로 주기적으로 이동하면 XDF 파일을 일종의 캐시로 사용하여 데이터를 로컬에 저장하고 R 작업 공간에서 작업을 수행할 수 있습니다.

데이터 원본 또는 컴퓨팅 컨텍스트를 처음 접하는 경우 분산 컴퓨팅 문서부터 살펴보는 것이 좋습니다.

2 - 데이터 조작(ETL)

함수 Description
rx_import .xdf 파일 또는 데이터 프레임으로 데이터를 가져옵니다.
rx_data_step 입력 데이터 세트의 데이터를 출력 데이터 세트로 변환합니다.

3 - 학습 및 요약

함수 Description
rx_btrees 확률 그래디언트 부스팅 의사 결정 트리 맞추기
rx_dforest 분류 및 회귀 의사 결정 포리스트 맞추기
rx_dtree 분류 및 회귀 트리 맞추기
rx_lin_mod 선형 회귀 모델 만들기
rx_logit 로지스틱 회귀 모델 만들기
rx_summary revoscalepy에서 개체의 일변량 요약을 생성합니다.

또한 추가 접근 방법에 대해서는 microsoftml의 함수도 검토해야 합니다.

4 - 점수 매기기 함수

함수 Description
rx_predict 학습된 모델에서 예측을 생성하고 실시간 점수 매기기에 사용할 수 있습니다.
rx_predict_default rx_lin_mod 및 rx_logit 개체를 사용하여 예측 값과 나머지를 계산합니다.
rx_predict_rx_dforest rx_dforest 또는 rx_btrees 개체에서 데이터 세트에 대한 예측 또는 맞춤 값을 계산합니다.
rx_predict_rx_dtree rx_dtree 개체에서 데이터 세트에 대한 예측 또는 맞춤 값을 계산합니다.

revoscalepy로 작업하는 방법

revoscalepy의 함수는 저장 프로시저에서 캡슐화된 Python 코드에서 호출할 수 있습니다. 대부분의 개발자는 revoscalepy 솔루션을 로컬로 빌드한 다음, 완성된 Python 코드를 배포 연습으로 사용하기 위해 저장 프로시저로 마이그레이션합니다.

로컬로 실행하는 경우 일반적으로 명령줄 또는 Python 개발 환경에서 Python 스크립트를 실행하고, revoscalepy 함수 중 하나를 사용하여 SQL Server 컴퓨팅 컨텍스트를 지정합니다. 전체 코드 또는 개별 함수에 대한 원격 컴퓨팅 컨텍스트를 사용할 수 있습니다. 예를 들어, 최신 데이터를 사용하고 데이터 이동을 방지하도록 모델 학습을 서버에 오프로드할 수 있습니다.

저장 프로시저 내에서 Python 스크립트 sp_execute_external_script를 캡슐화할 준비가 되면 코드를 입력 및 출력이 명확하게 정의된 단일 함수로 다시 작성하는 것이 좋습니다.

입력 및 출력은 pandas 데이터 프레임이어야 합니다. 이 작업이 완료되면 T-SQL을 지원하는 모든 클라이언트에서 저장 프로시저를 호출하고, SQL 쿼리를 입력으로 쉽게 전달하고, 결과를 SQL 테이블에 저장할 수 있습니다. 예제를 보려면 SQL 개발자를 위한 데이터베이스 내 Python 분석 학습을 참조하세요.

microsoftml에서 revoscalepy 사용

microsoftml에 대한 Python 함수는 revoscalepy에 제공된 컴퓨팅 컨텍스트 및 데이터 원본과 통합됩니다. microsoftml에서 함수를 호출하는 경우, 예를 들어 모델을 정의하고 학습할 때 revoscalepy 함수를 사용하여 로컬로 또는 SQL Server 원격 컴퓨팅 컨텍스트에서 Python 코드를 실행합니다.

다음 예제에서는 Python 코드에 모듈을 가져오는 구문을 보여 줍니다. 그런 후 필요한 개별 함수를 참조할 수 있습니다.

from microsoftml.modules.logistic_regression.rx_logistic_regression import rx_logistic_regression
from revoscalepy.functions.RxSummary import rx_summary
from revoscalepy.etl.RxImport import rx_import_datasource

참고 항목