Microsoft 기계 학습 제품 및 기술 비교

Microsoft의 기계 학습 제품 및 기술에 대해 알아봅니다. 기계 학습 솔루션을 가장 효과적으로 구축, 배포 및 관리하는 방법을 선택할 수 있도록 하는 옵션을 비교합니다.

클라우드 기반 기계 학습 제품

다음 옵션은 Azure 클라우드에서 기계 학습에 사용할 수 있습니다.

클라우드 옵션 정의 수행할 수 있는 작업
Azure Machine Learning 기계 학습을 위한 관리형 플랫폼 미리 학습된 모델을 사용합니다. 또는 Python 및 CLI를 사용하여 Azure에서 모델 학습, 배포 및 관리
Azure Cognitive Services REST API 및 SDK를 통해 구현되어 미리 빌드된 AI 기능 표준 프로그래밍 언어를 사용하여 지능형 애플리케이션을 빠르게 구축합니다. 기계 학습 및 데이터 과학 전문 지식이 필요하지 않습니다.
Azure SQL Managed Instance Machine Learning Services. SQL을 위한 데이터베이스 내 기계 학습 Azure SQL Managed Instance 내에서 모델 학습 및 배포
Azure Synapse Analytics의 Machine Learning 기계 학습을 활용한 분석 서비스 Azure Synapse Analytics 내에서 모델 학습 및 배포
Azure SQL Edge에서 ONNX를 사용한 기계 학습 및 AI IoT 기반 SQL의 기계 학습 Azure SQL Edge 내에서 모델 학습 및 배포
Azure Databricks Apache Spark 기반 분석 플랫폼 오픈 소스 기계 학습 라이브러리 및 MLflow 플랫폼과의 통합을 사용하여 모델 및 데이터 워크플로를 빌드하고 배포합니다.

온-프레미스 기계 학습 제품

다음 옵션은 기계 학습 온-프레미스에 사용할 수 있습니다. 온-프레미스 서버도 클라우드의 가상 머신에서 실행할 수 있습니다.

온-프레미스 옵션 정의 수행할 수 있는 작업
SQL Server Machine Learning 서비스 SQL을 위한 데이터베이스 내 기계 학습 SQL Server 내에서 모델 학습 및 배포
SQL Server 빅 데이터 클러스터의 Machine Learning Services 빅 데이터 클러스터의 기계 학습 SQL Server 빅 데이터 클러스터에서 모델 학습 및 배포

개발 플랫폼 및 도구

기계 학습에 사용할 수 있는 개발 플랫폼 및 도구는 다음과 같습니다.

플랫폼/도구 정의 수행할 수 있는 작업
Azure Data Science Virtual Machine 미리 설치된 데이터 과학 도구를 사용한 가상 머신 미리 구성된 환경에서 기계 학습 솔루션 개발
ML.NET 오픈 소스, 플랫폼 간 기계 학습 SDK .NET 애플리케이션을 위한 기계 학습 솔루션 개발
Windows 기계 학습 Windows 10 기계 학습 플랫폼 Windows 10 디바이스에서 학습된 모델을 평가
SynapseML Apache Spark용 오픈 소스, 분산, 기계 학습 및 마이크로서비스 프레임워크 Scala 및 Python을 위한 확장 가능한 기계 학습 애플리케이션을 만들고 배포합니다.
Azure Data Studio용 Machine Learning 확장 Azure Data Studio용 오픈 소스 및 플랫폼 간 기계 학습 확장 패키지 관리, 기계 학습 모델 가져오기, 예측, SQL Database 실험을 위한 Notebooks 만들기

Azure Machine Learning

