KR102068715B1 - 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치 및 방법 - Google Patents

변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치 및 방법 Download PDF

Info

Publication number
KR102068715B1
KR102068715B1 KR1020190066874A KR20190066874A KR102068715B1 KR 102068715 B1 KR102068715 B1 KR 102068715B1 KR 1020190066874 A KR1020190066874 A KR 1020190066874A KR 20190066874 A KR20190066874 A KR 20190066874A KR 102068715 B1 KR102068715 B1 KR 102068715B1
Authority
KR
South Korea
Prior art keywords
data
variable
outlier detection
column
weight
Prior art date
Application number
KR1020190066874A
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 (주)위세아이텍
Priority to KR1020190066874A priority Critical patent/KR102068715B1/ko
Application granted granted Critical
Publication of KR102068715B1 publication Critical patent/KR102068715B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/215Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/221Column-oriented storage; Management thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에 관한 것이며, 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치는, 복수의 데이터 셋을 포함하는 데이터 베이스, 상기 데이터 베이스에 포함된 복수의 데이터 셋 중 이상값 탐지를 수행할 제 1 데이터 셋을 결정하고, 상기 제1데이터 셋의 칼럼 항목 중 이상값 탐지를 수행할 복수의 칼럼 항목을 선택하는 데이터 선택부, 상기 데이터 선택부에서 선택된 복수의 칼럼 항목의 전처리를 수행하는 데이터 전처리부, 상기 전처리된 복수의 칼럼 항목에 포함된 데이터에 기초하여, 상기 복수의 칼럼 항목을 변수로 하는 변수 간의 상관관계 및 영향도를 분석하는 변수 분석부, 상기 분석된 영향도를 이용하여 각 변수의 가중치를 연산하고, 연산된 가중치를 변수에 적용하는 가중치 적용부 및 가중치가 적용된 데이터 셋의 이상값을 탐지하는 이상값 탐지부를 포함할 수 있다.

Description

변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치 및 방법{OUTLIER DETECTION DEVICE AND METHOD WHICH WEIGHTS ARE APPLIED ACCORDING TO FEATURE IMPORTANCE DEGREE}
본원은 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치 및 방법에 관한 것이다.
최근 10년 사이 컴퓨팅 성능의 향상, 네트워크와 인터넷의 발달에 따른 풍부한 데이터의 확보는 빅데이터 시대의 원동력이 되었다. 이러한 추세에 맞춰서 기술 산업에서 빅데이터를 이용한 상업 데이터 분석과 마이닝 기술의 중요성은 날로 늘어가고 있다. 기업들의 온라인을 통해서 비즈니스 개선에 필요한 데이터는 물론, 데이터를 판매할 수 있을 정도의 데이터들은 지속적으로 만들어지고 있다. 이런 데이터들을 사용하는 다양한 방법들이 연구가 되고 있는데, 특히 머신러닝과 딥러닝에 대한 연구들이 크게 각광을 받고 있다.
하지만, 연구에 대한 중요도나 성장률과 별개로, 기업들이 데이터들을 이용한 연구들을 실제 비즈니스에 사용하기에는 많은 어려움이 있다. 특히 데이터 셋에 다수의 변수가 존재할 경우, 이상값 탐지에 어려움이 있다. 높은 도메인 이해도가 있어야 하는 데이터를 사용해야 하는 경우, 변수의 선택이나 영향도를 분석하는 중요도는 더 높아지게 된다.
본원의 배경이 되는 기술은 한국공개특허공보 제10-2019-0048012호에 개시되어 있다.
본원은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 데이터 셋을 전처리 장치를 이용하여 가공하고, 변수의 영향도를 이용하여 가중치를 적용한 이상값 탐지를 수행할 수 있는 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치 및 방법을 제공하려는 것을 목적으로 한다.
본원은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 2개 이상의 변수를 사용할 때 변수의 사용 여부를 사용자가 선택할 수 있도록 변수의 상관관계와 영향도를 제공할 수 있는 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치 및 방법을 제공하려는 것을 목적으로 한다.
본원은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 2개 이상의 변수가 사용이 되었을 때, 각 변수가 인공지능 알고리즘을 이용한 이상값 판별에 미치는 영향도를 사용자가 확인하고, 가중치를 적용하여 더욱 정밀한 이상값을 탐지할 수 있는 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치 및 방법을 제공하려는 것을 목적으로 한다.
다만, 본원의 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치는, 복수의 데이터 셋을 포함하는 데이터 베이스, 상기 데이터 베이스에 포함된 복수의 데이터 셋 중 이상값 탐지를 수행할 제1 데이터 셋을 결정하고, 상기 제1데이터 셋의 칼럼 항목 중 이상값 탐지를 수행할 복수의 칼럼 항목을 선택하는 데이터 선택부, 상기 데이터 선택부에서 선택된 복수의 칼럼 항목의 전처리를 수행하는 데이터 전처리부, 상기 전처리된 복수의 칼럼 항목에 포함된 데이터에 기초하여, 상기 복수의 칼럼 항목을 변수로 하는 변수 간의 상관관계 및 영향도를 분석하는 변수 분석부, 상기 분석된 영향도를 이용하여 각 변수의 가중치를 연산하고, 연산된 가중치를 변수에 적용하는 가중치 적용부 및 가중치가 적용된 데이터 셋의 이상값을 탐지하는 이상값 탐지부를 포함할 수 있다.
본원의 일 실시예에 따르면, 상기 데이터 선택부는, 상기 제 1 데이터 셋의 복수의 칼럼 항목 중 이상값 탐지를 수행할 수치형 데이터가 포함된 복수의 칼럼 항목을 선택할 수 있다.
본원의 일 실시예에 따르면, 상기 데이터 전처리부는, 선택된 복수의 칼럼 항목에 포함된 상기 수치형 데이터에 기반하여 결측치 처리 및 필터링의 전처리를 수행할 수 있다.
본원의 일 실시예에 따르면, 상기 데이터 전처리부는, 선택된 복수의 칼럼 항목에 포함된 상기 수치형 데이터의 결측치를 최대값, 최빈값, 최소값, 중간값, 평균값, 0, 삭제 중 적어도 어느 하나로 치환하는 전처리를 수행할 수 있다.
본원의 일 실시예에 따르면, 상기 데이터 전처리부는, 선택된 복수의 칼럼 항목에 포함된 상기 수치형 데이터의 AND, OR, 부등식 중 적어도 어느 하나를 이용한 필터를 설정하여 상기 수치형 데이터를 필터링하는 전처리를 수행할 수 있다.
본원의 일 실시예에 따르면, 상기 변수 분석부는, 상기 전처리된 복수의 칼럼 항목을 이용하여 통계 알고리즘 및 인공지능 알고리즘에 적용하여, 상기 전처리된 복수의 칼럼 항목에 포함된 데이터에 기초하여, 상기 복수의 칼럼 항목을 변수로 하는 상관관계 및 영향도를 분석할 수 있다.
본원의 일 실시예에 따르면, 상기 상관관계 분석은 통계적 알고리즘을 사용하여 계산되되, 상기 변수 분석부는, 선택된 변수들 간의 상관관계 분석을 통해 양의 상관관계가 있으면 1, 음의 상관관계가 있으면 -1, 상관관계가 없다면 0과 가까운 값으로 표현할 수 있다.
본원의 일 실시예에 따르면, 상기 변수 분석부는, 상기 변수 간의 상관관계 및 영향도 분석의 결과에 기반하여 이상값 탐지를 수행할 변수를 선택할 수 있다.
본원의 일 실시예에 따르면, 상기 가중치 적용부는, 상기 변수 분석부에서 분석된 변수 간의 영향도 분석 순위를 기반으로 변수 각각의 가중치를 연산할 수 있다.
본원의 일 실시예에 따르면, 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치는, 상기 전처리된 복수의 칼럼 항목에 포함된 데이터와 이상값을 탐지한 결과를 연계하여 데이터 셋을 저장하는 데이터 결과부를 더 포함할 수 있다.
본원의 일 실시예에 따르면, 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치는, 상기 선택된 복수의 칼럼 항목에 라벨 칼럼이 포함된 경우, 해당 데이터 셋을 이용하여 지도 학습 기반의 인공지능 알고리즘에 적용하여 이상값 탐지 모델을 구축하는 이상값 탐지 모델 생성부를 더 포함할 수 있다.
본원의 일 실시예에 따르면, 상기 이상값 탐지부는, 상기 선택된 복수의 칼럼 항목에 라벨 칼럼이 포함되지 않은 경우, 비지도 학습 기반의 인공지능 알고리즘을 이용하여 이상값을 탐지할 수 있다.
본원의 일 실시예에 따르면, 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치는, 상기 이상값 탐지 모델을 이용하여 신규 데이터의 이상값 여부를 예측하는 데이터 예측부를 더 포함할 수 있다.
본원의 일 실시예에 따르면, 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치는, 사용자 단말로 데이터 이상값 탐지 입력 정보와 관련된 선택 항목을 제공하는 데이터 제공부 및 상기 사용자 단말로부터 데이터 이상값 탐지 입력 정보를 수신하는 사용자입력 수신부를 더 포함할 수 있다.
본원의 일 실시예에 따르면, 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 방법은, 복수의 데이터 셋을 포함하는 데이터 베이스에 포함된 복수의 데이터 셋 중 이상값 탐지를 수행할 제 1 데이터 셋을 결정하고, 상기 제1데이터 셋의 칼럼 항목 중 이상값 탐지를 수행할 복수의 칼럼 항목을 선택하는 단계, 상기 선택된 복수의 칼럼 항목의 전처리를 수행하는 단계, 상기 전처리된 복수의 칼럼 항목에 포함된 데이터에 기초하여, 상기 복수의 칼럼 항목을 변수로 하는 변수 간의 상관관계 및 영향도를 분석하는 단계, 상기 분석된 영향도를 이용하여 각 변수의 가중치를 연산하고, 연산된 가중치를 변수에 적용하는 단계, 가중치가 적용된 데이터 셋의 이상값을 탐지하는 단계를 포함할 수 있다.
상술한 과제 해결 수단은 단지 예시적인 것으로서, 본원을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 추가적인 실시예가 존재할 수 있다.
전술한 본원의 과제 해결 수단에 의하면, 2개 이상의 수치형 칼럼을 가진 데이터 셋을 전처리 장치를 이용해 가공하고, 변수의 영향도와 상관관계를 분석하고, 데이터 셋에 포함된 데이터의 이상값을 탐지할 수 있다.
전술한 본원의 과제 해결 수단에 의하면, 영향도를 이용하여 계산하거나 사용자가 직접 입력한 가중치를 적용하여, 데이터에 대한 이상값 탐지를 할 수 있다.
전술한 본원의 과제 해결 수단에 의하면, 2개 이상의 변수가 사용이 되었을 때, 각 변수가 인공지능 알고리즘을 이용한 이상값 판별에 미치는 영향도를 사용자가 확인하고, 가중치를 적용하여 보다 정밀한 이상값 탐지를 수행할 수 있다.
다만, 본원에서 얻을 수 있는 효과는 상기된 바와 같은 효과들로 한정되지 않으며, 또 다른 효과들이 존재할 수 있다.
도 1은 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치의 구성을 개략적으로 나타낸 블록도이다.
도 2는 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에서 이상값 탐지를 수행할 데이터 셋을 선택하는 화면을 예시적으로 나타낸 도면이다.
도 3은 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에서 전처리 과정 중 결측치 처리를 수행하는 화면을 예시적으로 나타낸 도면이다.
도 4는 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에서 데이터 전처리 과정 중 필터링을 수행하는 화면을 예시적으로 나타낸 도면이다.
도 5는 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에서 전처리 단계가 끝난 데이터 셋의 일부를 예시적으로 나타낸 도면이다.
도 6은 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에서 선택된 변수들 간의 상관관계를 예시적으로 나타낸 도면이다.
도 7은 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에서 선택된 변수 간의 영향도 분석 결과를 예시적으로 나타낸 도면이다.
도 8은 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에서 영향도 분석 결과를 이용하여 가중치를 계산한 결과를 예시적으로 나타낸 도면이다.
도 9는 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에서 영향도 분석 결과를 이용하여 가중치를 계산한 결과를 도 5에 도시된 데이터 셋에 적용한 결과의 일부를 예시적으로 나타낸 도면이다.
도 10은 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 방법에 대한 동작 흐름도이다.
아래에서는 첨부한 도면을 참조하여 본원이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본원의 실시예를 상세히 설명한다. 그러나 본원은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본원을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본원 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결" 또는 "간접적으로 연결"되어 있는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부재가 다른 부재 "상에", "상부에", "상단에", "하에", "하부에", "하단에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
본원 명세서 전체에서, 어떤 부분이 어떤 구성 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.
이하에서는 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치를 설명의 편의상 이상값 탐지 장치(100)라 하기로 한다. 또한, 이하에서 혼용하여 사용되는 칼럼, 컬럼은 column의 동일한 명칭이며, 테이블을 구성하는 각각의 열에 위치한 정보를 의미한다.
본원의 일 실시예에 따르면, 이상값 탐지 장치(100)는 2개 이상의 수치형 칼럼이 포함된 데이터 셋을 결정하고, 선택된 데이터 셋을 전처리하고, 데이터 셋을 기반으로 변수를 분석하여 가중치를 연산하고, 가중치가 부여된 데이터 셋을 이용하여 이상값 탐지를 수행할 수 있다. 또한, 이상값 탐지 장치(100)는 전처리 과정을 중복 또는 다중으로 수행할 수 있다. 또한, 이상값 탐지 장치(100)는 통계 및 인공지능 알고리즘을 이용하여 변수 간의 상관관계와 변수별 영향도 분석을 통하여 변수를 선택할 수 있다. 또한, 이상값 탐지 장치(100)는 선택된 칼럼 항목(변수) 별 영향도를 이용하여 계산된 가중치 또는 사용자 단말로부터 제공받은 입력 정보인 가중치 정보를 데이터 셋에 부여하여 이상값 탐지를 수행할 수 있다. 이상값 탐지 장치(100)는 이상값 탐지 결과를 사용자 단말(미도시)로 제공하고, 사용자는 사용자 단말(미도시)에 제공된 이상값 탐지 결과를 확인할 수 있다. 이상값 탐지 장치(100)는 사용자 단말(미도시)을 통해 제공받은 이상값 탐지 결과의 수정 및 저장 요청에 기반하여 데이터 셋을 수정 및 저장할 수 있다. 또한, 이상값 탐지 장치(100)는 영향도에 따른 가중치를 계산할 수 있으며, 사용자 단말(미도시)로부터 입력받은 사용자 입력 정보에 기반하여, 사용자가 중요하다고 판단되는 변수에 직접 가중치 값을 적용하여 정밀한 인공지능 이상값 탐지 알고리즘 모델을 구현할 수 있다.
도 1은 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치의 구성을 개략적으로 나타낸 블록도이다.
도 1을 참조하면, 이상값 탐지 장치(100)는 데이터 베이스(110), 데이터 선택부(120), 데이터 전처리부(130), 변수 분석부(140), 가중치 적용부(150), 이상값 탐지부(160), 데이터 결과부(170), 데이터 제공부(180) 및 사용자 입력 수신부(190)를 포함할 수 있으나, 이에 한정되는 것은 아니다. 예를 들어, 이상값 탐지 장치(100)는 사용자 입력 정보에 기반하여, 데이터 전처리부(130)에서 사용되는 전처리 모듈을 추가, 수정 및 삭제하는 전처리 모듈 관리부(미도시)를 포함할 수 있다.
데이터 베이스(110)는 복수의 데이터 셋을 포함할 수 있다. 달리 말해, 데이터 베이스(110)는 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치는 데이터 셋을 포함할 수 있다. 데이터 베이스(110)는 수치형 데이터 및/또는 문자형 데이터를 포함하는 복수의 데이터 셋을 포함할 수 있다. 데이터 베이스(110)는 비정형 데이터를 포함할 수 있다. 비정형 데이터, 비구조화 데이터, 비구조적 데이터는 미리 정의된 데이터 모델이 없거나 미리 정의된 방식으로 정리되지 않은 정보를 의미할 수 있다. 비정형 데이터(Unstructured Data)란 일정한 규격이나 형태를 지닌 숫자 데이터(Numeric data)와 달리 그림이나 영상, 문서처럼 형태와 구조가 다른 구조화 되지 않은 데이터를 의미할 수 있다. 예를 들어, 데이터 셋은, 의료 분야, 금융 분야 등에서 도출되는 데이터들의 집합을 포함할 수 있다. 데이터 셋은 로우(Row: 행, 줄)와 칼럼(Column: 열, 칸)이라는 일종의 표 형태로 데이터를 저장할 수 있다. 데이터 셋에 포함된 칼럼 항목은 대표키와 일반 칼럼(데이터)으로 구분될 수 있다. 일예로, 대표키는 칼럼 항목을 대표하는 항목으로서, 도 2를 참조하면, ID, FIXEDACIDITY, VOLATOLEACODOTY등과 같은 항목을 대표키라 할 수 있으나, 이에 한정되는 것은 아니다. 데이터 셋에는 복수의 라벨 칼럼 항목이 포함될 수 있다. 복수의 칼럼은 칼럼 항목(대표키)을 기준으로 분류된 데이터들을 포함할 수 있다. 복수의 칼럼 항목에는 라벨 칼럼 항목이 포함될 수 있다. 라벨 칼럼은 지도학습 알고리즘에서 모델을 학습시키기 위한 정답 값이 포함된 칼럼일 수 있다. 라벨 칼럼에 포함된 데이터는, 라벨 칼럼과 연계된 타 칼럼 항목에 포함된 데이터를 기반으로 사용자가 수작업으로 입력한 정보일 수 있다. 일예로, 라벨 칼럼에 포함된 데이터는, 이상값 탐지 결과에 기초하여 생성된 데이터일 수 있다.
본원의 일 실시예에 따르면, 데이터 선택부(120)는 데이터 베이스(110)에 포함된 복수의 데이터 셋 중 이상값 탐지를 수행할 제 1 데이터 셋을 결정할 수 있다. 달리 말해, 데이터 선택부(120)는 데이터 베이스(110)에 포함된 데이터 셋 중 2개 이상의 수치형 칼럼 항목이 포함된 데이터 셋을 선택할 수 있다. 데이터 셋은 복수의 칼럼 항목을 포함할 수 있다. 또한, 칼럼 항목에 포함된 데이터는 문자형 데이터 및 숫자형 데이터를 포함할 수 있다. 복수의 칼럼 항목 각각은 대표키를 기준으로 수집된 데이터일 수 있다. 예를 들어, 도 2의 칼럼명 ID는 수집된 데이터 중 ID를 포함하는 데이터들이 집합된 칼럼 항목으로, NUMBER 타입(숫자형 타입)의 ID 데이터들이 포함된 데이터의 집합일 수 있다.
또한, 데이터 선택부(120)는 제 1 데이터 셋의 칼럼 항목 중 이상값 탐지를 수행할 복수의 칼럼 항목을 선택할 수 있다. 달리 말해, 데이터 선택부(120)는 제 1 데이터 셋의 복수의 칼럼 항목 중 이상값 탐지를 수행할 수치형 데이터가 포함된 복수의 칼럼 항목을 선택할 수 있다. 일예로, 데이터 선택부(120)는 2개 이상의 수치형 칼럼 항목을 선택할 수 있다. 데이터 선택부(120)는 선택한 복수의 칼럼 항목에 라벨 칼럼이 포함된 경우, 라벨 칼럼 항목을 포함하여 3개 이상의 칼럼 항목을 선택할 수 있다. 데이터 선택부(120)에서 선택된 복수의 칼럼 항목에는 라벨 칼럼이 포함되지 않을 수 있다. 또한, 데이터 선택부(120)는 쿼리(query)를 생성하여 데이터 베이스(110)에 정보를 요청하고, 데이터 셋을 선택할 수 있다.
본원의 일 실시예에 따르면, 데이터 선택부(120)는 사용자 단말(미도시)로부터 제공받은 사용자 입력 정보에 기반하여, 복수의 데이터 셋 중 이상값 탐지를 수행할 제 1 데이터 셋을 결정할 수 있다. 또한, 데이터 선택부(120)는 사용자 단말(미도시)로부터 제공받은 사용자 입력 정보에 기반하여, 제 1 데이터 셋의 칼럼 항목 중 이상값 탐지를 수행할 복수의 칼럼 항목을 결정할 수 있다.
도 2는 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에서 이상값 탐지를 수행할 데이터 셋을 선택하는 화면을 예시적으로 나타낸 도면이다.
예시적으로 도 2를 참조하면, 데이터 제공부(180)는 제 1 데이터 셋 및 복수의 칼럼 항목과 관련된 테이블 선택 메뉴를 사용자 단말(미도시)에 제공할 수 있다. 사용자 입력 수신부(190)는 사용자 단말(미도시)로부터 제 1 데이터 셋 및 복수의 칼럼 항목을 선택한 사용자 입력 정보를 수신할 수 있다.
데이터 제공부(180)는 DBMS와 연계된 콤보박스(Combo Box, 1) 및 스키마 정보와 연계된 콤보 박스(Combo Box, 2)를 이용하여 데이터 베이스(110)에 포함된 복수의 DBMS정보 및 스키마 정보의 리스트를 제공할 수 있다. 사용자 입력 수신부(190)는 사용자 단말(미도시)로부터, 데이터 베이스(110)에 포함된 DBMS정보와 스키마 정보를 선택한 사용자 입력 정보를 수신할 수 있다.
데이터 제공부(180)는 DBMS정보와 스키마 정보를 선택한 사용자 입력 정보가 수신된 경우, 테이블명과 연계된 콤보 박스(Combo Box, 3)를 활성화하고 복수의 테이블명 리스트를 제공할 수 있다. 사용자 입력 수신부(190)는 사용자 단말(미도시)로부터, 복수의 테이블명 리스트에서 어느 하나의 테이블명(예를 들어, WINE_RED)을 선택한 사용자 입력 정보를 수신할 수 있다.
도 2를 참조하면, 사용자 입력 수신부(190)는 사용자 단말(미도시)로부터 DBMS를 선택한 사용자 입력 정보를 METADB(1)으로 수신할 수 있다. 또한, 사용자 입력 수신부(190)는 사용자 단말(미도시)로부터 스키마 정보를 선택한 사용자 입력 정보를 FINTECH(2)으로 수신할 수 있다. 또한, 사용자 입력 수신부(190)는 사용자 단말(미도시)로부터 테이블명을 선택한 사용자 입력 정보를 WINE_RED(3)으로 수신할 수 있다.
달리 말해, 데이터 선택부(120)는 사용자 입력 수신부(190)의 사용자 입력 정보 수신 결과에 기반하여 이상값 탐지를 수행할 데이터 베이스(110)에 포함된 DBMS를 METADB(1)로 선택하고, 스키마 정보를 FINTECH(2)로 선택하고, 테이블명을 WINE_RED(3)로 선택하여 제 1 데이터 셋을 결정할 수 있다.
여기서, DBMS(DataBase Management System, 데이터베이스 관리 시스템)은 다수의 사용자들이 데이터베이스 내의 데이터에 접근할 수 있도록 해주는 소프트웨어 도구의 집합이다. DBMS(데이터베이스 관리 시스템)는 저장소, 접속, 보안, 백업 및 기타 기능을 제공하는, 데이터베이스를 조작하는 소프트웨어로 이루어진다.
또한, METADB는 데이터에 대한 데이터로서 하위레벨의 데이터를 기술하고 있으며, 상위레벨에서 하위레벨 데이터에 대한 각종 정보를 담고 있는 데이터이다. METADB는 칼럼명, 칼럼 한글명, 데이터 타입 등이 포함되어 있는 목록 레코드 또는 색인에 의해 생성된 데이터베이스 레코드 일 수 있다. 스키마 정보는 데이터베이스의 구조와 제약 조건에 관한 전반적인 명세를 기술한 메타데이터의 집합일 수 있다.
또한, 테이블(테이블명)은 세로줄과 가로줄의 모델을 이용하여 정렬된 데이터 집합(값)의 모임이다. 관계형 데이터베이스 및 플랫 파일 데이터 베이스에서, 테이블이란 (명칭으로 식별되는) 수직 열과 수평 행의 모델을 사용해 조직된 데이터 요소(값)들의 집합이다. 테이블의 열은 지정된 개수이지만, 행은 무한대로 확장될 수 있다. 각 행은 후보 키라고 식별되는 특정 열 서브 셋에 나타나는 값으로 식별된다. 달리 말해, 테이블(테이블명)은 제 1 데이터 셋일 수 있다.
또한, 데이터 제공부(180)는 테이블명을 선택한 사용자 입력 정보가 수신되고, 조회 버튼을 선택하는 사용자 입력 정보가 수신되는 경우, 해당 테이블(예를 들어, WINE_RED)에 포함된 복수의 칼럼 항목을 도2와 같이 제공할 수 있다.
데이터 제공부(180)는 제 1 데이터 셋에 포함된 복수의 칼럼 항목들을 사용자가 선택할 수 있도록, 선택과 연계된 체크 박스(Check Box, 4), 컬럼명, 컬럼한글명, 데이터타입으로 분류하여 복수의 칼럼 항목을 제공할 수 있다.
사용자 입력 수신부(190)는 사용자 단말(미도시)로부터 제1데이터 셋의 칼럼 항목 중 이상값 탐지를 수행할 복수의 칼럼 항목을 선택하는 사용자 입력 정보를 수신할 수 있다.
예를 들어, 도 2를 참조하면, 사용자 입력 수신부(190)는 사용자 단말(미도시)로부터 제1데이터 셋의 칼럼 항목 중 이상값 탐지를 수행할 복수의 칼럼 항목을 FIXEDACIDITY, VOLATILEACIDITY, CITRICACID, CHLORIDES, DENSITY으로 선택한 사용자 입력 정보를 수신할 수 있다.
데이터 선택부(120)는 사용자 입력 수신부(190)에서 수신한 사용자 입력 정보 수신 결과에 기반하여 제1데이터 셋의 칼럼 항목 중 이상값 탐지를 수행할 복수의 칼럼 항목을 FIXEDACIDITY, VOLATILEACIDITY, CITRICACID, CHLORIDES, DENSITY으로 결정할 수 있다.
본원의 일 실시예에 따르면, 데이터 선택부(120)에서 선택되는 데이터 셋의 칼럼 항목들은 모두 수치형 데이터일 수 있다. 데이터 선택부(120)는 2개 이상의 칼럼 항목을 선택할 수 있다. 또한, 데이터 선택부(120)에서 선택된 칼럼 항목들은 라벨 칼럼을 포함하지 않을 수 있다.
데이터 전처리부(130)는 데이터 선택부(120)에서 선택된 복수의 칼럼 항목의 전처리를 수행할 수 있다. 데이터 전처리부(130)는 선택된 복수의 칼럼 항목에 포함된 수치형 데이터에 기반하여 결측치 처리 및 필터링의 전처리를 수행할 수 있다. 데이터 전처리부(130)는 결측치 처리 및 필터링의 전처리를 중복 또는 다중으로 처리할 수 있다. 또한, 데이터 전처리부(130)는 사용자 단말(미도시)로부터 제공받은 사용자 입력 정보와 선택된 복수의 칼럼 항목에 포함된 데이터의 용도에 기반하여 전처리 과정을 수행할 수 있다. 또한, 데이터 전처리부(130)는 미리 설정된 순서대로 전처리 과정을 수행할 수 있다. 예를 들어, 전처리부(130)는 데이터 선택부(120)에서 선택된 복수의 칼럼 항목에 포함된 수치형 데이터 기반하여 결측치 처리를 수행한 이후 필터링 전처리를 수행할 수 있다. 이때, 미리 설정된 순서는 사용자 단말(미도시)로부터 제공받은 사용자 입력 정보에 기반하여 결정된 순서일 수 있다.
도 3은 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에서 전처리 과정 중 결측치 처리를 수행하는 화면을 예시적으로 나타낸 도면이다.
데이터 전처리부(130)는 선택된 복수의 칼럼 항목에 포함된 수치형 데이터의 결측치를 최대값, 최빈값, 최소값, 중간값, 평균값, 0, 삭제 중 적어도 어느 하나로 치환하는 전처리를 수행할 수 있다. 결측치는, 누락된 값, 비어있는 값, 측정 오류로 인해 값이 없는 것을 의미할 수 있다. 데이터 전처리부(130)는 선택된 데이터 셋(제 1 데이터 셋) 및 선택된 복수의 칼럼 항목에 포함된 데이터에 결측치가 포함되어 있는 경우, 최소값, 최대값, 최빈값, 중간값, 평균값, 0, 삭제 중 적어도 어느 하나로 치환(변환)하는 전처리를 수행할 수 있다. 복수의 각 칼럼 항목의 최소값, 최대값, 최빈값, 중간값, 평균값은 서로 상이할 수 있다.
예를 들어, 데이터 전처리부(130)는 결정된 데이터 셋(제 1 데이터 셋)이 의료 분야에서 환자의 신체정보에 대한 데이터이고, 선택된 복수의 칼럼 항목 중 제1 칼럼 항목에 몸무게(체중)와 관련된 데이터가 포함되어 있는 경우, 제1칼럼 항목의 최소값은 0, 최대값은 300으로 미리 설정될 수 있다. 달리 말해, 데이터 전처리부(130)는 칼럼 항목에 포함된 데이터의 종류, 특성, 대표키 (예를 들어, 몸무게, 체중, 저혈압, 고혈압)를 고려하여 최소값, 최대값, 최빈값, 중간값, 평균값을 미리 설정할 수 있으며, 각각에 미리 설정된 기준값에 대응하여 결측치를 치환할 수 있다. 제 1 칼럼 항목의 최소값, 최대값, 최빈값, 중간값, 평균값과 관련된 미리 설정된 기준값은 사용자 단말(미도시)로부터 제공받은 사용자 입력 정보에 기반하여 결정될 수 있다.
또한, 데이터 전처리부(130)는 선택된 칼럼 항목에 결측치가 포함된 경우, 해당 데이터 값을 사용하지 않도록 제거할 수 있다. 예를 들어, 데이터 전처리부(130)는 제1 칼럼 항목의 제1 데이터가 결측치를 포함하는 경우, 최소값, 최대값, 최빈값, 중간값, 평균값, 0, 삭제 중 적어도 어느 하나로 치환하는 전처리를 수행할 수 있다.
데이터 전처리부(130)는 사용자 입력 수신부(190)로부터 제공받은 이상값 탐지 입력 정보에 기반하여 결측치가 포함된 데이터의 전처리를 수행할 수 있다. 데이터 전처리부(130)는 사용자 입력 수신부(190)로부터 평균값을 선택한 사용자 입력 정보에 기반하여, 제1칼럼 항목에 결측치가 포함되어 있는 경우, 제1칼럼 항목에서 발견되는 결측치에 대하여 평균값으로 치환하는 전처리를 수행할 수 있다.
예시적으로 도 3을 참조하면, 데이터 제공부(180)는 복수의 칼럼 항목에 포함된 결측치 전처리를 수행하기 위한 칼럼 선택 메뉴를 사용자 단말(미도시)에 제공할 수 있다. 데이터 제공부(180)는 데이터 선택부(120)에서 선택된 복수의 칼럼 항목(4) 각각에 대응하여 사용자 단말(미도시)로 결측치 전처리 선택과 관련된 콤보 박스(Combo Box, 6)를 제공할 수 있다. 사용자 입력 수신부(190)는 사용자 단말(미도시)로부터 복수의 칼럼 항목 중 결측치 처리를 수행할 적어도 어느 하나의 사용자 입력 정보를 수신할 수 있다.
일예로, 데이터 전처리부(130)는 사용자 단말(미도시)로부터 제공받은 사용자 입력 정보에 기반하여, FIXEDACIDITY 칼럼 항목(제1칼럼 항목)에 포함된 데이터에 결측치가 포함된 경우, 결측치 삭제로 결측치가 포함된 데이터 값을 변환하는 전처리를 수행할 수 있다.
도 4는 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에서 데이터 전처리 과정 중 필터링을 수행하는 화면을 예시적으로 나타낸 도면이다.
또한, 데이터 전처리부(130)는 선택된 복수의 칼럼 항목에 포함된 수치형 데이터의 AND, OR, 부등식 중 적어도 어느 하나를 이용한 필터를 설정하여 수치형 데이터를 필터링하는 전처리를 수행할 수 있다. 필터링 전처리는 선택된 복수의 칼럼 항목에 포함된 수치형 데이터 중에서 원하는 범위 내의 데이터만 사용하기 위해 수행되는 전처리이다. 데이터 전처리부(130)는 미리 설정된 조건(AND 또는 OR), 연산자(부등식, >, >=, =, <, <=), 값에 기반하여 선택된 복수의 칼럼 항목에 포함된 수치형 데이터의 전처리를 수행할 수 있다. 미리 설정된 조건, 연산자, 값은 사용자 단말(미도시)로부터 수신한 사용자 입력 정보에 기반하여 결정된 정보일 수 있다. 또한, 미리 설정된 조건은, 해당 칼럼 항목에 포함된 데이터에 기반하여 결정될 수 있다.
또한, 데이터 전처리부(130)는 사용자 입력 수신부(190)로부터 제공받은 이상값 탐지 입력 정보에 기반하여 선택된 복수의 칼럼 항목에 포함된 수치형 데이터의 필터링 전처리를 수행할 수 있다.
예시적으로 도 4를 참조하면, 데이터 제공부(180)는 선택된 복수의 칼럼 항목에 포함된 수치형 데이터의 필터링하기 위한 조건 설정 메뉴를 사용자 단말(미도시)에 제공할 수 있다. 조건 설정 메뉴에는 추가, 삭제, 적용에 대응하는 버튼이 포함될 수 있다. 데이터 제공부(180)는 추가 버튼과 관련된 사용자 입력 정보가 수신되는 경우, No(번호), 선택 박스, 조건과 관련된 콤보 박스(7), 변수와 관련된 콤보 박스(8), 연산자와 관련된 콤보 박스(9) 및 값(10)을 입력받기 위한 입력창을 제공할 수 있다. 여기서, 값(10)은 선택된 변수(복수의 칼럼 항목)에 미리 설정된 최소값 및 최대값의 범위 내에서 선택되는 값일 수 있다. 예를 들어, 선택된 변수가 FIXEDACIDITY인 경우, 데이터 전처리부(130)는 0 내지 10에 해당하는 값만을 선택할 수 있다. 또한, 데이터 전처리부(130)는 선택된 변수가 FIXEDACIDITY인 경우, 사용자 입력 수신부(190)로부터 0 내기 10에 해당하는 사용자 입력 값만을 수신하여 필터링 전처리를 수행할 수 있다.
사용자 입력 수신부(190)는 조건 설정 항목에 포함된 조건 (7), 변수 (8), 연산자(9) 및 값(10)에 대응하는 사용자 입력을 수신할 수 있다. 예를 들어, 데이터 제공부(180)는 추가 버튼 항목의 입력 정보를 2번 수신하고, 삭제 버튼 항목을 1번 수신하여 No2, No3에 해당하는 2개의 조건 설정 리스트를 생성할 수 있다.
또한, 사용자 입력 수신부(190)는 사용자 단말(미도시)로부터 No 2에 해당하는 조건 설정 항목에서, 변수(8)에 대한 사용자 입력 정보를 FIXEDACIDITY, 조건(7)에 해당하는 사용자 입력 정보를 AND, 연산자(7)에 해당하는 사용자 입력 정보를 >=, 값(10)에 해당하는 사용자 입력 정보를 '3'으로 수신할 수 있다. 달리 말해, 데이터 전처리부(130)는 FIXEDACIDITY에 포함된 변수(칼럼 항목)에 포함된 데이터들을 AND 조건, 연산자 >=, 값 3에 대응하는 필터를 적용하여 전처리를 수행할 수 있다. 또한, 데이터 전처리부(130)는 CITIRICACID에 포함된 변수(칼럼 항목)에 포함된 데이터들을 OR조건, 연산자 >, 값 0.01에 대응하는 필터를 적용하여 전처리를 수행할 수 있다.
도 5는 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에서 전처리 단계가 끝난 데이터 셋의 일부를 예시적으로 나타낸 도면이다.
예시적으로 도 5를 참조하면, 도 5에 도시된 데이터 셋(200)은 데이터 선택부(120)에서 데이터 베이스(110)에 포함된 복수의 데이터 셋 중 이상값 탐지를 수행할 제 1 데이터 셋을 결정하고, 제 1 데이터 셋의 칼럼 항목 중 이상값 탐지를 수행할 복수의 칼럼 항목(8)을 선택하고, 데이터 전처리부(130)에서 데이터 선택부(120)에서 선택된 복수의 칼럼 항목의 전처리가 수행된 결과일 수 있다.
변수 분석부(140)는 전처리된 복수의 칼럼 항목(8)에 포함된 데이터에 기초하여, 복수의 칼럼 항목(8)을 변수로 하는 변수 간의 상관관계 및 영향도 분석을 수행할 수 있다. 달리 말해, 변수 분석부(140)는 전처리된 복수의 칼럼 항목에 포함된 데이터를 통계 알고리즘 및 인공지능 알고리즘에 적용하여, 복수의 칼럼 항목(8)을 변수로 하는 상관관계 및 영향도를 분석할 수 있다.
먼저, 변수 분석부(140)는 데이터 전처리부(130)로부터 전처리된 데이터 셋을 통계 알고리즘에 적용하여, 복수의 칼럼 항목(변수, 8) 간의 상관관계를 분석할 수 있다. 또한, 변수 분석부(140)는 선택된 2개의 변수 간의 상관관계 분석 결과가 양의 상관관계인 경우 1, 음의 상관관계인 경우 -1, 상관관계가 없으면 0과 가까운 값으로 표현할 수 있다.
여기서, 상관 분석은 변수들 간의 관련성 정도를 알아보기 위한 것으로, 하나의 변수가 다른 변수와의 어느 정도 밀접한 관련성을 갖고 변화하는가를 알아보기 위해 사용된다. 또한, 상관 분석은 두 변수 사이의 관계를 측정하고 묘사하기 위해 이용되는 통계학의 한 기법이다. 상관 계수는 변수간의 관계의 정도나 방향을 하나의 수치로 요약해 표시해 주는 지수이다. 상관관계 정도는 수치의 0에서 ±1 사이의 절대값으로 나타낼 수 있다. 상관 계수는 -1에서 0, 0에서 1사이의 값을 취하며, 이때 0에 가까울수록 상관관계는 낮아지며, 1에 가까울수록 상관관계는 높아진다. 변수 관계의 방향은 +, -로 표현되고, 관계의 방향에 따라 한쪽이 증가할 때 다른 쪽도 증가하게 되는 관계, 즉 증감의 방향이 같은 경우 +(양, 정적인)의 상관관계로 표현되며, 증감의 방향이 반대인 경우-의(음, 부적인) 상관관계가 있는 것으로 표현될 수 있다.
도 6은 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에서 선택된 변수들 간의 상관관계를 예시적으로 나타낸 도면이다.
변수 분석부(140)는 선택된 복수의 칼럼 항목(변수, 8)들 간의 상관관계를 분석할 수 있다. 선택된 복수의 칼럼 항목(변수, 8)은 데이터 선택부(120)에서 선택된 복수의 칼럼 항목(변수, 8)일 수 있다.
변수 분석부(140)는 fixedacidity, volatileacidity, citricacid, chlorides, density 각각을 1대1 대응하여, 변수들 간의 상관관계 분석을 수행할 수 있다. 변수 분석부(140)는 각각의 컬럼(변수)에 대한 상관관계 분석에 대한 결과를 행렬 형태로 제공할 수 있다. (도 6 참조)
도 6에 도시된 대각 행렬을 기준으로 같은 상관관계 값을 가지게 되며, 양의 상관관계게 있으면 1, 음의 상관관계가 있으면 -1, 상관관계가 없으면 0에 가까운 값들로 표현되기 때문에 각자의 칼럼에 대한 상관관계가 표현된 대각행렬엔 1의 값으로 표현될 수 있다.
예시적으로 도 6을 참조하면, fixedacidity - fixedacidity 변수 간의 동일한 상관관계이므로 두 변수 간의 상관관계는 1의 값으로 표현될 수 있다. 또한, fixedacidity - volatileacidity 변수 간의 상관관계는 음의 상관관계고, 통계 알고리즘의 결과값이 0.25613이므로, -0.25613의 값으로 상관관계가 표현될 수 있다. 이때, 각 변수간의 상관관계의 결과값은 해당 변수(칼럼 항목)에 포함되어 있는 데이터들을 통계 알고리즘에 적용한 결과 값일 수 있다.
또한, 변수 분석부(140)는 데이터 전처리부(130)로부터 전처리된 데이터 셋을 인공지능 알고리즘에 적용하여, 복수의 칼럼 항목(변수, 8) 간의 영향도를 분석할 수 있다. 변수 분석부(140)는 복수의 칼럼 항목(변수, 8) 간의 영향도를 인공지능 알고리즘에 적용하여 계산하되, 선택된 복수의 칼럼 항목(변수)에 포함된 전체 데이터가 아닌 선택된 복수의 칼럼 항목(변수)에 포함된 전체 데이터를 샘플링하여 영향도를 계산할 수 있다. 변수 분석부(140)는 복수의 칼럼 항목(변수, 8)에 포함된 데이터를 인공지능 알고리즘에 적용하여, 복수의 칼럼 항목(변수, 8) 간의 영향도 분석 값을 도출할 수 있다.
일예로, 영향도 분석에 사용되는 인공지능 알고리즘은 인공지능(AI) 알고리즘 모델, 기계학습(머신러닝) 모델, 신경망 모델(인공 신경망 모델), 뉴로 퍼지 모델 등을 의미할 수 있다. 또한, 영향도 분석에 사용되는 인공지능 알고리즘은 종래에 이미 공지되었거나 향후 개발되는 다양한 인공지능 알고리즘 모델이 적용될 수 있다.
도 7은 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에서 선택된 변수 간의 영향도 분석 결과를 예시적으로 나타낸 도면이다.
예시적으로 도 7을 참조하면, fixedacidity 변수(칼럼 항목)에 포함된 데이터를 인공지능 알고리즘에 적용하여 영향도를 분석한 결과값은 0.41이다. 또한, volatileacidity 변수(칼럼 항목)에 포함된 데이터를 인공지능 알고리즘에 적용하여 영향도를 분석한 결과값은 0.05이다. 또한, citricacid변수(칼럼 항목)에 포함된 데이터를 인공지능 알고리즘에 적용하여 영향도를 분석한 결과값은 0.11이다. 또한, chlorides변수(칼럼 항목)에 포함된 데이터를 인공지능 알고리즘에 적용하여 영향도를 분석한 결과값은 0.17이다. 또한, chlorides변수(칼럼 항목)에 포함된 데이터를 인공지능 알고리즘에 적용하여 영향도를 분석한 결과값은 0.17이다. 또한, density 변수(칼럼 항목)에 포함된 데이터를 인공지능 알고리즘에 적용하여 영향도를 분석한 결과값은 0.26이다. 모든 변수에 대한 영향도의 총합은 1 또는 100%이다.
변수 분석부(140)는 인공지능 알고리즘에 적용하여 분석한 영향도의 분석 결과값을 기반으로 순위(Rank, 13) 및 순위점수(Rank Score, 14)를 부여할 수 있다. 순위(Rank, 13)가 높을수록 높은 순위점수(Rank Score, 14)를 가지고 있기 때문에 높은 가중치가 부여될 수 있다.
또한, 변수 분석부(140)는 변수(복수의 칼럼 항목) 간의 상관관계와 변수(복수의 칼럼 항목) 간의 영향도를 기반으로, 이상값 탐지에 사용할 변수를 선택(결정)할 수 있다. 예를 들어, 변수 분석부(140)는 변수(복수의 칼럼 항목) 간의 상관관계와 변수(복수의 칼럼 항목) 간의 영향도의 결과값이 미리 설정된 기준 내에 포함되는 변수만을 이상값 탐지에 사용할 변수로 선택(결정)할 수 있다. 여기서, 미리 설정된 기준은 사용자 단말(미도시)을 통해 제공받은 입력 정보에 기반한 기준 범위 일 수 있다. 달리 말해, 변수 분석부(140)는 데이터 선택부(120)에서 선택된 복수의 칼럼 항목이 상관관계와 영향도 분석 결과 이상값 탐지에 사용할 수 없는 변수라고 판단되는 경우, 해당 변수를 이상값 탐지에 적용하지 못하게 할 수 있다.
도 8은 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에서 영향도 분석 결과를 이용하여 가중치를 계산한 결과를 예시적으로 나타낸 도면이다.
본원의 일 실시예에 따르면, 가중치 적용부(150)는 분석된 영향도(12)를 이용하여 각 변수(칼럼 항목, 8)의 가중치를 연산하고, 연산된 가중치를 변수(칼럼 항목, 8)에 적용할 수 있다. 이때, 가중치 적용부(150)는 영향도 순위(14)를 이용하여 가중치를 연산할 수 있다. 달리 말해, 가중치 적용부(150)는, 변수 분석부(140)에서 분석된 변수(칼럼 항목) 간의 영향도 분석 순위(Rank Score, 14)를 기반으로 변수 각각의 가중치(15)를 연산할 수 있다.
가중치는 [식1]과 같이 표현될 수 있다.
[식1]
Figure 112019058018208-pat00001
여기서,
Figure 112019058018208-pat00002
는, i번째 랭크 스코어(Rank Score)의 값이고,
Figure 112019058018208-pat00003
는 1부터 n까지의 랭크 스코어(Rank Score)의합니다.
예를 들어, 도 8을 참조하면, 가중치 적용부(150)는 fixedacidity 변수의 가중치(151)를 영향도 분석 순위(Rank Score, 14) 결과인 5를 이용하여, 5 / 5+1+2+3+4 = 0.33으로 연산할 수 있다. 또한, 가중치 적용부(150)는 volatileacidity변수의 가중치를 영향도 분석 순위(Rank Score, 14) 결과인 1을 이용하여, 1 / 5+1+2+3+4 = 0.07으로 연산할 수 있다.
가중치 컬럼들의 영향도는 각각의 컬럼이 인공지능 알고리즘을 통하여 이상값 탐지하였을 때, 분류의 기준이 되는 컬럼의 영향에 대한 지표이다.
도 9는 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에서 영향도 분석 결과를 이용하여 가중치를 계산한 결과를 도 5에 도시된 데이터 셋에 적용한 결과의 일부를 예시적으로 나타낸 도면이다.
가중치 적용부(150)는 각각의 변수(칼럼 항목, 8)인 fixedacidity, volatileacidity, citricacid, chlorides, density에 적용된 가중치를 이용하여 각각의 변수(칼럼 항목,8)에 포함된 데이터에 해당 가중치를 부여할 수 있다.
예시적으로 도 5를 참조하면, 제 1 컬럼 항목(fixedacidity)의 전처리된 제 1 데이터 (11)의 값은 8.1이다. 도 9를 참조하면, 제 1 컬럼 항목(fixedacidity)의 가중치가 부여된 제 1 데이터 (16)의 값은 2.673이다. 가중치가 부여된 제 1 데이터 (16)의 값은 제 1 데이터 (11)의 값인 8.1에 제 1 컬럼 항목(fixedacidity)에 부여된 가중치인 0.33을 곱하여 연산된 결과값이다.
본원의 일 실시예에 따르면, 이상값 탐지부(160)는 가중치가 적용된 데이터 셋(300)의 이상값을 탐지할 수 있다. 달리 말해, 이상값 탐지부(160)는 전처리가 완료되고, 변수(칼럼 항목)의 가중치가 적용된 데이터 셋(300)의 복수개의 수치형 칼럼을 이용하여, 이상값을 탐지할 수 있다. 이상값 탐지부(160)는 선택된 복수의 칼럼 항목(변수)에 라벨 칼럼이 포함되어 있는지 여부와, 데이터의 종류 또는 데이터의 분포를 고려하여 이상값 탐지를 수행할 인공지능 알고리즘을 결정할 수 있다. 이상값 탐지 결과는 1 또는 0으로 확인이 가능하며 이상값 탐지부(160)는 이상값의 경우 1, 정상값일 경우 0으로 해당 데이터의 이상값을 결정할 수 있다. 이상값 탐지부(160)는 데이터 선택부(120)에서 결정된 데이터 셋과 결정된 데이터 셋에서 선택된 복수의 칼럼 항목을 데이터 전처리부(130)에서 전처리가 완료된 복수의 수치형 데이터를 사용하여, 이상값의 개수를 비율로 설정하여 이상값 탐지를 수행할 수 있다. 달리 말해, 이상값 탐지부(160)는 복수의 칼럼 항목에 포함된 데이터를 이용하여 이상값의 개수가 미리 설정된 비율 이하인 경우, 정상값(0)으로 판단하고, 이상값의 개수가 미리 설정된 비율 이상인 경우, 이상값(1)로 판단할 수 있다.
이상값 탐지부(160)는 선택된 복수의 칼럼 항목에 라벨 칼럼이 포함되지 않은 경우, 비지도 학습 기반의 인공지능 알고리즘을 이용하여 이상값을 탐지할 수 있다. 비지도 학습(Unsupervised Learning)은 데이터에 대한 레이블(Label), 명시적인 정답이 주어지지 상태에서 컴퓨터를 학습시키는 방법론이다. 즉, (데이터(data)) 형태로 학습을 진행하는 방법이다.
비지도 학습은 데이터의 숨겨진(Hidden) 특징(Feature)이나 구조를 발견하는 방식에 사용된다. 예시적으로, 비지도 학습은 군집(Clustering)으로 구분되는 K-평균(k-Means), 계층 군집 분석(HCA, Hierarchical Cluster Analysis), 기댓값 최대화(Expectation Maximization)를 포함할 수 있다. 또한, 시각화(Visualization)와 차원 축소(Dimensionality Reduction)로 구분되는, 주성분 분석(PCA, Principal Component Analysis), 커널 PCA(Kernel PCA), 지역적 선형 임베딩(LLE, Locally-Linear Embedding), t-SNE(t-distributed Stochastic Neighbor Embedding)을 포함할 수 있다. 또한, 연관 규칙 학습(Association Rule Learning)으로 구분되는 어프라이어리(Apriori), 이클렛(Eclat)을 포함할 수 있다.
예를 들어, 비지도 학습기반 인공지능 알고리즘은 로지스틱 회귀 알고리즘, 랜덤 포레스트 알고리즘, SVM(Support Vector Machine)알고리즘, 의사결정 알고리즘 및 군집 알고리즘이 이용될 수 있으나 이에 한정되는 것은 아니다. Random Forest알고리즘은 수많은Decision Tree들이 Forest를 구성하여 각각의 예측결과를 하나의 결과변수로 평균화하는 알고리즘이고, SVM알고리즘은 데이터의 분포공간에서 가장 큰 폭의 경계를 구분하여 데이터가 속하는 분류를 판단하는 비확률적 알고리즘이다. Extra Tree 알고리즘은 Random forest와 비슷하나 속도가 Random forest에 비해 빠른 알고리즘이며, XGBoost알고리즘은 Random Forest의 Tree는 독립적이라면 XGBoost의 Tree의 결과를 다음 트리에 적용하는 boost 방식의 알고리즘이다. Deep Learning 알고리즘은 다층구조의 Neural Network을 기반으로 변수의 패턴이 결과에 미치는 영향을 가중치로 조절하며 학습하는 알고리즘이다. 또한, K-means 클러스터링 알고리즘은 전통적인 분류기법으로 대상집단을 거리의 평균값(유사도)을 기준으로 K개의 군집으로 반복 세분화하는 기법이고, SOM알고리즘은 인공신경망을 기반으로 훈련집합의 입력 패턴을 가중치로 학습하여 군집화하는 기법이다. 또한, EMI & Canopy 알고리즘은 주어진 초기값으로 가능성이 최대인 것부터 반복 과정을 통해 파라미터 값을 갱신하여 군집화 하는 기법을 의미한다.
계층 군집 알고리즘을 사용하면 각 그룹을 더 작은 그룹으로 세분화할 수 있다. 시각화 알고리즘은 레이블이 없는 대규모의 고차원 데이터를 넣으면 도식화가 가능한 2D나 3D 표현으로 생성한다. 차원 축소는 너무 많은 정보를 잃지 않으면서 데이터를 간소화하는데 될 수 있다. 예를 들어 차의 주행거리는 연식과 매우 연관되어 있으므로 차원 축소 알고리즘으로 두 특성을 차의 마모 정도를 나타내는 하나의 특성으로 합칠 수 있으며, 이를 특성 추출(Feature Extraction)이라고 한다. 이상치 탐지는 학습 알고리즘에 주입하기 전에 데이터 셋에서 이상한 값을 자동으로 제거하는 작업으로, 정상 샘플로 훈련되고, 새로운 샘플이 정상인지 아닌지 판단할 수 있다. 연관 규칙 학습은 대량의 데이터에서 특성 간의 흥미로운 관계를 찾아내며, 예를 들어, 어떠한 상품을 구매한 사람이 다른 상품을 구매하는 경향이 있다는 것을 찾을 때 활용된다. 다만, 비지도 학습 기반의 인공지능 알고리즘이 이에 한정되는 것은 아니며, 연구 개발의 결과에 따라 다양한 알고리즘이 포함될 수 있다.
또한, 이상값 탐지부(160)는 데이터 특성에 대응하는 인공지능 알고리즘을 적용하여 이상값을 탐지할 수 있다. 달리 말해, 이상값 탐지부(160)는 데이터 전처리부(130)에서 전처리된 데이터들을 데이터 특성에 대응하는 비지도 학습기반의 인공지능 알고리즘을 이용하여 이상값을 탐지할 수 있다. 이상값 탐지부(160)는 데이터의 종류와 분포를 고려하여 선택된 비지도 학습의 인공지능 알고리즘을 적용하여 이상값을 탐지할 수 있다. 데이터 특성은 하나의 칼럼 항목에 포함된 데이터의 특징적인 성질을 의미할 수 있다. 이상값 탐지부(160)는 제1 칼럼 항목(예를 들어, fixedacidity)에 포함된 데이터 특성에 대응하는 제 1 인공지능 알고리즘을 적용하여 이상값을 탐지할 수 있다. 예를 들어, 이상값 탐지부(160)는 제1칼럼 항목(예를 들어, fixedacidity)에 포함된 데이터 특성에 대응하여 K-means 클러스터링 알고리즘을 적용하여 제1칼럼 항목(예를 들어, fixedacidity)의 이상값을 탐지할 수 있다. 또한, 이상값 탐지부(140)는 선택된 복수개의 칼럼 항목 예를 들어, 제 1 칼럼 항목(예를 들어, fixedacidity), 제 2 칼럼 항목 (volatileacidity) 및 제3칼럼 항목(citiricacid)의 특성에 대응하는 인공지능 알고리즘을 적용하여 이상값을 탐지할 수 있다. 이상값 탐지부(160)는 데이터 특성에 대응하는 비지도 학습의 인공지능 알고리즘을 적용하여 이상값을 탐지함으로써, 더욱 더 효율적이고 정확하게 이상값을 탐지할 수 있다. 이상값 탐지 결과는 1 또는 0으로 확인이 가능하며 이상값 탐지부(140)는 이상값의 경우 1, 정상값일 경우 0으로 해당 데이터의 이상값을 결정할 수 있다.
이상값 탐지부(160)는 데이터 선택부(120)에서 결정된 데이터 셋과 결정된 데이터 셋에서 선택된 복수의 칼럼 항목을 데이터 전처리부(130)에서 전처리가 완료된 복수의 수치형 데이터를 사용하여, 이상값의 개수를 비율로 설정하여 이상값 탐지를 수행할 수 있다. 달리 말해, 이상값 탐지부(160)는 복수의 칼럼 항목에 포함된 데이터를 이용하여 이상값의 개수가 미리 설정된 비율 이하인 경우, 정상값(0)으로 판단하고, 이상값의 개수가 미리 설정된 비율 이상인 경우, 이상값(1)으로 판단할 수 있다.
본원의 일 실시예에 따르면, 사용자는 데이터의 종류와 분포를 고려하여 비지도 학습 기반의 인공지능 알고리즘을 선택할 수 있다. 달리 말해, 데이터 제공부(180)는 전처리된 칼럼 항목을 사용자 단말(미도시)에 표시하고, 사용자는 사용자 단말(미도시)에 표시된 전처리된 칼럼 항목에 포함된 데이터의 종류와 분포를 고려하여 복수의 비지도 학습 기반의 인공지능 알고리즘 중 적어도 어느 하나를 선택할 수 있다. 사용자 입력 수신부(190)는 사용자가 선택한 비지도 학습 기반의 인공지능 알고리즘을 이상값 탐지부(160)로 제공하고, 이상값 탐지부(160)는 사용자가 선택한 비지도 학습 기반의 인공지능 알고리즘을 적용하여 이상값을 탐지할 수 있다. 이때, 이상값 탐지부(160)는 가중치가 적용된 데이터 셋(300)을 이용하여 비지도 학습 기반의 인공지능 알고리즘을 적용하여 이상값을 탐지를 수행하는 것이다.
예시적으로, 데이터 결과부(170)는 이상값 탐지 결과에 기초하여 라벨링 정보를 생성하고, 칼럼 항목에 포함된 데이터와 라벨링 정보를 연계하여 데이터 셋을 저장할 수 있다. 데이터 결과부(170)에서 생성한 데이터 셋은 데이터와 라벨링 정보가 연계된 데이터 셋으로서, 제1데이터 셋과는 다른 신규 데이터 셋이다. 데이터 결과부(170)는 이상값 탐지 모델 생성부(미도시)에서 지도학습 기반의 인공지능 알고리즘을 구축하기에 필요한 데이터(data), 레이블(label) 형태로 데이터 셋을 재생성할 수 있다. 데이터 결과부(170)는 칼럼 항목에 포함된 데이터와 라벨링 정보를 연계하여 생성된 데이터 셋을 데이터 베이스(110)에 저장할 수 있다.
또한, 데이터 결과부(170)는 이상값 탐지에 사용한 전처리가 수행된 복수의 수치형 칼럼 데이터와 사용자의 입력 정보에 기반하여 수정된 이상값 탐지 결과를 신규 데이터 셋을 생성하여 저장할 수 있다.
다만, 이상값 탐지부(170)에서 복수개의 이상값 탐지 알고리즘을 사용하였을 경우, 각각의 결과를 모두 라벨화하는 것이 아니라 각 데이터 당 하나의 값을 라벨로 결정할 수 있다. 또한, 데이터 결과부(170)는 데이터 베이스(110)에 저장한 신규 데이터 셋을 다시 불러와 수정을 요청할 수 있다. 예를 들어, 데이터 결과부(170)는 데이터 베이스(110)에 저장된 신규 데이터 셋을 사용자 단말(미도시)에 표시하고, 사용자의 입력 정보에 기반하여 신규 데이터 셋을 수정할 수 있다.
또한, 데이터 결과부(170)는 가중치가 적용된 이상값 탐지 결과가 미리 설정된 기준 값 이상인 경우, 이상값으로 결정할 수 있다. 반면, 데이터 결과부(170)는 미리 설정된 이상값 이하인 경우, 정상값으로 결정하여 라벨링 정보를 생성할 수 있다. 데이터 결과부(170)는 칼럼 항목에 포함된 데이터와 라벨링 정보를 연계하여 데이터 셋을 저장할 수 있다.
본원의 일 실시예에 따르면, 이상값 탐지 모델 생성부(미도시)는 선택된 복수의 칼럼 항목에 라벨 칼럼이 포함된 경우, 해당 데이터 셋을 이용하여 지도 학습 기반의 인공지능 알고리즘에 적용하여 이상값 탐지 모델을 구축할 수 있다. 여기서 해당 데이터 셋은, 가중치가 적용된 데이터 셋(300)에 라벨 칼럼 항목을 연계한 데이터 셋이다. 달리 말해, 이상값 탐지 모델 생성부(미도시)는 라벨 칼럼과 가중치가 적용된 복수의 칼럼 항목이 연계되어 저장된 데이터 셋을 이용하여 이상값 탐지 모델을 구축할 수 있다. 지도 학습(Supervised Learning)은 데이터에 대한 레이블(Label)-명시적인 정답-이 주어진 상태에서 컴퓨터를 학습시키는 방법이다. 즉, 데이터(data), 레이블(label) 형태로 학습을 진행하는 방법이다.
또한, 이상값 탐지 모델 생성부(미도시)는 신규 데이터가 입력될 경우, 생성된 이상값 탐지 모델을 재학습시킬 수 있다. 이상값 탐지 모델 생성부(미도시)는 데이터의 종류와 분포를 고려하여 복수의 지도학습 기반의 인공지능 알고리즘 중 정확성이 높은 알고리즘을 선택하여 이상값 탐지 모델을 구축할 수 있다.
이상값 탐지 모델 생성부(미도시)는 데이터 결과부(170)에서 저장한 데이터를 기초로 이상값 탐지 모델을 구축하기 때문에, 추가적인 전처리 과정과 변수에 대한 가중치 계산 과정이 필요하지 않다.
본원의 일 실시예에 따르면, 데이터 결과부(170)는 전처리된 복수의 칼럼 항목에 포함된 데이터와 이상값을 탐지한 결과를 연계하여 데이터 셋을 저장할 수 있다. 또한, 데이터 결과부(170)는 데이터 전처리부(130)에서 전처리가 완료된 데이터 셋(200)을 데이터 베이스(110)에 저장할 수 있다. 또한, 데이터 결과부(170)는 가중치 적용부(150)에서 각 변수에 포함된 데이터에 가중치가 부여된 가중치 데이터 셋(300)을 데이터 베이스(110)에 저장할 수 있다. 또한, 데이터 제공부(180)는 이상값 탐지부(160)의 결과를 사용자 단말(미도시)에 제공하고, 데이터 결과부(170)는 사용자 입력 수신부(190)에서 수신한 사용자 입력 정보에 기반하여 이상값을 수정할 수 있다. 데이터 결과부(170)는 사용자 입력 정보에 기반하여 수정된 데이터 셋을 데이터 베이스(110)에 저장할 수 있다.
본원의 일 실시예에 따르면, 데이터 예측부(미도시)는 이상값 탐지 모델을 이용하여 신규 데이터의 이상값 여부를 예측할 수 있다. 데이터 예측부(미도시)는 이상값 탐지 모델을 이용하여 신규 데이터의 이상값 여부를 예측할 수 있다. 데이터 예측부(미도시)는 이상값 탐지 모델 생성부(미도시)에서 구축한 이상값 탐지 모델을 이용하여, 신규 데이터가 입력될 경우, 이상값 여부를 예측하고 판단할 수 있다. 신규 데이터는 기존에 데이터 베이스(110)에 저장되어 있지 않은 신규 데이터일 수 있다.
본원의 일 실시예에 따르면, 데이터 제공부(190)는 사용자 단말(미도시)로 이상값 탐지 입력 정보와 관련된 선택 항목을 제공할 수 있다. 사용자는 사용자 단말(미도시)에 표시된 이상값 탐지 입력 정보와 관련된 선택 항목을 확인하고, 수정 사항을 선택할 수 있다. 이상값 탐지 입력 정보와 관련된 선택 항목은 데이터 선택부(120)의 요청에 따른, 제1 데이터 셋의 결정 및 복수의 칼럼 항목을 선택하기 위한 선택항목을 포함할 수 있다. 또한, 이상값 탐지 입력 정보와 관련된 선택 항목은 데이터 전처리부(130)의 요청에 따른, 결측치를 전처리하기 위한 선택 항목을 포함할 수 있다. 또한, 이상값 탐지 입력 정보와 관련된 선택 항목은 데이터 전처리부(130)의 요청에 따른, 수치형 데이터의 필터링의 전처리하기 위한 선택 항목을 포함할 수 있다. 또한, 이상값 탐지 입력 정보와 관련된 선택 항목은 이상값 탐지부(160)의 요청에 따른 인공지능 알고리즘 선택 항목을 포함할 수 있다. 또한, 이상값 탐지 입력 정보와 관련된 선택 항목은 데이터 결과부(170)의 요청에 따른, 이상값 탐지 결과의 확인 및 수정과 관련된 선택 항목을 포함할 수 있다.
일예로, 데이터 선택부(120)에서 데이터 제공부(190)를 통해 사용자 단말(미도시)로 제공한 이상값 탐지 입력 정보와 관련된 선택 항목은 복수의 데이터 셋 중 이상값 탐지를 수행할 제1데이터 셋을 결정하기 위한 항목일 수 있다. 또한, 데이터 제공부(180)는 데이터 선택부(120)의 요청에 따라, 사용자로부터 제 1 데이터 셋의 칼럼 항목 중 이상값 탐지를 수행할 복수의 칼럼 항목의 선택 정보를 제공받기 위한 선택 항목을 사용자 단말(미도시)로 제공할 수 있다.
본원의 일 실시예에 따르면, 사용자 입력 수신부(190)는 사용자 단말(미도시)로부터 데이터 이상값 탐지 입력 정보(이상값 탐지 입력 정보와 관련된 선택 항목)를 수신할 수 있다. 달리 말해, 사용자 입력 수신부(190)는 사용자 단말(미도시)로부터 사용자가 선택한 데이터 이상값 탐지 입력 정보를 수신할 수 있다. 사용자 입력 수신부(190)는 이상값 탐지 입력 정보와 관련된 선택 항목을 요청한 각 유닛(부)에 해당 정보를 제공할 수 있다. 일예로, 이상값 탐지 입력 정보는, 테이블 선택 메뉴, 컬럼 선택 메뉴, 조건 설정 메뉴, 상관관계 확인 메뉴, 영향도 설정 메뉴 등에서 제공한 항목에 대한 사용자 입력 정보일 수 있다.
본원의 일 실시예에 따르면, 이상값 탐지 장치(100)는 사용자 단말 (미도시)로 이상값 탐지 메뉴를 제공할 수 있다. 예를 들어, 이상값 탐지 장치(100)가 제공하는 어플리케이션 프로그램을 사용자 단말 (미도시)이 다운로드하여 설치하고, 설치된 어플리케이션을 통해 이상값 탐지 메뉴가 제공될 수 있다. 이상값 탐지 메뉴는 앞서 설명된, 테이블 선택 메뉴, 컬럼 선택 메뉴, 조건 설정 메뉴, 상관관계 확인 메뉴, 영향도 설정 메뉴 등을 포함할 수 있다.
이상값 탐지 장치(100)는 사용자 단말 (미도시)과 데이터, 콘텐츠, 각종 통신 신호를 네트워크를 통해 송수신하고, 데이터 저장 및 처리의 기능을 가지는 모든 종류의 서버, 단말, 또는 디바이스를 포함할 수 있다.
사용자 단말 (미도시)은 네트워크를 통해 이상값 탐지 장치(100)와 연동되는 디바이스로서, 예를 들면, 스마트폰(Smartphone), 스마트패드(Smart Pad), 태블릿 PC, 웨어러블 디바이스 등과 PCS(Personal Communication System), GSM(Global System for Mobile communication), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말기 같은 모든 종류의 무선 통신 장치 및 데스크탑 컴퓨터, 스마트 TV와 같은 고정용 단말기일 수도 있다.
이상값 탐지 장치(100) 및 사용자 단말 (미도시)간의 정보 공유를 위한 네트워크의 일 예로는 3GPP(3rd Generation Partnership Project) 네트워크, LTE(Long Term Evolution) 네트워크, 5G 네트워크, WIMAX(World Interoperability for Microwave Access) 네트워크, 유무선 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), 블루투스(Bluetooth) 네트워크, Wifi 네트워크, NFC(Near Field Communication) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함될 수 있으며, 이에 한정된 것은 아니다.
이하에서는 상기에 자세히 설명된 내용을 기반으로, 본원의 동작 흐름을 간단히 살펴보기로 한다.
도10은 본원의 일 실시예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 방법에 대한 동작 흐름도이다.
도 10에 도시된 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 방법은 앞서 설명된 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치(100)에 의하여 수행될 수 있다. 따라서, 이하 생략된 내용이라고 하더라도 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치(100)에 대하여 설명된 내용은 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 방법에 대한 설명에도 동일하게 적용될 수 있다.
단계 S101에서, 이상값 탐지 장치(100)는 복수의 데이터 셋을 포함하는 데이터 베이스에 포함된 복수의 데이터 셋 중 이상값 탐지를 수행할 제 1 데이터 셋을 결정하고, 제1데이터 셋의 칼럼 항목 중 이상값 탐지를 수행할 복수의 칼럼 항목을 선택할 수 있다.
단계 S102에서, 이상값 탐지 장치(100)는 선택된 복수의 칼럼 항목의 전처리를 수행할 수 있다.
단계 S103에서, 이상값 탐지 장치(100)는 전처리된 복수의 칼럼 항목에 포함된 데이터에 기초하여, 복수의 칼럼 항목을 변수로 하는 변수 간의 상관관계 및 영향도를 분석할 수 있다.
단계 S104에서, 이상값 탐지 장치(100)는 분석된 영향도를 이용하여 각 변수의 가중치를 연산하고, 연산된 가중치를 변수에 적용할 수 있다.
단계 S105에서, 이상값 탐지 장치(100)는 가중치가 적용된 데이터 셋의 이상값을 탐지할 수 있다.
상술한 설명에서, 단계 S101 내지 S105은 본원의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.
본원의 일 실시 예에 따른 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
또한, 전술한 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 방법은 기록 매체에 저장되는 컴퓨터에 의해 실행되는 컴퓨터 프로그램 또는 애플리케이션의 형태로도 구현될 수 있다.
전술한 본원의 설명은 예시를 위한 것이며, 본원이 속하는 기술분야의 통상의 지식을 가진 자는 본원의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본원의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본원의 범위에 포함되는 것으로 해석되어야 한다.
100: 이상값 탐지 장치
110: 데이터 베이스
120: 데이터 선택부
130: 데이터 전처리부
140: 변수 분석부
150: 데이터 식별부
160: 이상값 탐지부
170: 데이터 결과부
180: 데이터 제공부
190: 사용자 입력 수신부

