참조: Ubuntu(Linux) 데이터 과학 Virtual Machine

이 문서에서는 Ubuntu 데이터 과학 DSVM(Virtual Machine)에서 사용 가능한 도구 목록을 제공합니다.

딥 러닝 라이브러리

PyTorch

PyTorch 는 기계 학습 알고리즘을 광범위하게 지원하는 인기 있는 과학 컴퓨팅 프레임워크입니다. 컴퓨터에 기본 제공 GPU가 있는 경우 해당 GPU를 사용하여 딥 러닝을 가속화할 수 있습니다. PyTorch는 환경에서 사용할 수 있습니다 py38_pytorch .

H2O

H2O는 빠른 메모리 내 분산 기계 학습 및 예측 분석 플랫폼입니다. Python 패키지는 루트 및 py35 Anaconda 환경 둘 다에 설치됩니다. R 패키지도 설치됩니다.

명령줄에서 H2O를 열려면 다음을 실행합니다 java -jar /dsvm/tools/h2o/current/h2o.jar. 사용 가능한다양한 명령줄 옵션을 구성할 수 있습니다. 시작하려면 Flow 웹 UI로 이동 http://localhost:54321 하세요. JupyterHub는 샘플 Notebook을 제공합니다.

TensorFlow

TensorFlow 는 Google 딥 러닝 라이브러리입니다. 데이터 흐름 그래프를 사용하는 숫자 계산을 위한 오픈 소스 소프트웨어 라이브러리입니다. 컴퓨터에 GPU가 기본 제공된 경우 해당 GPU를 사용하여 딥 러닝을 가속화할 수 있습니다. TensorFlow는 conda 환경에서 사용할 수 있습니다 py38_tensorflow .

Python

데이터 과학 DSVM(Virtual Machine)에는 Python 버전 3.8 또는 Python 버전 3.6을 사용하여 미리 설치된 여러 Python 환경이 있습니다. 터미널 창에서 실행 conda env list 하여 설치된 환경의 전체 목록을 확인합니다.

Jupyter

DSVM에는 코드 공유 및 코드 분석 환경인 Jupyter도 함께 제공됩니다. Jupyter는 다음 버전에서 DSVM에 설치됩니다.

  • Jupyter Lab
  • Jupyter Notebook
  • Jupyter Hub

Jupyter Lab을 시작하려면 애플리케이션 메뉴에서 Jupyter를 열거나 데스크톱 아이콘을 선택합니다. 명령줄에서 실행 jupyter lab 하여 Jupyter Lab을 열 수도 있습니다.

Jupyter Notebook을 열려면 명령줄을 열고 실행 jupyter notebook합니다.

Jupyter Hub를 열려면 브라우저에서 https://< VM DNS 이름 또는 IP 주소>:8000/을 엽니다. 로컬 Linux 사용자 이름 및 암호를 제공해야 합니다.

참고 항목

인증서 경고를 무시할 수 있습니다.

참고 항목

Ubuntu 이미지의 경우 VM이 프로비전될 때 방화벽 포트 8000이 기본적으로 열립니다.

Apache Spark 독립 실행형

Apache Spark의 독립 실행형 인스턴스는 대규모 클러스터에서 해당 애플리케이션을 테스트하고 배포하기 전에 로컬에서 Spark 애플리케이션을 개발하는 데 도움이 되도록 Linux DSVM에 미리 설치됩니다.

Jupyter 커널을 통해 PySpark 프로그램을 실행할 수 있습니다. Jupyter가 시작되면 새로 만들기 단추를 선택합니다. 사용 가능한 커널 목록이 표시됩니다. Spark - Python 커널을 선택하는 경우 Python 언어로 Spark 애플리케이션을 빌드할 수 있습니다. PYTHON IDE(예: VS)를 사용할 수도 있습니다. 코드 또는 PyCharm - Spark 프로그램을 빌드합니다.

이 독립 실행형 인스턴스에서 Spark 스택은 호출 클라이언트 프로그램 내에서 실행됩니다. 이 기능을 사용하면 Spark 클러스터의 개발에 비해 문제를 더 빠르고 쉽게 해결할 수 있습니다.

IDE 및 편집기

VS를 비롯한 여러 코드 편집기를 선택할 수 있습니다. 코드, PyCharm, IntelliJ, vi/Vim 또는 Emacs입니다.

VS.Code, PyCharm 및 IntelliJ는 그래픽 편집기입니다. 이를 사용하려면 그래픽 데스크톱에 로그인해야 합니다. 데스크톱 및 애플리케이션 메뉴 바로 가기를 사용하여 엽니다.

