본 글에서는 데이터마이닝 공개 프로그램으로 유명한 웨카 프로그램을 인터넷에서 다운로드 받고 설치하는 방법을 설명합니다. 기본적으로 프로그램을 설치하고 실행하면 에러가 발생하는데 이것을 해결하는 방법도 설명하였습니다. 

Weka 홈페이지 소개 

웨카(weka) 설치 프로그램은 해당 프로젝트 홈페이지를 방문하여 다운로드 받을 수 있다.

 * 프로젝트 명칭 : Weka Machine Learning Project
 * 프로젝트 주소 : http://www.cs.waikato.ac.nz/ml/weka/


Weka 다운로드 <6단계 과정> 설명  


[1단계] 홈페이지를 방문한 후 왼쪽 편의 [Download] 를 클릭한다.

[2단계]
 개발자 버전(소스코드 포함)에서 다운로드한다.
            자바환경을 포함할 경우 34이고 포함하지 않을 경우 18M 정도이다.

[3단계]
전 단계에서 다운로드 하기 위해 <here> 부분을 클릭하면 [SourceForge.Net] 사이트를 통해
            다운로드 할 수 있도록 연결된다. [Download] 글자를 클릭한다.

[4단계]
 다양한 버전의 weka를 선택하여 다운로드 받을 수 있다.
            2008년 8월 현재 3.5.8 버전까지 개발된 것을 확인할 수 있다. 3.4.13 버전을 클릭하였다. 
            (최근 버전의 경우 오류가 발생할 수 있음으로 안정성이 있는 약간 이전의 버전을 선택했다.) 

[5단계] weka-3-4-13jre.exe 파일을 클릭하여 다운로드 한다.

[6단계] [저장] 버튼을 눌러 다운로드를 시작한다.


아래에 WEKA 다운로드 과정을 그림으로 다시 설명하였다.

1단계.

홈페이지를 방문한 후 왼쪽 편의 [Download] 를 클릭한다.

2단계.

개발자 버전(소스코드 포함)에서 다운로드한다. 자바환경을 포함할 경우 34이고 포함하지 않을 경우 18M 정도이다. 

3단계.

전 단계에서 다운로드 하기 위해 <here> 부분을 클릭하면 [SourceForge.Net] 사이트를 통해 다운로드 할 수 있도록 연결된다. [Download] 글자를 클릭한다. 

4단계. 

 다양한 버전의 weka를 선택하여 다운로드 받을 수 있다.     2008년 8월 현재 3.5.8 버전까지 개발된 것을 확인할 수 있다. 3.4.13 버전을 클릭하였다. (최근 버전의 경우 오류가 발생할 수 있음으로 안정성이 있는 약간 이전의 버전을 선택했다.)


5단계.

weka-3-4-13jre.exe 파일을 클릭하여 다운로드 한다.  

6단계. 

[저장] 버튼을 눌러 다운로드를 시작한다.


바탕화면에 설치 프로그램 파일(weka-3-4-13jre.exe) 다운로드가 완료되었다.




지금까지 weka 설치 프로그램을 다운로드 하는 방법을 사용하였다.

다운로드하는 방법은 차후 변경될 수 있음으로 참고하기 바란다.

이제 다음 부분에서는 프로그램을 설치하고 실행하는 방법을 배워보도록 하겠다. 


Weka 설치하고 실행하기   

이전 단계에서 다운로드 한 설치 프로그램 파일을 더블클릭하여 실행한다.

설치 마법사가 실행되는데 아래와 같이 단계별로 선택하여 설치한다. 

 [1단계] [next] 버튼을 클릭한다.  [2단계] [next] 버튼을 클릭한다.
 



  [3단계] 설치 옵션을 선택한다.  [4단계] 설치할 폴더를 선택한다.
 
 


Weka 실행하기 

이전 단계에서 weka 프로그램을 설치를 완료하였다.

