2011-08-27 3 views
3

우리는 Weka Explorer GUI를 사용하여 몇 가지 분류 모델을 작성해 왔습니다. 이제 우리는 Java 애플리케이션 내에서이 모델을 구현하여 새로운 메시지를 얻을 수 있도록 테스트가 완료되었습니다.스트리밍 Weka 텍스트 클래스 분류기를 Java로 구축/실행

새 메시지의 경우 메시지를 토큰 화하고 메시지의 토큰을 모델의 단어 벡터를 작성하는 데 사용 된 토큰과 일치시켜야하며이 단어 벡터를 모델에 구문 분석해야합니다.

이 프로세스는 어떻게해야합니까? 사용할 수있는 예제가 있습니까?

새 토큰 (모델 작성에 사용 된 단어 벡터의 일부가 아닌 새 문자 메시지에 나타나는 단어)은 어떻게 처리합니까?

분류 자의 사전 처리/토큰 화를 위해 우리는 NGram Tokenizer, Stemmer 및 IDF Transform을 사용하고 있습니다. 따라서 우리는 분류 할 텍스트에 기반하여 새로운 인스턴스를 생성하기 전에 이러한 단계를 수행하는 방법을 찾아야합니다.

측면으로 탐색기에 분류기를 작성할 때 더 많은 옵션 아래에 '출력 분류 코드'를 선택할 수있는 버튼이 있습니다.이 버튼은 모델을 빌드하고 사용하기 위해 Java 소스 코드를 출력하는 것처럼 들리지만이 옵션은 비활성화되어 있습니다. 다양한 분류 기준 (RF, NB)으로 테스트를 거쳐 변경되지 않았습니다. 나는 이것들을 위해 구현되지 않은 것 같아요?

건배!

답변

1

새로운 지식을 얻기 위해서는 새로운 훈련 샘플이 도착했을 때 weka 분류기를 재교육해야합니다. 나는 Wekka에서 온라인 분류 알고리즘을 알지 못합니다.

ps. Weka는 Java 기반이므로 응용 프로그램에서 해당 라이브러리를 사용할 수 있습니다. 좋은 예가 있습니다 : http://weka.wikispaces.com/Use+WEKA+in+your+Java+code.

+0

감사합니다. 재교육 없이도 새로운 훈련 샘플을 추가 할 수있는 방법이 없다는 것을 알고 있습니다 (일부 분류 모델은 업데이트 가능). 태그가없는 새 메시지 분류 (즉, 태그가없는 테스트 세트). 분류자를 위해 우리는 NGram Tokenizer, Stemmer 및 IDF Transform을 사용하고 있습니다. 따라서 우리는 분류 할 텍스트에 기반하여 새로운 인스턴스를 생성하기 전에 이러한 단계를 수행하는 방법을 찾아야합니다. – NightWolf

+0

당신의 문제가 무엇인지는 분명하지 않습니다. 내가 아는 한 새로운 메시지를 처리하기위한 텍스트 처리 파이프 라인이 있습니다. 당신은 wekka가 어떻게 동작하는지 알며 자바 애플리케이션에 임베드 할 수 있습니다. 이제 새로운 메시지에서 예기치 않은 토큰을 처리 할 방법을 찾고 있습니다. 나는 그것을 정확하게 이해합니까? – Skarab

관련 문제