본문 바로가기
온톨로지

Knowledge-Based Processing of Complex Stock Market Events 논문 정리

by variationju 2025. 1. 2.

Teymourian, Kia, Malte Rohde, and Adrian Paschke. "Knowledge-based processing of complex stock market events." Proceedings of the 15th International Conference on Extending Database Technology. 2012.

 

내용을 정리한 글입니다.

 

1. Motivation

 

Complex Event Processing가 필요한 데이터에 감지를 잘 못해 프로세스 관리에 활용될 수 없는 경우가 있다.

Semantic event processing 은 온톨로지와 규칙(KB)과 결합된 이벤트 메타데이터를 활용하여 이벤트 처리 품질을 향상시킬 수 있다.

 

형식화되고 선언적인 규칙과 같은 기술에 대한 표준과 도구를 구축하는 데 있어 지식 표현 연구는 새로운 응용분야를 열어가고 있다. 이러한 유망한 응용 분야 중 하나가 Semantic event processing

 

기존의 이벤트 처리 방식은 규칙 기반 접근법과 비규칙 기반 접근법의 두 가지로 분류

Complex Event Processing 의 처리 모델 중 하나는 Cayuga와 SASE+, 또는 ESPER와 같은 시스템에서 사용되는 non-deterministic finite state automata가 있다. 규칙 기반 접근법 중 하나는 복잡 이벤트 처리를 위한 동질적 반응 규칙 언어를 제안. 이는 이벤트와 액션 처리의 조합적 접근법으로, 파생 규칙, 무결성 제약조건, 트랜잭션 지식과 같은 다른 규칙 유형들과 함께 반응 규칙을 형식화 할 수 있다. 그 외에도 여러가지 처리 방식이 있다.

 

하지만 이 시스템들은 외부 지식베이스에 대한 추론을 제공하지 않으며 이벤트와 다른 비이벤트 개념들 간의 관계에 대한 추론도 고려하지 않는다.

 

본 논문에서는 실시간 주식 시장 이벤트와 기업에 대한 배경 지식을 활용하여 복잡한 주식 시장 이벤트를 추출하기 위한 지식 기반 복잡 이벤트 처리 데모 시스템을 설명한다. 이벤트 데이터 스트림과 배경 지식의 융합은 이벤트와 다른 개념들과의 관계에 대한 더 완전한 지식을 구축할 수 있다.

 

2. USE CASE SCENARIO

 

Smith씨는 주식 중개인으로, Listing 1과 같은 주식 거래 이벤트 스트림에 접근할 수 있다.

 

특정 종류의 주식에 관심이 있으며 판매 가능한 흥미로운 주식이 있을 때 알림을 받고 싶어하며 그의 특별한 관심사나 주식 거래 전략은 기업들에 대한 배경 지식을 활용하여 고수준 언어로 표현될 수 있다.

 

Listing 1: 주식 거래 이벤트 스트림

{ .. , 
  {(Name, "GM")(Price, 20.24)(Volume, 8,835)},
  {(Name, "SAP")(Price, 48.71)(Volume, 8,703)},
  {(Name, "MSFT")(Price, 24.88)(Volume, 46,829)},
  ... }

 

해당 내용을 가져오고 싶어한다.

유럽에 생산 시설이 있고, 철로 제품을 생산하며, 10,000명 이상의 직원을 보유하고, 현재 구조조정 단계에 있으며, 지난 5분간 가격/거래량이 안정적으로 증가한 기업들의 주식 매수

 

배경 지식은 흥미로운 복잡 이벤트를 적시에 감지할 수 있도록 이벤트 데이터 스트림과 실시간으로 통합되고 처리되어야한다.Smith씨가 회사에서 일하며 다른 중개인들과 이 지식베이스를 공유해야 할 수도 있다.  각 중개인들은 기업들에 대한 새로운 정보를 수집하고 지식베이스를 업데이트할 수 있다. 예를 들어, 더 이상 구조조정 단계가 아니라거나 Apple이 새로운 CEO를 임명했다는 정보를 나타낸다다.

 

{ (OPEL, belongsTO, GM),
  (OPEL, isA, automobilCompany),
  (automobilCompany, build, Cars),
  (Cars, areFrom, Iron),
  (OPEL, hatProductionFacilitiesIn, Germany),
  (Germany, isIn, Europe),
  (OPEL, isA, MajorCorporation),
  (MajorCorporation, have, over10,000employees),
  (OPEL, isIn, reconstructionPhase),
  ... }

 

3. SEMANTIC EVENT PROCESSING
이벤트 스트림의 데이터와 배경 지식의 융합은 이벤트와 다른 관련 개념들과의 관계에 대해 더 많이 알 수 있게 해준다. 이는 이벤트가 타입 계층 관계나 시간적/공간적 관계에 대한 추론을 기반으로 감지될 수 있음을 의미한다. 또한 도메인의 다른 관련 개념들과의 연결을 기반으로 할 수도 있다.


SCEP의 구현은 실시간 처리와 높은 확장성을 제공해야 하기 때문에 도전적인 과제이다. 이 접근법은 이벤트 스트림의 처리량이 높거나, 배경 지식의 크기가 크거나, 또는 지식베이스에서 표현력 있는 추론을 해야 할 때 여러 문제가 있을 수 있다.

 

3.1 Event Query Pre-Processing

 