설치를 완료하였으면 시작 프로그램에 weka가 등록된 것을 확인할 수 있다.

그럼 등록된 버튼을 눌러 weka를 실행해보자.

[시작] - [모든 프로그램] - [Weka 3.4.13] - [Weka 3.4] 경로로 실행하였다.




앗~ 그런데 ..., 아래와 같이 에러 화면이 발생하였다.



이 화면에서는 왜 에러가 발생했는지 이유를 설명하지 않고, 그냥 치명적인 오류가 발생하여 종료된다고 설명할 뿐이다.

이러한 에러가 발생하는 이유는 자바 프로그램 실행시 기본적으로 지정되어 있는 메모리의 크기가 부족하기 때문에 발생하는 것이다. (컴퓨터에 설치된 메모리가 부족하기 때문은 아니다.)

따라서 이 문제를 해결하고 제대로 실행하기 위해서는 다음과 같은 명령으로 실행하면 된다.

                                                       java -Xmx256m -jar weka.jar 

위 명령을 수행하기 위해서는 도스 명령창을 띄우고, weka가 설치되어 있는 폴더로 이동한 후,

아래와 같이 명령을 실행하면 된다. 

 

설명한 것과 같이 메모리를 설정한 후 실행하면 아래와 같이 프로그램이 실행된다.

작은 프로그램 화면이 나타난다.  프로그램에는 weka 새의 그림이 표시되어 있다.

도스 프로그램 창에는 "---Registering Weka Editors-- " 라고 텍스트가 표시된 것을 볼 수 있다.



이렇게 해서 처음에 발생하는 에러 문제를 해결하고 정상적으로 웨카 프로그램을 실행하였다.

* 쉽게 실행하는 방법

메모리 크기 설정 문제로 인해서 도스 명령어를 사용해서 실행하는 방법을 설명하였다.

이러한 방식은 번거롭기 때문에 배치(Batch) 파일을 만들어서 클릭만 하면 실행되도록 하는 것이 좋다.  

[1단계] 아래와 같이 메모장을 사용하여 텍스트 파일을 만들자.
[2단계] 이 파일을 바탕화면에 두고 클릭하여 간단하게 실행할 수 있다. (또는 바로가기 링크)  



위와 같이 텍스트 파일을 만들어서 바탕화면에 두거나 또는 바로가기 아이콘을 만들어 두고 실행하면 되겠다. 
 
이상으로 Weka를 설치하고 실행하는 방법을 설명하였습니다.

끝~


 

by 에이아이 2009. 8. 2. 01:02

본 글에서는 대표적인 데이터마이닝 프로그램인 WEKA를 사용하여 의사결정트리 분류 분석을 수행하는 방법을 설명합니다. 프로그램을 설치하면 기본적으로 제공되는 Weather 데이터를 사용하여 분석을 해보았습니다.

Weka 시작하기

weka 프로그램 설치와 실행을 성공하였으니 간단하게 프로그램을 사용해보도록 하자.
첫 화면에서 하단에 4개의 버튼이 보이는데 그 중 [Explorer]를 클릭한다.
그러면 아래의 오른쪽 그림과 같은 화면이 생성된다.



* 전처리 부분에서 첫 번째 메뉴인 [Open file...]을 클릭한 후, [iris.arff] 파일을 선택한다.
  ( arff 파일은 weka 프로그램의 입력 형식을 따르는 데이터 파일이다. )



선택한 데이터에 대하여 아래와 같이 데이터의 기본 속성 및 분포가 표시된다.
( weka는 텍스트 파일 뿐 아니라 DB를 통해서도 사용할 수 있도록 지원하고 있다. )



오른쪽 중간 위치의 [Visualize All] 버튼을 클릭하면 데이터의 각 속성에 대한 분포를 그림으로 보여준다.
( 데이터를 처음 이해할 때 챠트 분석을 통해 이해하는 것은 쉬우면서도 필수적인 과정이다. )