Claims (15)

  1. 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에 있어서,
    복수의 데이터 셋을 포함하는 데이터 베이스;
    상기 데이터 베이스에 포함된 복수의 데이터 셋 중 이상값 탐지를 수행할 제 1 데이터 셋을 결정하고, 상기 제 1 데이터 셋의 칼럼 항목 중 이상값 탐지를 수행할 복수의 칼럼 항목을 선택하는 데이터 선택부;
    상기 데이터 선택부에서 선택된 복수의 칼럼 항목의 전처리를 수행하는 데이터 전처리부;
    상기 전처리된 복수의 칼럼 항목에 포함된 데이터에 기초하여, 상기 복수의 칼럼 항목을 변수로 하는 변수 간의 상관관계 및 영향도를 분석하는 변수 분석부;
    상기 분석된 영향도를 이용하여 각 변수의 가중치를 연산하고, 연산된 가중치를 변수에 적용하는 가중치 적용부;
    적용된 가중치를 기초로 이상값 탐지에 사용할 상기 칼럼 항목을 선택하여 데이터 셋의 이상값을 탐지하는 이상값 탐지부;
    사용자 단말로 데이터 선택과 연계된 입력 정보, 전처리와 연계된 입력 정보 및 가중치 정보 중 적어도 하나를 포함하는 데이터 이상값 탐지 입력 정보와 관련된 선택 항목을 제공하는 데이터 제공부; 및
    상기 사용자 단말로부터 상기 데이터 이상값 탐지 입력 정보를 수신하는 사용자 입력 수신부를 포함하되,
    상기 데이터 선택부는, 상기 데이터 선택과 연계된 입력 정보에 기초하여 상기 제 1 데이터 셋 및 상기 복수의 칼럼 항목 중 적어도 하나를 선택하고,
    상기 데이터 전처리부는, 상기 전처리와 연계된 입력 정보에 기초하여 상기 복수의 칼럼 항목에 포함된 수치형 데이터의 결측치를 최대값, 최빈값, 최소값, 중간값, 평균값, 0, 삭제 중 적어도 어느 하나로 치환하는 전처리를 수행하거나 상기 전처리와 연계된 입력 정보에 기초하여 상기 수치형 데이터의 AND, OR, 부등식 중 적어도 어느 하나를 이용한 필터를 설정하여 상기 수치형 데이터를 필터링하는 전처리를 수행하되, 상기 치환하는 전처리 및 상기 필터링하는 전처리는 상기 칼럼 항목 각각에 대하여 개별적으로 적용 가능한 것을 특징으로 하고,
    상기 변수 분석부는, 상기 변수 간의 상관관계 분석의 결과 또는 상기 영향도의 분석의 결과가 미리 설정된 기준 내에 미포함되는 상기 변수는 이상값 탐지에 적용되지 않도록 상기 복수의 칼럼 항목으로부터 제외하고,
    상기 가중치 적용부는, 상기 연산된 가중치 또는 수신된 상기 가중치 정보에 의해 결정된 가중치를 변수에 적용하는 것인, 이상값 탐지 장치.
  2. 제1항에 있어서,
    상기 데이터 선택부는,
    상기 제 1 데이터 셋의 복수의 칼럼 항목 중 이상값 탐지를 수행할 수치형 데이터가 포함된 복수의 칼럼 항목을 선택하는 것인, 이상값 탐지 장치.
  3. 삭제
  4. 삭제
  5. 삭제
  6. 제1항에 있어서,
    상기 변수 분석부는,
    상기 전처리된 복수의 칼럼 항목에 포함된 데이터를 기초로 하여, 상기 복수의 칼럼 항목을 변수로 하는 상관관계 및 영향도를 분석하는 것인, 이상값 탐지 장치.
  7. 제6항에 있어서,
    상기 변수 분석부는, 선택된 변수들 간의 상관관계 분석 결과가 양의 상관관계인 경우 1, 음의 상관관계인 경우 -1, 상관관계가 없으면 0과 가까운 값으로 표현하는 것인, 이상값 탐지 장치.
  8. 삭제
  9. 제1항에 있어서,
    상기 가중치 적용부는,
    상기 변수 분석부에서 분석된 변수 간의 영향도 분석 순위를 기반으로 변수 각각의 가중치를 연산하는 것인, 이상값 탐지 장치.
  10. 제1항에 있어서,
    상기 전처리된 복수의 칼럼 항목에 포함된 데이터와 이상값을 탐지한 결과를 연계하여 데이터 셋을 저장하는 데이터 결과부를 더 포함하는, 이상값 탐지 장치.
  11. 제1항에 있어서,
    상기 선택된 복수의 칼럼 항목에 라벨 칼럼이 포함된 경우,
    해당 데이터 셋을 이용하여 지도 학습 기반의 인공지능 알고리즘에 적용하여 이상값 탐지 모델을 구축하는 이상값 탐지 모델 생성부를 더 포함하는 것인, 이상값 탐지 장치.
  12. 제11항에 있어서,
    상기 이상값 탐지부는,
    상기 선택된 복수의 칼럼 항목에 라벨 칼럼이 포함되지 않은 경우, 비지도 학습 기반의 인공지능 알고리즘을 이용하여 이상값을 탐지하는 것인, 이상값 탐지 장치.
  13. 제11항에 있어서,
    상기 이상값 탐지 모델을 이용하여 신규 데이터의 이상값 여부를 예측하는 데이터 예측부를 더 포함하는, 이상값 탐지 장치.
  14. 삭제
  15. 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치에 의해 수행되는 이상값 탐지 방법에 있어서,
    사용자 단말로 데이터 선택과 연계된 입력 정보, 전처리와 연계된 입력 정보 및 가중치 정보 중 적어도 하나를 포함하는 데이터 이상값 탐지 입력 정보와 관련된 선택 항목을 제공하는 단계;
    상기 사용자 단말로부터 상기 데이터 이상값 탐지 입력 정보를 수신하는 단계;
    복수의 데이터 셋을 포함하는 데이터 베이스에 포함된 복수의 데이터 셋 중 이상값 탐지를 수행할 제 1 데이터 셋을 결정하고, 상기 제 1 데이터 셋의 칼럼 항목 중 이상값 탐지를 수행할 복수의 칼럼 항목을 선택하는 단계;
    상기 선택된 복수의 칼럼 항목의 전처리를 수행하는 단계;
    상기 전처리된 복수의 칼럼 항목에 포함된 데이터에 기초하여, 상기 복수의 칼럼 항목을 변수로 하는 변수 간의 상관관계 및 영향도를 분석하는 단계;
    상기 분석된 영향도를 이용하여 각 변수의 가중치를 연산하고, 연산된 가중치를 변수에 적용하는 단계; 및
    적용된 가중치를 기초로 이상값 탐지에 사용할 상기 칼럼 항목을 선택하여 데이터 셋의 이상값을 탐지하는 단계;
    를 포함하고,
    상기 복수의 칼럼 항목을 선택하는 단계는, 상기 데이터 선택과 연계된 입력 정보에 기초하여 상기 제 1 데이터 셋 및 상기 복수의 칼럼 항목 중 적어도 하나를 선택하고,
    상기 전처리를 수행하는 단계는, 상기 전처리와 연계된 입력 정보에 기초하여 상기 복수의 칼럼 항목에 포함된 수치형 데이터의 결측치를 최대값, 최빈값, 최소값, 중간값, 평균값, 0, 삭제 중 적어도 어느 하나로 치환하는 전처리를 수행하거나 상기 전처리와 연계된 입력 정보에 기초하여 상기 수치형 데이터의 AND, OR, 부등식 중 적어도 어느 하나를 이용한 필터를 설정하여 상기 수치형 데이터를 필터링하는 전처리를 수행하되, 상기 치환하는 전처리 및 상기 필터링하는 전처리는 상기 칼럼 항목 각각에 대하여 개별적으로 적용 가능한 것을 특징으로 하고,
    상기 상관관계 및 영향도를 분석하는 단계는, 상기 변수 간의 상관관계 분석의 결과 또는 상기 영향도의 분석의 결과가 미리 설정된 기준 내에 미포함되는 상기 변수는 이상값 탐지에 적용되지 않도록 상기 복수의 칼럼 항목으로부터 제외하고,
    상기 가중치를 변수에 적용하는 단계는, 상기 연산된 가중치 또는 수신된 상기 가중치 정보에 의해 결정된 가중치를 변수에 적용하는 것인, 이상값 탐지 방법.