Vim 및 Emacs는 텍스트 기반 편집기입니다. Emacs에서 ESS 추가 기능 패키지를 사용하면 Emacs 편집기 내에서 R을 더 쉽게 사용할 수 있습니다. 자세한 내용은 ESS 웹 사이트를 방문 하세요.

데이터베이스

그래픽 SQL 클라이언트

그래픽 SQL 클라이언트인 SQuirrel SQL은 Microsoft SQL Server 또는 MySQL과 같은 다양한 데이터베이스에 연결하고 SQL 쿼리를 실행할 수 있습니다. SQuirrel SQL을 여는 가장 빠른 방법은 그래픽 데스크톱 세션에서 애플리케이션 메뉴를 사용하는 것입니다(예: X2Go 클라이언트를 통해).

처음 사용하기 전에 드라이버 및 데이터베이스 별칭을 설정합니다. JDBC 드라이버는 /usr/share/java/jdbcdrivers에서 찾을 수 있습니다.

자세한 내용은 SQuirrel SQL 리소스를 참조하세요.

Microsoft SQL Server에 액세스하기 위한 명령줄 도구

SQL Server용 ODBC 드라이버 패키지에는 다음 두 가지 명령줄 도구가 포함되어 있습니다.

  • bcp: bcp 도구는 Microsoft SQL Server 인스턴스와 데이터 파일 간에 사용자가 지정한 형식으로 데이터를 대량 복사합니다. bcp 도구를 사용하여 많은 수의 새 행을 SQL Server 테이블로 가져오거나 테이블에서 데이터 파일로 데이터를 내보낼 수 있습니다. 데이터를 테이블로 가져오려면 해당 테이블에 대해 만든 서식 파일을 사용해야 합니다. 테이블의 구조와 해당 열에 유효한 데이터 형식을 이해해야 합니다.

자세한 내용은 bcp를 사용하여 커넥트 방문하세요.

  • sqlcmd: sqlcmd 도구를 사용하여 Transact-SQL 문을 입력할 수 있습니다. 또한 명령 프롬프트에서 시스템 프로시저 및 스크립트 파일을 입력할 수 있습니다. 이 도구는 ODBC를 사용하여 Transact-SQL 일괄 처리를 실행합니다.

    자세한 내용은 sqlcmd를 사용하여 커넥트 방문하세요.

    참고 항목

    이 도구에는 Linux 및 Windows 플랫폼 버전 간에 몇 가지 차이점이 있습니다. 자세한 내용은 설명서를 검토하세요.

데이터베이스 액세스 라이브러리

R 및 Python 라이브러리는 데이터베이스 액세스에 사용할 수 있습니다.

  • R에서 RODBC dplyr 패키지를 사용하여 데이터베이스 서버에서 SQL 문을 쿼리하거나 실행할 수 있습니다.
  • Python에서 pyodbc 라이브러리는 ODBC를 기본 계층으로 사용하여 데이터베이스 액세스를 제공합니다.

Azure 도구

이러한 Azure 도구는 VM에 설치됩니다.

  • Azure CLI: Azure에서 명령줄 인터페이스를 사용하여 셸 명령을 통해 Azure 리소스를 만들고 관리할 수 있습니다. Azure 도구를 열려면 azure help를 입력합니다. 자세한 내용은 Azure CLI 설명서 페이지를 참조 하세요.

  • Azure Storage Explorer: Azure Storage Explorer는 Azure Storage 계정에 저장한 개체를 탐색하고 Azure Blob 간에 데이터를 업로드하고 다운로드하는 데 사용할 수 있는 그래픽 도구입니다. 바탕 화면 바로 가기 아이콘에서 Storage Explorer에 액세스할 수 있습니다. StorageExplorer를 입력 하는 경우 셸 프롬프트에서 열 수도 있습니다. X2Go 클라이언트에서 로그인하거나 X11 전달을 설정해야 합니다.

  • Azure 라이브러리: 미리 설치된 라이브러리 중 일부는 다음과 같습니다.

    • Python: Python은 azure, azureml, pydocumentdbpyodbc Azure 관련 라이브러리를 제공합니다. 처음 세 개의 라이브러리를 사용하여 Azure Storage 서비스, Azure Machine Learning 및 Azure Cosmos DB(Azure의 NoSQL 데이터베이스)에 액세스할 수 있습니다. 네 번째 라이브러리인 pyodbc(MICROSOFT ODBC Driver for SQL Server)를 사용하면 Python에서 ODBC 인터페이스를 통해 SQL Server, Azure SQL Database 및 Azure Synapse Analytics에 액세스할 수 있습니다. pip 목록을 입력하여 나열된 모든 라이브러리를 확인합니다. Python 2.7 및 3.5 환경에서 이 명령을 실행해야 합니다.
    • R: Azure Machine Learning 및 RODBC는 R의 Azure 관련 라이브러리입니다.
    • Java: 디렉터리 /dsvm/sdk/AzureSDKJava에는 VM의 /dsvm/sdk/AzureSDKJava 디렉터리에서 찾을 수 있는 Azure Java 라이브러리 목록이 있습니다. 주요 라이브러리는 Azure Storage 및 관리 API, Azure Cosmos DB 및 SQL Server용 JDBC 드라이버입니다.

