KR20040111517A - 시스템에서의 점진적 변화의 발견 방법 및 장치 - Google Patents

시스템에서의 점진적 변화의 발견 방법 및 장치 Download PDF

Info

Publication number
KR20040111517A
KR20040111517A KR10-2004-7016464A KR20047016464A KR20040111517A KR 20040111517 A KR20040111517 A KR 20040111517A KR 20047016464 A KR20047016464 A KR 20047016464A KR 20040111517 A KR20040111517 A KR 20040111517A
Authority
KR
South Korea
Prior art keywords
features
importance
signature
model
data
Prior art date
Application number
KR10-2004-7016464A
Other languages
English (en)
Inventor
데이비드 유진 허들스톤
요-한 파오
로날드 카스
퀴안 양
엘라 폴야크
피터 크리어
찰스 에드워드 가로팔로
Original Assignee
컴퓨터 어소시에이츠 싱크, 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 컴퓨터 어소시에이츠 싱크, 인코포레이티드 filed Critical 컴퓨터 어소시에이츠 싱크, 인코포레이티드
Publication of KR20040111517A publication Critical patent/KR20040111517A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Data Mining & Analysis (AREA)
  • Marketing (AREA)
  • Databases & Information Systems (AREA)
  • Economics (AREA)
  • Mathematical Physics (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

적응적 시스템 모델링 방법이 제공된다. 시스템의 베이스라인 중요도 서명을 사용함으로써 선택된 입력 특징 세트에 대응하는 데이터를 사용하여 시스템 모델이 생성된다. 입력 특징과 기타 특징의 수퍼세트도 또한 베이스라인 중요도 서명을 사용함으로써 선택된다. 수퍼세트에 대응하는 시스템으로부터 수집된 데이터는 온라인으로 유지된다. 시스템의 새로운 중요도 서명은 온라인 수퍼세트 데이터를 사용하여 판별 분석을 수행함으로써 주기적으로 또는 간헐적으로 결정되고, 시스템에서의 점진적 변화를 검출하는 데 사용된다.

Description

시스템에서의 점진적 변화의 발견 방법 및 장치{METHOD AND APPARATUS FOR DISCOVERING EVOLUTIONARY CHANGES WITHIN A SYSTEM}
수치 모델링은 일반적으로 동적 시스템의 거동을 근사화 또는 모델링할 수 있는 컴퓨터 프로그램 또는 소프트웨어 모듈을 생성하는 것을 포함한다. 시스템은 시스템 모델을 통해 입력 파라미터의 그룹 및 입력 파라미터를 적용함으로써 예측될 수 있는 대응하는 출력 값의 그룹으로서 그 특성이 기술될 수 있다. 시스템 모델의 목적은 기반을 이루는 동적 시스템의 예측 또는 예견을 가능하게 해주는 데 있다.
대부분의 수치 모델링은 기계 학습의 범주 안에 속할 수 있다. 기계 학습은 보통 소프트웨어 시뮬레이션을 이용함으로써 물리적 또는 절차적 시스템의 거동의 특성을 파악하는 것을 포함한다. 그 목적은 시스템의 거동의 예측 또는 예견을 가능하게 해주는 데 있다. 예를 들어, 주식 시세를 잘 예견함으로써 이익을 얻거나 손실을 피할 수 있다. 이와 마찬가지로, 다른 시스템에 있어서, 어떤 선견을 통해 어떤 종류의 위험이 회피되거나 이익이 획득될 수 있다. 이것은 예언은 아니며 오히려 시스템의 과거의 거동에 기초하고 또 아마도 외부 영향에 대한 시스템의 과거의 반응에 기초한 예견이다. 이러한 예측에는 어떤 오류가 내재하고 있으며, 목표는 이러한 오류를 최소화하는 것이다.
기계 학습은 또한 때로는 "블랙박스 모델링"이라고도 하는 데 그 이유는 시스템이 보통 일련의 입력과 출력으로 정리되고 시스템의 내부 작용에는 거의 또는 전혀 관심을 두지 않기 때문이다.
기계 학습은 시스템의 내부 메카니즘을 결정하는 것에 의존하는 제1 원리 모델링(first principle modeling) 등의 다른 유형의 수치 모델링과는 다르다. 복잡하고 관심을 끄는 시스템의 경우, 제1 원리 모델링은 아주 어렵고, 아마도 고비용이며 또 아마도 불가능하다.
도 4의 예시적인 시스템에서, 출력은 주식의 예상 종가이다. 시스템에의 입력은 다른 주식의 시세 및 활황 등의 시장 요인 및 유가 및 소매 가격 등의 시장에 영향을 주는 외부 요인이다. 주식 시장에 경험이 거의 없는 경우조차도, 가능한 모델 입력의 수가 아마도 엄청날 것이라는 것을 쉽게 알 수 있을 것이다. 주식의 시세의 가장 중요한 지표에 촛점을 두지 않는 한, 수퍼컴퓨터조차도 이러한 시스템을 모델링하는 작업을 완수하지 못할 수 있다.
일반적인 수치 모델링 프로세스는 모델 입력으로서 취급할 시스템 특징을 선택하는 것을 포함한다. 가장 간단한 시스템을 제외하고는, 가능한 입력 특징의 세트는 일반적으로 관리가능한 입력의 세트로 정리될 수 있다. 최소한, 특징 정리(feature reduction)는 시스템 출력에 가장 적은 영향을 미치는 특징을 제거하고 또 정적인 것처럼 보이는 특징을 제거하려고 노력한다. 보통, 계산 자원의 필요성을 줄이기 위해서는 것은 물론 처리 시간을 감축시키기 위해 출력에 보다 적은 영향을 미치는 특징을 선별해내려고 시도하는 데, 그 이유는 모델의 관리성(manageability)이 일반적으로 분석 및 처리 자원에 의존하기 때문이다.
수치 모델링 프로세스는 일반적으로 (a) 일단의 기지의 데이터로부터 훈련을 통해 모델이 생성되는 훈련 또는 학습 단계, (b) 훈련된 모델의 정확도가 테스트되는 모델 검증 또는 테스트 단계를 위해 그 데이터의 일정 비율을 보류시켜 두는 것을 포함한다.
시스템 입력과 출력의 쌍은 종종 "패턴"이라고 불리운다. 수치 모델을 작성하기 위해, 훈련 세트(training set)라고 하는 일련의 패턴이 생성된다. 효과적인 모델을 생성하기 위해, 훈련 세트는 (전부가 아닐지라도) 시스템의 거동 방식의 대부분을 나타내는 패턴을 포함하고 있어야만 한다. 특정의 패턴 내의 특정의 입력 파라미터 그룹과 관련된 출력 그룹은 그 입력 그룹이 시스템에 적용되었을 때 시스템으로부터 수집된 실제 출력일 수 있다. 다른 대안에서, 패턴에서의 출력은 일군의 입력이 시스템에 적용될 때의 일군의 원하는 출력일 수 있다.
학습 단계에서, 일반적으로 컴퓨터 프로그램 또는 소프트웨어 모듈로 구현되는 학습 방법은 훈련 세트 내의 패턴을 사용하여 적용되며, 수치 모델은 그에 따라시스템 거동을 학습하며 이 시스템 거동은 그 다음에 모델 파라미터로서 저장된다. 종래에 수많은 학습 방법이 공지되어 있다. 본 발명의 방법은 종래의 학습 방법 중 임의의 특정의 것의 적용에 한정되지 않는다.
훈련된 시스템 모델은 일반적으로 "테스트 세트"라고 하는 다른 일련의 패턴에 대한 테스트 단계에서 테스트 또는 검증된다. 테스트 세트는 훈련 세트에 존재했던 패턴을 포함해서는 안된다. 테스트 단계는 테스트 세트 내의 각각의 패턴마다, 모델에 의해 예측된 시스템 출력과 테스트 패턴 내의 예상 출력을 비교하는 것을 포함한다. 모델의 정확도 또는 효과는 모델 예측이 패턴 출력과 얼마나 잘 일치하는지에 의해 평가된다.
훈련된 모델의 정확도가 충분한 것으로 생각되는 경우, 그 모델은 현장에 배포되어 시스템 거동을 예측하는 데 사용된다. 모델이 배포된 후에, 그 모델이 그의 효과를 상실하는지를 검출하기 위해 모델의 정확도는 주기적으로 재평가될 수 있다. 모델 성능이 떨어진 경우, 그 모델은 부가의 데이터를 사용하여 재훈련될 수 있다. 그렇지만, 그 모델이 동작 중에 있는 동안 데이터가 계속 수집되지 않은 경우, 새로운 데이터를 수집하고 및/또는 이제 중요하게 된 입력을 검색하기 위해 많은 노력이 필요할 수 있다. 이 사이클의 부가의 단점은 모델이 유용성을 벗어나 열화하는 것이 사이클의 후기에 발견될 수 있고, 일단 발견된 경우 그 분석 및 배포 단계가 반복되어야만 한다는 것이다.
어떤 경우에, 시스템 입력 및 시스템 출력에 대응하는 새로운 데이터가 모델이 동작 중에 있는 동안 온라인으로 수집되어 축적될 수 있으며, 모델을 재훈련시키는 데 사용될 수 있다. 그렇지만, 재훈련이 모델의 정확도를 타당한 수준으로 향상시키지 못하는 경우, 이전에 폐기가능한 것으로 생각된 입력 특징이 이제 중요하게 될 정도로 시스템이 진화하였는지를 결정하기 위해 최초의 분석에서 수행된 특징 선택이 반복되어야만 하고, 또 훈련 및 배포의 전체 프로세스도 또한 반복되어야만 한다.
본 출원은 2002년 4월 19일자로 출원된 발명의 명칭이 "시스템에서의 점진적 변화의 발견 방법 및 장치"인, 동시 계류 중인 미국 가특허출원 제60/374,041호를 우선권 주장한다.
본 발명은 수치 모델링에 관한 것이다. 상세하게는, 본 발명은 적응적 시스템 모델링 및 모델 평가에 관한 것이다.
도 1은 시스템에서의 점진적 변화를 검출하기 위해 적용될 수 있는, 본 발명의 일 실시예에 따른 적응적 시스템 모델링 방법의 흐름도.
도 2는 본 발명의 다른 실시예에 따른 적응적 시스템 모델링 방법의 흐름도.
도 3은 본 발명의 다른 실시예에 따른 적응적 시스템 모델링 방법의 흐름도.
도 4는 주식 시세 예견 시스템을 개략적으로 나타낸 도면.
도 5는 도 4의 주식 시세 예견 시스템에 대응하는 블랙박스 모델을 개략적으로 나타낸 도면.
도 6은 본 발명의 다른 실시예에 따른 적응적 시스템 모델링 방법의 흐름도.
도 7은 코팅 배합 모델의 예시적인 결정 트리를 개략적으로 나타낸 도면.
도 8은 도 7의 코팅 배합예와 관련하여, 모든 이용가능한 특징을 사용하여 훈련된 모델의 훈련 및 검증 결과를 보고하는 사용자 인터페이스를 나타낸 도면.
도 9는 도 7 및 도 8의 코팅 배합예와 관련하여, 선택된 시스템 특징과 엔트로피 척도 사이의 관계를 그래픽으로 나타낸 도면.
도 10은 도 7 및 도 9의 코팅 배합예와 관련하여, 가장 중요한 특징을 사용하여 훈련된 모델의 훈련 및 검증 결과를 보고하는 사용자 인터페이스를 나타낸 도면.
도 11은 예시적인 와인 구매 모델과 관련하여, 모든 이용가능한 특징을 사용하여 훈련된 모델의 훈련 및 검증 결과를 보고하는 사용자 인터페이스를 나타낸 도면.
도 12는 도 11의 와인 구매예에 대한 예시적인 결정 트리의 상위 레벨을 개략적으로 나타낸 도면.
도 13은 도 11 및 도 12의 와인 구매예와 관련하여, 특징들의 상대 중요도를 그래픽으로 나타낸 도면.
도 14는 헬프 데스크 시스템을 모델링하기 위한 예시적인 결정 트리의 최상위 레벨을 개략적으로 나타낸 도면.
도 15는 도 7 내지 도 10의 코팅 배합예와 관련하여, 선택된 특징에 대한 비닝(binning)을 그래픽으로 나타낸 도면.
도 16은 도 11 내지 도 13의 와인 구매예와 관련하여, 선택된 특징에 대한 비닝을 그래픽으로 나타낸 도면.
도 17은 도 11 내지 도 13의 와인 구매예와 관련하여, 구매 성향 및 선택된 특징을 그래픽으로 나타낸 도면.
도 18은 예시적인 헬프 데스크 시스템을 개략적으로 나타낸 도면.
도 19는 도 14의 헬프 데스크 시스템예와 관련하여, 중요도에 의해 순위가 정해진 문제 코드를 표로 나타낸 도면.
도 20 내지 도 23은 도 14 및 도 19의 헬프 데스크 모델을 구성하기 위한 예시적인 사용자 인터페이스를 나타낸 도면.
도 24는 도 14 및 도 19의 모델링 시스템과 관련하여 데이터베이스 연결 정보를 입력하는 사용자 인터페이스를 나타낸 도면.
도 25 내지 도 29는 도 14 및 도 19의 헬프 데스크 모델링예와 관련한 보고서를 나타낸 예시적인 사용자 인터페이스를 나타낸 도면.
도 30은 헬프 데스크 모델링 시스템의 상위 레벨 블록도.
도 31은 도 30의 헬프 데스크 모델링 시스템의 설치 마법사의 흐름도.
도 32는 도 30의 헬프 데스크 모델링 시스템의 관리자 서비스의 흐름도.
도 33은 도 30의 헬프 데스크 모델링 시스템의 Consult 모듈의 흐름도.
도 34는 도 30의 헬프 데스크 모델링 시스템의 SavePattern 모듈의 흐름도.
도 35는 도 30의 헬프 데스크 모델링 시스템의 Evaluate 모듈의 흐름도.
도 36은 도 30의 헬프 데스크 모델링 시스템의 DecisionTree 모듈의 흐름도.
도 37은 도 30의 헬프 데스크 모델링 시스템의 UpdateModel 모듈의 흐름도.
도 38은 도 30의 헬프 데스크 모델링 시스템의 데이터 흐름도.
적응적 시스템 모델링 방법이 제공된다. 일 실시예에서, 본 방법은 베이스라인 중요도 서명(baseline significance signature)을 사용함으로써 시스템의 복수의 후보 특징들로부터 입력 특징 세트 및 상기 입력 특징과 기타 특징의 수퍼세트를 선택하는 단계, 상기 선택된 입력 특징 세트에 대응하는 데이터를 사용함으로써 시스템 모델을 생성하는 단계, 상기 시스템으로부터 수집된 상기 입력 특징과 기타 특징의 상기 수퍼세트에 대응하는 온라인 데이터를 유지하는 단계, 상기 온라인 수퍼세트 데이터를 사용하여 상기 후보 특징의 판별 분석을 수행함으로써 상기 시스템의 새로운 중요도 서명을 결정하는 단계, 및 상기 새로운 중요도 서명과 상기 베이스라인 중요도 서명을 비교함으로써 상기 시스템에서의 점진적 변화를 검출하는 단계를 포함한다. 본 방법은 상기 새로운 중요도 서명을 사용함으로써 새로운 입력 특징을 선택하는 단계를 더 포함할 수 있다.
다른 실시예에 따른 본 방법은, 판별 분석을 수행함으로써 시스템의 현재의 거동의 베이스라인 중요도 서명을 결정하는 단계, 상기 베이스라인 중요도 서명을 사용함으로써 복수의 후보 특징으로부터 입력 특징 세트 및 상기 입력 특징과 기타특징의 수퍼세트를 선택하는 단계, 상기 선택된 입력 특징 세트에 대응하는 데이터를 사용함으로써 시스템 모델을 생성하는 단계, 및 상기 시스템으로부터 수집된 상기 입력 특징과 기타 특징의 수퍼 세트에 대응하는 온라인 데이터를 유지하는 단계를 포함한다. 본 방법은 부가의 입력 특징 데이터에 기초하여 상기 시스템 모델에 의한 예측의 정확도를 평가하는 단계, 상기 시스템 모델 예측의 정확도가 미리 정해진 정확도 레벨 이하인 경우, 상기 후보 특징의 다른 판별 분석을 수행함으로써 상기 시스템의 새로운 중요도 서명을 결정하는 단계, 및 상기 새로운 중요도 서명을 사용함으로써 새로운 입력 특징을 선택하는 단계를 더 포함할 수 있다. 상기 부가의 입력 특징 데이터는 상기 온라인 데이터 수집으로부터 획득될 수 있다.
다른 실시예에 따르면, 적응적 시스템 모델링 방법은 결정 트리 방법론을 이용하여 판별 분석을 수행함으로써 시스템의 현재의 거동의 베이스라인 중요도 서명을 결정하는 단계, 상기 베이스라인 중요도 서명을 사용함으로써 복수의 후보 특징으로부터 입력 특징 세트를 선택하는 단계, 및 상기 선택된 입력 특징 세트에 대응하는 데이터를 사용함으로써 시스템 모델을 생성하는 단계를 포함한다.
본 발명의 특징은 첨부 도면을 참조하여 기술된 이하의 상세한 설명으로부터 보다 쉽게 이해될 수 있다.
본 발명은 적응적 시스템 모델링 및 모델 평가를 위한 (방법 및 시스템의 형태의) 툴을 제공한다. 예를 들어, 본 발명의 방법은 동적 시스템을 모델링하기 위한 소프트웨어로 구현된 시스템(software-implemented system)에 포함될 수 있다. 본 방법은 종래의 프로그램 저장 장치 또는 컴퓨터 판독가능 매체 상에 저장되거나 및/또는 컴퓨터 네트워크 또는 다른 전송 매체를 통해 전송되는 하나 이상의 컴퓨터 프로그램 또는 소프트웨어 모듈에 구현될 수 있다.
본 발명의 시스템 모델링 및 모델 평가 방법은 시스템이 진화하여 배포된 모델이 그의 유용성을 다했을 때 모델링 사이클을 새로 시작할 필요를 감소시키거나 없애준다.
도 1에 도시한 예시적인 실시예에 따른, 시스템에서의 점진적 변화를 검출하는 데 적용될 수 있는 적응적 시스템 모델링 방법은 베이스라인 중요도 서명을 사용함으로써 시스템의 복수의 후보 특징으로부터 입력 특징 세트 및 입력 특징과 기타 특징의 수퍼세트를 선택하는 단계를 포함한다(단계 S11). 시스템 모델은 선택된 입력 특징 세트에 대응하는 데이터를 사용함으로써 생성된다(단계 S12). 시스템으로부터 수집된 입력 특징 및 기타 특징의 수퍼세트에 대응하는 데이터가 온라인으로 유지된다(단계 S13). 시스템의 새로운 중요도 서명은 온라인 수퍼세트 데이터를 사용하여 후보 특징의 판별 분석을 수행함으로써 결정된다(단계 S14). 새로운 중요도 서명과 베이스라인 중요도 서명을 비교함으로써 시스템에서의 점진적 변화가 검출된다(단계 S15). 새로운 입력 특징 세트는 새로운 중요도 서명을 사용함으로써 선택될 수 있다.
다른 예시적인 실시예에 따른 적응적 시스템 모델링 방법은 도 2를 참조하여 설명된다. 시스템의 현재의 거동의 베이스라인 중요도 서명은 판별 분석을 수행함으로써 결정된다(단계 S21). 입력 특징 세트 및 입력 특징과 기타 특징의 수퍼세트는 베이스라인 중요도 서명을 사용함으로써 복수의 후보 특징으로부터 선택된다(단계 S22). 선택된 입력 특징 세트에 대응하는 데이터를 사용함으로써 시스템 모델이 생성된다(단계 S23). 시스템으로부터 수집된 입력 특징과 기타 특징의 수퍼세트에 대응하는 데이터가 온라인으로 유지된다(단계 S24). 본 방법은 선택적으로 (온라인 데이터 수집으로부터 획득될 수 있는) 부가의 입력 특징 데이터에 기초하여 시스템 모델에 의한 예측의 정확도를 평가하는 단계(단계 S25), 시스템 모델 예측의 정확도가 미리 정해진 정확도 레벨 이하인 경우(단계 S26), 후보 특징의 다른 판별 분석을 수행함으로써 시스템의 새로운 중요도 서명을 결정하는 단계(단계 S27), 및 새로운 중요도 서명을 사용함으로써 새로운 입력 특징을 선택하는 단계(단계 S28)를 더 포함할 수 있다.
다른 실시예(도 3)에 따르면, 적응적 시스템 모델링 방법은 결정 트리 방법론을 이용하여 판별 분석을 수행함으로써 시스템의 현재의 거동의 베이스라인 중요도 서명을 결정하는 단계(단계 S31), 베이스라인 중요도 서명을 사용함으로써 복수의 후보 특징으로부터 입력 특징 세트를 선택하는 단계(단계 S32), 및 선택된 입력 특징 세트에 대응하는 데이터를 사용함으로써 시스템 모델을 생성하는 단계(단계 S33)를 포함한다.
A. 개요
시스템의 특성을 파악하는 데 이용가능한 여러가지 수치 모델링 기술이 있다. 이 기술들은 통계적 기술에서부터 신경망, 퍼지 논리 및 결정 트리 등의 툴까지 있다. 본 발명의 방법은 임의의 수치 모델링 기술에 적용될 수 있다. 문제가 후보 특징 세트로부터 중요한 시스템 입력을 식별하는 것으로 구성될 수 있는 경우, 본 발명의 방법이 적용될 수 있다.
모델링되는 시스템은 N개의 이용가능한 입력 특징을 가질 수 있다. 표준 특징 정리 기술을 통해 또한 아마도 제1 원리(예를 들어, 시스템의 전부 또는 그 일부의 인과론)를 통해, 모델 입력에 포함할 M개의 특징의 코어 그룹을 선택할 수 있다. 게다가, 나머지 N-M개의 특징 중의 일부도 여전히 모델 출력에 영향을 줄 수 있으며 P(>M)개의 입력 특징을 갖는다는 것은 모델 정확도를 향상시킬 수 있다. 그렇지만, P개의 입력 특징에 대한 시스템 응답은 이하에 기술하는 바와 같이 시간에 따라 변동(drift)하거나 변화할 수 있다.
후보 특징 세트로부터 사용할 입력을 선택하는 것 및 모델링 기술에 제공하기 전에 그 입력을 처리하는 방법은 적어도 모델링 기술을 선택하는 것만큼이나 중요하다(아마도 더 중요하다).
데이터를 정리하는 데 있어서의 맨먼저 단계는 정적이거나 다른 특징에 강하게 상관되어 있는 특징을 찾아내는 것을 포함할 수 있다. 이러한 특징들은 모델링 노력에 공헌하는 바가 없으며 자원을 소모한다. 이들 특징을 포함하는 것은 또한 모델링 방법이 데이터에서 유용한 패턴을 찾아내지 못하도록 방해할 수 있다.
정적이고 상관된 특징을 제거한 후에, 이용가능한 계산 자원을 고려하면서 출력에 가장 중요한 특징을 선택한다. 보통, 입력 세트를 실행가능한 수의 입력으로 감축하기 위해 비교적 중요도가 높은 특징을 폐기하는 일은 생기지 않는다. 그 대신에, 최소한 분석 시에 출력에 그다지 영향을 줄 것 같지 않은 많은 수의 특징을 식별할 수 있게 되는 경우가 있다. 나머지 중요한 특징은 사용가능한 시스템 모델을 생성하기 위해 사용될 수 있다. 예를 들어, 도 4의 시스템은 도 5에 도시한 바와 같이 블랙박스 표현으로 정리될 수 있다.
본 발명의 방법은 판별 분석을 이용하여 모델링을 위해 사용되는 P개의 입력 특징의 상대 중요도의 특성을 파악한다. 중요도에 의한 이러한 특징의 순위는 본 명세서에서 "중요도 서명"(significance signature)이라고 한다. 한가지 유형의 판별 분석은 결정 트리를 생성하는 방법을 통해 제공된다. 트리 생성의 부산물은 트리에서의 특징들이 시스템 출력에 대한 그의 중요도에 따라 순위가 매겨진다는 것이다.
모델에 현재 포함되어 있는 P개의 입력의 상대 중요도에 의해 그 모델의 특성을 파악하는 것 이외에, N-M개의 특징에 대한 데이터가 온라인으로 수집되고 유지된다. 이하에서, N-M개 특징의 그룹은 모델에서 활성화되는 P개의 특징의 수퍼세트라고 한다. 이러한 전략은 M을 0으로 설정하는 것과 N개의 가능한 특징 중에서 P개를 선택하는 것으로 확장될 수 있다.
모델은 일반적으로 그 모델이 장래의 데이터를 얼마나 잘 예측할 것으로 예상될 수 있는지의 객관적인 척도를 제공하는 훈련 프로세스에서 사용되지 않았던 데이터를 사용하여 조회(consult)함으로써 평가될 수 있다. 도 4에 대응하는 일례의 경우, 가장 최근의 달로부터의 데이터를 보류시켜 두는 것을 제외하고는 바로 전년으로부터의 데이터를 사용하여 훈련할 수 있다. 일단 모델이 작성되면, 가장 최근의 달로부터의 데이터를 사용하여 그 모델에 조회해볼 수 있다.
주식 시장 등의 빠르게 진화하는 시스템에서, 그 모델의 성능이 시간에 따라 떨어질 것으로 예상될 수 있다. 그 모델은 그 모델이 언제 열화되는지를 측정하기 위해 주기적으로 또는 심지어 계속적으로 평가될 수 있다.
모델이 열화됨에 따라, 그 모델은 보다 최근의 데이터를 바탕으로 적어도 재훈련될 수 있다. 어떤 경우, 입력 특징 세트는 변경될 필요가 없는데, 그 이유는 입력들간의 상호작용만이 변경되기 때문이다. 그렇지만, 어떤 다른 경우에, 현재의 입력 세트로는 충분히 정확한 모델이 달성될 수 없다. 예를 들어, 시스템은 입력 세트에 현재 표현되어 있지 않은 특징에 의해 강하게 영향받을 수 있거나, 또는 아마도 입력 세트 내의 특징이 더 이상 출력에 그다지 영향을 미치지 않으며 따라서 제거될 수 있다. 도 4의 예에서, 통상의 시장 힘(normal market force)에 대한시장의 반응을 교란시키는 국제적 충돌 등의 새로운 외부 요인이 시장에 영향을 줄 수 있다.
모델은 주기적으로 (또는 간헐적으로) 그의 효과에 대해 재평가된다. 테스트 세트에 대한 최소 정확도를 검사하는 것 이외에, 현재 가장 분별력있는 특징을 결정하기 위해 판별 분석을 통해 N-M개의 후보 특징의 특성 파악이 다시 행해진다. 가능한 입력 특징의 중요도에 급격한 변화가 있는 경우, 새로운 중요도 서명을 사용함으로써 적당한 특징이 용이하게 재선택될 수 있으며, 모델은 이용가능한 온라인 데이터에 대해 훈련된다. 최초의 분석에서와 같이, 데이터의 일정 비율이 새로운 모델의 검증을 위해 보류되어 있다.
데이터 마이닝 또는 기계 학습 애플리케이션에서, 데이터는 종종 모델링되고 있는 시스템으로부터 계속 수집된다. 따라서, 예측 또는 예견을 획득하기 위해 모델을 조회하는 데 새로운 데이터가 사용될 수 있다. 둘째, 이러한 데이터는 모델의 성능을 측정하기 위해 예측이 검증될 때까지 온라인으로 유지될 수 있다.
본 발명의 방법을 완전히 이용하기 위해, 현재 사용되는 입력 특징의 수퍼세트가 수집된다. 기타 특징이 시스템의 거동에 더 중요하게 되었는지를 결정하기 위해 주기적인 중요도 서명이 사용될 수 있다. 다른 카테고리 코드가 더 중요하게 되기 때문에, 추출된 특징은 그에 따라 개편될 수 있다.
전술한 바와 같이, 데이터는 가능한 입력 모두에 대해 온라인으로 수집될 수 있으며, 특징 선택은 필요에 따라 모든 이용가능한 특징에 걸쳐 수행될 수 있다. (특히 시스템의 전부 또는 그 일부에 대한 제1 원리 이론이 이용가능한 환경 하에서) 한정된 후보 특징 그룹 내에 변동을 갖는 어떤 고정된 코어 그룹의 입력으로 모델을 앵커링함으로써 최상의 결과가 예상될 수 있다. 코어 특징은 양호한 모델의 기초가 될 수 있으며, 가변적인 특징 세트는 시스템 거동에서의 점진적인 변화 또는 변동에 대한 모델의 튜닝(tuning)을 가능하게 해준다.
본 발명의 일 실시예에 따른 방법은 도 6에 도시되어 있다. 처음에, 시스템은 데이터 사전 처리 요건의 선택 및 결정을 위해 분석을 받는다. 그 다음에, 시스템은 모델링되고 온라인 상태에 놓여진다.
그렇지만, 종래의 기계 학습 또는 데이터 마이닝 절차와는 달리, 현재 입력으로서 사용되는 특징의 수퍼세트가 온라인 상태로 유지된다. 주기적인 예측이 행해지고 모델 정확도가 측정된다. 정확도가 떨어진 경우, 모델은 보다 최근의 데이터를 사용하여 재훈련될 수 있다.
베이스라인 중요도 서명은 시스템의 현재의 거동의 특성 파악을 위해 유지된다. 후보 입력 특징의 수퍼세트는 온라인 상태로 유지된다. 수퍼세트의 경우, 모델에 현재 포함되어 있는 특징들은 모델링을 위해 현재 사용되지 않는 부가의 특징과 함께 수집된다. 수퍼세트는 모델에 대해 가능한 입력 특징 모두로까지 확장될 수 있다. 판별 분석은 특징의 수퍼세트의 중요도 서명을 획득하여 이용가능한 특징의 상대적 영향의 변화를 발견할 수 있도록 하기 위해 주기적으로 또는 간헐적으로 수행된다. 시스템에서 중요한 점진적인 변화가 검출되는 경우, 새로운 중요한 특징이 모델 입력으로서 선택된다. 수퍼세트가 온라인 상태로 유지되기 때문에, 새로운 모델의 훈련 및 배포를 위한 데이터가 즉각 이용가능하다.
모델 입력의 재선택 후에도, 모델은 제대로 동작하지 못할 수 있으며, 이는 현재 모니터링 또는 수집되고 있지 않은 새로운 특징이 중요하게 되는 경우에 예상될 수 있는 것이다. 성능 저하의 빈번한 발생은 시스템이 초기 분석 단계에서 제대로 이해되지 않았다는 표시일 수 있다.
어떤 종래의 모델링 방법은 모델의 주기적인 재훈련을 포함한다. 몇가지 종래의 기술은 재훈련에 앞서 모델링 파라미터의 동적 조정을 제공하지만, 이러한 종래의 조정은 일반적으로 모델 입력을 변경하는 것을 수반하지 않는다. 모델 입력의 선택은 일반적으로 분석 단계의 일부인 것으로 생각되며, 보통 모델이 동작하고 있는 후에는 수행되지 않는다.
본 발명의 방법은 새로운 데이터를 사용하여 단순히 재훈련하는 것보다 상당한 이점을 제공한다. 중요도 서명을 베이스라인으로서 또한 진행중인 시스템 변동의 척도로서 사용함으로써 시스템 모델을 사전에 적응시킬 수 있다. 판별 분석을 통해 획득된 중요도 서명은 모델을 시스템 변동에 적응시키기 위해 모델 입력 세트에 대한 조정을 결정하는 데 사용될 수 있다.
B. 판별 분석
판별 분석은 출력에 가장 중요한 특징을 식별해내는 방법이다. 각각의 특징의 중요도의 척도를 제공하는 중요도 서명은 판별 분석으로부터 얻어진다. 이러한 서명의 변화, 및 특히 중요한 특징 세트의 변화는 시스템의 진화 또는 변동을 나타낼 수 있다.
다수의 공지의 판별 분석 기술 중 임의의 것이 본 발명의 방법에서 시스템의중요한 입력 특징을, 그 특징의 상대적 중요도 순위와 함께 결정하는 데 사용될 수 있다. 일 실시예에 따르면, 통계적 상관관계가 극단적으로 단순화한 판별 분석 기술로서 사용될 수 있다. 또한 판별 분석을 위한 보다 최신의 통계적 방법들이 있다.
1. 판별 분석 및 결정 트리
다른 실시예에 따른 판별 분석 방법은 결정 트리 기술을 이용하여 중요도 서명을 생성한다. 결정 트리는 이전에 수행된 데이터 분류에 따라 데이터 세트를 분할하는 데 가장 효과적인 특징을 식별한다. 트리가 작성될 때, (예를 들어, 중요성의 내림차순으로) 가장 중요한 특징이 본 방법을 통해, 종종 정보 이론적 척도 또는 통계적 중요도 테스트에 따라 선택된다.
결정 트리는 종종 예견을 위한 유일한 모델링 툴로서 사용된다. 그렇지만, 어떤 경우에 결정 트리는 데이터 패턴의 완전한 분류를 제공하지 않을 수 있다. 생성된 트리가 정확한 분류를 할 수 없는 경우, 확률적 분류도 역시 수행될 수 있다. 트리가 정확한 분류를 할 수 있는지 여부에 상관없이, 그 트리는 시스템의 중요한 특징을 결정하는 데 유용하다.
어떤 결정 트리 방법론은 심볼 및 숫자 데이터의 용이한 통합을 가능하게 해준다. 결합된 심볼 및 숫자 특징의 중요도 테스트는 순수하게 통계적인 방법에서 보다 어려울 수 있다.
판별 분석은 결정 트리 방법론을, 이미 어떤 방식으로 분류된 데이터 세트에 적용하는 것을 포함할 수 있다. 결정 트리 방법론은 그의 분류에 따라 분리된 서브그룹을 획득하기 위해 데이터 세트를 재귀적으로 분할한다. 트리의 각 레벨에서, 하나 이상의 특징에 대한 테스트가 데이터를 분할하기 위해 사용된다. 목표는 보통 판별 검출을 획득하는 데 가장 효과적인 테스트를 수행하는 것이다.
결정 트리의 주요 용도는 미지의 데이터의 분류일 수 있다. 그렇지만, 부가의 이점으로서, 서브트리의 동질 분할(homogeneous partitioning)을 가져오는 테스트 시퀀스는 규칙(예를 들어, f1 = 0이고 f2 = 1이며 f3 = 3인 경우, 어떤 확률로 out1 = x이다)으로서 표현될 수 있다. 이러한 규칙은 사람 검토자 및 시스템 모델의 사용자가 어떻게 또한 얼마나 효과적으로 시스템이 모델링되고 있는지를 더 잘 이해할 수 있도록 해준다.
도 7은 코팅 배합 시스템에 대한 예시적인 결정 트리를 나타낸 것이다. 데이터는 경화 후의 도포된 코팅의 두께에 따라 분류된다. 결정 트리는 코팅 두께에 대한 가장 중요한 영향을, 그의 중요성 순서로 보여준다.
도 7에 도시된 예시적인 결정 트리는 노드(node)와 가지(branch)로 구성되어 있다. 노드 0는 루트 노드이고, 노드 1-3은 가지 노드이며, 노드 4-12는 리프 노드(leaf node)이다. 분할되는 모집단(population)은 이미 분류되어 있다. 도 7에 대응하는 데이터 세트의 경우, 각각의 패턴이 그의 두께 순위가 "하위(low)" 또는 "상위(high)"였는지에 따라 분류되었다. 특징(예를 들어, 점도(viscosity))은 "하위(low)", "중간(med)", 또는 "상위(high)"로서 비닝되었다. 트리의 각각의 노드는 그 노드에서의 클래스 부분모집단(class subpopulation)의 카운트와 관련되어 있다. 예를 들어, 코팅 데이터 트리에서의 노드 0은 상위 두께값을 갖는 25개 패턴과 하위 두께값을 갖는 59개 패턴을 포함한다. 목표는 리프 노드가 동질이 되도록 하는 것이며 따라서 시작 모집단(starting population)을 완전히 분할하는 것이다. 그렇지만, 리프 노드는 종종 단일 클래스의 우세만을 갖는다. 때로는 명백한 다수가 없는데, 그 이유는 트리 성장 절차가 고의로 중단되었거나 노드를 추가로 분할하기 위해 데이터에 대한 어떤 테스트도 없기 때문이다. 도 7에 도시한 예에서는, 트리의 이 가지에 대해 확률적 분류 또는 규칙만이 이용가능하다. 도 7의 노드(4, 5, 6, 8, 12)는 비동질 리프 노드(non-homogenous leaf node)의 예이다. 도 7로부터, 이하의 규칙이 도출될 수 있다. (a) surftens(표면 장력 측정치) 및 점도가 가장 중요한 특징이다. (b) 하위 surftens 및 중간 내지 상위 점도를 갖는 배합이 보통 두꺼운 코팅을 형성한다. (c) 하위 surftens 및 하위 점도는 보통 두꺼운 코팅을 만든다. (d) 중간 내지 상위 surftens는 보통 얇은 코팅을 만든다.
이 규칙들은 이들 배합 파라미터가 도포된 코팅의 적당한 두께에 어떻게 영향을 주는지의 분야 전문가의 지식 또는 직관에 대하여 검사될 수 있다. 이들 규칙 중 어떤 것은 분야 전문가에게 생소할 수 있거나 또는 의심의 여지가 있을 수 있다. 이들은 검증될 수 있으며, 참인 경우 시스템에 관한 발견된 지식을 나타낸다.
트리는 데이터 세트를 적당히 분할하는 각각의 레벨에서 테스트를 선택함으로써 성장된다. 보통 각각의 가능한 테스트가 차례대로 시도되며 다양성 함수(diversity function)에 따라 가장 좋은 것이 선택된다. 개별적인 다양성 함수에 대해서는 이하에 기술한다. 다양성 함수는 특징 테스트가 데이터 세트를 얼마나잘 분할하는지를 측정하려고 한다. 대부분의 방법은 전체 레벨에 걸쳐 동일한 테스트를 선택하며, 이 경우 선택된 특징 테스트는 한번만 사용된다. 트리의 더 아래쪽에서 적용된 특징 테스트의 평가는 신뢰성이 더 낮은 데, 그 이유는 그 평가가 점차 전체 모집단에 대한 대표성이 더 낮은 부분모집단에 의존하기 때문이다.
결정 트리 방법론은 이진(binary) 및 비이진(non-binary) 방법으로 개략적으로 분류될 수 있다. 이진 방법은 노드당 2개의 가지(예를 들어, 0 또는 1, 예 또는 아니오 등)만을 허용한다. 비이진 방법은 노드당 다수의 가지를 허용하며, 트리의 가지가 더 많게 된다. 비이진 방법은 아마도 특성상 기본적으로 이진이 아닌 데이터에 더 적합하다. 그렇지만, 거의 모든 데이터가 2개의 빈(bin), 즉 데이터가 이진으로 보이도록 하기 위해 생성된 파생 필드로 비닝될 수 있다. 비이진 트리가 더 많은 가지를 갖는 경향이 있기 때문에, 비이진 트리는 각각의 분할이 판별기(discriminator)로서 신뢰성이 더 낮은 지점에 빨리 도달한다. 게다가, 비이진 트리에서 때때로 발견되는 효과는 어떤 특징 테스트가 데이터 세트를 다수의 작은, 거의 동질의 노드로 분할할 수 있다는 것이다. 한 예는 데이터베이스 내의 모든 사람에 대해 리프 노드를 생성할 수 있는, 사람의 이름에 대한 테스트일 수 있다. 이러한 테스트는 시스템에 관한 유용한 규칙을 생성하지 않을 수 있다.
이 방법들은 가능한 특징값에 대해 유한 개의 라벨 또는 범위를 사용한다. 이 방법들은 값들을 이산화(discretize)하거나 비닝함으로써 연속한 숫자 데이터에 대해 사용될 수 있다. 제1 근사화로서, 각각의 숫자 특징에 대해 임의의 수의 균일한 간격으로 있는 범위가 선택되고, 특징 값에는 그 값이 속하는 범위 또는 빈의라벨이 붙여져 있다. 예를 들어, 특징의 전체 관찰 범위는 3개의 동일한 구간으로 분할되어 하위, 중간 및 상위의 라벨이 붙여질 수 있다. 어떤 연구자는 비닝 동작을 추가로 최적화할 것을 추천하고 있다. 한가지 방법은 값들을 선형적으로 클러스터링하고, 데이터가 최상의 빈 범위를 선택하게 하는 것이다. 다른 대안에서, 비닝 동작은 특징 테스트 평가와 결합될 수 있다.
결정 트리 방법론은 또한 트리의 복잡성을 감소시키기 위해 가지치기(pruning)라는 프로세스를 이용한다. 어떤 방법은 검증 세트(validation set)를 이용하여 가지치기의 효과를 측정한다. 어떤 방법은 가지치기할 가지를 식별하기 위해 훈련 데이터만을 사용한다. 가지치기를 검증하기 위해 훈련 세트로부터의 데이터를 보류시켜 두는 것은 대체로 불필요할 수 있다. 가지치기 방법은 최소 노드 카운트(minimum node count)를 지정하는 것만큼이나 간단할 수 있다. 가지치기는 또한 특징 테스트의 부정(negation) 및/또는 논리곱(conjunction)을 통해 트리의 가지들을 단일 가지로 병합하려고 시도함으로써 달성될 수 있다. 어떤 연구자들은 복잡한 트리는 그 트리가 콤팩트하고 사람이 즉시 이해가능하게 될 때까지 가지치기되어야만 하는 것으로 생각하고 있다. 다른 연구자들은 복잡한 시스템은 겉보기에 복잡한 결정 트리를 가져올 수 있음을 지적한다.
결정 트리 방법론은 감독형 학습(supervised learning)의 예이다. 이들 방법은 다른 감독형 학습 방법에 해를 끼치는 과잉 훈련(overtraining)의 동일한 위험을 감수하고 있다. 과잉 훈련은 훈련 패턴 간의 기초적 관계를 학습하는 것보다는 훈련 패턴의 서명을 학습하는 것에 대응한다. 과잉 훈련된 모델은 그의 훈련세트 내의 패턴에 대한 출력을 적절히 예측할 수 있지만, 훈련 세트 내에 있지 않은 패턴에 대해 잘 예측하도록 일반화하지는 않는다. 과잉 훈련의 위험을 최소화하기 위해, 트리는 훈련 데이터 세트를 사용하여 성장되고 테스트 세트를 사용하여 테스트될 수 있거나 또는 훈련 데이터에 특이한 가지를 제거하도록 가지치기될 수 있다. 다른 대안에서, 어떤 유형의 정지 조건(stopping condition)이 적용될 수 있다.
2. 결정 트리의 예시적인 응용
도 7의 트리는 트리 및 관련 규칙을 비교적 단순하게 하기 위해 트리를 단지 2개의 레벨로 한정하여 얻은 것이다. 그렇지만, 이러한 한정에서조차도, 2가지 가장 중요한 특징에 관련된 비교적 강력한 서술문을 만드는 것이 가능하다. 이하의 특징, 즉 점도, surftens, persolids, nipclear, ra, rp, rl은 도 7에 대응하는 예에 포함되어 있다. 이들 특징은 코팅 배합의 화학적 특성으로서, 도포된 코팅의 두께를 예측하는 데 사용된다.
뉴전트(Neugents)기술은 거동을 모델링 및 예측하고 한 시스템 모드에서 다른 시스템 모드로의 전환 확률을 예측하는 데 아주 우수한 무감독형 자율 에이전트(unsupervised and autonomous agent)를 제공한다. 뉴전트는 대부분의 사람이 할 수 없는 시스템 거동 패턴을 검출할 수 있다.
2가지 유형의 뉴전트, 즉 값 예측(Value Prediction) 및 이벤트 예측(Event Prediction)이 이용될 수 있다.
이벤트 예측 뉴전트는 입력 데이터 내의 값 및 논리적 조건의 관점에서 정의되는 특정 유형의 이벤트를 찾기 위해, 시스템 거동의 과거 데이터의 클러스터링을 통해 훈련된다. 예를 들어, 이벤트 예측 뉴전트 객체는 예측될 이벤트의 이름 및 입력 데이터의 관점에서의 이벤트의 정의로 구성되어 있다. 뉴전트는 이어서 과거 데이터로부터 훈련된다. 생성 시에, 이벤트 예측 뉴전트는 새로운 데이터가 제공될 때 평가를 하기 위해 호출되고, 출력은 데이터 내의 정의된 이벤트의 검출, 이상 상황(unusual situation)의 검출, 이벤트의 예측, 이벤트가 장래 기간 내에 발생할 확률, 또는 시스템이 그 훈련의 바탕이 된 과거 데이터와 비교하여 이상하게 거동한다는 경보이다.
값 예측 뉴전트는 예측 모델링을 위한 신경망의 구현이다. 값 예측 뉴전트 객체는 적당하게 정규화된 독립적 및 의존적 과거 데이터로부터의 기지의 입력-출력쌍으로부터 획득된 훈련 세트를 사용하여 훈련된다. 생성 시에, 값 예측 뉴전트는 독립적 특징의 값을 제공받을 때 의존적 특징의 값을 예측하기 위해 호출된다. 예를 들어, 들어오는 데이터는 값 예측 뉴전트 신경망 모델을 통해 전달되고, 그 모델은 미지의 변수의 값을 추정한다. 값 예측의 어떤 예는 재고 수준을 예측하는 것 및 고객이 특정의 제품을 구입할지 여부를 예측하는 것을 포함한다.
결정 트리 모델링은 뉴전트 값 예측 및 이벤트 예측 모델에 대한 보조 방법일 수 있다. 결정 트리는 중요한 특징을 찾아 시스템 모델에 포함하고 또 효율적이고 콤팩트한 시스템 모델을 생성하기 위해 예측될 출력에 거의 또는 전혀 영향을 미치지 않는 특징을 제거하도록 뉴전트 기술자를 지원할 수 있다.
코팅 배합 모델에서, 훈련 세트에 84개 패턴이 있고 테스트 세트에 9개 패턴이 있다. 이용가능한 특징 모두를 사용함으로써 획득된 결과가 도 8에 나타내어져 있다.
특징 세트를 선택하기 위해 판별 분석을 적용함으로써 양호한 모델을 개발하기 위한 특징의 수를 감소시킬 수 있다. 훈련 세트용으로 식별된 중요한 특징은 중요도, surftens, 점도, persolids, rl의 순이다. 도 9는 코팅 두께의 특성을 나타내는 데 각 특징의 상대적 효과를 나타낸 것이다. 상대적 효과는 엔트로피라는 척도의 강하에 의해 측정된다. 값 예측 뉴전트는 단지 4개의 가장 중요한 특징을 사용하여 훈련될 수 있으며, 이는 이용가능한 전체 특징 세트를 사용한 것과 거의 마찬가지의 결과를 달성한다. 도 10은 감축된 특징 세트에 대해 획득된 R2개 값을 나타내고 있다. 전체 세트 내의 임의의 특징들 간에 어떤 강한 통계적 상관관계도 없다.
이 예에서, 이용가능한 특징의 전체 세트가 약간 더 양호한 R2개의 값을 생성하였다. 그렇지만, 감축된 특징 세트에 대한 R2개의 값들은 아주 적합하며, 감축된 특징 세트를 사용하는 모델은 아직 보지 못했던 패턴에 대해 보다 양호하게 일반화될 것으로 예상될 수 있다. 게다가, 판별 분석의 사용은 뉴전트 블랙박스 모델 내부의 모습을 어느 정도 제공하는 규칙을 생성할 수 있다. 데이터의 기초를 이루고 있는 관계에 대한 이러한 유형의 통찰은 분야 전문가가 뉴전트 모델을 검증하고 채택하는 데 도움을 준다.
제2의 예시적인 응용은 점포에서의 구매 패턴을 나타내는 데이터를 사용한다. 데이터의 각각의 패턴은 선택된 제품의 구매량을 포함한다. 목표는 제품 구매의 어떤 조합이 유망한 와인 구매자의 표시자인지를 식별하는 것이다. 이것을 알고 있으면, 와인 소매업자는 더 많은 와인을 구매할 가능성이 가장 높은 고객을 대상으로 판매 홍보를 할 수 있다. 특정 브랜드의 와인의 구매에 대비하여 17개의 서로 다른 제품에 대한 데이터가 존재한다. 도 11은 와인 구매를 예측하기 위해 17개 제품 모두를 사용하여 얻은 결과를 보여준다. 도 12는 와인 데이터에 대한 결정 트리의 상위 레벨을 나타낸 것이다. 도 13은 와인 데이터에서의 제품의 상대적 중요도를 나타낸 것이다.
출력이 이진(즉, 와인이 구매되었는지 여부)이기 때문에, R2는 이 모델의 효과에 대한 최상의 척도는 아니다. 그 대신에, 임계값이 부동 소수점 출력에 적용된다. 임계값을 넘는 출력값은 와인 구매를 나타낸다. 이 모델의 출력에 0.6의 임계값을 적용하면 94.4%의 훈련 정확도와 88.9%의 테스트 정확도가 얻어진다. 이 모델은 테스트 세트 내의 9개의 패턴 중 1개의 잘못된 예측을 하였다.
단지 4개의 가장 중요한 특징을 사용하여 다른 뉴전트 모델이 훈련되었다. 임계값을 뉴전트 모델에 적용할 때, 93.3%의 훈련 정확도와 88.9%의 테스트 정확도가 얻어졌다. 전체 특징 세트를 사용하는 뉴전트 모델과 최상위 4개 특징만을 사용하는 모델은 각각 동일한 테스트 패턴에 대해 잘못된 결과를 생성하였다. 따라서, 17개의 특징에서 4개의 특징으로의 감축은 거의 동일한 모델 성능을 나타내었다. 이들 특징 중 2개는 완전히 정적이었고, 이들은 종래의 사전 처리에 의해 제거되었다. 그렇지만, 나머지 특징들 사이에는 강한 상관관계가 없다. 이들 중 대부분의 상대적 비중요성은 쉽게 알 수는 없다.
제3 응용은 뉴전트가 헬프 데스크 시스템의 성능을 모델링하기 위한 특징 선택을 돕는 판별 분석을 사용하는 것을 포함한다. 목표는 헬프 데스크 호출(help desk call)이 SLA(Service Level Agreement, 서비스 수준 계약서)에 따라 할당된 시간에 해결될 가능성이 있는지 여부를 예측하는 것이었다.
데이터의 특성에 관한 일반적 지식에 기초하여, 여러가지 직접적 특징 및 파생된 특징이 패턴으로 편집된다. 전체 특징 세트를 사용하는 뉴전트 모델링은 비교적 불량한 결과를 생성하였다. 판별 분석을 적용하는 것은 만족스러운 예측을 생성한 중요한 특징들의 감축된 세트를 생성하였다. 모델의 원하는 출력이 이진 예측이기 때문에, 임계값이 연속값 출력에 적용되어 그 출력을 강제로 0 또는 1(즉, SLA 위반 여부)로 만든다. 다시 말하면, R2값은 이러한 유형의 뉴전트 모델을 평가하는 데 유용하지 않다. 임계값을 적용한 후에, 테스트 세트에 관한 모델의 정확도는 ~90%의 범위에서 정확하다. 식별된 두번째의 가장 중요한 특징은 고객 코드이었으며, 이는 SLA 위반율에 강한 영향을 갖는 것으로 예상될 수 있다. 그렇지만, 가장 중요한 특징과 관련한 흥미로운 측면이 있었다. 이 특징은 호출이 위반으로 되어버릴 수 있는 요일이다. 도 14는 헬프 데스크 데이터(help desk data)에 대한 결정 트리의 최상위 레벨을 나타낸 것이다.
특정의 호출에 대한 헬프 데스크의 성능은 외관상 그 호출이 행해진 요일에따라 다르다. 전체 위반율은 약 61.7%이지만, 그것은 다음과 같이 한주간 동안에 상당히 변동한다. 일요일 - 100%, 월요일 - 70.2%, 화요일 - 85%, 수요일 - 49%, 목요일 - 45.7%, 금요일 - 41.5%, 토요일 - 92.3%. 위반율은 한주간의 시작에서 가장 높고, 한주간의 끝에 가까워지면서 약간 높다. 가능한 설명은 주일 중간쯤에 서비스 호출에 이용가능한 시간 및/또는 자원이 더 많이 있다는 것이다.
3. 부가의 결정 트리 방법론
ID3(Iterative Dichotomiser 3)는 다양성 함수에 대한 정보 이득의 정보 이론적 척도(information theoretic measure)를 사용하는 비이진 방법이다. C4.5 및 C5.0은 엔트로피 척도를 사용하며, 또 트리를 가지치기 하고 트리 성장을 제한하기 위한 부가의 전략을 제공하는 ID3의 계승자이다.
정보 이득은 선택된 특징 테스트의 적용 이후의 시스템 엔트로피의 감소를 말한다. 엔트로피는 시스템 내에서의 무질서 또는 비동질성(non-homogeneity)의 척도이다. 트리의 선택된 레벨에 있는 각각의 노드는 어떤 엔트로피를 가지며, 트리 레벨에 대한 시스템 엔트로피를 생성하기 위해 노드 엔트로피들은 가중합으로서 합성된다. 각각의 레벨에서, 가장 큰 시스템 엔트로피의 감소, 즉 정보 이득을 제공하는 테스트가 그 레벨에서의 최상의 가능한 테스트로서 선택된다.
C4.5 및 C5.0은 다양성 함수로서 정보 이득 대신에 이득비(gain ratio)라고 하는 척도를 사용한다. 이득비는 특징 테스트로부터의 정보 이득을 그 테스트에 의해 생성된 서브셋의 수로 나눈 것이다. 이 척도는 데이터 세트(예를 들어, 사람의 이름)를 쪼개는 전술한 테스트의 유형에 벌점을 과한다. 분할에서 훨씬 더 적은 서브셋에 알맞은 정보 이득을 제공하는 다른 테스트가 있는 경우, 그 테스트가 그 대신에 선택된다.
가지치기에 관하여, ID3는 최소 노드 크기에 기초하여 단순히 트리 성장을 정지시키는, 즉 테스트를 중지시킬 때의 적정 최소 엔트로피를 지정하는 분재형 가지치기(bonsai type pruning) 기술을 이용한다. C4.5 및 C5.0는 베르누이의 이항식(Bernoulli's binomial formula)에 기초하여 트리로부터 가지를 치기 위한 전략을 제공한다. C4.5/C5.0 가지치기 전략에 따라, 노드를 그 노드에서 우세한 클래스에 대한 리프 노드로서 지정하고 또 잘못 분류된 항목의 수를 결정함으로써 각 노드에 대해 에러율이 결정된다. 그 전략은 이어서 관찰된 에러율이 지나치게 낙관적인 것으로 추정하고 이항식 및 선택된 신뢰 수준을 사용하여 보다 비관적인 에러율을 대신 사용한다. 가지가 비관적 대체(pessimistic substitution) 후에 에러율의 증가를 가져오는 경우, 그 가치는 가지치기된다. C4.5 및 C5.0은 훈련은 물론 가지치기를 위해 훈련 데이터를 사용한다. 훈련 데이터를 이용하여 가지치기를 실시하는 것은 효율적일 수 있다. 훈련 데이터를 사용하는 것의 대안으로서, 테스트 데이터를 이항식과 함께 사용하여 가지치기를 실시하는 것이 생각될 수 있다.
C4.5 및 C5.0는 또한 각 레벨에서의 특징 테스트들의 결합을 위해 그룹화 함수(grouping function)를 사용할 수 있다. 이것은 시너지 효과를 검지할 수 있으며, 그에 따라 2가지 테스트를 동시에 적용하는 것이 각각의 테스트를 따로따로 적용하는 것보다 효과적이다.
C4.5 및 C5.0는 개별적인 모듈을 이용하여 결정 트리로부터 규칙을 생성한다. 다른 방법의 경우, 이것은 다른 유형의 가지치기로 생각될 수 있으며, 따라서 다수의 가지가 특징값의 논리곱 및 부정을 통해 단일 가지로 병합될 수 있다.
CHAID(Chi-squared Automatic Interaction Detection)는 여러가지 면에서 ID3, C4.5 및 C5.0와 다른 방법이다. CHAID는 카이제곱 함수(Chi-squared function)를 또하나의 다양성 함수로서 사용한다. 카이제곱 다양성 함수를 적용할 때, CHAID는 과잉 적합(overfitting)이 발생하기 전에 트리 성장을 중지시킨다. 따라서, 트리가 구축된 후의 가지치기가 불필요하다. 게다가, 그것은 엄격한 카테고리형 변수(strictly categorical variable)를 처리한다. 따라서, 트리 생성 절차를 시작하기 전에 연속 변수가 비닝된다. ID3, C4.5 및 C5.0는 아마도 정보 이득에 기초하여 연속 변수의 동적 비닝을 사용할 수 있다. ID3, C4.5 및 C5.0와 마찬가지로, CHAID도 비이진 방법이다.
CHAID는 각각의 가능한 특징 테스트의 상대적 효과(relative effectiveness)를 비교한다. 통계적 중요도 테스트인 카이 제곱 테스트는 CHAID 방법에서 여러가지 방식으로 사용된다. 특징 테스트에 의해 허용되는 가지의 개수는 통계적으로 중요한 스플릿(split)을 생성하는 개수로 한정된다. 게다가, 각각의 특징 테스트의 결과를 비교할 때, 카이 제곱 테스트에 따라 가장 중요한 결과를 생성하는 스플릿이 각 레벨에서의 우승자이다. 추가의 특징 테스트가 통계적으로 중요한 결과를 생성하지 않는 경우, 카이 제곱 테스트는 트리의 성장을 중단시키는 데 사용된다. 이러한 마지막 결정은 중요도 임계값의 사용을 수반하며, 이것은 CHAID 방법에서 이용가능한 주요 튜닝 파라미터(tuning parameter)이다.
전수형(exhaustive) CHAID는 CHAID에 대한 변형이다. 각각의 특징 테스트에 대한 가능한 분기 요인을 평가할 때, 전수형 CHAID는 가능한 가지들을 순차적으로 카이 제곱 테스트에 따라 가장 자기 유사적인(self-similar) 2개의 그룹으로 병합한다. 이것은 기본적으로 트리를 강제로 이진 트리로 만든다.
CART(Classification And Regression Tree)는 이진 트리 방법이다. ID3/C4.5/C5.0 계열과 마찬가지로, CART는 다른 다양성 함수를 사용하여 각각의 특징 테스트의 효과를 측정한다. 이하의 다양성 함수가 사용될 수 있다.
(a) min(P(c1), P(c2)), 여기서 c1과 c2는 테스트에 대한 2가지 가능한 결과 클래스이고, P(c1)과 P(c2)는 c1과 c2의 상대 도수(relative frequency)임,
(b) 2*P(c1)*P(c2), 및
(c) [P(c1)*log(P(c1))] + [P(c2)*log(P(c2))] , 이는 엔트로피 또는 정보 이득 척도라고도 함.
다양성 함수는 각각의 특징 테스트 전후에 평가되고, 다양성에 있어서 가장 큰 감소를 제공하는 것이 우승자로 선언된다. 이것은 다른 방법에서와 같이 특징 테스트가 완전히 끝날 때까지 또는 임의의 중지점(예를 들어, 최소 노드 카운트)에 도달될 때까지 계속된다.
CART는 조정된 에러율 함수 [AE(T) = E(t) + a*LeafCount(t)]를 사용하여 후보 서브트리의 풀(a pool of candidate subtree)을 생성한다. 첫번째 후보는 다음과 같이 선택된다. 파라미터가 점차적으로 증가되기 때문에, 조정된 에러율은 루트 노드를 포함하는 가능한 서브트리에 대해 계산된다. 서브트리의 조정된 에러율이 루트 노드에 대한 것보다 더 크게 될 때, 그 서브트리는 가지치기된다. 두번째 후보는 첫번째 후보 서브트리에서 시작하여 이 프로세스를 반복함으로써 선택된다. 프로세스는 루트 노드만 남을 때까지 계속된다. 훈련 데이터에서 사용되지 않은 검증 데이터 세트는 가지치기된 후보 서브트리의 풀 중에서 선택하는 데 사용된다. 검증 세트에 대해 가장 낮은 전체 에러율을 갖는 서브트리가 우승자로 선언된다. 때로는 비용 함수(예를 들어, 어떤 가중치가 분류 오류 확률와 곱해짐)이 에러율과 함께 적용되어 최상의 서브트리를 평가한다. 훈련 세트와 검증 세트를 제외한 제3의 테스트 데이터 세트는 최종 트리의 예측 또는 분류 능력을 측정하는 데 사용될 수 있다.
4. 비닝 요건
완전히 이산적인 데이터를 제외하고는, 비닝은 상기한 방법을 위해 수행될 수 있는 사전 처리 단계이다. 이 기술은 데이터의 관찰 범위 전체에 걸쳐 등간격으로 있는 범위를 갖는 n개의 빈을 뽑는 것이다. 전술한 바와 같이, 데이터를 비대표적인 서브그룹으로 빠르게 단편화하는 것을 피하기 위해 빈의 개수를 최소화하는 것이 바람직하다.
상기 코팅예에 대응하는 도 15에 도시한 데이터의 경우, 이러한 유형의 선형 비닝(linear binning)이 적합할 수 있다. 와인예에 대응하는 도 16은 외관상 더 지수함수적인 것으로 생각될 수 있는 특징 데이터를 나타낸다.
코팅 및 헬프 데스크 응용에 대해 선형 빈 한계(linear bin limit)가 사용되었다. 와인예의 경우, 대부분의 특징 데이터의 지수함수적 외관이 고려되었으며일정값을 넘는 구매량은 함께 비닝되었다. 대량의 소비재를 구매하는 것이 비교적 드물기 때문에, 이러한 지수함수적 외관은 구매 데이터의 특성일 수 있다.
다른 분포, 특히 정규화된 분포(즉, 종 모양의 곡선)가 발생할 것으로 예상될 수 있다. 도 17은 와인예에서 점포 브랜드(store brand)의 분포를 나타낸 것이다. 이 데이터를 정규화된 곡선으로 근사화시켰더니 평균이 약 15회 점포 브랜드 구매이고 표준 편차가 약 8이 얻어졌다. 이 특징은 3개의 빈, 즉 빈 1: 평균 - 1 표준 편차보다 적은 구매량(즉, 7개 품목 이하), 빈 2: 평균 +/- 1 표준 편차 내의 구매량(즉, 7 내지 21개 품목), 빈 3: 평균 + 1 표준 편차보다 많은 구매량(즉, 22개 이상 품목)을 생성할 수 있다. 자동화된 비닝 도구는 개별적인 특징 데이터에 존재하는 분포 및 그에 따라 빈을 고려할 수 있다.
메타 데이터 또는 선험적 지식이 이용가능한 경우 그것도 또한 사용될 수 있다. 예를 들어, 특징이 날짜인 경우, 그 날짜를 요일로 표현하고 그에 따라 그것을 비닝하는 것이 유용할 수 있다.
5. 가지치기/정지 조건
전술한 바와 같이, 가지치기는 결정 트리를 독립적으로 적용하는 데 중요하다. 결정 트리의 비닝 및 가지치기 요건에 대한 의존성은 이유들 중의 일부이며, 이들은 표준 뉴전트 기술의 보조 도구로 생각된다. 가지치기 방법이 심지어 뉴전트의 보조물로서 이용될 수 있다.
트리 구축 방법에서 트리의 가지(즉, 모집단의 어떤 부분모집단에 대해)에 가장 효과적인 특징 테스트가 트리의 전체 레벨에 대해 가장 효과적인 것으로 선택되지 않는 일이 종종 일어난다. 이것은 국소적으로 효과적인 테스트가 아마도 그래야 하는 것보다 덜 중요한 것처럼 보일 수 있는 결과를 갖는다. 또는 그의 중요도가 완전히 마스킹될 수 있다. 이것은 또한 트리의 그 가지와 관련된 임의의 규칙을 애매하게 하는 또는 모호하게 하는 결과를 갖는다. 이 효과는 몇몇 가지치기 절차에 의해 완화될 수 있다. 가지치기의 다른 대안은 각각의 부분모집단에 대한 최적의 특징 테스트를 찾아내기 위해 트리의 각 레벨에서 다수의 특징을 선택하는 것이다. 그렇지만, 그것은 그 방법의 계산 복잡도를 증가시킬 가능성이 있다.
최대 트리 레벨 또는 ID3의 경우 최소 엔트로피 또는 최소 엔트로피 강하 등의 다른 유형의 정지 조건도 역시 사용될 수 있다. 시간이 중요한 것일 수 있는 온라인 응용의 경우, 트리 레벨 또는 전체 트리를 처리할 최대 시간이 지정될 수 있다.
6. 효율성 및 대규모 데이터 세트 요건
각각의 방법은 평가되는 각각의 특징 세트에 대한 데이터 세트를 통한 패스(pass)를 사용한다. 이진 및 비이진 방법은 주어진 데이터 세트에 적용될 때 직접 비교될 수 없는데, 그 이유는 이들 방법이 서로 다른 개수 및 유형의 특징을 가지기 때문이다. 임의적 비닝(arbitary binning) 또는 적응적 비닝(adaptive binning) 및 특징 테스트 평가의 노력은 전술한 방법에 대해서 비슷하다.
가지치기 동작들의 비교는 간단하지 않다. 가지치기를 완전히 회피하는 CHAID는 여기서 승리자인 것처럼 보일 수 있다. C4.5/C5.0에서 제한된 가지치기를 사용하는 것은 CART보다 계산량이 적은 것처럼 보인다. 그렇지만, C4.5/C5.0의 규칙 생성 모듈을 적용하려는 노력을 다한 경우, 이들의 총 가지치기 부하는 비슷하다. C4.5/C5.0이 가지치기를 검증하기 위한 훈련 데이터를 갖는다는 이점을 갖지만, CART는 테스트 세트를 판독하거나 훈련 데이터를 보류시켜 둔다.
대부분의 모델링된 시스템이 연속적인 특징 변수를 포함하는 것으로 가정하는 경우, 특징을 이진 포맷으로 재구성하기 위한 노력은 비이진 방법에 경계를 제공한다.
충분한 통계는 가능한 특징의 발생(occurrence) 또는 동시 발생(co-occurrence)의 카운트의 테이블이다. 이것은 특징 테스트가 반복적으로 적용되는 동안 RAM에 보유되는 정보의 양을 최소화하기 위해 수행된다. 이 방법은 이하의 2가지 부수 효과를 갖는다. 연속 변수를 처리하고 있는 경우, 또는 서수값 특징을 갖는 이진 트리의 경우, 빈 카운트를 생성하기 위해, 빈 범위(bin range)는 이미 결정되어 있다. (예를 들어, 정보 이득을 최대화하기 위해) 임의의 형태의 동적 비닝(dynamic binning)이 보류된다. 또한, 데이터 세트 내의 어떤 개별 패턴이 트리의 선택된 가지의 형성에 기여했는지를 추적하지 못한다. 그렇지만, 적용된 방법에서 신뢰를 얻었더라도, 이러한 지식은 학문적 관심의 대상일 뿐이다. 이 단일 패스(single-pass) 방법에서 고려되지 않은 다른 인자는 특징 값의 궁극적인 범위 및 아마도 그의 스케일링(scaling)을 어떻게 결정하느냐이다. 적당히 인덱싱된 데이터베이스에서, 전체 데이터베이스 스캔을 하지 않고 질의를 사용하여 최소, 최대 및 아마도 다른 통계가 획득될 수 있다. 다른 데이터 세트의 경우, 이것은 또하나의 스캔에 대응하거나, 또는 데이터는 메모리에 보유된다. 그렇지만, 스케일링 및비닝이 결정 트리 방법론과 독립적으로 해결될 수 있는 경우, 이것은 대규모 데이터 세트에 대해 매력적인 선택일 수 있다.
실무적인 문제로서, 전술한 효과를 처리하기 위해 데이터베이스를 통한 유한개의 패스와 직면할 수 있다. 대부분의 응용에서 2개의 패스이면 충분할 수 있으며, 첫번째 것은 빈 통계를 획득하기 위한 것이다.
7. 결정 트리 제품
상기한 결정 트리 방법론 중 하나 이상의 구현하는 소프트웨어 또는 함수 라이브러리를 공급하는 수많은 소프트웨어 벤더 또는 다른 공급자가 있다. 이러한 공급자의 리스트는 웹 상에서 찾아볼 수 있다.
결정 트리 툴(decision tree tool)의 선택에 있어서의 몇가지 인자는 다음과 같다. 결정 트리 툴은 시스템을 모델링하는 주요 수단으로서가 아니라 보조 방법으로서 사용된다. 그렇지만, 상용 결정 트리 애플리케이션은 일반적으로 시스템 모델링의 유일한 또는 주된 수단으로서 사용된다. 모델링 툴은 일반적으로 그의 비닝 동작에 있어서의 여러가지 분포를 설명하는 기능을 갖는다.
두번째 인자는 실세계 응용이 연속값 데이터를 수반하는 일이 아주 많다는 것이다. 문제를 이진값 포맷으로 재구성하기 위한 노력은 비이진 트리 방법 중 하나를 채택하기 위한 동기 부여일 수 있다.
실세계 데이터 마이닝 애플리케이션이 대량의 데이터를 수반할 수 있기 때문에, 모델링 툴은 이상적으로는 데이터베이스를 통한 단일 패스가 전술한 바와 같이 충분한 통계의 감축된 세트를 수집할 수 있게 해준다. 단일 패스 툴을 위해 작업할 때, 비닝 파라미터는 스캔 프로세스 이전에 또는 스캔 프로세스의 초기에 결정된다. 그렇지만, 모델링 툴은 정적 및 동적 비닝 둘다를 사용하기 위한 옵션을 포함할 수 있다.
C. 예시적인 헬프 데스크 응용
도 18은 헬프 데스크 시스템을 나타낸 것이다. 가공의 ACME 회사가 그의 컴퓨터 지원 업무를 외부 용역 업체에 도급주었다. 고품질의 서비스를 보장하기 위해, 보고된 문제점을 24시간 이내에 해결하도록 외부 용역 업체에 위탁하는 SLA가 체결되었다.
헬프 데스크 시스템은 호출이 SLA에 의해 요구되는 24시간 이내에 서비스되는지 여부를 예측하기 위해 본 발명의 방법을 포함함으로써 모델링될 수 있다. AHD(Advanced Help Desk) 소프트웨어 툴은 관리자 및 콜 센터 기술자가 고객 서비스 수준에 악영향을 줄 수 있는 문제를 예견하는 것을 지원하기 위해 제공될 수 있다.
AHD 툴을 통해 호출이 제 시간에 서비스될지 여부에 관해 영향을 주는 여러가지 특징들이 식별되었다. 특징의 예는 문제를 보고하는 그룹 또는 고객, 그 문제의 우선 순위 등을 포함할 수 있다. 중요할 수 있는 한가지 특징은 그 호출과 관련된 문제 코드이다. 수천개의 가능한 코드가 문제 추적 시스템에서 정의될 수 있으며, 그 중 수백개는 실제로 데이터에 표현되어 있었다. 모델링 노력에 가능한 또는 심지어 있을 법한 코드 모두를 포함하는 것이 비효율적일 수 있다. 게다가, 시간에 따라 문제 유형들의 혼합이 발생할 수 있음을 예상할 수 있다. 해결 방안은 임의의 특정의 시간에 SLA 위반에 가장 중요한 코드들에 관하여 모델링하는 것이다. 판별 분석이 상위 P개의 가장 중요한 코드를 선택하고 또 이들을 다른 중요한 특징들과 함께 포함하기 위해 사용된다. 문제 코드의 베이스라인 중요도 서명이 유지된다.
전술한 바와 같이, 모델 정확도는 주기적으로 측정되고, 모델은 필요에 따라 재훈련된다. 그 다음에, 중요도 서명이 재생성되고, 모델링할 코드들이 필요에 따라 조정된다. 도 19는 문제 코드들의 혼합이 시간에 따라 어떻게 변할 수 있는지의 예를 나타낸 것이다. 상위 서열에 새로운 코드가 존재하는 것은 아마도 헬프 데스크에 보고되는 문제 유형에 있어서의 변천 및 헬프 데스크가 현재의 문제점을 얼마나 잘 해결할 수 있는지에 있어서의 대응하는 변화를 나타낸다.
전반적으로 시스템에 대한 가장 중요한 특징은 아니지만, 모델링 노력에 이들 코드를 포함시키는 것에 의해 요구되는 예측 정확도가 이 시스템 모델로 달성될 수 있다. 중요도 서명을 이용하는 것에 의해 시스템 진화의 신속한 검출과 모델 적응(model adaptation) 및 재훈련이 가능하게 된다. 이것은 시스템의 작지만 변덕스런 부분의 모델의 사용을 튜닝하기 위해 중요도 서명을 사용하는 것의 예이다. 또한, 가능한 특징의 수퍼세트는 이 경우에 온라인으로 유지되지 않았는데, 그 이유는 관여된 입력 특징이 단일 필드로부터 도출되기 때문이다.
본 발명의 방법의 실시예에 따른 AHD 툴은 도 20 내지 도 38을 참조하여 이하에 기술된다. AHD 툴의 블록도가 도 30에 도시되어 있다.
뉴전트는 호출 레벨(call level)을 모니터링 및 예견하여 관리자가 자원 계획 및 자원 분산의 수일 및 수주 전에 시스템 및 큐 부하를 예견하는 것을 돕기 위해 AHD 툴에 포함될 수 있다. 뉴전트는 또한 개별적인 개방형 호출(open call)을 모니터링하고 또 과거의 거동 패턴에 기초하여 SLA의 위반을 무릅쓰고 호출을 식별하여 관리자 및 사용자를 그 호출에 대해 경계시키기 위해 제공될 수 있다. 개별적인 뉴전트는 시스템 거동에 있어서의 점진적 변화를 평가하도록 구성되어 있다. 대부분의 거동 패턴은 너무 복잡하여 사람이 혼자서 위반 동향(violation trend)을 식별하지 못한다. AHD 툴은 또한 관리자 및 사용자가 이러한 호출의 재배정 또는 우선순위 재지정을 돕는다.
설치
한번 또는 몇번만 수행되는 여러가지 셋업 동작을 수행하기 위해 설치 마법사(도 31)가 포함될 수 있다. 설치 마법사는 뉴전트가 작용하는 문제 모델(issue model)을 사용자가 선택할 수 있게 해주는 템플릿을 설치할 수 있다. 사용자는 문제를 요청(예를 들어, 사용자 문제 또는 논쟁은 AHD 시스템에서 추적됨)에만, (대응하는 요청에 관련된) 순서 변경에만, 또는 요청과 순서 변경의 조합에 매핑할 수 있다. 설치된 템플릿을 사용하여, 사용자는 AHD 내에서 개별적인 큐 및 사이트를 모니터링하기 위해 뉴전트를 커스터마이즈할 수 있다.
구성 유틸리티
여러가지 시스템 파라미터 및 정의의 선택 및/또는 관리를 할 수 있게 해주는 구성 유틸리티(configuration utility)가 제공될 수 있다.
구성 유틸리티는 다수의 타입 및 인스턴스의 뉴전트 구성을 제공할 수 있다.예를 들어, 기본 타입의 뉴전트는 호출 레벨(CallLevel) 뉴전트 및 SLA 위반(SLAViolation) 뉴전트를 포함할 수 있다. 일반적으로, 다수의 인스턴스의 호출 레벨 뉴전트가 가능하다. 다수의 인스턴스의 SLA 위반 뉴전트도 역시 존재할 수 있다. 예를 들어, 새로운 뉴전트 인스턴스(예를 들어, 특정의 큐에 전용된 뉴전트)를 배포하는 등의 통상의 태스크를 수행하기 위해 마법사가 제공될 수 있다. 게다가, 새로운 스타일 및 타입의 뉴전트를 정의하기 위해 또는 표준 템플릿을 커스터마이즈하기 위해 다음과 같은, 뉴전트 인스턴스 간격 등의 선택, 패턴 생성 및 모델링에 포함할 특징 세트 및 관련 질의, AHD 이벤트와 뉴전트 인스턴스의 연관, 훈련창(train window)(예를 들어, 새로운 모델에 포함할 데이터의 나이), 및 데이터 에이징(data aging)(예를 들어, 데이터를 삭제해야 할 나이) 등의 익스포트 모드 구성(export mode configuration)이 제공될 수 있다. 표준화된 특징 세트 및 저장된 관련 질의는 AHD의 설치와 함께 포함될 수 있다. 구성 인터페이스는 원하는 경우 질의 및 특징 세트의 고급 커스터마이즈화를 제공할 수 있다.
동작시킬 뉴전트 인스턴스를 선택한 후에, 뉴전트 인스턴스와 관련된 속성 및 컬렉션의 입력 및/또는 수정을 할 수 있도록 도 20 내지 도 23의 것과 유사한 탭 스타일 인터페이스가 제공될 수 있다. 도 24는 AHD 데이터베이스의 데이터베이스 연결 정보를 입력하기 위한 샘플 인터페이스를 나타낸 것이다. 구성 모듈은 적당한 경우 동적 데이터베이스(예를 들어, SQL) 질의 대신에 저장된 데이터베이스 절차의 이용을 가능하게 해줄 수 있다. 구성 모듈은 도구 메뉴를 통해 저장된 질의를 스크립트 파일로부터/스크립트 파일로 임포트/익스포트(import/export)하기위한 툴을 제공할 수 있다. 게다가, 동적 SQL 질의의 보기 및/또는 실행을 위해 테스트 질의 버튼이 제공될 수 있다.
관리자 서비스
시스템 상에 정의된 각각의 뉴전트 인스턴스에 대한 객체 정의의 속성에 의해 결정된 스케쥴 상의 이하의 기능을 위해 관리자 서비스(Manager Service)(도 32)가 제공될 수 있다. 관리자 서비스가 활성 뉴전트 인스턴스에 대한 뉴전트 모델을 발견하지 못하는 경우, 관리자 서비스는 과거 모드(Historical Mode)로 전환하고, 그 모드에서 이용가능한 과거 데이터가 수집되며 임시 모델이 훈련되고 배포된다.
활성 뉴전트 모델이 있는 경우, 관리자 서비스는 지정된 구간에서(예를 들어, 야간에) 관리 객체 스토어에 정의되어 있는 사양을 사용하여 온라인 데이터로부터 조회 패턴(consult pattern)의 컬렉션을 구축한다. 이 컬렉션은 활성 모델에 대한 조회를 위해 뉴전트 제공업자에게 제공된다. 조건이 허락되면(예를 들어, 예측된 SLA 위반), 객체 정의에 지정된 이벤트가 정규의 AHD 채널을 통해 발생되고 AHD 히스토리언(Historian)을 통해 보고된다.
조회 후에, 닫혀진 항목(closed pattern)에 대한 패턴을 구축 및 저장하는 프로세스가 기동된다. 항목 닫기(item closure)를 위한 조건은 객체 정의에 지정되어 있다.
지정된 구간에(예를 들어, 야간에), 훈련 프로세스에 대해 유보되었던 패턴을 참조하기 위해 평가 프로세스가 실행된다. 결과에 대한 요약 통계가 저장되고AHD 히스토리언을 통해 볼 수 있도록 된다. 평가 프로세스 동안, 중요한 카테고리 코드의 혼합이 변경되었기 때문에 그 모델은 다른 코드를 입력으로서 사용하여 재훈련되어야만 함을 식별할 수 있는 결정 트리 프로세스가 객체 정의에 정의된 사양에 따라 실행된다. 평가 프로세스가 기존의 모델이 결정 트리 분석에 의해 검출된 바와 같은 불충분한 정확도로 인해 또는 시스템의 진화로 인해 부적절한 것으로 결정한 경우, 관리자 서비스는 뉴전트 모델의 재훈련을 개시한다.
다수의 뉴전트 인스턴스의 중복되는 자원 집중적인 단계(예를 들어, 훈련)를 피하기 위해 각각의 뉴전트 인스턴스의 샘플링 단계 (및 다른 단계)를 효율적으로 스케쥴링하기 위한 특징이 제공된다. 대규모의 롤업 질의(rollup query)가 피크를 지난 시간에(예를 들어, 점심때, 저녁때) 실행될 수 있다.
각각의 뉴전트 인스턴스에 대해, 관리자는 현재의 시스템 조건에 대해 호출할 적절한 메소드를 결정한다. 이하의 메소드 각각은 주어진 뉴전트 인스턴스에 대한 유사한 메소드로 매핑된다.
뉴전트 인스턴스가 활성으로 될 때, 관리자 서비스는 임의의 이용가능한 과거 데이터를 수집하기 위해 과거 모드(Historical Mode)로 전환한다. 과거 모드는 뉴전트 인스턴스 정의에 지정된 질의 조건을 사용하여 과거 지향적(backward-looking) 방식으로 데이터를 수집한다. 과거 데이터의 수집 후에, 뉴전트 모델은 과거 데이터가 이용가능할 때 즉각적인 예측 기능이 가능하도록 훈련되고 배포된다.
조회 메소드(Consult Method)
뉴전트 인스턴스에 대한 활성 모델이 있을 때, 뉴전트 인스턴스의 지정된 샘플 구간에서 관리자 서비스는 그 인스턴스에 대해 정의된 특징 세트 사양을 사용함으로써 뉴전트에 대한 패턴을 구축한다. Consult 메소드(도 33)는 뉴전트 인스턴스에 대한 특징 사양 정의(FeatureSpec definition)를 사용하여 하나 이상의 동적 SQL 질의를 생성한다. SQL 결과의 사전 처리가 지정되어 있는 경우, 이러한 사전 처리가 수행된다. 모델에 대한 출력 특징을 생성하기만 하는 질의 및 서브질의는 조회를 위해서는 수행되지 않는다.
동적 SQL 질의를 사용하는 것에 대한 대안으로서, 저장된 질의 절차가 사용될 수 있다. 동적인 질의의 일부가 저장된 절차의 파라미터이다.
Consult 모듈은 SLA 유효 기간(SLA_expiration_time)을 예상된 고장 발생일(failure date)로 변환한 다음에 그 고장 발생일을 만기 요일(expiration_day_of_week) 특징으로 또한 만기 시각(expiration_time_of_day) 특징으로 변환하기 위해 AHD 함수 콜의 호출 등의 태스크를 수행하기 위해 특징 사양 및 사전 처리 사양(PreprocessingSpec) 토큰을 해석한다. 사전 처리를 위한 사양은 뉴전트 인스턴스에 대한 객체 정의에 포함되어 있다.
조회 결과는 뉴전트 인스턴스에 대한 이벤트 트리거와 비교된다. 임의의 트리거된 이벤트에 대해, 뉴전트 인스턴스에 대한 이벤트 정의에 지정된 적절한 동작이 취해진다. 많은 인스턴스에서 취해진 동작은 정규의 AHD 채널을 통해 경보 및 통지를 생성하는 AHD 이벤트를 발생시키는 것이다. 뉴전트는 조건이 허락할 때 이벤트 발생 유틸리티(RaiseEvent utility)를 호출하고, AHD는 언제 어떻게 사용자에게 뉴전트 예측을 경고할지를 결정한다.
구축되는 동적 SQL 질의의 특성으로 인해, Consult 모듈은 예를 들어 윈도즈 레지스트리 엔트리(Windows Registry entry)에 의해 인에이블되는 디버그(debug) 또는 전문가(expert) 모드를 갖는다. 이 모드는 발생되어 데이터베이스 서버로 전송되는 질의의 일부 또는 그 전부의 로깅을 가능하게 해준다.
패턴 저장 메소드(SavePattern Method)
패턴은 고비용의 또는 아마도 불가능한 복구 프로세스를 오프라인으로 행해야만 하는 것을 피하기 위해 Consult 메소드(도 34)를 통해 온라인으로 저장된다. 예를 들어, SLA 위반에 밀접한 관계가 있는 특징값이 문제가 위반으로 된 얼마 후에 변하는 경우, 데이터베이스 트랜잭션 로그를 순회하지 않고 그 값을 복원하는 것은 어렵다. 게다가, 롤업 타입 특징의 경우, 과거 패턴을 복구하는 것이 어려울 수 있다.
뉴전트 인스턴스에 대한 객체 정의에서의 닫기 조건(ClosureConditions)이 평가되고 출력 특징도 역시 수집된다는 것을 제외하고는, SavePattern 모듈은 조회 동작과 유사한 동작을 수행한다. 최종 결과는 결합되어 로컬 이름공간 프레임워크(local namespace framework)에 저장되는 패턴을 형성한다. 이들 패턴은 결정 트리 분석 및/또는 재훈련을 위해 나중에 사용된다. 이 패턴은 아마도 수퍼패턴(superpattern)이며, 이 경우 현재의 모델은 이용가능한 특징 모두를 사용하지 않는다. 그 경우, 그 모델에서 서로 다른 특징 세트를 사용하는 것이 바람직하게 되는 경우 부가의 특징들이 저장된다.
동적 SQL 질의(또는 저장된 절차) 내의 교체가능한 토큰은 패턴을 구축하기 위해 예를 들어 SLA 위반 타입 뉴전트가 그의 패턴의 일부로서 "마지막 시간에 열린 호출"과 같은 것을 위해 호출 레벨 타입 뉴전트의 시간 샘플을 사용할 수 있게 해주는 로컬 데이터 스토어 내의 값에 대한 가능한 조회를 포함한다. 고비용의 롤업 질의는 SLA 위반 뉴전트 샘플만큼 빈번히(예를 들어, 10분) 반복될 필요가 없으며, 그 대신에 동료 뉴전트로부터의 시간 평균이 사용될 수 있다.
이 모듈은 로컬 이름공간 프레임워크에 테이블이 아직 존재하지 않는 경우 그 테이블을 생성한다.
패턴 구축 모듈에 대한 일과 종료 함수(end of day function)는 시스템 구성에 지정된 에이징 한계(aging limit)를 넘어선 패턴 데이터를 제거하는 것이다. 뉴전트 인스턴스의 객체 정의 내의 시각 속성은 정규의 백업 절차와의 동기화를 가능하게 해준다.
구축되는 동적 SQL 질의의 특성으로 인해, 모듈은 윈도즈 레지스트리 엔트리 등과 같은 것에 의해 인에이블되는 디버그 또는 전문가 모드를 갖는다. 이 모드는 발생되어 데이터베이스 서버로 전송되는 질의의 일부 또는 그 전부의 로깅을 가능하게 해준다.
평가 메소드(Evaluate Method)
뉴전트 인스턴스 정의에 지정된 간격으로(예를 들어, 매일) Evaluate 메소드(도 35)가 호출된다. 모델이 뉴전트 인스턴스에 대해 활성이고 데이터가 이용가능한 경우, 그 인스턴스에 대해 요약 성능 통계가 생성되어 저장된다. 이 데이터는모델 갱신 메소드(UpdateModel method)가 사용할 수 있거나 AHD 히스토리언을 통한 보기(viewing) 및 보고(reporting)를 위해 이용가능하다. 성능 평가는 성능 지수(figure of merit)로서의 R2값에 의존하지 않는다. 그 대신에, 성능 지수는 뉴전트에 대한 이벤트 조건, 즉 호출될 때 이벤트가 발생되는지 여부에 연계되어 있다.
결정 트리 메소드(DecisionTree Method)
DecisionTree 모듈(도 36)은 뉴전트 인스턴스의 DecisionTree 파라미터를 이용하여 이용가능한 데이터에 대한 판별 분석을 수행한다. AHD 특징 세트에서의 재평가를 위한 주요 후보는 AHD 카테고리 코드이다. 이 코드는 뉴전트 모델의 효율성을 향상시킨다. 그렇지만, 이 코드는 자연 숫자 순서(natural numerical ordering)를 갖지 않기 때문에, 뉴전트 모델에 이진 특징으로서 포함되어 있다. 중요하지 않은 특징을 포함시키는 것은 뉴전트 모델 성능에 역효과를 줄 수 있다. 게다가, 너무 많은 특징들이 있어 모델에 모두를 포함시킬 수 없다. 따라서, 현재 가장 중요한 특징만이 포함될 수 있다.
카테고리 코드는 중요한 사전 처리를 통해 추출된다. 기본적으로, 판별 분석은 카테고리 코드에 대해서만 실시될 수 있다. 그렇지만, 결정 트리 분석에 다른 특징을 포함시키기 위한 뉴전트 객체 정의 구조에서의 속성이 있다.
모델 갱신 메소드(UpdateModel Method)
UpdateModel 인스턴스(예를 들어, 시각)(도 37)에 대해 지정된 조건 하에서, 관리자 서비스는 결정 트리 분석 및/또는 뉴전트 훈련을 위해 데이터의 이용가능성을 검사한다. 이용가능한 데이터가 없거나 불충분한 경우, 모델은 더 이상 아무것도 하지 않는다.
뉴전트 인스턴스의 객체 정의에 의해 호출된 경우, 이용가능한 데이터에 대해 결정 트리 판별 분석이 수행된다. 중요한 특징이 현재의 특징 세트에 있는 것으로부터 변경되었으면, 현재의 뉴전트 인스턴스 객체 정의는 백업된다. 그 다음에, 훈련 세트가 새로운 중요한 특징에 따라 사전 처리될 것임을 나타내기 위해 플래그가 설정되고, 재훈련이 이하에 기술하는 바와 같이 개시된다.
뉴전트 인스턴스가 지정된 간격으로 무조건적 재훈련을 요구하는 경우, 이 메소드는 이용가능한 데이터가 있기만 하면 임의적 검증으로 새로운 모델의 훈련을 개시한다.
그 모델이 최소한의 정확도 표준을 충족시키는 경우, 관리자는 그 모델을 현재의 모델로서 설치하려고 시도한다. 예를 들어 현재의 모델이 없는 경우, 관리자는 그 모델을 무조건적으로 설치한다. 기존의 모델이 있는 경우, 관리자는 새로운 모델의 효율성을 현재 활성인 모델과 비교한다. 새로운 모델이 보다 효과적인 경우, 그 새로운 모델이 활성 모델로서 마크된다. 그렇지 않은 경우, 이전의 모델이 활성인 채로 있다.
히스토리언 모듈(Historian Module)
사용자 보고(예를 들어, 호출 레벨 예측 뉴전트의 요약 보고)를 위한 히스토리언 인터페이스가 제공될 수 있다. 히스토리언 모듈은 사용자가 호출 레벨 뉴전트 예측 및/또는 예측 효율성의 보고서를 보거나 인쇄하기 위한 인터페이스를 제공한다. 예를 들어, 사용자는 이용가능한 뉴전트 인스턴스 및 타입으로부터 선택할 수 있고 이어서 선택된 타입에 대한 이용가능한 예측 및 성능 보고를 볼 수 있다. 보고서가 그래픽일 수 있지만, 어떤 것은 표 형태일 수 있다. 사용자는 표준 윈도즈 스타일의 인쇄 대화 상자를 통해 보고서를 인쇄할 수 있다.
사용자는 뉴전트의 과거 성능(예를 들어, 실제 성능 대 예측 성능)을 볼 수 있다. 통계적 요약은 관리자 서비스의 평가 모듈에 의해 저장될 수 있으며, 따라서 재계산될 필요가 없을 수 있다. 사용자는 또한 보고서를 인쇄할 수 있다. 민감한 정보에 대한 접근 제한이 사용자 계정 시스템 보안 레벨의 할당을 통해 제공될 수 있다.
웹 히스토리언 서비스는 웹 브라우저(예를 들어, 인터넷 익스플로러)를 통한 보고서의 보기를 제공하기 위해 선택적으로 제공될 수 있다.
구성 유틸리티와 유사하게, 히스토리언은 다른 AHD 인터페이스와 동일한 룩앤필을 가질 수 있다. 통계적 요약 및 예측은 관리자 서비스의 평가 모듈에 의해 저장될 수 있으며, 따라서 재계산될 필요가 없을 수 있다.
히스토리언은 호출 레벨 뉴전트 및 SLA 위반 뉴전트에 대해 서로 다른 보고서를 디스플레이 및 인쇄할 수 있다.
SLA 위반 뉴전트의 경우, 다수의 보고서가 이용가능할 수 있다. 예시적인 SLA 위반 보고서가 도 25 내지 도 27에 도시되어 있다. 예를 들어, 미해결 문제(예를 들어, 호출, 순서 변경 등)에 대한 예측의 막대 차트 그래프가 제공될 수 있다. 보고서의 여러가지 뷰가 이용가능할 수 있으며, 그 뷰는 문제를 양수인, 큐,위반까지의 시간(time-to-violation), 및 SLA 타입별로 그룹화한다. 막대 차트 상에 핫스팟(hotspot)이 제공될 수 있으며, 이 핫스팟은 클릭될 때 예측 막대 내에 포함된 문제의 리스트박스를 보여준다. 리스트박스 내의 문제를 클릭하면 AHD 내에 포함된 문제의 추가 상세를 보여준다. AHD 웹 서버에 구비된 AHD 설치의 경우, 보고서 상의 AHDView를 클릭하면 AHD 웹 애플리케이션 내의 문제에 대한 전체 상세를 보여준다.
SLA 위반 뉴전트에 대한 다른 보고서는 뉴전트 인스턴스에 대한 정규 평가를 보여줄 수 있다. 평가는 훈련에 사용하지 않고 보류해 놓았던 폐쇄 데이터(closed data)를 바탕으로 활성 뉴전트 모델을 테스트함으로써 수행된다.
게다가, SLA 위반 뉴전트의 다른 보고서는 예측되었던 호출들이 시간에 따라 종료될 때 측정된 과거 예측의 정확도를 보여줄 수 있다. 성능 척도는 이벤트 커버리지(Event Coverage)(예를 들어, AHD에 의해 정확하게 식별되었던 실제의 SLA 위반의 백분율) 및 과도 커버리지(Excess Coverage)(AHD가 유망한 위반으로 태그한 비위반의 백분율)를 포함할 수 있다.
호출 레벨 뉴전트의 경우, 여러가지 보고서가 역시 이용가능할 수 있다. 어떤 예시적인 호출 레벨 보고서가 도 28 및 도 29에 도시되어 있다. 예를 들어, 한 보고서는 호출 레벨 뉴전트에 의해 행해지는 개별적인 예측을 보여줄 수 있다. 다른 보고서는 다수의 예측이 한 그래프 상에 중첩될 수 있는 것을 제외하고는 첫번째 것과 유사할 수 있다. 게다가, 다른 보고서는 개별 성능(Individual Performance)이라고 하는 개별적인 예측에 대한 실제 레벨 대 예측 레벨을 보여줄수 있다. 다른 보고서는 선택된 호출 레벨 뉴전트에 대한 모든 과거 예측의 평균 정확도를 보여줄 수 있다.
부가의 유틸리티
이하의 함수는 하나 이상의 동적 링크 라이브러리(DLL) 내의 함수 호출로서 이용가능할 수 있다. GetSecurityLevel은 히스토리언 및 구성 유틸리티의 사용을 제한하는 데 사용될 수 있는 로그온된 사용자의 AHD 보안 레벨을 획득하는 유틸리티이다. RaiseAHDEvent는 SLA 위반이 예측되는 때와 같이 조건이 허용할 때 경보를 통상의 AHD 이벤트 처리 채널에 전달하는 유틸리티이다. 이 함수는 발생될 이벤트를 제한하기 위해 (필요한 경우) 파라미터를 받을 수 있다. 뉴전트가 SLA 위반이 예측된 것으로 결정한 경우 이벤트가 발생된다. 뉴전트의 기동 시에, 메시지 흐름이 가능하게 되도록 AHD와 인터페이스가 초기화된다.
뉴전트가 SLA 위반이 있을지 모른다고 예측할 때마다, PredictSLA 메소드가 지정된 요청 또는 순서 변경을 갱신하기 위해 호출된다. PredictSLA는 이하의 것, 즉 (a) 지정된 요청 또는 순서 변경을 검사하는 것, (b) 요청 또는 순서 변경 레코드 내의 predict_sla_violated 값을 증가시키는 것, 및 (c) 뉴전트 메시지 스트링의 지정된 콘텐츠를 갖는 활동 로그(activity log)를 추가하는 것을 포함한 다수의 조치를 취한다.
병렬/분산 처리
가능하고 적절한 경우 병렬 처리가 가능하도록 하기 위해 멀티쓰레딩이 사용될 수 있다. 게다가, AHD는 성능을 향상시키거나 스케일링을 용이하게 하기 위해다수의 콘솔들 간에 뉴전트를 분산시킬 수 있다. 예를 들어, 시스템 성능 및 확장성을 향상시키기 위해 개별적인 모듈이 2개 이상의 프로세서 사이에 분산될 수 있다. 예를 들어, 24 x 7 동작의 경우, 모델 재훈련에 전용될 수 있는 실제의 무작동 기간(off-hour period)이 없을 수 있다. 서버 이름 및/또는 IP 주소의 리스트가 프로세스간 통신을 용이하게 하기 위해 유지될 수 있다.
다른 대안에서, AHD 서비스는 고객 사이트에 있는 다른 서브시스템에 대한 그의 영향을 최소화하기 위해 전적으로 전용 관리 콘솔 상에서 실행될 수 있다.
상기한 특정의 실시예는 예시적인 것이며, 많은 변형예가 본 발명의 정신 또는 첨부된 청구항의 범위를 벗어나지 않고 이들 실시예를 바탕으로 실시될 수 있다. 다른 예시적인 실시예들의 구성요소 및/또는 특징은 본 발명 및 첨부된 청구항의 범위 내에서 서로 결합되거나 및/또는 서로를 대체할 수 있다.
부가의 변형은 인용함으로써 본 명세서에 포함되는 이하의 미국 가특허출원을 읽어보면 당업자에게는 명백한 것일 수 있다.
(a) 2002년 4월 19일자로 출원된 발명의 명칭이 "PROCESSING MIXED NUMERIC AND/OR NON-NUMERIC DATA(숫자 및/또는 비숫자 혼합 데이터의 처리)"인 제60/374,064호,
(b) 2002년 4월 19일자로 출원된 발명의 명칭이 "AUTOMATIC NEURAL-NET MODEL GENERATION AND MAINTENANCE(자동 신경망 모델 생성 및 유지)"인 제60/374,020호,
(c) 2002년 4월 19일자로 출원된 발명의 명칭이 "VIEWING MULTI-DIMENSIONAL DATA THROUGH HIERARCHICAL VISUALIZATION(계층적 시각화를 통한 다차원 데이터의 보기)"인 제60/374,024호,
(d) 2002년 4월 19일자로 출원된 발명의 명칭이 "METHOD AND APPARATUS FOR DISCOVERING EVOLUTIONARY CHANGES WITHIN A SYSTEM(시스템에서의 점진적 변화의 발견 방법 및 시스템)"인 제60/374,041호,
(e) 2002년 4월 19일자로 출원된 발명의 명칭이 "AUTOMATIC MODEL MAINTENANCE THROUGH LOCAL NETS(로컬 네트워크를 통한 자동 모델 유지)"인 제60/373,977호, 및
(f) 2002년 4월 19일자로 출원된 발명의 명칭이 "USING NEURAL NETWORKS FOR DATA MINING(데이터 마이닝을 위한 신경망의 사용)"인 제60/373,780호.

Claims (15)

  1. 적응적 시스템 모델링 방법으로서,
    베이스라인 중요도 서명을 사용함으로써 시스템의 복수의 후보 특징들로부터 입력 특징 세트 및 상기 입력 특징과 기타 특징의 수퍼세트를 선택하는 단계,
    상기 선택된 입력 특징 세트에 대응하는 데이터를 사용함으로써 시스템 모델을 생성하는 단계,
    상기 시스템으로부터 수집된 상기 입력 특징과 기타 특징의 상기 수퍼세트에 대응하는 온라인 데이터를 유지하는 단계,
    상기 온라인 수퍼세트 데이터를 사용하여 상기 후보 특징의 판별 분석을 수행함으로써 상기 시스템의 새로운 중요도 서명을 결정하는 단계, 및
    상기 새로운 중요도 서명과 상기 베이스라인 중요도 서명을 비교함으로써 상기 시스템에서의 점진적 변화를 검출하는 단계
    를 포함하는 적응적 시스템 모델링 방법.
  2. 제1항에 있어서, 상기 새로운 중요도 서명을 사용함으로써 새로운 입력 특징을 선택하는 단계를 더 포함하는 적응적 시스템 모델링 방법.
  3. 적응적 시스템 모델링 방법으로서,
    판별 분석을 수행함으로써 시스템의 현재의 거동의 베이스라인 중요도 서명을 결정하는 단계,
    상기 베이스라인 중요도 서명을 사용함으로써 복수의 후보 특징으로부터 입력 특징 세트 및 상기 입력 특징과 기타 특징의 수퍼세트를 선택하는 단계,
    상기 선택된 입력 특징 세트에 대응하는 데이터를 사용함으로써 시스템 모델을 생성하는 단계, 및
    상기 시스템으로부터 수집된 상기 입력 특징과 기타 특징의 상기 수퍼 세트에 대응하는 온라인 데이터를 유지하는 단계
    를 포함하는 적응적 시스템 모델링 방법.
  4. 제3항에 있어서, 부가의 입력 특징 데이터에 기초하여 상기 시스템 모델에 의한 예측의 정확도를 평가하는 단계,
    상기 시스템 모델 예측의 정확도가 미리 정해진 정확도 레벨 이하인 경우, 상기 후보 특징의 다른 판별 분석을 수행함으로써 상기 시스템의 새로운 중요도 서명을 결정하는 단계, 및
    상기 새로운 중요도 서명을 사용함으로써 새로운 입력 특징을 선택하는 단계
    를 더 포함하는 적응적 시스템 모델링 방법.
  5. 제4항에 있어서, 상기 부가의 입력 특징 데이터는 상기 온라인 데이터 수집으로부터 획득되는 적응적 시스템 모델링 방법.
  6. 적응적 시스템 모델링 방법으로서,
    결정 트리 방법론을 이용하여 판별 분석을 수행함으로써 시스템의 현재의 거동의 베이스라인 중요도 서명을 결정하는 단계,
    상기 베이스라인 중요도 서명을 사용함으로써 시스템의 복수의 후보 특징으로부터 입력 특징 세트를 선택하는 단계, 및
    상기 선택된 입력 특징 세트에 대응하는 데이터를 사용함으로써 시스템 모델을 생성하는 단계
    를 포함하는 적응적 시스템 모델링 방법.
  7. 기계에 의해 판독가능한 프로그램 저장 장치로서,
    제1항의 적응적 시스템 모델링 방법을 수행하며 상기 기계에 의해 실행가능한 명령어들로 된 프로그램을 유형적으로 포함하는 프로그램 저장 장치.
  8. 기계에 의해 판독가능한 프로그램 저장 장치로서,
    제3항의 적응적 시스템 모델링 방법을 수행하며 상기 기계에 의해 실행가능한 명령어들로 된 프로그램을 유형적으로 포함하는 프로그램 저장 장치.
  9. 기계에 의해 판독가능한 프로그램 저장 장치로서,
    제6항의 적응적 시스템 모델링 방법을 수행하며 상기 기계에 의해 실행가능한 명령어들로 된 프로그램을 유형적으로 포함하는 프로그램 저장 장치.
  10. 컴퓨터 시스템으로서,
    프로세서, 및
    제1항의 적응적 시스템 모델링 방법을 수행하며 상기 프로세서에 의해 실행가능한 명령어들로 된 프로그램을 유형적으로 포함하는, 상기 컴퓨터 시스템에 의해 판독가능한 프로그램 저장 장치
    를 포함하는 컴퓨터 시스템.
  11. 컴퓨터 시스템으로서,
    프로세서, 및
    제3항의 적응적 시스템 모델링 방법을 수행하며 상기 프로세서에 의해 실행가능한 명령어들로 된 프로그램을 유형적으로 포함하는, 상기 컴퓨터 시스템에 의해 판독가능한 프로그램 저장 장치
    를 포함하는 컴퓨터 시스템.
  12. 컴퓨터 시스템으로서,
    프로세서, 및
    제6항의 적응적 시스템 모델링 방법을 수행하며 상기 프로세서에 의해 실행가능한 명령어들로 된 프로그램을 유형적으로 포함하는, 상기 컴퓨터 시스템에 의해 판독가능한 프로그램 저장 장치
    를 포함하는 컴퓨터 시스템.
  13. 컴퓨터 데이터 신호로서,
    베이스라인 중요도 서명을 사용함으로써 시스템의 복수의 후보 특징으로부터 입력 특징 세트 및 상기 입력 특징과 기타 특징의 수퍼세트를 선택하고, 상기 선택된 입력 특징 세트에 대응하는 데이터를 사용함으로써 시스템 모델을 생성하는 모델 생성 코드를 포함하는 제1 세그먼트,
    상기 시스템으로부터 수집된 상기 입력 특징 및 기타 특징의 상기 수퍼세트에 대응하는 온라인 데이터를 유지하는 데이터 수집 코드를 포함하는 제2 세그먼트, 및
    상기 후보 특징의 판별 분석을 수행하기 위해 상기 온라인 수퍼세트 데이터를 사용함으로써 상기 시스템의 새로운 중요도 서명을 결정하고, 상기 새로운 중요도 서명과 상기 베이스라인 중요도 서명을 비교함으로써 상기 시스템에서의 점진적 변화를 검출하는 모델 평가 코드를 포함하는 제3 세그먼트
    를 포함하는, 전송 매체에 포함되는 컴퓨터 데이터 신호.
  14. 컴퓨터 데이터 신호로서,
    판별 분석을 수행함으로써 시스템의 현재의 거동의 베이스라인 중요도 서명을 결정하고, 상기 베이스라인 중요도 서명을 사용함으로써 복수의 후보 특징으로부터 입력 특징 세트 및 상기 입력 특징과 기타 특징의 수퍼세트를 선택하며, 상기선택된 입력 특징 세트에 대응하는 데이터를 사용함으로써 시스템 모델을 생성하는 모델 생성 코드를 포함하는 제1 세그먼트, 및
    상기 시스템으로부터 수집된 상기 입력 특징과 기타 특징의 수퍼 세트에 대응하는 온라인 데이터를 유지하는 데이터 수집 코드를 포함하는 제2 세그먼트
    를 포함하는, 전송 매체에 포함되는 컴퓨터 데이터 신호.
  15. 컴퓨터 데이터 신호로서,
    판별 분석을 수행하기 위해 결정 트리 방법론을 이용함으로써 시스템의 현재의 거동의 베이스라인 중요도 서명을 결정하는 판별 분석 코드를 포함하는 제1 세그먼트, 및
    상기 베이스라인 중요도 서명을 사용함으로써 복수의 후보 특징으로부터 입력 특징 세트를 선택하고, 상기 선택된 입력 특징 세트에 대응하는 데이터를 사용함으로써 시스템 모델을 생성하는 모델 생성 코드를 포함하는 제2 세그먼트
    를 포함하는, 전송 매체에 포함되는 컴퓨터 데이터 신호.
KR10-2004-7016464A 2002-04-19 2002-07-18 시스템에서의 점진적 변화의 발견 방법 및 장치 KR20040111517A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US37404102P 2002-04-19 2002-04-19
US60/374,041 2002-04-19
PCT/US2002/022977 WO2003090147A2 (en) 2002-04-19 2002-07-18 Method and apparatus for discovering evolutionary changes within a system

Publications (1)

Publication Number Publication Date
KR20040111517A true KR20040111517A (ko) 2004-12-31

Family

ID=29251126

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2004-7016464A KR20040111517A (ko) 2002-04-19 2002-07-18 시스템에서의 점진적 변화의 발견 방법 및 장치

Country Status (8)

Country Link
EP (1) EP1504365A2 (ko)
JP (1) JP2005523526A (ko)
KR (1) KR20040111517A (ko)
CN (1) CN1864153A (ko)
AU (1) AU2002367882A1 (ko)
CA (1) CA2481296A1 (ko)
IL (1) IL164616A0 (ko)
WO (1) WO2003090147A2 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5098821B2 (ja) * 2008-06-02 2012-12-12 富士通株式会社 監視対象システムの障害等の予兆を検出する監視装置及び監視方法
JP5768983B2 (ja) * 2010-06-09 2015-08-26 日本電気株式会社 契約違反予測システム、契約違反予測方法および契約違反予測プログラム
JP2013058120A (ja) * 2011-09-09 2013-03-28 Sony Corp 情報処理装置、情報処理方法、及び、プログラム
CN113610239B (zh) * 2016-09-27 2024-04-12 第四范式(北京)技术有限公司 针对机器学习的特征处理方法及特征处理系统
CN107392319A (zh) * 2017-07-20 2017-11-24 第四范式(北京)技术有限公司 生成机器学习样本的组合特征的方法及系统
CN111967778A (zh) * 2020-08-19 2020-11-20 杭州铂钰信息科技有限公司 一种基于安全基线模型的数据安全检测方法及系统

Also Published As

Publication number Publication date
EP1504365A2 (en) 2005-02-09
AU2002367882A1 (en) 2003-11-03
CN1864153A (zh) 2006-11-15
CA2481296A1 (en) 2003-10-30
JP2005523526A (ja) 2005-08-04
WO2003090147A8 (en) 2004-12-02
WO2003090147A2 (en) 2003-10-30
IL164616A0 (en) 2005-12-18

Similar Documents

Publication Publication Date Title
US7533006B2 (en) Method and apparatus for discovering evolutionary changes within a system
US11238350B2 (en) Cognitive modeling system
US7509337B2 (en) System and method for selecting parameters for data mining modeling algorithms in data mining applications
Khoshgoftaar et al. Modeling software quality with classification trees
US11348016B2 (en) Cognitive modeling apparatus for assessing values qualitatively across a multiple dimension terrain
Khoshgoftaar et al. Balancing misclassification rates in classification-tree models of software quality
CN105144112A (zh) Java堆使用的季节趋势、预报、异常检测和端点预测
Khoshgoftaar et al. Data mining for predictors of software quality
Rohanizadeh et al. A proposed data mining methodology and its application to industrial procedures
Sari et al. Statistical metrics for assessing the quality of wind power scenarios for stochastic unit commitment
US7912772B2 (en) Computer-implemented systems and methods for emerging warranty issues analysis
Park et al. Action-oriented process mining: bridging the gap between insights and actions
US8306997B2 (en) Method and computer program product for using data mining tools to automatically compare an investigated unit and a benchmark unit
KR20040111517A (ko) 시스템에서의 점진적 변화의 발견 방법 및 장치
Khoshgoftaar et al. Uncertain classification of fault-prone software modules
Khoshgoftaar et al. Data mining of software development databases
Duarte et al. An empirical study of learning‐to‐rank for spare parts consumption in the repair process
Mamedov et al. Building a Reusable Defect Resolution Time Prediction Model Based on a Massive Open-Source Dataset: An Industrial Report
Draghici et al. Prediction of distributed systems state based on monitoring data
Ishida An application of qualitative reasoning to process diagnosis: automatic rule generation by qualitative simulation
Chi Study on mult-lingual LZ77 and LZ78 text compression
Borchert Feature extraction from event logs for predictive monitoring of business processes
Hätönen et al. Remarks on the industrial application of inductive database technologies
CN117421659A (zh) 一种充电站监控管理方法、系统、终端设备及存储介质
Straube et al. Design Criteria and Design Concepts for an Integrated Management Platform of IT Infrastructure Metrics

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid