Azure Stream Analytics 및 Machine Learning Studio(클래식)를 사용하여 감정 분석 수행

Important

Azure Machine Learning Studio(클래식)에 대한 지원은 2024년 8월 31일에 종료됩니다. 해당 날짜까지 Azure Machine Learning으로 전환하는 것이 좋습니다.

2021년 12월 1일부터 새 Machine Learning Studio(클래식) 리소스(작업 영역 및 웹 서비스 계획)를 만들 수 없습니다. 2024년 8월 31일까지 기존 Machine Learning Studio(클래식) 실험 및 웹 서비스를 계속 사용할 수 있습니다. 자세한 내용은 다음을 참조하세요.

Machine Learning Studio(클래식) 설명서는 사용 중지 중이며 나중에 업데이트되지 않을 수 있습니다.

이 문서에서는 감정 분석을 위해 Machine Learning Studio(클래식)를 사용하는 간단한 Azure Stream Analytics 작업을 설정하는 방법을 보여 줍니다. Cortana Intelligence Gallery의 Studio(클래식) 감정 분석 모델을 사용하여 스트리밍 텍스트 데이터를 분석하고 감정 점수를 결정합니다.

성능 및 안정성 향상을 위해 Machine Learning Studio(클래식) UDF 대신 Azure Machine Learning UDF를 사용하는 것이 좋습니다.

문서에서 알아본 내용을 다음과 같은 시나리오에 적용할 수 있습니다.

  • 스트리밍 Twitter 데이터에 대한 실시간 감정 분석
  • 지원 담당자와 고객 채팅 레코드 분석
  • 포럼, 블로그 및 동영상에 대한 의견 평가
  • 기타 실시간 예측 점수 매기기 시나리오

사용자가 만든 Stream Analytics 작업은 감정 분석 모델을 Blob Storage의 샘플 텍스트에 UDF(사용자 정의 함수)로 적용합니다. 출력(감정 분석의 결과)은 다른 CSV 파일에 있는 동일한 Blob Storage에 기록됩니다.

필수 조건

시작하기 전에 다음이 필요합니다.

  • 활성화된 Azure 구독.

  • 일부 Twitter 데이터가 포함된 CSV 파일입니다. GitHub에서 샘플 파일을 다운로드하거나 고유한 파일을 만들 수 있습니다. 실제 시나리오에서는 Twitter 데이터 스트림에서 직접 데이터를 가져옵니다.

스토리지 컨테이너 만들기 및 CSV 입력 파일 업로드

이 단계에서는 CSV 파일을 스토리지 컨테이너에 업로드합니다.

  1. Azure Portal에서 리소스 만들기>스토리지>스토리지 계정을 선택합니다.

  2. 다음 세부 정보로 기본 탭을 채우고 나머지 필드는 기본값을 그대로 둡니다.

    필드
    구독 구독을 선택합니다.
    Resource group 리소스 그룹을 선택합니다.
    스토리지 계정 이름 스토리지 계정의 이름을 입력합니다. 이름은 Azure에서 고유해야 합니다.
    위치 위치를 선택합니다. 모든 리소스는 동일한 위치를 사용해야 합니다.
    계정 종류 BlobStorage

    provide storage account details

  3. 검토 + 생성를 선택합니다. 그런 다음 만들기를 선택하여 스토리지 계정을 배포합니다.

  4. 배포가 완료되면 스토리지 계정으로 이동합니다. Blob service에서 컨테이너를 선택합니다. 그런 다음 + 컨테이너를 선택하여 새 컨테이너를 만듭니다.

    Create blob storage container for input

  5. 컨테이너의 이름을 제공하고 공용 액세스 수준프라이빗으로 설정되어 있는지 확인합니다. 완료되면 만들기를 선택합니다.

    specify blob container details

  6. 새로 만들어진 컨테이너로 이동하여 업로드를 선택합니다. 이전에 다운로드한 sampleinput.csv 파일을 업로드합니다.

    'Upload' button for a container

이제 Blob에 샘플 데이터가 있으므로 Cortana Intelligence Gallery에서 감정 분석 모델을 사용할 수 있습니다.

  1. Cortana Intelligence Gallery에서 예측 감정 분석 모델 페이지로 이동합니다.

  2. Studio(클래식)에서 열기를 선택합니다.

    Stream Analytics Machine Learning Studio (classic), open Studio (classic)

  3. 로그인하여 작업 영역으로 이동합니다. 위치를 선택합니다.

  4. 페이지 하단에서 실행을 선택합니다. 프로세스가 실행되려면 약 1분이 걸립니다.

    Run experiment in Studio (classic)

  5. 프로세스를 성공적으로 실행한 후에 페이지의 맨 아래에서 웹 서비스 배포를 선택합니다.

    Deploy experiment in Studio (classic) as a web service

  6. 감정 분석 모델을 사용할 준비가 되었는지 유효성 검사하려면 테스트 단추를 선택합니다. "I love Microsoft"와 같은 텍스트를 입력합니다.

    Test experiment in Studio (classic)

    테스트가 작동하면 다음 예제와 유사한 결과가 표시됩니다.

    Test results in Studio (classic)

  7. 열에서 Excel 2010 또는 이전 통합 문서 링크를 선택하여 Excel 통합 문서를 다운로드합니다. 통합 문서는 나중에 Stream Analytics 작업을 설정하는 데 필요한 API 키와 URL을 포함합니다.

    Stream Analytics Machine Learning Studio (classic), quick glance

Studio(클래식) 모델을 사용하는 Stream Analytics 작업 만들기

이제 CSV 파일에서 Blob Storage로의 샘플 트윗을 읽을 수 있는 Stream Analytics 작업을 만들 수 있습니다.

작업 만들기

Azure Portal로 이동하여 Stream Analytics 작업을 만듭니다. 이 프로세스에 익숙하지 않은 경우 Azure Portal을 사용하여 Stream Analytics 작업 만들기를 참조하세요.

작업 입력 구성

작업은 이전에 업로드한 CSV 파일에서 Blob Storage로 해당 입력을 가져옵니다.

  1. Stream Analytics 작업으로 이동합니다. 작업 토폴로지에서 입력 옵션을 선택합니다. 스트림 입력 추가>Blob Storage를 선택합니다.

  2. 다음 값으로 Blob Storage 세부 정보를 작성합니다.

    필드
    입력 별칭 입력에 이름을 지정합니다. 쿼리를 작성할 때 이 별칭을 기억합니다.
    Subscription 구독을 선택합니다.
    스토리지 계정 이전 단계에서 만든 스토리지 계정을 선택합니다.
    컨테이너 이전 단계에서 만든 컨테이너를 선택합니다.
    이벤트 직렬화 형식 CSV
  3. 저장을 선택합니다.

작업 출력 구성

작업은 입력을 가져오는 동일한 Blob Storage에 결과를 보냅니다.

  1. Stream Analytics 작업으로 이동합니다. 작업 토폴로지에서 출력 옵션을 선택합니다. 추가>Blob Storage를 선택합니다.

  2. 다음 값으로 Blob Storage 양식을 작성합니다.

    필드
    입력 별칭 입력에 이름을 지정합니다. 쿼리를 작성할 때 이 별칭을 기억합니다.
    Subscription 구독을 선택합니다.
    스토리지 계정 이전 단계에서 만든 스토리지 계정을 선택합니다.
    컨테이너 이전 단계에서 만든 컨테이너를 선택합니다.
    이벤트 직렬화 형식 CSV
  3. 저장을 선택합니다.

Studio(클래식) 기능 추가

이전에 Studio(클래식) 모델을 웹 서비스에 게시했습니다. 이 시나리오에서는 Stream Analysis 작업이 실행될 때 감정 분석에 대한 샘플을 입력에서 웹 서비스로 보냅니다. Studio(클래식) 웹 서비스는 트윗의 감정(positive, neutral 또는 negative) 및 내용이 긍정적일 확률을 반환합니다.

