KR102005952B1 - 기계학습 모델링에서 잡음 데이터 제거를 위한 데이터 정제 장치 및 방법 - Google Patents

기계학습 모델링에서 잡음 데이터 제거를 위한 데이터 정제 장치 및 방법 Download PDF

Info

Publication number
KR102005952B1
KR102005952B1 KR1020190016846A KR20190016846A KR102005952B1 KR 102005952 B1 KR102005952 B1 KR 102005952B1 KR 1020190016846 A KR1020190016846 A KR 1020190016846A KR 20190016846 A KR20190016846 A KR 20190016846A KR 102005952 B1 KR102005952 B1 KR 102005952B1
Authority
KR
South Korea
Prior art keywords
data
preprocessor
preprocessing
order
machine learning
Prior art date
Application number
KR1020190016846A
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 KR1020190016846A priority Critical patent/KR102005952B1/ko
Application granted granted Critical
Publication of KR102005952B1 publication Critical patent/KR102005952B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

기계학습 모델링에서 전처리기를 이용하여 데이터의 잡음 데이터 제거를 위한 데이터 정제 장치 및 방법에 관한 것으로, 데이터 정제 작업을 수행하기 위한 초기 데이터를 입력 받는 데이터 입력부, 상기 데이터 입력부로 입력받은 초기 데이터의 개략 분석을 수행하여 특징을 분석하고, 전처리 수행 순서를 정의하는 순서 정의부, 및 상기 순서 정의부에서 정의된 전처리 수행 순서에 기반하여 제 1 전처리기를 선택하여, 상기 선택한 제 1 전처리기로 상기 입력받은 초기 데이터를 전달하고, 상기 정의된 전처리 수행 순서에 기반하여 제 2 전처리기를 선택하여, 상기 선택한 제 1 전처리기에서 초기 데이터를 전처리 수행하여 생성되는 제 1 정제 데이터 집합을 상기 제 2 전처리기로 전달하는 데이터 전달부를 포함하는 것을 특징으로 하는 기계학습 모델링에서 데이터의 잡음 데이터 제거를 위한 데이터 정제 장치에 의해 학습 데이터의 예측력을 월등히 높일 수 있는 데이터 정제 장치 및 방법을 제공할 수 있는 효과가 있다.

Description