Azure Machine Learning

완전 관리형 Azure Machine Learning 클라우드 서비스를 사용하면 예측 분석 솔루션을 빌드, 배포 및 공유할 수 있습니다. Azure Machine Learning 스튜디오 실험 및 모델을 빌드할 수 있습니다. Microsoft Azure Machine Learning을 방문하여 데이터 과학 Virtual Machine의 웹 브라우저에서 액세스합니다.

Azure Machine Learning 스튜디오 로그인한 후 실험 캔버스를 사용하여 기계 학습 알고리즘에 대한 논리적 흐름을 빌드할 수 있습니다. 또한 Azure Machine Learning에서 호스트되는 Jupyter Notebook에 액세스할 수 있습니다. 이 Notebook은 Azure Machine Learning 스튜디오 실험과 원활하게 작동할 수 있습니다.

빌드한 기계 학습 모델을 운영하려면 웹 서비스 인터페이스에 래핑합니다. 기계 학습 모델 운영화를 사용하면 모든 언어로 작성된 클라이언트가 해당 모델에서 예측을 호출할 수 있습니다. 자세한 내용은 Machine Learning 설명서를 참조하세요.

VM에서 모델을 R 또는 Python으로 빌드한 다음, Azure Machine Learning에서 프로덕션 환경에 배포할 수도 있습니다. 이 기능을 사용하도록 설정하기 위해 R(AzureML) 및 Python(azureml)에 라이브러리를 설치했습니다.

참고 항목

데이터 과학 Virtual Machine Windows 버전에 대한 이러한 지침을 작성했습니다. 그러나 지침에는 Linux VM에 대한 Azure Machine Learning 모델 배포가 포함됩니다.

기계 학습 도구

VM에는 미리 컴파일된 기계 학습 도구 및 알고리즘이 함께 제공되며, 모두 로컬에 미리 설치되어 있습니다. 여기에는 다음이 포함됩니다.

  • Vowpal Wabbit: 빠른 온라인 학습 알고리즘

  • xgboost: 이 도구는 최적화되고 향상된 트리 알고리즘을 제공합니다.

  • Rattle: 간편한 데이터 탐색 및 모델링을 위한 R 기반 그래픽 도구

  • Python: Anaconda Python에서는 Scikit-learn 등의 라이브러리가 포함된 기계 학습 알고리즘이 번들로 제공됩니다. 명령을 사용하여 다른 라이브러리를 설치할 수 있습니다.pip install

  • LightGBM: 의사 결정 트리 알고리즘을 기반으로 하는 빠르고 분산된 고성능 그라데이션 향상 프레임워크

  • R: R에 다양한 기계 학습 함수 라이브러리를 사용할 수 있습니다. 사전 설치된 라이브러리에는 lm, glm, randomForest 및 rpart가 포함됩니다. 다음 명령을 사용하여 다른 라이브러리를 설치할 수 있습니다.

    install.packages(<lib name>)
    

목록의 처음 세 가지 기계 학습 도구에 대한 자세한 내용은 다음과 같습니다.

Vowpal Wabbit

Vowpal Wabbit는 기계 학습 시스템에서 사용하는 것입니다.

  • 활성
  • allreduce
  • 해시
  • 대화형 학습
  • learning2search
  • online
  • 감소

기술을.

다음 명령을 사용하여 기본 예제에서 도구를 실행합니다.

cp -r /dsvm/tools/VowpalWabbit/demo vwdemo
cd vwdemo
vw house_dataset

해당 디렉터리에서는 다른 더 큰 데모를 제공합니다. Vowpal Wabbit에 대한 자세한 내용은 GitHubVowpal Wabbit wiki의 이 섹션을 방문하세요.

xgboost