5개의 속성에 대하여 챠트가 그려진다. 챠트의 색상은 타겟 클래스 값으로 구분된 것이다.




Weka 분류(J48/C4.5) 분석 해보기

이번에는 날씨에 관련된 다른 데이터를 선택하고 분석을 수행해보도록 하자.

이 데이터는 날씨에 따라 Play 여부를 기록한 데이터이다. 날씨의 어떠함에 따라 운동경기를 했는지, 안했는지의 과거 정보들을 기록해둔 데이터이다. 이 데이터를 분석하면 어떤 날씨 조건에서 운동을 하는 것이 좋은 가에 대한 유용한 지식을 얻을 수 있을 것이다.

먼저 데이터를 이해하기 위해 설명한다. wether.nomial.csv 파일은 메모장으로 열면 아래와 같다.

Excel 프로그램으로 파일을 열면 오른쪽 그림과 같이 볼 수 있다.



csv 파일 형식은 각 데이터의 요소들을 콤마(,)로 구분한 텍스트 파일이다. 따라서 위와 같이 메모장이나 글 같은 워드프로세서 프로그램으로 열 수 있다. 그리고 위와 같이 엑셀 프로그램을 사용하여 열면 좀 더 보기 좋게 표시된다.

위 파일을 Weka에서 입력으로 받아 분석하기 위해서는 ARFF 형식으로 변경해주어야 한다. CSV 형식은 WEKA 프로그램에서 입력으로 허용하지 않는다. ARFF 형식으로 변경한 결과는 아래와 같다.

ARFF 형식은 왼쪽 그림과 같이 @relation, @attribute, @data 의 3개의 영역으로 표현된다.
각 내용은 아래와 같이 입력한다.

@relation 데이터명칭

@attribute 속성이름 {범주형의 값 리스트 }
본 데이터셋은 5개의 범주형 속성으로 구성되었다.

@data
하단에 한 줄에 하나의 레코드(인스턴스)를 기록함.
본 데이터셋은 14개의 레코드가 입력되었다.

데이터는 범주형 속성 뿐 아니라 수치형 속성을 포함할 수도 있다.
위에서 소개한 Weather 데이터의 원래 형태는 아래와 같이 수치형으로 구성되어 있다.



위의 파일과 같이 수치형 속성을 포함했을 때의 ARFF 파일을 생성하는 방법을 예를 통해 설명하겠다.

위 파일을 ARFF 형식으로 변환한 결과는 아래와 같다.

 
위에서 설명한 바와 같이 @attribute 라인을 통해 각 속성에 대한 정보를 기록한다. 이 때, 범주형 속성과 수치형 속성을 구분하여 기록해주어야 한다.

(1) 범주형 속성
@attribute 속성이름 {범주형의 값 리스트 }
본 데이터셋은 5개의 범주형 속성으로 구성되었다.

(2) 수치형 속성
@attribute 속성이름 real

즉, 수치형 속성은 속성의 이름을 적어 준 후, 뒤에 real 이라고만 기록해주면 된다. 범주형 속성의 경우 값을 모두 적어주지만, 수치형은 간단하다.



통계 또는 데이터마이닝 등의 분석 프로그램에서는 입력데이터의 속성을 지정해주어야 한다. 다양하게 요구하는 프로램도 있지만, Weka에서는 2개의 속성 즉, ➀범주형 속성, ➁수치형 속성으로만 구분한다. 범주형 속성은 Categorial 또는 Nominal 속성으로 불려진다. 그리고 수치형 속성은 보통 numeric 속성으로 불려진다.  

@attribute 정의 부분에서 맨 아래쪽에 기입한 속성이 분석의 목표가 되는 속성으로 인식된다. 
그럼, 위에서 설명하고 준비한 weather.nominal.arff 파일을 Weka를 사용하여 분석해보도록 하자. 초기화면에서 [Open file...]을 클릭하여 해당 파일을 선택하면, 아래 그림과 같이 표시된다.




좌측 중간 화면에 5개의 속성의 이름이 표시된 것을 볼 수 있다. 특정 속성에 대한 체크박스를 클릭하면, 오른쪽 부분에 각 속성의 통계 분석이 표시된다.



그림에서 파랑색은 play 속성이 Yes 값을 갖는 경우이고, 빨강색은 play 속성이 No 값을 갖는 경우를 구분한 것이다. 즉 해석하면, Outlook(조망)이 Sunny(맑음)인 경우는 안하는 경우가 약간많고, Overcast(흐림)인 경우 100% 운동을 하고, Rainy(비옴)인 경우도 경기하는 비율이 약간 높음을 볼 수 있다. 온도에 따라서는 크게 비율의 차이가 없는 것으로 보인다.

그럼, 대표적인 데이터마이닝 분석 방법인 C4.5 의사결정트리 알고리즘을 사용하여 분석해보도록 하자. Weka에서는 C4.5 알고리즘을 J4.8 이라는 이름으로 제공하고 있다.  

단계1. 데이터를 선택한다. (우리는 이미 전 단계에서 weather.arff 파일을 선택하였다. )

단계2. 메뉴에서 [Classify]를 선택한다. 왼쪽 상단의 [Choose] 버튼을 클릭한 후 trees 항목에 속해있는 J48 알고리즘을 선택한다.



단계3. 왼쪽 중간 부분의 [Start] 버튼을 클릭하면, J48 분석을 수행을 시작한다.
          데이터의 크기가 작으므로 잠깐만 기다리면 오른쪽에 결과가 텍스트 형식으로 출력된다.



  위에서 수행한 Weather 데이터에 대한 J48 알고리즘의 수행결과를 분석해보도록 하자. 텍스트 결과 전체를 아래의 그림에 표시하였다. 데이터에 대한 설명과 트리 결과 모델 그리고 데이터를 구분하여 검증한 결과들을 보여준다.  

  아래의 결과에서 가장 중요한 부분은 빨강색으로 표시한 트리(tree) 부분이다. 운동 경기(play)에 영향을 주는 속성은 조명(outlook), 습도(humidity), 풍량(windy)으로 분석되었다. 가장 중요한 속성은 조망(outlook)이다.

=== Run information ===

Scheme  :     weka.classifiers.trees.J48 -C 0.25 -M 2
Relation  :     weather
Instances :     14
Attributes :     5    ( outlook , temperature, humidity, windy, play )

Test mode: 10-fold cross-validation

=== Classifier model (full training set) ===

J48 pruned tree
------------------
outlook = sunny
|   humidity <= 75: yes (2.0)
|   humidity > 75: no (3.0)
outlook = overcast: yes (4.0)
outlook = rainy
|   windy = TRUE: no (2.0)
|   windy = FALSE: yes (3.0)

Number of Leaves  :  5
Size of the tree :  8

Time taken to build model: 0.03 seconds

=== Stratified cross-validation ===

=== Summary ===
Correctly Classified Instances           9               64.2857 %
Incorrectly Classified Instances         5               35.7143 %
Kappa statistic                          0.186
Mean absolute error                      0.2857
Root mean squared error                  0.4818
Relative absolute error                 60      %
Root relative squared error             97.6586 %
Total Number of Instances               14    

=== Detailed Accuracy By Class ===
TP Rate   FP Rate   Precision   Recall  F-Measure   Class
  0.778     0.6        0.7       0.778     0.737    yes
  0.4       0.222      0.5       0.4       0.444    no

=== Confusion Matrix ===
 a b   <-- classified as
 7 2 | a = yes
 3 2 | b = no 