기계학습 모델링에서 잡음 데이터 제거를 위한 데이터 정제 장치 및 방법 {Apparatus and Method for refining data of removing noise data in Machine learning modeling}
본 발명은 기계학습 모델링에서 데이터 정제 장치 및 방법에 관한 것으로, 특히 기계학습 모델링에서 전처리기를 이용하여 데이터의 잡음 데이터 제거를 위한 데이터 정제 장치 및 방법에 관한 것이다.
현실 데이터는 측정 센서의 고유 오차 또는 컴퓨팅 계산 오차 등 오차가 포함된다. 오차가 포함된 데이터가 경계상에 있는 데이터는 모델링 예측 오류를 유발한다. 이런 예측 오류를 유발시키는 예측자를 제거하고 머신 러닝 학습 데이터로 사용하면 예측력이 더 높아질 수 있다.
따라서 데이터 정제 작업에서 예측 오류를 유발하는 예측자를 제거하는 데이터 정제 과정을 거친다. 이때 정제 과정에서 사용하는 방법 또는 절차에 따라 학습 데이터의 특징이 달라진다. 이는 모델링 예측력에 영향을 미치는 것이다.
데이터 정제 과정에서 사용하는 방법 또는 절차는 단순한 방법에서 여러 과정을 조합하여 최종 데이터를 만들어 낸다. 이런 작업은 데이터 분석가의 데이터 분석 능력이나 사용하는 방법에 따라 달라진다. 그리고 이런 작업을 수행하기 위해서는 많은 시간을 필요로 한다.
또한 현실 세계의 데이터는 정규성을 띄는 경우가 드물다. 따라서 모집단의 특징이 정규 분포임을 가정하여 문제를 해결하는 것은 어려움이 있다. 즉 비모수적(non parametric) 방법으로 문제를 해결해야 한다. 예를들어 히스토그램의 그래프에서 특정 계급의 도수가 다른 계급에 비해 현저히 높을 때, 경험치를 통한 일정 비율로 도수를 감소해야한다. 또한 계급의 도수가 희귀한 경우에 해당 구간의 데이터 제거등의 방법을 통해 문제를 해결해야할 필요가 있다.
기존에 학습 데이터 전처리 과정에서 특정 단일 알고리즘 만으로 잡음 데이터를 제거하는 방법은 찾아보기 어렵다.
기계학습 또는 머신 러닝(machine learning)은 인공지능의 한분야로, 컴퓨터가 학습할 수 있도록 하는 알고리즘과 기술을 개발하는 분야이다. 가령, 기계 학습을 통해서 수신한 이메일이 스팸인지 아닌지를 구분하도록 훈련할 수 있다.
기계 학습의 핵심은 표현(representation)과 일반화(generalization)에 있다. 표현이란 데이터의 평가이며, 일반화란 아직 알 수 없는 데이터에 대한 처리이다. 이는 전산 학습 이론 분야이기도 하다. 다양한 기계 학습의 응용이 존재한다. 문자 인식은 이를 이용한 가장 잘 알려진 사례이다.
또한 "기계가 일일이 코드로 명시하지 않은 동작을 데이터로부터 학습하여 실행할 수 있도록 하는 알고리즘을 개발하는 연구 분야"라고 정의할 수 있다.
KR 1020170101493 A KR 1020180092494 A KR 1020180066714 A
본 발명은 이 같은 기술적 배경에서 도출된 것으로, 기계학습 모델링 과정에서 오류 예측을 유발하는 훈련 데이터의 잡음 데이터 제거함에 있어, 기계학습에서 훈련할 학습 데이터의 전처리 과정 중 데이터 정제(데이터 마이닝) 과정에서의 데이터 예측력을 보다 높일 수 있는 데이터 정제 장치 및 방법을 제공하는 데에 목적이 있다.
상기의 과제를 달성하기 위한 본 발명은 다음과 같은 구성을 포함한다.
즉 본 발명의 일 실시예에 따른 기계학습 모델링에서 데이터의 잡음 데이터 제거를 위한 데이터 정제 장치는 데이터 정제 작업을 수행하기 위한 초기 데이터를 입력 받는 데이터 입력부, 상기 데이터 입력부로 입력받은 초기 데이터의 개략 분석을 수행하여 특징을 분석하고, 전처리 수행 순서를 정의하는 순서 정의부 및 상기 순서 정의부에서 정의된 전처리 수행 순서에 기반하여 제 1 전처리기를 선택하여, 상기 선택한 제 1 전처리기로 상기 입력받은 초기 데이터를 전달하고, 상기 정의된 전처리 수행 순서에 기반하여 제 2 전처리기를 선택하여, 상기 선택한 제 1 전처리기에서 초기 데이터를 전처리 수행하여 생성되는 제 1 정제 데이터 집합을 상기 제 2 전처리기로 전달하는 데이터 전달부를 포함한다.
본 발명의 일 양상에 따르면 상기 데이터 전달부는 상기 정의된 전처리 수행 순서에 기반하여 제 N 전처리기를 선택하고, 상기 선택된 제 N 전처리기로 제 N-1 정제된 데이터 집합을 전달 하는 것을 반복 수행하는 것을 특징으로 한다.
한편, 기계학습 모델링에서 데이터의 잡음 데이터 제거를 위한 데이터 정제 방법은 기계학습 모델링에서 데이터의 잡음 데이터 제거를 위한 데이터 정제 장치에서 수행되는 데이터 정제 방법에 있어서, 데이터 입력부가 데이터 정제 작업을 수행하기 위한 초기 데이터를 입력 받는 단계, 순서 정의부가 상기 입력받은 초기 데이터의 개략 분석을 수행하여 특징을 분석하고, 전처리 수행 순서를 정의하는 단계, 데이터 전달부가 상기 정의된 전처리 수행 순서에 기반하여 제 1 전처리기를 선택하고, 상기 선택한 제 1 전처리기로 상기 입력받은 초기 데이터를 전달하는 단계, 상기 선택한 제 1 전처리기가 상기 초기 데이터를 전처리 수행하여 제 1 정제 데이터 집합을 생성하는 단계 및 상기 데이터 전달부가 상기 정의된 전처리 수행 순서에 기반하여 제 2 전처리기를 선택하고, 상기 제 1 정제 데이터 집합을 상기 선택된 제 2 전처리기로 전달하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 일 양상에 따르면 상기 전달하는 단계는, 상기 데이터 전달부가 상기 정의된 전처리 수행 순서에 기반하여 제 N 전처리기를 선택하고, 상기 선택된 제 N 전처리기로 제 (N-1) 정제된 데이터 집합을 전달하는 것을 반복 수행하는 것을 특징으로 한다.
기계 학습 모델링 과정에서 실질적으로 수집되는 데이터를 그대로 사용하거나 간단한 기법의 전처리 방법을 사용하여 학습하면, 실제 운영 반영한 경우에 예측력이 낮아 만족하기 어려운 결과를 내는 경우가 빈번하다. 따라서 본 발명에 따르면 데이터들 간 상대 거리와 차원 축소 방법을 사용하여 응용함으로써 기계학습에서 훈련할 학습 데이터의 전처리 과정 중 데이터 정제(데이터 마이닝) 과정에서의 데이터 예측력을 보다 높일 수 있는 데이터 정제 장치 및 방법을 제공할 수 있는 효과가 있다.
또한, 이를 프로그램으로 구현하면 모델링 구축 시간을 현저히 절약하는 것이 가능하다.
뿐만 아니라 초기 데이터에 프로그램으로 구현된 전처리 과정을 수행하면 많은 수의 결과 데이터를 산출할 수 있다. 이때 산출된 데이터를 학습하고 검증한 결과에서 높은 예측력을 가지는 모델을 선택하여 실제 운영에 반영할 수 있다.
도 1 은 본 발명의 일 실시예에 따른 데이터 정제 장치의 구성을 도시한 블록도,
도 2는 본 발명의 일 실시예에 따른 학습 데이터를 설명하기위한 예시도,
도 3 은 본 발명의 일 실시예에 따른 분포 전처리기에서 전처리 수행과정을 설명하기 위한 예시도,
도 4는 본 발명의 일 실시예에 따른 분포 전처리기에서 도출되는 히스토그램 그래프의 예시도,
도 5 는 본 발명의 일 실시예에 따른 PAIRS 전처리기에서 전처리 수행과정을 설명하기 위한 예시도,
도 6(a)는 군집을 이루는 독립 변수의 전처리 과정을 설명하기 위한 예시도,
도 6(b)는 군집을 이루지 않는 독립 변수의 전처리 과정을 설명하기 위한 예시도,
도 6(c)는 기타 특징을 보이는 독립 변수의 전처리 과정을 설명하기 위한 예시도,
도 7 은 본 발명의 일 실시예에 따른 HCLUST 전처리기에서 전처리 수행과정을 설명하기 위한 예시도,
도 8 은 hclust() 함수 결과에 의해 도출된 계통도(dendrogram)를 도시한 예시도,
도 9는 본 발명의 일 실시예에 따른 기계학습 모델링에서 데이터의 잡음 데이터 제거를 위한 데이터 정제 방법의 흐름도,
도 10은 본 발명의 일 실시예에 따른 선택된 전처리 수행 과정을 보다 상세히 도시한 예시도이다.
본 발명에서 사용되는 기술적 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 발명에서 사용되는 기술적 용어는 본 발명에서 특별히 다른 의미로 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 의미로 해석되어야 하며, 과도하게 포괄적인 의미로 해석되거나, 과도하게 축소된 의미로 해석되지 않아야 한다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명한다.
도 1 은 본 발명의 일 실시예에 따른 데이터 정제 장치의 구성을 도시한 블록도이다.
도 1 에 도시된 바와 같이 일 실시예에 따른 데이터 정제 장치는 데이터 입력부(100), 순서 정의부(110), 데이터 전달부(120), 및 전처리부(130)를 포함한다.
데이터 입력부(100)는 데이터 정제 작업을 수행하기 위한 초기 데이터를 입력 받는다. 데이터 입력부(100)가 초기데이터를 입력 받는 것은 외부의 장치로부터 유무선 통신 인터페이스를 통해 입력받는 것도 가능하고, 동일한 장치 내에 저장된 데이터들 중 일부를 데이터 정제를 수행하기 위한 초기 데이터로 선택받는 것도 가능하다.
일 실시예에 있어서, 초기 데이터는 데이터 정제 작업을 수행하기 위한 초기 데이터이다. 이는 데이터를 수집하고 가공되지 않은 것이다.
일예로 초기 데이터는 다음과 같다.
Figure 112019015290012-pat00001
여기서, Y는 종속 변수로, TRUE/FALSE, 불량/양호 또는 0/1 등 이진 값을 가진 데이터이고, P는 독립 변수이다.
초기 데이터 집합 A는 M*N 행렬 데이터, M은 예측자의 수, N은 종속 변수+독립변수의 수라할때, 집합 A의 하위 집합의 수는 M!(n! = n*(n-1)*...*1)의 값을 가진다. 이 하위 집합들 중에서 예측 성능이 좋은 상위 몇개의 하위 집합을 찾는 것이 데이터 정제의 목표이다.
10개의 예측자를 가진다면 10!=3628800 개의 하위 집합을 가지는 것이다. 이 하위 집합들 중에서 예측력이 높은 상위 몇개의 집합을 정제 데이터로 찾는 것이다.
도 2는 본 발명의 일 실시예에 따른 학습 데이터를 설명하기위한 예시도이다.
도 2 에서 알 수 있듯이, 하나의 예측자는 하나의 행을 의미한다. 그리고 ID는 예측자를 구별할 수 있는 고유 식별값이다. 예를 들어 주민등록번호와 같은 정보일 수 있다.
종속 변수는 결과물이나 효과, 불량/양호, PASS/FAIL과 같은 이진 값이거나, A/B/C 등의 레이블로 구성된 값이다. 독립 변수는 입력값이나 원인이 되는 값으로 1~∞ 까지 여러 차원을 가질 수 있다.
순서 정의부(110)는 데이터 입력부(100)로 입력받은 초기 데이터의 개략 분석을 수행하여 특징을 분석하고, 전처리 수행 순서를 정의한다.
본 발명의 특징적 양상에 따라 순서 정의부(110)가 입력받은 초기 데이터의 개략 분석을 수행하여 특징을 분석하는 것은, 다수의 초기 데이터들에 대하여 특정 예측자와 다른 예측자간의 차이값들을 산출하고, 산출된 예측자간의 차이값들의 중앙값, 평균, 맨해튼 거리, 유클리드 거리(Euclidean distance), 및 코사인 유사도(Cosine similarity) 중 적어도 하나를 이용하여 특징값을 생성하는 것일 수 있다.
일 실시예에 있어서 순서 정의부(110)는 전처리부(130)에서 전처리 수행하는데에 필요한 명령어들의 집합을 저장한다. 다시 말해 다양한 전처리 방식에 대한 수행 방식과 순서를 정의한다.
즉, 순서 정의부(110)는 전처리 명령이 수행되는 순서를 포함하는 프로그래밍 언어로 전처리 수행 명령을 생성한다.
데이터 전달부(120)는 순서 정의부(110)에서 정의된 전처리 수행 순서에 기반하여 제 1 전처리기를 선택하여, 선택한 제 1 전처리기로 입력받은 초기 데이터를 전달하고, 정의된 전처리 수행 순서에 기반하여 제 2 전처리기를 선택하여, 선택한 제 1 전처리기에서 초기 데이터를 전처리 수행하여 생성되는 제 1 정제 데이터 집합을 제 2 전처리기로 전달한다. 여기서, 제 1 전처리기, 제 2 전처리기라 함은 단순히 전처리 수행 순서를 나타내기 위해 구분한 것이다.
이때 데이터 전달부(120)는 정의된 전처리 수행 순서에 기반하여 제 N 전처리기를 선택하고, 선택된 제 N 전처리기로 제 N-1 정제된 데이터 집합을 전달하는 단계를 반복 수행한다. 즉 여러개의 전처리 방법을 반복 수행하여 점증적으로 잡음 데이터를 제거할 수 있다.
본 발명의 일 실시예에 있어서 데이터 전달부(120)는 처음 실행될 때 전처리 명령에서 처음 실행하도록 설정된 전처리기를 선택하여 초기 데이터를 전달한다. 그리고 다음 실행할 때에는 전처리 명령에서 그 다음 순서의 전처리기(N)를 선택하고 이전 전처리기(N-1)에서 생성되는 여러개의 정제된 데이터 집합(N-1)을 다음 순서의 전처리기(N)로 전달하는 것이다. 즉 전처리부(130)는 데이터 전달부(120)에서 전달받은 초기 데이터 혹은 전처리가 수행된 정제된 데이터 집합을 전처리한다.
구체적으로 전처리부(130)에서의 정제 데이터를 찾기 위한 전처리 과정은 다양한 데이터 처리기술을 포괄하도록 해석된다. 데이터 전달부(120)는 전처리 명령에 따라 정의된 전처리 수행 순서에 따라 실행할 전처리기를 선택한다. 그리고 선택된 전처리기로 초기 데이터를 전달한다.
처음 실행될 때에는 전처리 명령에서 처음 실행할 전처리기를 선택하고, 초기 데이터를 전달한다. 그리고 다음 실행할 때에는 다음 실행이 필요한 전처리기를 선택하고, 처음 실행한 전처리기에서 정제된 데이터 집합을 다음 실행이 필요한 전처리기로 전달한다. 이때, 처음 실행한 전처리기에서 정제된 데이터 집합은 여러개 생성된다.
전처리 순서는 파악되는 전처리 순서에 맞게 생성되는 전처리 명령어 순으로 동작할 수 있다. 일예로 전처리 명령에 대한 프로그래밍 언어(R)는 다음과 같다.
sbML.preprocess.controls <- preprocess.control(
list(type = "clust.pairs", control = sbML.clust.pairs.ctrl),
list(type = "distribu", control = sbML.distribu.ctrl ),
list(type = "sampling.up", control = sbML.sampling.up.ctrl ))
이 같이 전처리 작업에 대한 전처리 명령 코드는 전처리 명령을 순서대로 포함하는 하나의 프로그래밍 언어 코드로 구현될 수 있다.
데이터 전처리라함은 데이터 정제, 데이터 통합, 데이터 변환, 데이터 정리과정을 포함하는 데이터 처리과정이다. 이때 데이터 정제는 결측값을 채우거나 이상치를 제거하는 과정을 통해 데이터의 신뢰도를 높이는 과정이다. 데이터 정제 과정은 레코드 집합, 테이블 또는 데이터베이스에서 손상되거나 부정확한 레코드를 검색 및 수정하거나 제거하는 과정을 포함한다.
또한, 데이터 통합은 다수의 정제된 데이터를 통합하여 표현한다.
데이터 변환은 데이터 마이닝의 효율을 높이기 위한 변환 및 변형을 수행하는 과정으로, 하나의 형식이나 구조에서 다른 형식이나 구조로 데이터를 변환하는 것이다.
데이터 변환은 데이터에서 노이즈 제거, 새로운 속성 추가, 데이터 요약 작업 또는 집계작업, 데이터 정규화 등이 있다. 데이터 정리는 데이터 크기를 축소하지만 동일한 분석결과를 만드는 작업과정이다.
일 실시예에 있어서 데이터 전달부(120)는 정의된 전처리 수행 순서에 기반하여 분포 전처리기(132), PAIRS 전처리기(134), HCLUST 전처리기(136) 및 샘플링(sampling) 전처리기(138) 중 적어도 하나를 선택한다.
일 양상에 따른 전처리부(130)는 분포 전처리기(132), PAIRS 전처리기(134), HCLUST 전처리기(136), 및 샘플링 전처리기(138)를 포함한다.
도 3 은 본 발명의 일 실시예에 따른 분포 전처리기에서 전처리 수행과정을 설명하기 위한 예시도이다.
일 양상에 따른 분포 처리기(132)는 입력받은 초기 데이터들 간의 상대거리를 구하여, 독립 변수들의 특징을 함축하는 하나의 값으로 표현하고, 표현된 하나의 값을 이용하여 히스토그램 차트를 생성하여 도수 분포 특징을 분석하고 잡음을 제거하는 것을 특징으로 한다.
도 3 에서 알 수 있듯이 먼저 분포 전처리기(132)는 전처리 작업을 수행하기 위한 데이터를 전달받는다. 이때 전달받은 데이터는 초기 데이터일 수도 있고, 먼저 다른 전처리 작업이 수행되어 정제된 데이터일 수도 있다. 일 실시예에 있어서 전달받은 데이터 집합 A가 M*N을 가지는 행렬일 수 있다. 이때 예측자 수는 M개, 독립변수는 N-1개, 종속 변수는 1개 가진다.
예측자가 가지는 독립 변수의 고유값(차원 중심 값으로부터의 거리)이 아닌, 개별 독립 변수를 기준으로 예측자간 상대 거리를 구한다(S300). 즉, 각각의 개별 독립 변수는 M-1 개의 상대 거리값을 가진다. 이때 독립 변수의 특징에 따라 평균값, 중앙값, 맨해튼 거리, 유클리드 거리, 코사인 유사도 중 적어도 하나를 취하여 1개의 값으로 나타낼 수 있다.
즉 학습 데이터는 모든 독립 변수에 대한 상대 거리가 구해진 상태이다. 그리고 하나의 예측자는 모든 독립 변수의 특징을 함축하는 하나의 값으로 표현될 수 있다. 이런 모든 독립 변수를 하나의 값으로 표현하는 것을 차원 축소과정이라 한다(S310).
차원 축소 방법은 예측자별 모든 독립 변수에 대해 평균값, 중앙값, 맨해튼 거리, 유클리드 거리 중 하나를 이용할 수 있다.
이후에 차원 축소 단계까지 수행한 학습 데이터는 모든 예측자들에 대해서 하나의 값으로 나타내진다. 하나의 값으로 나타낸 데이터들을 이용하여 도수 분포표를 작성할 수 있다(S320). 그리고 작성된 도수 분포표를 이용하여 히스토그램 차트를 그리는 것이 가능해진다.
히스토그램(histogram)은 표로 되어 있는 도수 분포를 정보 그림으로 나타낸 것이다. 보통 히스토그램에서는 가로축이 계급, 세로축이 도수를 뜻하는데 반대도 가능하다. 계급은 보통 변수의 구간이고, 서로 겹치지 않는다. 그림에서 계급(막대기)끼리는 서로 붙어 있어야 한다. 히스토그램은 가로 세로에 모두 의미가 있다.
전술한 바와 같이 현실적으로 데이터는 정규성을 띄는 경우가 드물다. 따라서 모집단의 특징이 정규 분포임을 가정하여 문제를 해결할 수 없다. 즉 비모수적 방법으로 문제를 해결해야한다.
비모수 통계(非母數統計, Non-parametric statistics)는 통계학에서 모수에 대한 가정을 전제로 하지 않고 모집단의 형태에 관계없이 주어진 데이터에서 직접 확률을 계산하여 통계학적 검정을 하는 분석법이다. 비모수적(Non-parametric), 비모수검정법 혹은 분포무관(Distribution-free)검정법이라고도 한다.
도 4는 본 발명의 일 실시예에 따른 분포 전처리기에서 도출되는 히스토그램 그래프의 예시도이다.
도 4에서 막대 그래프는 계급을 Y값은 도수(데이터 수)를 나타낸다. 2번째 계급의 도수는 다른 계급의 도수보다 상대적으로 크다는 것을 확인할 수 있다. 이런 특징을 보이는 데이터는 가장 많은 도수를 나타내는 계급의 예측자를 일정 비율로 삭제함으로써 모델링 예측력을 높일 수 있다.
일 실시예에 있어서 도 4의 히스토그램 그래프의 쌍봉 낙타형 모양을 가지는 데이터에서는 작은쪽 봉오리에 있는 데이터를 제거할 수 있다. 이때 데이터를 제거하는 방법은 히스토그램 전처리 명령에 정의된 조건으로 계급 구간에서 일정 비율 또는 전체 제거가 가능하다.
일 실시예에 있어서 히스토그램의 도수 분포 구간에서 데이터 정제를 위한 프로그래밍 언어(R)는 다음과 같을 수 있다.
sbML.distribu.ctrl <- preprocess.control.distribution(
method=c("skip", "sampling"),
modes = c("median", "mean", "euclidean"),
limit = c(700, 1000) )
정규 분포 특징을 보이는 도수 분포에서는 각 구간마다 일정 비율로 데이터를 제거하는 방법을 실행할 수 있다. 이 방법은 전체 구간에서 임의의 데이터를 추출하여 제거하는 방법보다 학습 결과 예측력을 높일 수 있다.
즉 분포 전처리기(132)에서 데이터 정제 방법은 도수 분포 특징을 분석하고, 히스토그램 전처리 명령에 정의된 방법으로 잡음 데이터를 제거할 수 있다. 전술한 과정에 의해 잡음 데이터를 제거하고 정제 데이터를 생성할 수 있다(S330).
도 5 는 본 발명의 일 실시예에 따른 PAIRS 전처리기에서 전처리 수행과정을 설명하기 위한 예시도이다.
PAIRS 전처리기(134)는 입력받은 초기 데이터들 간의 상대거리를 구하여, 독립 변수들의 특징을 함축하는 하나의 값으로 표현하고, 표현된 하나의 값을 Y축으로 놓고, 개별 독립 변수를 X 축으로 하여 특징을 분석하고 예측 오류를 유발하는 잡음을 제거한다. 즉, PAIRS 전처리기(134)는 차원 축소된 값을 Y 축으로 놓고, 개별 독립 변수를 X축으로 하여 특징을 분석하고 예측 오류를 유발하는 예측자를 제거하는 방법이다.
먼저, PAIRS 전처리기(134)는 전처리 작업을 수행하기 위한 데이터를 전달받는다. 이때 전달받은 데이터는 초기 데이터일 수도 있고, 먼저 다른 전처리 작업이 수행되어 정제된 데이터일 수도 있다. 일 실시예에 있어서 전달받은 데이터 집합 A가 M*N을 가지는 행렬일 수 있다. 이때 예측자 수는 M개, 독립변수는 N-1개, 종속 변수는 1개 가진다.
예측자가 가지는 독립 변수의 고유값(차원 중심 값으로부터의 거리)이 아닌, 개별 독립 변수를 기준으로 예측자간 상대 거리를 구한다(S500). 즉, 각각의 개별 독립 변수는 M-1 개의 상대 거리값을 가진다. 이때 독립 변수의 특징에 따라 평균값, 중앙값, 맨해튼 거리, 유클리드 거리, 코사인 유사도 중 적어도 하나를 취하여 1개의 값으로 나타낼 수 있다.
학습 데이터는 모든 독립 변수에 대한 상대 거리가 구해진 상태이다. 그리고 하나의 예측자는 모든 독립 변수의 특징을 함축하는 하나의 값으로 표현될 수 있다. 이런 모든 독립 변수를 하나의 값으로 표현하는 것을 차원 축소 과정이라 한다(S510).
전처리 명령을 위한 프로그램 코드가 정제 작업을 수행할 독립 정보를 포함한다. 예를들어 PAIRS 컨트롤 생성 작업에서 전처리 작업을 수행할 독립 변수를 포함하는 프로그래밍 언어(R)인 프로그램 코드 및 주석은 다음과 같을 수 있다.
# pairs 컨트롤 생성
# 가장 큰 군집을 제외한 나머지 군집에서 동작
# 지워지는 표기(클래스)는 자동 선택(가장 많은 수를 가지는 클래스)
# 전체 데이터 집합에 MinPts 를 곱한 값 취함
# parameters: 정제 작업을 수행할 독립 변수
# distance: "euclidean", "maximum", "manhattan", "canberra", "binary" or "minkowski", "cosine"
# limit: 가장 큰 군집을 제외한 데이터 개수의 비율이 limit(0 ~ 1) 이하일때 수행 됨
sbML.clust.pairs.ctrl <- preprocess.control.pairs( skip = T,
distance = c("euclidean", "euclidean", "euclidean"),
DownDim = c("mean", "median", "euclidean"),
parameters = c("V39", "V60", "V249", "V521", "V425", "V387"),
limit = 0.3,
eps=0.42,
MinPts = c(5, 10) )
차원 축소로 생성된 값은 예측자 별로 1개의 특징값을 가지게 된다. 일 실시예에 있어서 차원 축소라함은 고차원에 정의된 장론으로부터, 더 낮은 차원에 존재하는 장론을 구성하는 방법이다. 다시 설명하면, 예측자가 여러 개의 변수(Parameter)의 값을 가진다면 하나의 값으로 변환하여 표현하는 방법이다.
이 데이터를 Y축으로 하고, 전처리 작업을 수행할 독립 변수를 X축으로 하면, 2차원 상에서 산점도를 그릴 수 있다(S520). 산점도는 군집을 이루는지, 데이터 간 상관 관계가 있는지 등 독립 변수의 특징을 알기 위함이다.
이 후에 PAIRS 정제 과정은 차원 축소된 값과 개별 독립 변수와의 2차원 공간에서 수행된다(S530). 2차원 좌표에 표현된 산점도는 데이터 특징을 쉽게 알아볼 수 있게 한다. 특징을 추출하는 방법은 k-최근접 알고리즘 또는 dbscan 알고리즘을 이용하여 군집 중심과 군집 중심 간의 거리를 구할 수 있다. 그리고 중심간 거리가 먼 예측자를 찾아서 제거하는 것이 가능하다.
k-최근접 이웃 알고리즘(또는 줄여서 k-NN)은 분류나 회귀에 사용되는 비모수 방식이다. 두 경우 모두 입력이 특징 공간 내 k개의 가장 가까운 훈련 데이터로 구성되어 있다. 출력은 k-NN이 분류로 사용되었는지 또는 회귀로 사용되었는지에 따라 다르다.
k-NN 분류에서 출력은 소속된 항목이다. 객체는 k개의 최근접 이웃 사이에서 가장 공통적인 항목에 할당되는 객체로 과반수 의결에 의해 분류된다(k는 양의 정수이며 통상적으로 작은 수). 만약 k = 1 이라면 객체는 단순히 하나의 최근접 이웃의 항목에 할당된다. k-NN 회귀에서 출력은 객체의 특성 값이다. 이 값은 k개의 최근접 이웃이 가진 값의 평균이다.
k-NN은 함수가 오직 지역적으로 근사하고 모든 계산이 분류될 때까지 연기되는 인스턴스 기반 학습 또는 게으른 학습의 일종이다. k-NN 알고리즘은 가장 간단한 기계 학습 알고리즘에 속한다.
또한 DBSCAN(밀도 기반 클러스터링) 알고리즘은 점이 세밀하게 몰려 있어서 밀도가 높은 부분을 클러스터링 하는 방식이다. 다시 설명하면, 어느점을 기준으로 반경 x내에 점이 n개 이상 있으면 하나의 군집으로 인식하는 방식이다
군집을 이루지 않는 독립 변수에 대해서는 아웃라이어(Outlier) 방식으로 잡음 데이터를 판정하여 제거할 수 있다. 독립 변수에서 어떤 동작을 취할지에 대해서는 전처리 명령어 코드가 설정되는 시점에서 지정될 수 있다.
아웃라이어(Outlier)는 데이터의 중심으로부터 얼마나 떨어졌는지 확인할 수 있는 방법이다. 데이터를 순차적으로 나열한 후 4등분 한다. 2분위 수와 3분위 수의 차이를 IQR 이라 놓으면, 하위 아웃라이어는 Q2 - 1.5 * IQR 보다 작으면 아웃라이어로 판단하며, 상위 아웃라이어는 Q3 + 1.5 * IQR 보다 크면 아웃라이어라고 판정한다.
도 6(a)는 군집을 이루는 독립 변수의 전처리 과정을 설명하기 위한 예시도이다.
도 6(a)에서와 같이 2차원 공간에서 군집을 이루는 경우 적은 쪽 군집에 속하는 예측자를 제외하면 예측력을 높일 수 있다. 도 6(a)에서 빨간색으로 표시된 것은 불량, 파란색으로 표시된 것은 양호를 나타낸다.
도 6(b)는 군집을 이루지 않는 독립 변수의 전처리 과정을 설명하기 위한 예시도이다.
데이터 군집에서 멀리 떨어진 예측자의 경우에도 학습 데이터에서 제외하고 학습하면 예측력을 높일 수 있다. 군집의 중심을 구한 후 중심과 거리가 멀리 떨어진 아웃라이어(Outlier) 예측자를 찾아 제거할 수 있다.
또는 X축이 독립 변수를 나타내므로, X축 상에서 거리를 구한 후 이 값으로부터 멀리 떨어진 아웃라이어 예측자를 찾아 제거하는 것도 가능하다.
도 6(c)는 기타 특징을 보이는 독립 변수의 전처리 과정을 설명하기 위한 예시도이다.
이 경우에는 상관관계가 없는 경우의 독립변수를 제외하면 예측력을 높일 수 있다.
PAIRS 전처리 명령어에서 입력된 정제 작업을 수행할 독립 변수에 대한 전처리 수행을 모두 완료하면 알고리즘을 종료한다(S540).
전술한 과정에 의해 잡음 데이터를 제거하고 정제 데이터를 생성할 수 잇다(S550).
전술한 바와 같이 본 발명의 일 실시예에 따르면 종속 변수인 불량/양호 값 예측자들의 군집 중심으로부터의 거리를 비교하는 방식이 아니라 불량/양호 값 예측자들간의 상대 거리(Y축)과 독립변수(X축)의 좌표에서 군집을 찾는다. 이때 2차원 좌표에서 군집 중심과 거리 또는 중심의 X축 값과 예측자의 거리 수식은
Figure 112019015290012-pat00002
이다. 적은 수의 군집에 해당하는 예측자를 잡음 있는 데이터로 가정하여 제거한다. 즉 잡음을 판정하기 위해 차원 축소하여 독립 변수간 데이터 특징을 추출하여 군집을 판정하는 점에 특징이 있다.
또한, 본 발명에 따르면, 예측자 A와 B가 있는 경우(A와 B는 여러 개의 독립 변수를 가짐), 우선 A와 B의 독립 변수간 상대거리(유사도)를 구한다. 이 상태에서는 독립변수의 개수만큼 차원(상대거리)를 가진다. 그리고 A와 B가 가지는 여러 차원을 1개 차원으로 축소하여 1개의 특징 값을 구한다. 이 특징 값을 가지고 히스토그램 또는 특징 값-독립 변수간 2차원 좌표에서 특징을 추출하여 문제를 해결하는 방식이다.
또한 본 발명은 기본적으로 여러 개여 예측자 M개를 가지고 문제를 해결할 수 있다. 예를 들어, 독립 변수 1개에 대하여, 특정 예측자와 다른 예측자의 차이 M-1 개를 가지게 되며, 이 M-1 개의 값을 1개의 값으로 변환하기 위해 중앙값, 평균, 맨하탄 거리, 유클리드 거리 또는 코사인 유사도 등을 사용하여 1개의 특징 값을 생성하는 것이다.
그리고 이 특징 값을 여러 개의 독립 변수를 가지는 경우로 확장하면, 각 독립 변수 별로 특징 값을 가지게 된다. 1개의 예측자에 대해 여러 차원에 대해 값을 1개의 값으로 변환하기 위해 유클리드 거리, 코사인 유사도와 같은 차원 축소 방법을 통해 1개의 특징 값을 생성한다. 즉 모든 예측자 대해 1개의 특징 값을 가지게되고, 이 특징 값을 이용하여 잡음 데이터를 제거함으로써 예측력 높은 정제 데이터를 추출할 수 있다.
도 7 은 본 발명의 일 실시예에 따른 HCLUST 전처리기에서 전처리 수행과정을 설명하기 위한 예시도이다.
HCLUST 전처리기(136)는 계층적 군집화(Hiarchical Clustering)기법을 이용하여 잡음 데이터를 제거함으로써, 데이터를 정제한다.
먼저, HCLUST 전처리기(136)는 전처리 작업을 수행하기 위한 데이터를 전달받는다. 이때 전달받은 데이터는 초기 데이터일 수도 있고, 먼저 다른 전처리 작업이 수행되어 정제된 데이터일 수도 있다. 일 실시예에 있어서 전달받은 데이터 집합 A가 M*N을 가지는 행렬일 수 있다. 이때 예측자 수는 M개, 독립변수는 N-1개, 종속 변수는 1개 가진다.
예측자가 가지는 독립 변수의 고유값(차원 중심 값으로부터의 거리)이 아닌, 개별 독립 변수를 기준으로 예측자간 상대 거리를 구한다(S700). 즉, 각각의 개별 독립 변수는 M-1 개의 상대 거리값을 가진다. 이때 독립 변수의 특징에 따라 평균값, 중앙값, 맨해튼 거리, 유클리드 거리, 코사인 유사도 중 적어도 하나를 취하여 1개의 값으로 나타낼 수 있다. 학습 데이터는 모든 독립 변수에 대한 상대 거리가 구해진 상태이다.
이 후에 hclust() 함수를 이용하여 계층적 군집화 알고리즘을 사용할 수 있다. 이 알고리즘을 사용하여 전체 독립 변수에 대한 HCLUST 군집을 구할 수 있다(S710). 이 HCLUST 군집들 중에 단독 또는 몇개의 예측자만으로 군집을 이루는 경우가 있다.
클러스터 분석(Cluster analysis)은 주어진 데이터들의 특성을 고려하여 데이터 집단(클러스터)을 정의하고 데이터 집단을 대표할 수 있는 대표점을 찾는 것으로 데이터 마이닝의 한 방법이다. 클러스터는 비슷한 특징을 갖는 데이터들의 집단이다. 반대로 데이터의 특성이 다르면 서로 다른 클러스터에 속해야 한다.
데이터마이닝은 대규모로 저장된 데이터 안에서 체계적이고 자동적으로 통계적 규칙이나 패턴을 찾아내는 것이다. 데이터 마이닝은 통계학에서 패턴 인식에 이르는 다양한 계량 기법을 사용한다.
그리고 hclust() 함수의 군집 결과를 그래프로 나타내면 군집의 특징을 한눈에 확인할 수 있다. 군집들 중에서 단독 또는 소수개의 예측자만으로 군집을 이루는 예측자를 제거하여 정제 데이터로 결정하고 이를 학습 데이터로 사용하면 예측력을 높일 수 있는 효과가 나타난다(S720). 이 방법은 세세하게 군집을 이루는 예측자를 제거하는 데 사용하면 효과적이다.
도 8 은 hclust() 함수 결과에 의해 도출된 계통도(dendrogram)를 도시한 예시도이다.
도 8의 계통도(dendrogram) 그래프에서는 C8, C12, C7, C10, C11 예측자가 잡음으로 판정되어 제거할 후보로 선택될 수 있다.
전처리부(130)는 전술한 전처리기들 이외에 일반적으로 널리 알려진 방법대로 데이터 정제를 수행하는 전처리기를 더 포함할 수 있다. 즉 학습 데이터의 특징에 따라 예측력을 높일 수 있는 다양한 전처리 기법들을 모두 수행할 수 있는 기술적 구성이다.
샘플링 전처리기(138)는 예측자의 종속 변수가 이진값인 경우에 (불량/양호, 참/거짓) 예측자의 개수가 많은 쪽으로 맞추는 방법인 업 샘플링(UP sampling)과 예측자의 개수가 적은 쪽으로 맞추는 방법인 다운 샘플링(down sampling) 방식이 있다.
전처리부(130)의 전처리기들 중 적어도 일부에서 전처리 수행 완료한 결과로 정제 데이터가 생성된다. 전처리 수행 방법에 따라 하나씩 생성될 수 있다. 이때 전처리 내부 처리 과정에서 n개가 정의되고, 이전에 전처리를 수행한 전처리기로부터 m개의 데이터를 전달 받은 경우에 생성되는 전처리 데이터는 m*n개가 된다.
도 9는 본 발명의 일 실시예에 따른 기계학습 모델링에서 데이터의 잡음 데이터 제거를 위한 데이터 정제 방법의 흐름도이다.
도 9에 도시된 바와 같이 기계학습 모델링에서 데이터의 잡음 데이터 제거를 위한 데이터 정제 장치의 데이터 입력부가 데이터 정제 작업을 수행하기 위한 초기 데이터를 입력 받는다(S900).
그리고 순서 정의부가 입력받은 초기 데이터의 개략 분석을 수행하여 특징을 분석하고, 전처리 수행 순서를 정의한다(S910).
이후에 데이터 전달부가 정의된 전처리 수행 순서에 기반하여 제 1 전처리기를 선택하고(S920), 선택한 제 1 전처리기로 입력받은 초기 데이터를 전달한다. 그리고 선택한 제 1 전처리기가 초기 데이터를 전처리 수행하여 제 1 정제 데이터 집합을 생성한다(S930).
또한 데이터 전달부가 정의된 전처리 수행 순서에 기반하여 제 2 전처리기를 선택하고, 제 1 정제 데이터 집합을 선택된 제 2 전처리기로 전달한다.
일 양상에 따르면 데이터 전달부는 정의된 전처리 수행 순서에 기반하여 제 N 전처리기를 선택하고, 선택된 제 N 전처리기로 제 (N-1) 정제된 데이터 집합을 전달하는 것을 반복 수행한다.
그리고 정의된 전처리 수행 순서에 기반하여 모든 전처리 과정이 완료되면(S940) 정제 데이터가 최종 학습 데이터로 생성된다(S950).
일 예로 마지막 전처리 단계의 수행할 전처리 옵션이 n개이고, 이전 단계에서 전달받은 학습 데이터의 수가 m이라 하면, 최종 생성되는 학습 데이터의 개수는 m * n 개가 된다. 통상 최종 데이터 생성 개수는 수십 ~ 수천 개의 학습 데이터가 생성된다.
이렇게 생성된 수 많은 학습 데이터를 가지고 기계학습 모델링을 생성하고, 검증 데이터를 가지고 모델링 예측력을 평가한다. 생성된 모델 중에서 예측력이 높은 것을 알 수 있다. 즉, 예측 성능이 좋은 데이터와 전처리 과정을 알 수 있으며, 예측력이 높은 모델을 운영 적용할 수 있다. 이에 의해 학습 데이터의 예측력을 더 높일 수 있는 것이다.
도 10은 본 발명의 일 실시예에 따른 선택된 전처리 수행 과정을 보다 상세히 도시한 예시도이다.
도 10에 도시된 바와 같이 데이터 전달부는 정의된 전처리 수행 순서에 기반하여 분포 전처리기(S932), PAIRS 전처리기(S934), HCLUST 전처리기(S936) 및 샘플링(sampling)전처리기(S938) 중 적어도 하나를 선택할 수 있다. 이에 의해 정제 데이터를 생성할 수 있다(S955).
그러나 이에 한정되는 것은 아니고 다양한 전처리기가 추가적으로 더 포함될 수도 있다.
본 발명에 따르면 전처리기의 반복 수행을 거쳐 잡음 제거된 정제 데이터 여러개(수십~수천개)를 포함하는 정제 데이터 집합이 최종 생성된다. 최종적으로 생성되는 정제 데이터 집합을 가지고 학습하고, 검증하는 단계를 거치면서 만족하는 예측력을 보이는 학습을 선택하고, 전처리 과정을 확인할 수 있다.
그리고 선택된 학습 결과를 실제 운영에 반영함으로써 기계 학습에서 꼭 필요한 예측 정확도를 월등히 높일 수 있는 데이터 정제 장치 및 방법을 제공할 수 있는 효과가 도출된다.
100 : 데이터 입력부 110 : 순서 정의부
120 : 데이터 전달부 130 : 전처리부
132 : 분포 전처리기 ` 134 : PAIRS 전처리기
136 : HCLUST 전처리기 138 : 샘플링 전처리기

Claims (10)

  1. 데이터 정제 작업을 수행하기 위한 초기 데이터를 입력 받는 데이터 입력부;
    상기 데이터 입력부로 입력받은 초기 데이터의 개략 분석을 수행하여 특징을 분석하고, 전처리 수행 순서를 정의하는 순서 정의부; 및
    상기 순서 정의부에서 정의된 전처리 수행 순서에 기반하여 제 1 전처리기를 선택하여, 상기 선택한 제 1 전처리기로 상기 입력받은 초기 데이터를 전달하고, 상기 정의된 전처리 수행 순서에 기반하여 제 2 전처리기를 선택하여, 상기 선택한 제 1 전처리기에서 초기 데이터를 전처리 수행하여 생성되는 제 1 정제 데이터 집합을 상기 제 2 전처리기로 전달하는 데이터 전달부;를 포함하고,
    상기 순서 정의부가 상기 입력받은 초기 데이터의 개략 분석을 수행하여 특징을 분석하는 것은, 상기 데이터 입력부로 입력 받은 다수의 초기 데이터들에 대하여 특정 예측자와 다른 예측자간의 차이값들을 산출하고, 산출된 예측자간의 차이값들의 중앙값, 평균, 맨해튼 거리, 유클리드 거리(Euclidean distance), 및 코사인 유사도(Cosine similarity) 중 적어도 하나를 이용하여 특징값을 생성하는 것을 특징으로 하며,
    상기 순서 정의부는 전처리 명령이 수행되는 순서를 포함하는 프로그래밍 언어로 전처리 수행 명령을 생성하는 것을 특징으로 하고,
    상기 데이터 전달부는, 상기 정의된 전처리 수행 순서에 기반하여 분포 전처리기, PAIRS 전처리기, HCLUST 전처리기 및 샘플링(sampling)전처리기 중 적어도 하나를 선택하는 것을 특징으로 하는 기계학습 모델링에서 데이터의 잡음 데이터 제거를 위한 데이터 정제 장치.
  2. 제 1 항에 있어서,
    상기 데이터 전달부는 상기 정의된 전처리 수행 순서에 기반하여 제 N 전처리기를 선택하고, 상기 선택된 제 N 전처리기로 제 N-1 정제된 데이터 집합을 전달 하는 것을 반복 수행하는 것을 특징으로 하는 기계학습 모델링에서 데이터의 잡음 데이터 제거를 위한 데이터 정제 장치.
  3. 삭제
  4. 제 1 항에 있어서,
    상기 분포 전처리기는 상기 입력받은 초기 데이터들 간의 상대거리를 구하여, 독립 변수들의 특징을 함축하는 하나의 값으로 표현하고, 상기 표현된 하나의 값을 이용하여 히스토그램 차트를 생성하여 도수 분포 특징을 분석하고 잡음을 제거하는 것을 특징으로 하는 기계학습 모델링에서 데이터의 잡음 데이터 제거를 위한 데이터 정제 장치.
  5. 제 1 항에 있어서,
    상기 PAIRS 전처리기는 상기 입력받은 초기 데이터들 간의 상대거리를 구하여, 독립 변수들의 특징을 함축하는 하나의 값으로 표현하고, 상기 표현된 하나의 값을 Y축으로 놓고, 개별 독립 변수를 X 축으로 하여 특징을 분석하고 예측 오류를 유발하는 잡음을 제거하는 것을 특징으로 하는 기계학습 모델링에서 데이터의 잡음 데이터 제거를 위한 데이터 정제 장치.
  6. 제 1 항에 있어서,
    상기 HCLUST 전처리기는 계층적 군집화(Hierarchical Clustering) 기법을 이용하여 잡음을 제거하는 것을 특징으로 하는 기계학습 모델링에서 데이터의 잡음 데이터 제거를 위한 데이터 정제 장치.
  7. 삭제
  8. 기계학습 모델링에서 데이터의 잡음 데이터 제거를 위한 데이터 정제 장치에서 수행되는 데이터 정제 방법에 있어서,
    데이터 입력부가 데이터 정제 작업을 수행하기 위한 초기 데이터를 입력 받는 단계;
    순서 정의부가 상기 입력받은 초기 데이터의 개략 분석을 수행하여 특징을 분석하고, 전처리 수행 순서를 정의하는 단계;
    데이터 전달부가 상기 정의된 전처리 수행 순서에 기반하여 제 1 전처리기를 선택하고, 상기 선택한 제 1 전처리기로 상기 입력받은 초기 데이터를 전달하는 단계;
    상기 선택한 제 1 전처리기가 상기 초기 데이터를 전처리 수행하여 제 1 정제 데이터 집합을 생성하는 단계; 및
    상기 데이터 전달부가 상기 정의된 전처리 수행 순서에 기반하여 제 2 전처리기를 선택하고, 상기 제 1 정제 데이터 집합을 상기 선택된 제 2 전처리기로 전달하는 단계를 포함하고,
    상기 전처리 수행 순서를 정의하는 단계가 상기 입력받은 초기 데이터의 개략 분석을 수행하여 특징을 분석하는 것은, 상기 데이터 입력부로 입력 받은 다수의 초기 데이터들에 대하여 특정 예측자와 다른 예측자간의 차이값들을 산출하고, 산출된 예측자간의 차이값들의 중앙값, 평균, 맨해튼 거리, 유클리드 거리(Euclidean distance), 및 코사인 유사도(Cosine similarity) 중 적어도 하나를 이용하여 특징값을 생성하는 것을 특징으로 하며,
    상기 전처리 수행 순서를 정의하는 단계는 전처리 명령이 수행되는 순서를 포함하는 프로그래밍 언어로 전처리 수행 명령을 생성하는 것을 특징으로 하고,
    상기 전달하는 단계는, 상기 정의된 전처리 수행 순서에 기반하여 분포 전처리기, PAIRS 전처리기, HCLUST 전처리기 및 샘플링(sampling)전처리기 중 적어도 하나를 선택하는 것을 특징으로 하는 기계학습 모델링에서 데이터의 잡음 데이터 제거를 위한 데이터 정제 방법.
  9. 제 8 항에 있어서, 상기 전달하는 단계는,
    상기 데이터 전달부가 상기 정의된 전처리 수행 순서에 기반하여 제 N 전처리기를 선택하고, 상기 선택된 제 N 전처리기로 제 (N-1) 정제된 데이터 집합을 전달하는 것을 반복 수행하는 것을 특징으로 하는 기계학습 모델링에서 데이터의 잡음 데이터 제거를 위한 데이터 정제 방법.
  10. 삭제
KR1020190016846A 2019-02-13 2019-02-13 기계학습 모델링에서 잡음 데이터 제거를 위한 데이터 정제 장치 및 방법 KR102005952B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190016846A KR102005952B1 (ko) 2019-02-13 2019-02-13 기계학습 모델링에서 잡음 데이터 제거를 위한 데이터 정제 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190016846A KR102005952B1 (ko) 2019-02-13 2019-02-13 기계학습 모델링에서 잡음 데이터 제거를 위한 데이터 정제 장치 및 방법

Publications (1)

Publication Number Publication Date
KR102005952B1 true KR102005952B1 (ko) 2019-10-01

Family

ID=68207646

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190016846A KR102005952B1 (ko) 2019-02-13 2019-02-13 기계학습 모델링에서 잡음 데이터 제거를 위한 데이터 정제 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102005952B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210065751A (ko) * 2019-11-27 2021-06-04 강릉원주대학교산학협력단 결측값 대체 시스템 및 결측값 대체 방법
KR20210094810A (ko) 2020-01-22 2021-07-30 주식회사 솔루게이트 이형 데이터 기반 예측 시스템의 데이터 정제 장치 및 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160143512A (ko) * 2015-06-04 2016-12-14 더 보잉 컴파니 머신 러닝을 위한 진보된 분석 기반시설
KR20170101493A (ko) 2016-02-29 2017-09-06 씨앤에스플러스(주) 데이터 정제시스템 및 그 정제방법
KR20180066714A (ko) 2016-12-09 2018-06-19 주식회사 뉴스젤리 데이터에 내재된 문제점 제거를 통한 데이터 정제 장치 및 방법
KR20180092494A (ko) 2017-02-09 2018-08-20 한국전자통신연구원 학습 이미지 데이터 정제 시스템 및 그 방법
KR20180120056A (ko) * 2017-04-26 2018-11-05 김정희 학습 데이터 전처리 방법 및 시스템

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160143512A (ko) * 2015-06-04 2016-12-14 더 보잉 컴파니 머신 러닝을 위한 진보된 분석 기반시설
KR20170101493A (ko) 2016-02-29 2017-09-06 씨앤에스플러스(주) 데이터 정제시스템 및 그 정제방법
KR20180066714A (ko) 2016-12-09 2018-06-19 주식회사 뉴스젤리 데이터에 내재된 문제점 제거를 통한 데이터 정제 장치 및 방법
KR20180092494A (ko) 2017-02-09 2018-08-20 한국전자통신연구원 학습 이미지 데이터 정제 시스템 및 그 방법
KR20180120056A (ko) * 2017-04-26 2018-11-05 김정희 학습 데이터 전처리 방법 및 시스템

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Firoozabadi, Ali Dehghan, et al. Unsupervised Method for Correlated Noise Removal for Multi-wavelength Exoplanet Transit Observations. arXiv preprint arXiv:1706.08556. 2017.* *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210065751A (ko) * 2019-11-27 2021-06-04 강릉원주대학교산학협력단 결측값 대체 시스템 및 결측값 대체 방법
KR102409101B1 (ko) * 2019-11-27 2022-06-14 강릉원주대학교산학협력단 결측값 대체 시스템 및 결측값 대체 방법
KR20210094810A (ko) 2020-01-22 2021-07-30 주식회사 솔루게이트 이형 데이터 기반 예측 시스템의 데이터 정제 장치 및 방법

Similar Documents

Publication Publication Date Title
CN114787876A (zh) 用于图像预处理的系统和方法
EP1903479A1 (en) Method and system for data classification using a self-organizing map
JP2013250809A (ja) 多クラス識別器、方法、およびプログラム
US11562294B2 (en) Apparatus and method for analyzing time-series data based on machine learning
CN110674636B (zh) 一种用电行为分析方法
Jun A forecasting model for technological trend using unsupervised learning
KR102005952B1 (ko) 기계학습 모델링에서 잡음 데이터 제거를 위한 데이터 정제 장치 및 방법
CN114782761B (zh) 基于深度学习的智能仓储物料识别方法和系统
EP3745317A1 (en) Apparatus and method for analyzing time series data based on machine learning
CN117670066B (zh) 基于智能决策的司库管理方法、系统、设备及存储介质
CN113986674A (zh) 时序数据的异常检测方法、装置和电子设备
Zou et al. Handwritten chinese character recognition by convolutional neural network and similarity ranking
Defriani et al. Recognition of Regional Traditional House in Indonesia Using Convolutional Neural Network (CNN) Method
CN113516019B (zh) 高光谱图像解混方法、装置及电子设备
CN117155706A (zh) 网络异常行为检测方法及其系统
CN116029760A (zh) 消息推送方法、装置、计算机设备和存储介质
JP6613937B2 (ja) 品質予測装置、品質予測方法、プログラム及びコンピュータ読み取り可能な記録媒体
JP7242590B2 (ja) 機械学習モデル圧縮システム、プルーニング方法及びプログラム
CN113780334A (zh) 基于两阶段混合特征选择的高维数据分类方法
CN117746260B (zh) 遥感数据智能解析方法及系统
CN116702059B (zh) 一种基于物联网的智能生产车间管理系统
CN116912922B (zh) 表情识别模型训练方法、装置、电子设备及存储介质
Minarno et al. Leaf based plant species classification using deep convolutional neural network
CN118132643A (zh) 一种工业物联网数据可视化发布方法
CN117668461A (zh) 一种基于改进Transformer模型的动态人口识别方法及系统