Azure Machine Learning은 기계 학습 모델을 대규모로 학습, 배포 및 관리하는 데 사용되는 완전 관리형 클라우드 서비스입니다. 이 서비스는 오픈 소스 기술을 완벽히 지원하여 TensorFlow, PyTorch 및 scikit-learn 등의 수많은 오픈 소스 Python 패키지를 사용할 수 있습니다. 컴퓨팅 인스턴스, Jupyter Notebooks 또는 Visual Studio Code용 Azure Machine Learning 확장과 같은 다양한 도구도 사용할 수 있습니다. 이를 통해 Visual Studio Code에서 리소스, 모델 학습 워크플로 및 배포를 관리할 수 있습니다. Azure Machine Learning에는 쉽고 효율적이며 정확하게 모델 생성 및 튜닝을 자동화하는 기능이 포함되어 있습니다.

클라우드 규모의 기계 학습을 위해 Python SDK, Jupyter Notebooks, R 및 CLI를 사용합니다. 낮은 코드 또는 코드 없는 옵션의 경우 스튜디오에서 Azure Machine Learning의 대화형 디자이너를 사용하여 미리 빌드된 기계 학습 알고리즘을 사용하여 모델을 쉽고 빠르게 빌드, 테스트 및 배포할 수 있습니다.

Azure Machine Learning 무료 평가.

항목 설명
형식 클라우드 기반 기계 학습 솔루션
지원되는 언어 Python, R
기계 학습 단계 모델 학습
배포
MLOps/관리
주요 이점 코드 우선(SDK) 및 스튜디오 및 끌어서 놓기 디자이너 웹 인터페이스 작성 옵션입니다.

스크립트 및 실행 기록이 중앙에서 관리되므로 모델 버전을 쉽게 비교할 수 있습니다.

클라우드 또는 에지 디바이스로 모델을 쉽게 배포 및 관리합니다.
고려 사항 모델 관리 모델에 어느 정도 숙지해야 합니다.

Azure AI 서비스

Azure AI 서비스는 자연스러운 통신 방법을 사용하는 앱을 빌드할 수 있는 미리 빌드된 API 집합입니다. 미리 빌드되었다는 것은 애플리케이션에서 사용할 모델을 학습하기 위해 데이터 세트 또는 데이터 과학 전문 지식을 가져올 필요가 없음을 의미합니다. 이 모든 작업이 완료되었으며 몇 줄의 코드로 앱이 사용자 요구를 보고, 듣고, 말하고, 이해하고, 해석할 수 있도록 하는 API 및 SDK로 패키지됩니다. 다음과 같은 지능형 기능을 앱에 쉽게 추가할 수 있습니다.

  • 비전: 개체 감지, 얼굴 인식, OCR(광학 문자 인식) 등 자세한 내용은 Computer Vision, Face, Azure AI Document Intelligence를 참조하세요.
  • 음성: 음성 텍스트 변환, 텍스트 음성 변환, 화자 인식 등. 자세한 내용은 Speech Service를 참조하세요.
  • 언어: 번역, 감정 분석, 핵심 구 추출, 언어 이해 등 번역기, Text Analytics, Language Understanding, QnA Maker 참조
  • Decision: 변칙 검색, 콘텐츠 조정, 강화 학습. 자세한 내용은 Anomaly Detector, Content Moderator, Personalizer를 참조하세요.

Azure AI 서비스를 사용하여 디바이스 및 플랫폼에서 앱을 개발합니다. API는 끊임없이 개선되며, 설치하기가 매우 쉽습니다.

항목 설명
형식 지능형 애플리케이션 구축을 위한 API
지원되는 언어 서비스에 따라 다양한 옵션. 표준은 C#, Java, JavaScript 및 Python입니다.
기계 학습 단계 배포
주요 이점 REST API 및 SDK를 통해 제공되는 미리 학습된 모델을 사용하여 지능형 애플리케이션을 구축합니다.
시각, 말, 언어, 의사결정을 통한 자연스러운 의사소통 방법을 위한 다양한 모델.
기계 학습 또는 데이터 과학 전문 지식이 필요하지 않습니다.

SQL Machine Learning