위의 텍스트로 된 Tree 결과를 시각적으로 표시하면 의미를 쉽게 이해할 수 있다. Weka에서는 텍스트 뿐 아니라 시각적인 기능도 제공하고 있다. 왼쪽 하단의 [Result list] 부분에서 방금 수행된 [tree.J48] 항목에서 마우스 오른쪽 버튼을 누른 후 [Visualzie tree]를 클릭한다.



아래와 같은 시각화된 의사결정트리를 볼 수 있다.



이상으로 Weka 를 설치하고 간단히 사용해 보는 연습을 마치겠습니다.



 



 


 

by 에이아이 2009. 8. 1. 23:41

본 글에서는 데이터마이닝 프로그램인 웨카(WEKA)를 소개합니다. 
데이터마이닝에 대해 설명을 보고 싶다면 아래 링크를 클릭하세요. 
데이터마이닝 소개 강좌 => http://ai-times.tistory.com/32 

웨카(WEKA) 라는 세계적으로 유명한 데이터마이닝 프로그램을 설명하고자 한다.

만약, 여러분이 인공지능, 데이터마이닝 또는 기계학습(자동학습) 등의 분야를 공부하고 있다면 (아니면 이제 공부를 시작했다면) WEKA 라는 프로그램에 대해 여러차례 들어보았을 것이라 생각된다.

먼저 간단히 이 프로그램을 소개하면, 웨카 프로그램은 뉴질랜드와이카토(Waikato) 대학의 '이안 위튼' 교수팀에 의해 개발되어지고 있는 프로그램이다. 

웨카 프로그램이 전세계적으로 유명한 이유

1. 무료 데이터마이닝 프로그램이다.
대부분의 상용 데이터마이닝 프로그램들 (SPSS사의 Clementine, SAS사의 E-Miner 등) 이 설치크기가 매우 크고 가격이 고가이다보니 사용해보기가 쉽지 않은 불편함이 있다. WEKA 는 무료 프로그램이면서 기능 또한 상용프로그램에 뒤쳐지지 않는다. 오히려 더 많은 알고리즘들이 포함되어 있어 연구하는 입장에서는 매우 유용하다. 아래 쪽에 소개한 WEKA 홈페이지에 방문하여 다운로드할 수 있다.

2. 오픈 소스 프로그램이다.
이 프로그램은 오픈 소스 프로그램 (즉, 자바 JAVA 로 된 소스 코드 전체가 공개되어있음) 으로 데이터마이닝 알고리즘을 깊이 이해하고 또 활용하여 자신만의 프로그램을 개발할 경우에 매우 큰 도움이 된다.  
많은 국산 데이터마이닝 프로그램들도 WEKA 소스를 기초로 하여 (참고로 하여) 제작되었다.

3. 아직도 계속 업그레이드되고 있는 프로그램이다.
1999년부터 시작되어 지금까지 꾸준하게 업그레이드되며 개발되고 있는 프로그램이다. 새롭게 연구된 알고리즘들이 추가되고 있어서 최신 기술들을 테스트해볼 수가 있다. 또한 버전이 업그레이드될 수록 시각화 기능도 확장되는 등 기능 및 성능이 발전되고 있다.


왜 이름을 WEKA 라고 지었을까?

그런데 왜 이 데이터마이닝 프로그램의 이름을 weka라고 지었을까? 궁금증이 생겨 사전을 찾아보았다. 영어사전을 찾아보면 “뉴질랜드 산 호주뜸부기 조류(새)”라고 나온다.

참고 :

웨카(weka)는 뉴질랜드에서 자주 볼 수 있는 새의 이름이다. 우리나라에서는 볼 수 없어 말로 설명하기에는 어려울 듯하다. 쉽게 설명하면 뉴질랜드에서 작은 개울을 건너다니는 닭 비슷하게 생긴 새 정도로 설명하면 좀 이해가 갈 것이다. 이해를 돕기 위하여 weka 새의 사진을 추가하였다.