KR1020190066874A 2019-06-05 2019-06-05 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치 및 방법 KR102068715B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190066874A KR102068715B1 (ko) 2019-06-05 2019-06-05 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190066874A KR102068715B1 (ko) 2019-06-05 2019-06-05 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치 및 방법

Publications (1)

Publication Number Publication Date
KR102068715B1 true KR102068715B1 (ko) 2020-01-21

Family

ID=69369625

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190066874A KR102068715B1 (ko) 2019-06-05 2019-06-05 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102068715B1 (ko)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102206296B1 (ko) * 2020-05-06 2021-01-25 주식회사 이글루시큐리티 보안관제 학습데이터 레이블링시스템 및 그 방법
KR102231231B1 (ko) * 2020-10-08 2021-03-24 주식회사 솔리드웨어 변수 영향도 기반 머신러닝 예측 결과 해석 방법 및 그 장치
KR102274389B1 (ko) * 2020-09-18 2021-07-06 (주)위세아이텍 센서 데이터를 이용한 이상패턴 탐지 모델 구축 방법 및 이를 이용한 이상 탐지 장치 및 방법
KR20210113890A (ko) * 2020-03-09 2021-09-17 에스케이 주식회사 Machine Learning을 이용한 데이터 연관성 자동 탐색 방법 및 시스템
CN113609113A (zh) * 2021-08-02 2021-11-05 国家电网有限公司客户服务中心 基于电力数据的用户信息生成方法、装置、电子设备
KR20210142443A (ko) * 2020-05-18 2021-11-25 국방과학연구소 사이버 공간에서 실시간 공격 탐지를 위한 시간에 따른 지속적인 적응형 학습을 제공하는 방법 및 시스템
KR102362582B1 (ko) * 2020-12-31 2022-02-15 렉스소프트 주식회사 통계 데이터 전처리 방법, 서버 및 컴퓨터 판독가능매체
WO2022114828A1 (ko) * 2020-11-27 2022-06-02 한국과학기술정보연구원 보안 데이터 처리 장치, 보안 데이터 처리 방법 및 보안 데이터 처리하는 프로그램을 저장하는 컴퓨터 판독 가능한 저장매체
KR102614220B1 (ko) * 2022-12-13 2023-12-20 초록소프트 주식회사 음원 이용량 예측 모델 생성 방법 및 장치

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160050562A (ko) * 2014-10-30 2016-05-11 삼성에스디에스 주식회사 예측 모델 생성 장치 및 방법
KR101758870B1 (ko) * 2017-02-13 2017-07-18 주식회사 온더 마이닝 관리 시스템 및 이를 이용한 마이닝 관리 방법
KR20180108446A (ko) * 2017-03-23 2018-10-04 (주)모아데이타 Ict 인프라 관리 시스템 및 이를 이용한 ict 인프라 관리 방법
KR20190025473A (ko) * 2017-09-01 2019-03-11 두산중공업 주식회사 플랜트 데이터 예측 장치 및 방법
KR101975419B1 (ko) * 2018-11-26 2019-05-07 (주)위세아이텍 빅데이터 분석을 위한 비정형 텍스트 데이터의 용어 군집화 장치 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160050562A (ko) * 2014-10-30 2016-05-11 삼성에스디에스 주식회사 예측 모델 생성 장치 및 방법
KR101758870B1 (ko) * 2017-02-13 2017-07-18 주식회사 온더 마이닝 관리 시스템 및 이를 이용한 마이닝 관리 방법
KR20180108446A (ko) * 2017-03-23 2018-10-04 (주)모아데이타 Ict 인프라 관리 시스템 및 이를 이용한 ict 인프라 관리 방법
KR20190025473A (ko) * 2017-09-01 2019-03-11 두산중공업 주식회사 플랜트 데이터 예측 장치 및 방법
KR101975419B1 (ko) * 2018-11-26 2019-05-07 (주)위세아이텍 빅데이터 분석을 위한 비정형 텍스트 데이터의 용어 군집화 장치 및 방법

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210113890A (ko) * 2020-03-09 2021-09-17 에스케이 주식회사 Machine Learning을 이용한 데이터 연관성 자동 탐색 방법 및 시스템
KR102339181B1 (ko) 2020-03-09 2021-12-13 에스케이 주식회사 Machine Learning을 이용한 데이터 연관성 자동 탐색 방법 및 시스템
KR102206296B1 (ko) * 2020-05-06 2021-01-25 주식회사 이글루시큐리티 보안관제 학습데이터 레이블링시스템 및 그 방법
KR20210142443A (ko) * 2020-05-18 2021-11-25 국방과학연구소 사이버 공간에서 실시간 공격 탐지를 위한 시간에 따른 지속적인 적응형 학습을 제공하는 방법 및 시스템
KR102405799B1 (ko) * 2020-05-18 2022-06-07 국방과학연구소 사이버 공간에서 실시간 공격 탐지를 위한 시간에 따른 지속적인 적응형 학습을 제공하는 방법 및 시스템
KR102274389B1 (ko) * 2020-09-18 2021-07-06 (주)위세아이텍 센서 데이터를 이용한 이상패턴 탐지 모델 구축 방법 및 이를 이용한 이상 탐지 장치 및 방법
KR102231231B1 (ko) * 2020-10-08 2021-03-24 주식회사 솔리드웨어 변수 영향도 기반 머신러닝 예측 결과 해석 방법 및 그 장치
WO2022114828A1 (ko) * 2020-11-27 2022-06-02 한국과학기술정보연구원 보안 데이터 처리 장치, 보안 데이터 처리 방법 및 보안 데이터 처리하는 프로그램을 저장하는 컴퓨터 판독 가능한 저장매체
KR102362582B1 (ko) * 2020-12-31 2022-02-15 렉스소프트 주식회사 통계 데이터 전처리 방법, 서버 및 컴퓨터 판독가능매체
CN113609113A (zh) * 2021-08-02 2021-11-05 国家电网有限公司客户服务中心 基于电力数据的用户信息生成方法、装置、电子设备
CN113609113B (zh) * 2021-08-02 2023-09-15 国家电网有限公司客户服务中心 基于电力数据的用户信息生成方法、装置、电子设备
KR102614220B1 (ko) * 2022-12-13 2023-12-20 초록소프트 주식회사 음원 이용량 예측 모델 생성 방법 및 장치

