본문 바로가기
Study/Data Mining(R, Weka, Python)

weka를 이용한 빅데이터 분석1

by Answer Choi 2018. 3. 23.
반응형


WEKA다운로드


먼저 위 링크로 이동하여 weka를 다운로드 합니다.




설치를 하고 Weka GUI chooser를 실행합니다.



KnowledgeFlow를 실행합니다.



왼쪽이 각종 도구이고 오른쪽이 설계를 하는 공간입니다.


왼쪽에서 선택하여 오른쪽에서 클릭을 하시면 들어갑니다.



먼저 CSV Loader를 선택하여 오른쪽에 넣은 후 클릭합니다.


Browse..를 클릭하여 csv파일을 불러옵니다.



traing.csv


위 링크를 클릭하여 다운받아 넣어줍니다.



ClassAssigner를 선택하여 붙여줍니다.



위 그림처럼 배치가 되었으면 CSVLoader에 마우스 우클릭을 하여 


dataSet을 선택하고 ClassAssigner에 연결합니다.



ClassAssigner를 클릭하여  attirbute(Target feature)를 


마지막 컬럼인 PROCESS_TIME으로 선택합니다.


(기본적으로 마지막 컬럼이 선택됩니다.)



AttributeSelection을 선택하여 배치합니다.



ClassAssigner에서 마우스 우클릭으로 dataSet하여 AttiuteSelection에 연결합니다.



AttributeSelection을 더블클릭하여 위 화면을 띄웁니다.


evaluator(평가방법)와 search(탐색방법)를 변경해줘야 합니다.



evaluator는 WrapperSubsetEval로



search는 GreedyStepwise로 선택합니다.



이제 WrapperSubsetEval이라고 적혀있는 부분을 클릭합니다.



평가방법의 세부 설정입니다.


classifier는 학습을 수행할 알고리즘


evaluationMeasure는 정확도 평가 함수


folds는 Cross-validation fold수


threshold는 탐색을 진행할 정확도 차이의 Threshold입니다.



알고리즘을 LinearRegression으로 변경했습니다.



LinearRegression를 클릭하여 세부설정을 해줍니다.


attributeSelectionMethod를 No attribute selection으로 설정합니다.


설정이 완료되면 나와서 GreedyStepwise를 클릭합니다.



GreedyStepwise 설정에서는 탐색방법으로 크게  Forward와 Backward가 있습니다.


searchBackwards부분이 True면 Backward, False이면 Forward입니다.


Forward Search는 정확도가 증가하지 않을 때까지 속성을 하나씩 추가하는 방법이고,


Backward Search는 정확도가 증가하지 않을때까지 속성을 하나씩 제거하며 탐색하는 방법입니다.


먼저 Backward부터 해보겠습니다.




이제 결과 출력을 위해 CSVSaver를 배치합니다.



AttrubuteSelection에서 dataSet으로 연결한 후



CSVSaver 속성에서 몇가지를 설정합니다.


relationNameForFilename을 False로 변경하고,


Directory와 Filename을 입력해줍니다.



다 되었으면 왼쪽 위쪽에 실행버튼을 클릭해 줍니다.



forward방식과 backward방식의 결과입니다.


반응형

인기글