xgboost 라이브러리는 향상된(트리) 알고리즘에 맞게 설계 및 최적화되었습니다. xgboost 라이브러리는 컴퓨터의 계산 제한을 정확하고 이식 가능하며 확장 가능한 대규모 트리 승격에 필요한 극단으로 푸시합니다.

xgboost 라이브러리는 명령줄 리소스와 R 라이브러리 모두로 제공됩니다. R에서 이 라이브러리를 사용하려면 셸에 R을 입력하여 대화형 R 세션을 시작하고 라이브러리를 로드할 수 있습니다.

이 간단한 예제에서는 R 프롬프트에서 xgboost를 실행하는 방법을 보여줍니다.

library(xgboost)

data(agaricus.train, package='xgboost')
data(agaricus.test, package='xgboost')
train <- agaricus.train
test <- agaricus.test
bst <- xgboost(data = train$data, label = train$label, max.depth = 2,
                eta = 1, nthread = 2, nround = 2, objective = "binary:logistic")
pred <- predict(bst, test$data)

xgboost 명령줄을 실행하려면 셸에서 다음 명령을 실행합니다.

cp -r /dsvm/tools/xgboost/demo/binary_classification/ xgboostdemo
cd xgboostdemo
xgboost mushroom.conf

xgboost에 대한 자세한 내용은 xgboost 설명서 페이지 및 해당 GitHub 리포지토리를 참조하세요.

Rattle

Rattle(RAnalytical Tool To Learn Easily)은 GUI 기반 데이터 탐색 및 모델링 기능을 사용합니다. It

  • 는 데이터의 통계 및 시각적 요약을 표시합니다.
  • 쉽게 모델링할 수 있는 데이터 변환
  • 는 데이터에서 감독되지 않은 모델과 감독 모델을 모두 빌드합니다.
  • 는 모델의 성능을 그래픽으로 표시합니다.
  • 새 데이터 집합 점수 지정

또한 UI에서 Rattle 작업을 복제본(replica) R 코드를 생성합니다. R에서 해당 코드를 직접 실행하거나 추가 분석을 위한 시작점으로 사용할 수 있습니다.

Rattle을 실행하려면 그래픽 데스크톱 로그인 세션에서 작동해야 합니다. 터미널에서 R을 입력하여 R 환경을 엽니다. R 프롬프트에서 다음 명령을 입력합니다.

library(rattle)
rattle()

탭 집합이 있는 그래픽 인터페이스가 열립니다. Rattle의 이러한 빠른 시작 단계에서는 샘플 날씨 데이터 집합을 사용하여 모델을 빌드합니다. 일부 단계에서는 시스템에 아직 없는 특정 필수 R 패키지를 자동으로 설치하고 로드하라는 메시지가 표시됩니다.

참고 항목

시스템 디렉터리(기본값)에 패키지를 설치할 수 있는 액세스 권한이 없는 경우 R 콘솔 창에서 패키지를 개인 라이브러리에 설치하라는 메시지가 표시될 수 있습니다. 이러한 프롬프트가 표시되면 y로 대답합니다.

  1. 실행을 선택합니다.
  2. 예제 날씨 데이터 집합을 사용할지 묻는 대화 상자가 나타납니다. 예를 선택하여 예제 로드
  3. 모델 탭 선택
  4. 실행을 선택하여 의사 결정 트리 빌드
  5. 그리기를 선택하여 의사 결정 트리 표시
  6. 리스트 옵션을 선택하고 실행을 선택하여 임의 포리스트를 빌드합니다.
  7. 평가 탭 선택
  8. 위험 옵션을 선택하고 실행을 선택하여 두 개의 위험(누적) 성능 플롯을 표시합니다.
  9. 로그 탭을 선택하여 이전 작업에 대해 생성된 R 코드를 표시합니다.
    • Rattle의 현재 릴리스에서 버그로 인해 로그 텍스트에서 이 로그 내보내기 앞에 문자를 삽입 # 해야 합니다.
  10. 내보내기 단추를 선택하여 이름이 weather_script R 스크립트 파일을 저장합니다. R, 홈 폴더로

Rattle 및 R을 종료할 수 있습니다. 이제 생성된 R 스크립트를 수정할 수 있습니다. 스크립트를 있는 그대로 사용하고 언제든지 실행하여 Rattle UI 내에서 수행된 모든 작업을 반복할 수도 있습니다. 특히 R 초보자의 경우 수정 또는 학습을 위해 R에서 코드를 자동으로 생성하면서 간단한 그래픽 인터페이스에서 빠른 분석 및 기계 학습에 적합합니다.

다음 단계

자세한 내용은 지원 티켓을 만드는 것이 좋습니다.