Similar Documents

Publication Publication Date Title
KR102068715B1 (ko) 변수 중요도에 따른 가중치가 적용된 변수를 이용한 이상값 탐지 장치 및 방법
KR102039540B1 (ko) 빅데이터의 이상값 탐지 프로세스 자동화 장치 및 방법
US10878550B2 (en) Utilizing deep learning to rate attributes of digital images
US20200401939A1 (en) Systems and methods for preparing data for use by machine learning algorithms
US10311368B2 (en) Analytic system for graphical interpretability of and improvement of machine learning models
Barga et al. Predictive analytics with Microsoft Azure machine learning
KR102103902B1 (ko) 컴포넌트 기반의 머신러닝 자동화 예측 장치 및 방법
Alham et al. A MapReduce-based distributed SVM ensemble for scalable image classification and annotation
US20100057773A1 (en) Fuzzy tagging method and apparatus
US11971892B2 (en) Methods for stratified sampling-based query execution
US11748448B2 (en) Systems and techniques to monitor text data quality
US20210110299A1 (en) Interactive machine learning
EP4046084A1 (en) Interactive machine learning
Akerkar Advanced data analytics for business
KR20190094068A (ko) 온라인 게임에서 게이머 행동 유형을 분류하는 분류기의 학습 방법 및 상기 분류기를 포함하는 장치
CN107203772B (zh) 一种用户类型识别方法及装置
CN115063035A (zh) 基于神经网络的客户评估方法、系统、设备及存储介质
Tavakoli et al. Clustering time series data through autoencoder-based deep learning models
KR102307132B1 (ko) 플랜트 엔지니어링 업무 단계별 의사결정 지원을 위한 머신러닝 자동화 플랫폼 장치
Thompson Data mining methods and the rise of big data
US20220358360A1 (en) Classifying elements and predicting properties in an infrastructure model through prototype networks and weakly supervised learning
Liu et al. A learning-based system for predicting sport injuries
Liang et al. Incremental deep forest for multi-label data streams learning
US20210034648A1 (en) System and method for restrictive clustering of datapoints
Schäfer et al. Clustering-Based Subgroup Detection for Automated Fairness Analysis

Legal Events

Date Code Title Description
AMND Amendment
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant