Weka-퀵 가이드

머신 러닝 애플리케이션의 기반은 데이터입니다. 작은 데이터가 아니라 다음과 같은 거대한 데이터입니다. Big Data 현재 용어로.

머신이 빅 데이터를 분석하도록 훈련하려면 데이터에 대해 몇 가지 고려 사항이 필요합니다.

  • 데이터는 깨끗해야합니다.
  • null 값을 포함해서는 안됩니다.

게다가 데이터 테이블의 모든 열이 달성하려는 분석 유형에 유용하지는 않습니다. 기계 학습 용어에서 언급되는 관련없는 데이터 열 또는 '기능'은 데이터가 기계 학습 알고리즘에 공급되기 전에 제거되어야합니다.

간단히 말해, 빅 데이터를 머신 러닝에 사용하려면 많은 사전 처리가 필요합니다. 데이터가 준비되면 분류, 회귀, 클러스터링 등과 같은 다양한 기계 학습 알고리즘을 적용하여 문제를 해결합니다.

적용하는 알고리즘 유형은 주로 도메인 지식을 기반으로합니다. 동일한 유형 (예 : 분류) 내에서도 사용 가능한 여러 알고리즘이 있습니다. 효율적인 기계 학습 모델을 구축하기 위해 동일한 클래스에서 다양한 알고리즘을 테스트 할 수 있습니다. 그렇게하는 동안 처리 된 데이터의 시각화를 선호하므로 시각화 도구도 필요합니다.

다음 장에서는 위의 모든 작업을 쉽게 수행하고 빅 데이터로 편안하게 작업 할 수있는 소프트웨어 인 Weka에 대해 알아 봅니다.

오픈 소스 소프트웨어 인 WEKA는 데이터 전처리, 여러 기계 학습 알고리즘 구현 및 시각화 도구를위한 도구를 제공하므로 기계 학습 기술을 개발하고이를 실제 데이터 마이닝 문제에 적용 할 수 있습니다. WEKA가 제공하는 것은 다음 다이어그램에 요약되어 있습니다.

이미지의 흐름의 시작을 관찰하면 빅 데이터를 기계 학습에 적합하도록 처리하는 데 여러 단계가 있음을 이해할 수 있습니다.

먼저 현장에서 수집 한 원시 데이터로 시작합니다. 이 데이터에는 여러 null 값과 관련없는 필드가 포함될 수 있습니다. WEKA에서 제공하는 데이터 전처리 도구를 사용하여 데이터를 정리합니다.

그런 다음 ML 알고리즘을 적용하기 위해 사전 처리 된 데이터를 로컬 스토리지에 저장합니다.

다음으로 개발하려는 ML 모델의 종류에 따라 다음과 같은 옵션 중 하나를 선택합니다. Classify, Cluster, 또는 Associate. 그만큼Attributes Selection 기능을 자동으로 선택하여 축소 된 데이터 세트를 만들 수 있습니다.

각 범주에서 WEKA는 여러 알고리즘의 구현을 제공합니다. 선택한 알고리즘을 선택하고 원하는 매개 변수를 설정 한 다음 데이터 세트에서 실행합니다.

그런 다음 WEKA는 모델 처리의 통계적 출력을 제공합니다. 데이터를 검사 할 수있는 시각화 도구를 제공합니다.

동일한 데이터 세트에 다양한 모델을 적용 할 수 있습니다. 그런 다음 다양한 모델의 출력을 비교하고 목적에 가장 적합한 것을 선택할 수 있습니다.

따라서 WEKA를 사용하면 전체적으로 기계 학습 모델을 더 빠르게 개발할 수 있습니다.

이제 WEKA가 무엇인지, 어떤 역할을하는지 살펴 보았으므로 다음 장에서는 로컬 컴퓨터에 WEKA를 설치하는 방법을 알아 보겠습니다.

컴퓨터에 WEKA를 설치하려면 WEKA의 공식 웹 사이트를 방문 하여 설치 파일을 다운로드하십시오. WEKA는 Windows, Mac OS X 및 Linux에서의 설치를 지원합니다. OS 용 WEKA를 설치하려면이 페이지의 지침을 따르기 만하면됩니다.

Mac에 설치하는 단계는 다음과 같습니다.

  • Mac 설치 파일을 다운로드하십시오.
  • 다운로드 한 파일을 두 번 클릭합니다. weka-3-8-3-corretto-jvm.dmg file.

성공적으로 설치되면 다음 화면이 표시됩니다.

  • 클릭 weak-3-8-3-corretto-jvm 아이콘을 클릭하여 Weka를 시작합니다.
  • 선택적으로 명령 줄에서 시작할 수 있습니다-
java -jar weka.jar

WEKA GUI Chooser 응용 프로그램이 시작되고 다음 화면이 표시됩니다.

GUI 선택기 응용 프로그램을 사용하면 여기에 나열된 다섯 가지 유형의 응용 프로그램을 실행할 수 있습니다.

  • Explorer
  • Experimenter
  • KnowledgeFlow
  • Workbench
  • 간단한 CLI

우리는 사용할 것입니다 Explorer 이 튜토리얼에서.

이 장에서는 탐색기가 빅 데이터 작업을 위해 제공하는 다양한 기능을 살펴 보겠습니다.

클릭하면 Explorer 버튼 Applications 선택기를 선택하면 다음 화면이 열립니다.

상단에는 여기에 나열된 여러 탭이 표시됩니다.

  • Preprocess
  • Classify
  • Cluster
  • Associate
  • 속성 선택
  • Visualize

이 탭 아래에는 미리 구현 된 몇 가지 기계 학습 알고리즘이 있습니다. 이제 각각에 대해 자세히 살펴 보겠습니다.

전처리 탭

처음에는 탐색기를 열 때 Preprocess탭이 활성화됩니다. 기계 학습의 첫 번째 단계는 데이터를 사전 처리하는 것입니다. 따라서Preprocess 옵션을 선택하면 데이터 파일을 선택하고 처리하여 다양한 기계 학습 알고리즘을 적용하는 데 적합합니다.

분류 탭

그만큼 Classify탭은 데이터 분류를위한 여러 기계 학습 알고리즘을 제공합니다. 몇 가지를 나열하기 위해 선형 회귀, 로지스틱 회귀, 지원 벡터 머신, 의사 결정 트리, RandomTree, RandomForest, NaiveBayes 등과 같은 알고리즘을 적용 할 수 있습니다. 이 목록은 매우 포괄적이며 감독 및 비지도 기계 학습 알고리즘을 모두 제공합니다.

클러스터 탭

아래의 Cluster 탭에는 SimpleKMeans, FilteredClusterer, HierarchicalClusterer 등과 같은 여러 클러스터링 알고리즘이 제공됩니다.

연결 탭

아래의 Associate 탭에서 Apriori, FilteredAssociator 및 FPGrowth를 찾을 수 있습니다.

속성 탭 선택

Select Attributes ClassifierSubsetEval, PrinicipalComponents 등과 같은 여러 알고리즘을 기반으로 기능을 선택할 수 있습니다.

시각화 탭

마지막으로 Visualize 옵션을 사용하면 분석을 위해 처리 된 데이터를 시각화 할 수 있습니다.

아시다시피 WEKA는 기계 학습 애플리케이션을 테스트하고 구축하기 위해 즉시 사용할 수있는 몇 가지 알고리즘을 제공합니다. WEKA를 효과적으로 사용하려면 이러한 알고리즘, 작동 방식, 어떤 상황에서 어떤 알고리즘을 선택할지, 처리 된 출력에서 ​​무엇을 찾아야하는지 등에 대한 건전한 지식이 있어야합니다. 간단히 말해, 앱을 빌드하는 데 WEKA를 효과적으로 사용하려면 머신 러닝의 견고한 기반이 있어야합니다.

다음 장에서는 탐색기의 각 탭에 대해 자세히 알아 봅니다.

이 장에서는 데이터를 전처리하는 데 사용하는 첫 번째 탭부터 시작합니다. 이는 모델 구축을 위해 데이터에 적용하는 모든 알고리즘에 공통적이며 WEKA의 모든 후속 작업에 대한 공통 단계입니다.

기계 학습 알고리즘이 허용 가능한 정확도를 제공하려면 먼저 데이터를 정리해야합니다. 이는 필드에서 수집 된 원시 데이터에 null 값, 관련없는 열 등이 포함될 수 있기 때문입니다.

이 장에서는 원시 데이터를 사전 처리하고 향후 사용을 위해 깨끗하고 의미있는 데이터 세트를 만드는 방법을 배웁니다.

먼저 WEKA 탐색기에 데이터 파일을로드하는 방법을 배웁니다. 데이터는 다음 소스에서로드 할 수 있습니다.

  • 로컬 파일 시스템
  • Web
  • Database

이 장에서는 데이터를로드하는 세 가지 옵션을 모두 자세히 살펴 봅니다.

로컬 파일 시스템에서 데이터로드

이전 강의에서 학습 한 Machine Learning 탭 바로 아래에 다음 세 개의 버튼이 있습니다.

  • 파일 열기…
  • URL 열기…
  • DB 열기…

클릭 Open file... 버튼. 다음 화면과 같이 디렉토리 탐색기 창이 열립니다.

이제 데이터 파일이 저장된 폴더로 이동하십시오. WEKA 설치에는 실험 할 수있는 많은 샘플 데이터베이스가 제공됩니다. 이들은data WEKA 설치 폴더.

학습 목적으로이 폴더에서 데이터 파일을 선택하십시오. 파일의 내용은 WEKA 환경에서로드됩니다. 이로드 된 데이터를 검사하고 처리하는 방법을 곧 배울 것입니다. 그 전에 웹에서 데이터 파일을로드하는 방법을 살펴 보겠습니다.

웹에서 데이터로드

클릭하면 Open URL … 버튼을 누르면 다음과 같은 창이 나타납니다.

공개 URL에서 파일을 엽니 다. 팝업 상자에 다음 URL을 입력합니다.

https://storm.cis.fordham.edu/~gweiss/data-mining/weka-data/weather.nominal.arff

데이터가 저장되는 다른 URL을 지정할 수 있습니다. 그만큼Explorer 원격 사이트의 데이터를 해당 환경으로로드합니다.

DB에서 데이터로드

클릭하면 Open DB ... 버튼을 누르면 다음과 같은 창이 나타납니다.

데이터베이스에 연결 문자열을 설정하고, 데이터 선택을위한 쿼리를 설정하고, 쿼리를 처리하고 WEKA에서 선택한 레코드를로드합니다.

WEKA는 데이터에 대해 많은 파일 형식을 지원합니다. 다음은 전체 목록입니다.

  • arff
  • arff.gz
  • bsi
  • csv
  • dat
  • data
  • json
  • json.gz
  • libsvm
  • m
  • names
  • xrff
  • xrff.gz

지원하는 파일 유형은 화면 하단의 드롭 다운 목록 상자에 나열됩니다. 아래 스크린 샷에 나와 있습니다.

알다시피 CSV 및 JSON을 포함한 여러 형식을 지원합니다. 기본 파일 유형은 Arff입니다.

Arff 형식

Arff 파일에는 헤더와 데이터의 두 섹션이 있습니다.

  • 헤더는 속성 유형을 설명합니다.
  • 데이터 섹션에는 쉼표로 구분 된 데이터 목록이 있습니다.

Arff 형식의 예로서 Weather WEKA 샘플 데이터베이스에서로드 된 데이터 파일은 다음과 같습니다.

스크린 샷에서 다음 사항을 추론 할 수 있습니다.

  • @relation 태그는 데이터베이스의 이름을 정의합니다.

  • @attribute 태그는 속성을 정의합니다.

  • @data 태그는 각각 쉼표로 구분 된 필드를 포함하는 데이터 행 목록을 시작합니다.

  • 속성은 여기에 표시된 전망의 경우와 같이 명목 값을 취할 수 있습니다.

@attribute outlook (sunny, overcast, rainy)
  • 속성은이 경우와 같이 실제 값을 취할 수 있습니다.

@attribute temperature real
  • 여기에 표시된대로 play라는 대상 또는 클래스 변수를 설정할 수도 있습니다.

@attribute play (yes, no)
  • 목표는 두 개의 명목 값이 예 또는 아니오라고 가정합니다.

기타 형식

Explorer는 앞서 언급 한 형식으로 데이터를로드 할 수 있습니다. arff는 WEKA에서 선호하는 형식이므로 모든 형식에서 데이터를로드하고 나중에 사용하기 위해 arff 형식으로 저장할 수 있습니다. 데이터를 전처리 한 후 추가 분석을 위해 arff 형식으로 저장하면됩니다.

이제 WEKA에 데이터를로드하는 방법을 배웠으므로 다음 장에서 데이터를 전처리하는 방법을 배웁니다.

현장에서 수집 된 데이터에는 잘못된 분석으로 이어지는 원치 않는 항목이 많이 포함되어 있습니다. 예를 들어 데이터에 null 필드가 포함될 수 있고 현재 분석과 관련이없는 열이 포함될 수 있습니다. 따라서 데이터는 원하는 분석 유형의 요구 사항을 충족하도록 사전 처리되어야합니다. 이것은 전처리 모듈에서 수행됩니다.

전처리에서 사용 가능한 기능을 보여주기 위해 Weather 설치시 제공되는 데이터베이스.

사용 Open file ... 옵션 아래 Preprocess 태그 선택 weather-nominal.arff 파일.

파일을 열면 화면은 다음과 같습니다.

이 화면은로드 된 데이터에 대한 몇 가지 사항을 알려주며이 장에서 자세히 설명합니다.

데이터 이해

먼저 강조 표시된 부분을 살펴 보겠습니다. Current relation하위 창. 현재로드 된 데이터베이스의 이름을 보여줍니다. 이 하위 창에서 두 점을 추론 할 수 있습니다.

  • 14 개의 인스턴스 (테이블의 행 수)가 있습니다.

  • 이 표에는 다음 섹션에서 설명하는 필드 인 5 개의 속성이 있습니다.

왼쪽에서 Attributes 데이터베이스의 다양한 필드를 표시하는 하위 창.

그만큼 weather데이터베이스에는 전망, 온도, 습도, 바람 및 놀이의 5 개 필드가 있습니다. 이 목록에서 속성을 클릭하여 선택하면 속성 자체에 대한 추가 세부 사항이 오른쪽에 표시됩니다.

먼저 온도 속성을 선택하겠습니다. 클릭하면 다음 화면이 표시됩니다.

에서 Selected Attribute 하위 창에서 다음을 관찰 할 수 있습니다.

  • 속성의 이름과 유형이 표시됩니다.

  • 유형 temperature 속성은 Nominal.

  • 개수 Missing 값은 0입니다.

  • 고유 한 값이없는 세 가지 고유 한 값이 있습니다.

  • 이 정보 아래의 표는이 필드의 공칭 값을 고온, 온화 및 저온으로 표시합니다.

  • 또한 각 공칭 값에 대한 백분율로 개수와 무게를 표시합니다.

창 하단에 class 가치.

클릭하면 Visualize All 버튼을 누르면 여기에 표시된 것처럼 하나의 창에서 모든 기능을 볼 수 있습니다.

속성 제거

많은 경우 모델 구축에 사용하려는 데이터에는 관련없는 필드가 많이 있습니다. 예를 들어, 고객 데이터베이스에는 신용 등급 분석과 관련된 휴대 전화 번호가 포함될 수 있습니다.

속성을 제거하려면 속성을 선택하고 Remove 하단의 버튼.

선택한 속성이 데이터베이스에서 제거됩니다. 데이터를 완전히 전처리 한 후 모델 구축을 위해 저장할 수 있습니다.

다음으로이 데이터에 필터를 적용하여 데이터를 전처리하는 방법을 배웁니다.

필터 적용

연관 규칙 마이닝과 같은 일부 기계 학습 기술에는 범주 형 데이터가 필요합니다. 필터 사용을 설명하기 위해weather-numeric.arff 두 개를 포함하는 데이터베이스 numeric 속성- temperaturehumidity.

우리는 이것을 nominal원시 데이터에 필터를 적용하여 클릭Choose 버튼 Filter 하위 창을 열고 다음 필터를 선택하십시오-

weka→filters→supervised→attribute→Discretize

클릭 Apply 버튼을 클릭하고 temperature 및 / 또는 humidity속성. 숫자 형에서 명목 형으로 변경되었음을 알 수 있습니다.

이제 다른 필터를 살펴 보겠습니다. 결정하기 위해 최상의 속성을 선택한다고 가정합니다.play. 다음 필터를 선택하고 적용하십시오-

weka→filters→supervised→attribute→AttributeSelection

데이터베이스에서 온도 및 습도 속성이 제거됨을 알 수 있습니다.

데이터 전처리에 만족하면 다음을 클릭하여 데이터를 저장하십시오. Save... 버튼. 이 저장된 파일을 모델 구축에 사용합니다.

다음 장에서는 미리 정의 된 여러 ML 알고리즘을 사용하여 모델 구축을 살펴 보겠습니다.

많은 기계 학습 애플리케이션은 분류와 관련이 있습니다. 예를 들어 종양을 악성 또는 양성으로 분류 할 수 있습니다. 기상 조건에 따라 외부 게임을할지 여부를 결정할 수 있습니다. 일반적으로이 결정은 날씨의 여러 기능 / 조건에 따라 달라집니다. 따라서 플레이 여부를 결정하기 위해 트리 분류기를 사용하는 것이 좋습니다.

이 장에서는 날씨 데이터에 이러한 트리 분류기를 구축하여 경기 조건을 결정하는 방법을 배웁니다.

테스트 데이터 설정

이전 강의에서 전처리 된 날씨 데이터 파일을 사용합니다. 다음을 사용하여 저장된 파일을 엽니 다.Open file ... 옵션 아래 Preprocess 탭에서 Classify 탭을 클릭하면 다음 화면이 표시됩니다.

사용 가능한 분류기에 대해 알아보기 전에 테스트 옵션을 살펴 보겠습니다. 아래 나열된 네 가지 테스트 옵션을 확인할 수 있습니다.

  • 트레이닝 세트
  • 제공된 테스트 세트
  • Cross-validation
  • 비율 분할

자체 학습 세트 또는 클라이언트 제공 테스트 세트가없는 경우 교차 검증 또는 백분율 분할 옵션을 사용합니다. 교차 검증에서는 각 훈련 반복 동안 전체 데이터가 분할되고 사용되는 접기 수를 설정할 수 있습니다. 백분율 분할에서는 설정된 분할 백분율을 사용하여 훈련과 테스트간에 데이터를 분할합니다.

이제 기본값 유지 play 출력 클래스 옵션-

다음으로 분류자를 선택합니다.

분류기 선택

선택 버튼을 클릭하고 다음 분류기를 선택하십시오-

weka→classifiers>trees>J48

이것은 아래 스크린 샷에 나와 있습니다.

클릭 Start버튼을 눌러 분류 프로세스를 시작합니다. 잠시 후 분류 결과가 여기에 표시된대로 화면에 표시됩니다.

화면 오른쪽에 표시된 출력을 살펴 보겠습니다.

그것은 나무의 크기가 6이라고 말합니다. 당신은 곧 나무의 시각적 표현을 보게 될 것입니다. 요약에서 올바르게 분류 된 인스턴스는 2로, 잘못 분류 된 인스턴스는 3으로 표시되며 상대적 절대 오차도 110 %라고합니다. 또한 Confusion Matrix를 보여줍니다. 이러한 결과에 대한 분석은이 튜토리얼의 범위를 벗어납니다. 그러나 이러한 결과를 통해 분류가 허용되지 않으며 모델의 정확성에 만족할 때까지 분석을 위해 더 많은 데이터가 필요하고, 기능 선택을 구체화하고, 모델을 다시 빌드하는 등의 작업이 필요하다는 것을 쉽게 확인할 수 있습니다. 어쨌든, 그것이 바로 WEKA의 전부입니다. 아이디어를 빠르게 테스트 할 수 있습니다.

결과 시각화

결과의 시각적 표현을 보려면 결과를 마우스 오른쪽 버튼으로 클릭하십시오. Result list상자. 여기에 표시된 것처럼 여러 옵션이 화면에 나타납니다.

고르다 Visualize tree 아래 스크린 샷에서 볼 수있는 순회 트리의 시각적 표현을 얻으려면-

선택 Visualize classifier errors 여기에 표시된대로 분류 결과를 플로팅합니다.

cross 올바르게 분류 된 인스턴스를 나타내며 squares잘못 분류 된 인스턴스를 나타냅니다. 플롯의 왼쪽 하단 모서리에cross 그것은 outlook 맑음 play게임. 따라서 이것은 올바르게 분류 된 인스턴스입니다. 인스턴스를 찾기 위해 슬라이드를 밀어서 약간의 지터를 도입 할 수 있습니다.jitter 슬라이드 바.

현재 플롯은 outlookplay. 이는 화면 상단에있는 두 개의 드롭 다운 목록 상자로 표시됩니다.

이제 이러한 각 상자에서 다른 선택을 시도하고 X 및 Y 축이 어떻게 변경되는지 확인하십시오. 플롯의 오른쪽에있는 수평 스트립을 사용하여 동일한 결과를 얻을 수 있습니다. 각 스트립은 속성을 나타냅니다. 스트립을 마우스 왼쪽 버튼으로 클릭하면 선택한 속성이 X 축에 설정되고 오른쪽 클릭은 Y 축에 설정됩니다.

심층 분석을 위해 제공되는 몇 가지 다른 플롯이 있습니다. 모델을 미세 조정하기 위해 신중하게 사용하십시오. 그러한 플롯 중 하나Cost/Benefit analysis 빠른 참조를 위해 아래에 나와 있습니다.

이 차트에서 분석을 설명하는 것은이 튜토리얼의 범위를 벗어납니다. 독자는 기계 학습 알고리즘 분석에 대한 지식을 습득하는 것이 좋습니다.

다음 장에서는 다음 기계 학습 알고리즘 세트 인 클러스터링에 대해 알아 봅니다.

클러스터링 알고리즘은 전체 데이터 세트에서 유사한 인스턴스 그룹을 찾습니다. WEKA는 EM, FilteredClusterer, HierarchicalClusterer, SimpleKMeans 등과 같은 여러 클러스터링 알고리즘을 지원합니다. WEKA 기능을 완전히 활용하려면 이러한 알고리즘을 완전히 이해해야합니다.

분류의 경우와 마찬가지로 WEKA를 사용하면 감지 된 클러스터를 그래픽으로 시각화 할 수 있습니다. 클러스터링을 설명하기 위해 제공된 홍채 데이터베이스를 사용합니다. 데이터 세트에는 각각 50 개 인스턴스의 세 가지 클래스가 포함됩니다. 각 클래스는 붓꽃의 유형을 나타냅니다.

데이터로드

WEKA 탐색기에서 Preprocess탭. 클릭Open file ... 옵션을 선택하고 iris.arff파일 선택 대화 상자에서 파일. 데이터를로드하면 다음과 같은 화면이 나타납니다.

150 개의 인스턴스와 5 개의 속성이 있음을 알 수 있습니다. 속성 이름은 다음과 같이 나열됩니다.sepallength, sepalwidth, petallength, petalwidthclass. 처음 4 개의 속성은 숫자 유형이고 클래스는 3 개의 고유 값이있는 명목 유형입니다. 데이터베이스의 기능을 이해하려면 각 속성을 조사하십시오. 이 데이터에 대해 사전 처리를하지 않고 곧바로 모델 구축을 진행합니다.

클러스터링

클릭 Cluster로드 된 데이터에 클러스터링 알고리즘을 적용하려면 Tab 키를 누릅니다. 클릭Choose단추. 다음 화면이 표시됩니다-

이제 선택 EM클러스터링 알고리즘으로. 에서Cluster mode 하위 창에서 Classes to clusters evaluation 아래 스크린 샷에 표시된 옵션-

클릭 Start버튼을 눌러 데이터를 처리합니다. 잠시 후 결과가 화면에 표시됩니다.

다음으로 결과를 살펴 보겠습니다.

출력 검토

데이터 처리의 출력은 아래 화면에 표시됩니다.

출력 화면에서 다음을 관찰 할 수 있습니다.

  • 데이터베이스에서 5 개의 클러스터 된 인스턴스가 감지되었습니다.

  • 그만큼 Cluster 0 세토 사, Cluster 1 virginica를 나타냅니다. Cluster 2 마지막 두 클러스터에는 연결된 클래스가없는 반면, versicolor를 나타냅니다.

출력 창을 위로 스크롤하면 감지 된 다양한 클러스터의 각 속성에 대한 평균 및 표준 편차를 제공하는 일부 통계도 표시됩니다. 이것은 아래 주어진 스크린 샷에 표시됩니다-

다음으로 클러스터의 시각적 표현을 살펴 보겠습니다.

클러스터 시각화

클러스터를 시각화하려면 EM 결과 Result list. 다음 옵션이 표시됩니다.

고르다 Visualize cluster assignments. 다음 출력이 표시됩니다.

분류의 경우와 마찬가지로 올바르게 식별 된 인스턴스와 잘못 식별 된 인스턴스의 차이를 알 수 있습니다. 결과를 분석하기 위해 X 및 Y 축을 변경하여 놀 수 있습니다. 분류의 경우처럼 지 터링을 사용하여 올바르게 식별 된 인스턴스의 농도를 알아낼 수 있습니다. 시각화 플롯의 작업은 분류의 경우 연구 한 작업과 유사합니다.

계층 적 클러스터 러 적용

WEKA의 힘을 입증하기 위해 이제 다른 클러스터링 알고리즘의 응용 프로그램을 살펴 보겠습니다. WEKA 탐색기에서HierarchicalClusterer 아래 스크린 샷과 같이 ML 알고리즘으로

선택 Cluster mode 선택 Classes to cluster evaluation을 클릭하고 Start단추. 다음 출력이 표시됩니다.

에 유의하십시오 Result list, 두 가지 결과가 나열됩니다. 첫 번째는 EM 결과이고 두 번째는 현재 계층 구조입니다. 마찬가지로 동일한 데이터 세트에 여러 ML 알고리즘을 적용하고 결과를 빠르게 비교할 수 있습니다.

이 알고리즘에 의해 생성 된 트리를 살펴보면 다음과 같은 출력을 볼 수 있습니다.

다음 장에서는 Associate ML 알고리즘 유형.

맥주를 사는 사람들도 동시에 기저귀를 사는 것으로 나타났다. 그것은 맥주와 기저귀를 함께 사는 협회가 있다는 것입니다. 설득력이 없어 보이지만이 협회 규칙은 거대한 슈퍼마켓 데이터베이스에서 추출되었습니다. 마찬가지로 땅콩 버터와 빵 사이에 연관성이 발견 될 수 있습니다.

이러한 연관성을 찾는 것은 고객이 두 품목을 쉽게 찾을 수 있도록 맥주 옆에 기저귀를 비축하여 슈퍼마켓 판매를 증가시키기 때문에 슈퍼마켓에 필수적입니다.

그만큼 Apriori알고리즘은 가능한 연관성을 찾아 연관 규칙을 생성하는 ML의 알고리즘 중 하나입니다. WEKA는 Apriori 알고리즘의 구현을 제공합니다. 이러한 규칙을 계산하는 동안 최소 지원 및 허용 가능한 신뢰 수준을 정의 할 수 있습니다. 당신은Apriori 알고리즘에 supermarket WEKA 설치시 제공된 데이터.

데이터로드

WEKA 탐색기에서 Preprocess 탭에서 Open file ... 버튼을 누르고 선택 supermarket.arff설치 폴더에서 데이터베이스. 데이터가로드되면 다음 화면이 표시됩니다.

데이터베이스에는 4627 개의 인스턴스와 217 개의 속성이 있습니다. 이러한 많은 속성 간의 연관성을 감지하는 것이 얼마나 어려운지 쉽게 이해할 수 있습니다. 다행히이 작업은 Apriori 알고리즘의 도움으로 자동화됩니다.

어 소시 에이터

클릭 Associate TAB을 클릭하고 Choose단추. 선택Apriori 스크린 샷과 같이 연관성-

Apriori 알고리즘에 대한 매개 변수를 설정하려면 이름을 클릭하면 아래와 같이 매개 변수를 설정할 수있는 창이 나타납니다.

매개 변수를 설정 한 후 Start단추. 잠시 후 아래 스크린 샷과 같은 결과가 표시됩니다.

하단에서 감지 된 최상의 연결 규칙을 찾을 수 있습니다. 이것은 슈퍼마켓이 적절한 진열대에 제품을 보관하는 데 도움이 될 것입니다.

데이터베이스에 많은 속성이 포함 된 경우 현재 찾고있는 분석에서 중요하지 않은 속성이 여러 개 있습니다. 따라서 데이터 세트에서 원하지 않는 속성을 제거하는 것은 좋은 기계 학습 모델을 개발하는 데 중요한 작업이됩니다.

전체 데이터 세트를 시각적으로 검사하고 관련없는 속성을 결정할 수 있습니다. 이것은 이전 강의에서 본 슈퍼마켓 케이스와 같은 많은 속성을 포함하는 데이터베이스에 대한 엄청난 작업이 될 수 있습니다. 다행히 WEKA는 기능 선택을위한 자동화 된 도구를 제공합니다.

이 장에서는 많은 속성을 포함하는 데이터베이스에서이 기능을 보여줍니다.

데이터로드

에서 Preprocess WEKA 탐색기의 태그에서 labor.arff시스템에로드하기위한 파일입니다. 데이터를로드하면 다음 화면이 표시됩니다.

17 개의 속성이 있습니다. 우리의 임무는 분석과 관련이없는 일부 속성을 제거하여 축소 된 데이터 세트를 만드는 것입니다.

특징 추출

클릭 Select attributesTAB. 다음 화면이 표시됩니다-

아래의 Attribute EvaluatorSearch Method, 몇 가지 옵션을 찾을 수 있습니다. 여기서는 기본값 만 사용합니다. 에서Attribute Selection Mode, 전체 훈련 세트 옵션을 사용하십시오.

시작 버튼을 클릭하여 데이터 세트를 처리합니다. 다음 출력이 표시됩니다.

결과 창 하단에 다음 목록이 표시됩니다. Selected속성. 시각적 표현을 얻으려면 결과를 마우스 오른쪽 버튼으로 클릭하십시오.Result 명부.

출력은 다음 스크린 샷에 표시됩니다.

사각형 중 하나를 클릭하면 추가 분석을위한 데이터 플롯이 제공됩니다. 일반적인 데이터 플롯은 다음과 같습니다.

이것은 이전 장에서 본 것과 유사합니다. 결과를 분석하는 데 사용할 수있는 다양한 옵션을 사용해보십시오.

무엇 향후 계획?

지금까지 기계 학습 모델을 빠르게 개발하는 데있어 WEKA의 힘을 보았습니다. 우리가 사용한 것은Explorer이러한 모델을 개발합니다. WEKA는 또한 탐색기에서 제공하는 것보다 더 많은 기능을 제공하는 명령 줄 인터페이스를 제공합니다.

클릭 Simple CLI G의 버튼UI Chooser 응용 프로그램은 아래 스크린 샷에 표시된이 명령 줄 인터페이스를 시작합니다.

하단의 입력 상자에 명령을 입력하십시오. 탐색기에서 지금까지 수행 한 모든 작업과 더 많은 작업을 수행 할 수 있습니다. 자세한 내용은 WEKA 문서 (https://www.cs.waikato.ac.nz/ml/weka/documentation.html)를 참조하십시오.

마지막으로 WEKA는 Java로 개발되었으며 API에 대한 인터페이스를 제공합니다. 따라서 Java 개발자이고 자체 Java 프로젝트에 WEKA ML 구현을 포함하려는 경우 쉽게 수행 할 수 있습니다.

결론

WEKA는 기계 학습 모델을 개발하기위한 강력한 도구입니다. 가장 널리 사용되는 여러 ML 알고리즘의 구현을 제공합니다. 이러한 알고리즘을 데이터 세트에 적용하기 전에 데이터를 사전 처리 할 수도 있습니다. 지원되는 알고리즘 유형은 분류, 클러스터, 연관 및 선택 속성으로 분류됩니다. 다양한 처리 단계의 결과를 아름답고 강력한 시각적 표현으로 시각화 할 수 있습니다. 이를 통해 데이터 과학자는 자신의 데이터 세트에 다양한 기계 학습 기술을 신속하게 적용하고 결과를 비교하며 최종 사용에 가장 적합한 모델을 쉽게 만들 수 있습니다.