SQL 기계 학습은 온-프레미스와 클라우드 모두에서 관계형 데이터에 대해 Python 및 R에 통계 분석, 데이터 시각화 및 예측 분석을 추가합니다. 현재 플랫폼 및 도구는 다음과 같습니다.

SQL의 관계형 데이터에 대한 기본 제공 AI 및 예측 분석이 필요할 때 SQL 기계 학습을 사용합니다.

항목 설명
형식 관계형 데이터에 대한 온-프레미스 예측 분석
지원되는 언어 Python, R, SQL
기계 학습 단계 데이터 준비
모델 학습
배포
주요 이점 예측 논리를 데이터베이스 함수에 캡슐화하여 데이터 계층 논리에 쉽게 포함할 수 있습니다.
고려 사항 SQL Database를 애플리케이션의 데이터 계층으로 간주합니다.

Azure Data Science Virtual Machine

Azure Data Science Virtual Machine은 Microsoft Azure 클라우드의 사용자 지정 가상 머신 환경입니다. Windows 및 Linux Ubuntu 버전 모두에서 사용할 수 있습니다. 이 환경은 데이터 과학을 수행하고 기계 학습 솔루션을 개발하기 위해 특별히 빌드되었습니다. 고급 분석을 위한 지능형 애플리케이션 빌드를 시작하기 위해 널리 사용되는 많은 데이터 과학, 기계 학습 프레임워크 및 기타 도구가 미리 설치되고 미리 구성되어 있습니다.

단일 노드에서 작업을 실행하거나 호스트해야 하는 경우 데이터 과학 VM을 사용하세요. 또는 단일 컴퓨터에서 처리를 원격으로 강화해야 하는 경우에 사용합니다.

항목 설명
형식 데이터 과학을 위한 사용자 지정 가상 머신 환경
주요 이점 데이터 과학 도구 및 프레임워크를 설치 및 관리하고 문제를 해결하는 데 드는 시간을 단축할 수 있습니다.

가장 일반적으로 사용되는 도구 및 프레임워크의 최신 버전이 포함되어 있습니다.

가상 머신 옵션에는 집약적인 데이터 모델링을 위한 GPU(그래픽 처리 장치) 기능이 있는 확장성이 뛰어난 이미지가 포함됩니다.
고려 사항 오프라인 상태에서는 가상 머신에 액세스할 수 없습니다.

가상 머신을 실행하면 Azure 요금이 발생하므로, 필요할 때만 실행하도록 주의해야 합니다.

Azure Databricks

Azure Databricks 는 Microsoft Azure 클라우드 플랫폼에 최적화된 Apache Spark 기반 분석 플랫폼입니다. Databricks는 Azure와 통합되어 데이터 과학자, 데이터 엔지니어, 비즈니스 분석가가 협업할 수 있도록 하는 대화형 작업 영역, 간소화된 워크플로 및 원클릭 설정을 제공합니다. 웹 기반 노트북에서 Python, R, Scala 및 SQL 코드를 사용하여 데이터를 쿼리, 시각화 및 모델링합니다.

Apache Spark에서 기계 학습 솔루션을 빌드하는 데 공동 작업하려는 경우 Databricks를 사용합니다.

항목 설명
형식 Apache Spark 기반 분석 플랫폼
지원되는 언어 Python, R, Scala, SQL
기계 학습 단계 데이터 준비
데이터 전처리
모델 학습
모델 튜닝
모델 유추
관리
배포

ML.NET

ML.NET은 오픈 소스 및 플랫폼 간 기계 학습 프레임워크입니다. ML.NET을 사용하여 사용자 지정 기계 학습 솔루션을 구축하고 .NET 애플리케이션에 통합할 수 있습니다. ML.NET은 기계 학습과 딥 러닝 모델을 학습하고 점수를 매기기 위해 TensorFlow 및 ONNX와 같은 자주 사용되는 프레임워크와 다양한 수준의 상호 운용성을 제공합니다. 이미지 분류 모델 학습과 같은 리소스 집약적인 작업의 경우 Azure를 활용하여 클라우드에서 모델을 학습할 수 있습니다.

.NET 애플리케이션에 기계 학습 솔루션을 통합하려는 경우 ML.NET를 사용합니다. 코드 우선 환경을 위한 API와 낮은 코드 환경을 위한 Model Builder 또는 CLI 중에서 선택합니다.

항목 설명
형식 .NET으로 사용자 지정 기계 학습 애플리케이션을 개발하기 위한 오픈 소스 플랫폼 간 프레임워크
지원되는 언어 C#, F#
기계 학습 단계 데이터 준비
학습
배포
주요 이점 데이터 과학 및 기계 학습 환경이 필요하지 않음
친숙한 도구(Visual Studio, Microsoft Visual Studio Code) 및 언어 사용
.NET이 실행되는 위치에 배포
확장 가능
확장성
로컬 우선 환경

Windows 기계 학습

Windows 기계 학습 유추 엔진을 사용하면 애플리케이션에서 학습된 기계 학습 모델을 사용하여 Windows 10 디바이스에서 로컬로 학습된 모델을 평가할 수 있습니다.

Windows 애플리케이션 내에서 학습된 기계 학습 모델을 사용하려는 경우 Windows 기계 학습을 사용합니다.

항목 설명
형식 Windows 디바이스에서 학습된 모델을 위한 유추 엔진
지원되는 언어 C#/C++, JavaScript

SynapseML

SynapseML (이전의 MMLSpark)은 확장성이 뛰어난 대규모 기계 학습 파이프라인의 생성을 간소화하는 오픈 소스 라이브러리입니다. SynapseML은 텍스트 분석, 비전, 변칙 검색 등 다양한 기계 학습 작업에 대한 API를 제공합니다. SynapseML은 Apache Spark 분산 컴퓨팅 프레임워크를 기반으로 하며 SparkML/MLLib 라이브러리와 동일한 API를 공유하므로 SynapseML 모델을 기존 Apache Spark 워크플로에 원활하게 포함할 수 있습니다.

SynapseML은 Spark Machine Learning 파이프라인과 LightGBM(Light Gradient Boosting Machine), LIME(모델 해석 가능성) 및 OpenCV원활한 통합을 포함하여 많은 딥 러닝 및 데이터 과학 도구를 Spark 에코시스템에 추가합니다. 이러한 도구를 사용하여 Azure Databricks 또는 Cosmic Spark와 같은 모든 Spark 클러스터에서 강력한 예측 모델을 만들 수 있습니다.

또한 SynapseML은 Spark 에코시스템에 네트워킹 기능을 제공합니다. HTTP on Spark 프로젝트를 통해 사용자는 모든 웹 서비스를 SparkML 모델에 포함할 수 있습니다. 또한 SynapseML은 대규모로 Azure AI 서비스를 오케스트레이션하기 위한 사용하기 쉬운 도구를 제공합니다. 프로덕션 등급 배포의 경우 Spark 서비스 제공 프로젝트는 Spark 클러스터에서 지원하는 밀리초 미만의 대기 시간 웹 서비스를 지원합니다.

항목 설명
형식 Apache Spark용 오픈 소스, 분산, 기계 학습 및 마이크로서비스 프레임워크
지원되는 언어 Scala 2.11, Java, Python 3.5+, R(베타)
기계 학습 단계 데이터 준비
모델 학습
배포
주요 이점 확장성
스트리밍 + 서비스 제공 호환
내결함성
고려 사항 Apache Spark 필요

참가자

Microsoft에서 이 문서를 유지 관리합니다. 원래 다음 기여자가 작성했습니다.

보안 주체 작성자:

다음 단계

  • Microsoft에서 제공하는 모든 인공 지능(AI) 개발 제품에 대해 알아보려면 Microsoft AI 플랫폼을 참조하세요.
  • Microsoft와 함께 AI 및 Machine Learning 솔루션 개발에 대한 학습은 Microsoft Learn 학습을 참조하세요.