Weka라는 프로그램의 “Waikato Environment for Knowledge Analysis" 의 앞 글자를 따서 지어진 것이다. 이름에서 알 수 있듯이 이 프로그램은 뉴질랜드의 와이카토(Waikato) 대학에서 프로젝트를 수행하여 제작한 것이다.


좀 더 자세한 설명

  weka는 Java 언어로 개발된 데이터마이닝 프로그램이다. 여러 데이터마이닝 프로그램들이 고가이어서 접하기 힘든 것과 달리 weka는 무료로 제공되는 프로그램으로 쉽게 얻을 수 있다. 무엇보다도 weka는 오픈 소스로서 프로그램 전체에 대한 Java 언어로 된 소스코드를 제공하고 있어  데이터마이닝 프로그램을 개발하는 개발자들이 참고하기에 매우 유용한 프로그램이다. 상업용 프로그램이 아니라 연구용으로 제작된 프로그램이기 때문에 사용할 때 약간의 어려움이 느껴질 수도 있다. 무료이지만 여러 유료 프로그램들 보다 오히려 많은 다양한 분석 알고리즘들을 제공하고 있고, 시각적 분석 기능도 뛰어나 데이터분석에 유용하게 사용될 수 있는 프로그램이다.

 

   weka 프로그램은 [Weka Machine Learning Project] 프로젝트를 통해 개발되어졌고 지금도 계속 기능이 추가 및 개선되고 있다. 1999년 경 부터 프로젝트가 시작되었고, 2008년 10월 현재 3.5.8 버전 까지 개발되어 발표된 상태이다.


WEKA 프로그램 홈페이지 (웹사이트)

   weka 프로그램은 [Weka Machine Learning Project] 라는 이름의 프로젝트로 꾸준하게 연구 개발되어지고 있다. 프로젝트 홈페이지( http://www.cs.waikato.ac.nz/ml/weka/ )에 방문하면 weka에 대한 자세한 정보들을 찾아 볼 수 있다.




추가적인 WEKA 프로그램 강좌

만약, WEKA 프로그램을 다운로드 받고 설치하는 방법이 궁금하다면 여기 를 클릭하라.

WEKA 프로그램을 사용하는 방법이 알고싶다면 여기 를 클릭하라.
WEKA 에서 기본적으로 지원하는 IRIS 데이터에 대하여 C4.5(J48)을 수행하는 과정을 설명하였다.

by 에이아이 2009. 7. 31. 21:32

웨카(Weka) 프로그램을 소개합니다.

데이터마이닝 및 기계학습에서 오픈소스 및 공개 프로그램으로 유명한 웨카(Weka) 프로그램에 대해서 설명합니다. 아래의 3개의 주제로 글을 작성하여 <해당글>을 작성한 후 링크하였습니다.

(1)에서는 웨카 프로그램을 누가 만들었으며 어떻게 사용될 수 있는지 설명하고, (2)에서는 웨카 프로그램을 다운로드 받고 설치하고 실행하는 방법을 설명합니다. (3)에서는 웨카 프로그램을 사용하여 기본적으로 설치되는 IRIS 데이터를 가지고 의사결정트리 분류 분석을 수행하는 방법을 설명하였습니다.


[1] 웨카 프로그램 소개

[2] 웨카 프로그램 다운로드 및 설치

[3] 웨카 프로그램 간단히 다뤄보기 (분류, 의사결정 트리를 중심으로)

[4] 웨카 프로그램에서 군집 (Clustering) 분석 수행하기 (KMeans, EM 등)





웨카 프로그램 소개글

국가지정 화학공학정보센터 의 게시글

웨카 프로그램 메뉴얼

(1) Weka Explorer Guide 문서


 (2) Weka Tutorial 문서


(3) Weka Usage 발표자료

 


작성한 한글 문서

아래파일은 비공개용으로 암호있으니 다운로드하지 마세요.


by 에이아이 2009. 7. 20. 00:10
| 1 |