이 섹션에서는 Stream Analysis 작업에서 함수를 정의합니다. 웹 서비스에 트윗을 보내고 응답을 다시 가져오기 위해 함수를 호출할 수 있습니다.

  1. Excel 통합 문서의 앞부분에서 다운로드한 웹 서비스 URL 및 API 키가 있는지 확인합니다.

  2. Stream Analytics 작업으로 이동합니다. 그런 다음 함수>+ 추가>Azure ML Studio를 선택합니다.

  3. 다음 값으로 Azure Machine Learning 함수 양식을 작성합니다.

    필드
    함수 별칭 이름 sentiment를 사용하여 Azure Machine Learning 함수 설정을 수동으로 제공합니다.를 선택합니다. 그러면 URL 및 키를 입력하기 위한 옵션이 제공됩니다.
    URL 웹 서비스 URL을 붙여넣습니다.
    API 키를 붙여넣습니다.
  4. 저장을 선택합니다.

데이터를 변환하는 쿼리 만들기

Stream Analytics는 선언적인 SQL 기반 쿼리를 사용하여 입력을 검사하고 처리합니다. 이 섹션에서는 입력에서 각 트윗을 읽은 다음 Studio(클래식) 기능을 호출하여 감정 분석을 수행하는 쿼리를 만듭니다. 그런 다음 쿼리는 정의한 출력으로 결과를 보냅니다(Blob Storage).

  1. Stream Analytics 작업 개요로 돌아갑니다.

  2. 작업 토폴로지에서 쿼리를 선택합니다.

  3. 다음 쿼리를 입력합니다.

    WITH sentiment AS (  
    SELECT text, sentiment1(text) as result 
    FROM <input>  
    )  
    
    SELECT text, result.[Score]  
    INTO <output>
    FROM sentiment  
    

    쿼리는 입력의 트윗에 대한 감정 분석을 수행하기 위해 앞에서 만든 함수를 호출합니다(sentiment).

  4. 저장을 선택하여 쿼리를 저장합니다.

Stream Analytics 작업을 시작하고 출력을 확인합니다.

이제 Stream Analytics 작업을 시작할 수 있습니다.

작업 시작

  1. Stream Analytics 작업 개요로 돌아갑니다.

  2. 페이지 상단에서 시작을 선택합니다.

  3. 작업 시작에서 사용자 지정을 선택한 다음 CSV 파일을 Blob Storage에 업로드하기 하루 전을 선택합니다. 완료되면 시작을 선택합니다.

출력 파일 확인

  1. 모니터링 상자에서 작업을 확인할 때까지 몇 분 동안 작업을 실행하겠습니다.

  2. 일반적으로 Blob Storage의 내용을 검사하는 데 사용하는 도구가 있는 경우 해당 도구를 사용하여 컨테이너를 검사합니다. 또는 Azure Portal에서 다음 단계를 수행합니다.

    1. Azure Portal에서 스토리지 계정을 찾고 계정 내에서 컨테이너를 찾습니다. 컨테이너에 두 개의 파일이 표시됩니다. 하나는 샘플 트윗을 포함하는 파일이고 다른 하나는 Stream Analytics 작업에 의해 생성된 CSV 파일입니다.
    2. 생성된 파일을 마우스 오른쪽 단추로 클릭한 다음 다운로드를 선택합니다.
  3. 생성된 CSV 파일을 엽니다. 다음 예제와 유사한 출력이 표시됩니다.

    Stream Analytics Machine Learning Studio (classic), CSV view

메트릭 보기

Studio(클래식) 기능 관련 메트릭도 볼 수 있습니다. 다음 기능 관련 메트릭은 작업 개요의 모니터링 상자에 표시됩니다.

  • 기능 요청은 Studio(클래식) 웹 서비스로 전송된 요청 수를 나타냅니다.
  • 함수 이벤트 는 요청의 이벤트 수를 나타냅니다. 기본적으로 Studio(클래식) 웹 서비스에 대한 각 요청에는 최대 1,000개의 이벤트가 포함됩니다.

다음 단계