이벤트 처리가 수행되기 전에 이벤트 쿼리 전처리(EQPP)를 수행할 것을 제안. 이 접근법에서는 원래의 복잡한 이벤트 쿼리가 지식베이스를 사용하여 전처리되어 단일 새 쿼리로 재작성. 이 새로운 쿼리는 외부 지식베이스 없이 이벤트 스트림의 지식만으로 구문적으로 처리될 수 있는 쿼리.

 

이 방법의 장점:

용고수준 추상화 관점에서 이벤트 쿼리를 정의할 수 있고 세부사항에 신경 쓸 필요가 없다. 예를 들어, 사용자는 "철로 제품을 생산하는 회사들"과 같은 쿼리를 지정할 수 있으며 기억하기 어려울 수 있는 회사들의 모든 제품을 알 필요가 없다.

 

SCEP 시스템이 외부 지식베이스에 대한 추론이 미리 수행되기 때문에 이벤트가 시스템에 도착할 때 실시간 이벤트 처리를 제공할 수 있다. 반면에 이 접근법의 단점은 지식베이스가 변경될 때마다(또는 KB의 일부가 변경될 때) 쿼리를 업데이트해야 한다.

일부 사용 사례에서 배경 지식 업데이트의 빈도가 주요 이벤트 스트림 업데이트의 빈도만큼 높지 않다고 가정다. 예를 들어, 특정 주식(예: MSFT)에 대한 뉴스의 수는 해당 주식에 대한 수신 거래 이벤트의 수만큼 많지 않습니다.

 

4. Demo 

SCEP 구조

Prova에서 SPARQL 쿼리를 실행하기 위한 sparql_select 내장 함수를 구현.

Prova

이 내장 함수는 정보의 검색과 사용을 분리할 수 있도록 SPARQL 쿼리의 결과를 Prova 지식베이스에 사실로 주입.

이러한 사실들은 sparql_results 술어를 사용하여 접근할 수 있다. 이는 쿼리 실행 후 결과를 직접 통합 프로세스로 가져오는 것보다 여러 가지 장점이있다.

첫째, sparql_select 호출이 통합에서 여러 분기를 생성하지 않으므로 후속 문장들이 여러 번 평가/실행되지 않는다. 이는 rcvMult와 같은 반응형 메시징 내장 함수에 대한 후속 호출에 특히 중요.

둘째, 외부 지식베이스의 데이터가 변경될 때 결과를 Prova 지식베이스에 점진적으로 제공할 수 있다.

sparql_select(QueryString, QueryID, [SetOfInputVariables], ServiceEndpoint).

 

QueryID는 쿼리와 해당 결과를 연결하는 데 사용되며, 사용자가 제공하거나 내장 함수에 의해 생성될 수 있습니다. 입력 변수 집합은 SPARQL 문자열에서 $로 시작하는 변수를 Prova의 변수로 대체할 수 있게 해주며, 서비스 엔드포인트는 SPARQL 엔드포인트.

 

시스템은 DBpedia에서 특정 기업에 대한 지식을 추출할 수 있습니다. 기업의 주식 시장 이벤트는 기업 개념에 대한 속성을 기반으로 감지될 수 있다. 지식베이스는 사용자가 업데이트할 수 있습니다. 전체 전처리 단계는 지식베이스가 변경될 때마다 업데이트된다.

 

Prova를 사용하여 분산된 이벤트 소스에서 계획 기반 복잡 이벤트 감지를 구현할 수 있다. 하지만 모든 이벤트 스트림이 중앙 처리 지점으로 오는 것으로 설정. 해당 논문은 EQPP가 단순 저장소 기반 접근법보다 더 나은 성능을 달성할 수 있음을 보여줍니다. 또한 EQPP 접근법이 위에서 설명한 사용 사례에 적용 가능한 접근법임을 보여준다.

 

SCEP 시스템의 확장성은 다음 다섯 가지 차원을 가진다:

이벤트 배출 속도

메인 메모리의 규칙 수

지식베이스의 트리플 수(지식의 양)

지식 업데이트 속도

배경 지식에 대한 추론의 표현력 수준

 

데모 시스템은 네 부분으로 구성된 사용자 인터페이스를 가진다:

CEP 엔진 상태: 사용자가 시스템의 현재 상태를 보고 CEP 엔진을 시작하거나 중지할 수 있다

이벤트 쿼리: 사용자가 Prova 규칙 형태로 이벤트 쿼리를 제공할 수 있다

지식베이스: 사용자가 외부 지식베이스로 SPARQL 엔드포인트를 지정하고, 지식베이스에서 사용 가능한 것을 보기 위해 SPARQL 쿼리를 보내고, 외부 RDF 저장소에 RDF 데이터를 게시하고 추가할 수 있다

이벤트 소스 구성: 사용자가 Yahoo 파이낸스 시스템의 실시간 스트림과 데이터베이스의 저장된 스트림 중에서 선택할 수 있다

 

5. 결론 및 전망 

의미론적 이벤트 처리와 이벤트 쿼리의 의미론적 전처리에 대한 초기 작업을 설명하고 데모를 통해 이 접근법의 잠재력을 보여주었다.

향후 연구는 이벤트 처리 언어의 의미론에 대해 작업하고 복잡 이벤트 처리에 적합한 의미론이 무엇인지 정의하는 것. 또한 높은 성능과 확장성을 달성하기 위해 복잡한 이벤트 쿼리를 여러 간단한 쿼리로 재작성하여 이벤트 처리 네트워크에 분산시키는 알고리즘을 개발하고 있다.

 

정리하다보니 온톨로지보다는 데이터 분석방식에 더 맞다.

'온톨로지' 카테고리의 다른 글

Stock Market Ontology 논문 읽기  (5) 2025.01.04