KR20190050230A - System and method for selecting optimized medical features using neural network - Google Patents

System and method for selecting optimized medical features using neural network Download PDF

Info

Publication number
KR20190050230A
KR20190050230A KR1020170145553A KR20170145553A KR20190050230A KR 20190050230 A KR20190050230 A KR 20190050230A KR 1020170145553 A KR1020170145553 A KR 1020170145553A KR 20170145553 A KR20170145553 A KR 20170145553A KR 20190050230 A KR20190050230 A KR 20190050230A
Authority
KR
South Korea
Prior art keywords
influence
class
feature
input data
degree
Prior art date
Application number
KR1020170145553A
Other languages
Korean (ko)
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 KR1020170145553A priority Critical patent/KR20190050230A/en
Publication of KR20190050230A publication Critical patent/KR20190050230A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/042Knowledge-based neural networks; Logical representations of neural networks
    • G06N3/0427
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06K9/6267
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Disclosed are a method for determining a feature impact and a system thereof. According to the present invention, the method for using a neural network, which classifies input data having J (J is a natural number which is 2 or greater) units of features into K (K is a natural number which is 2 or greater) units of different classes, and determining a degree of each of one or more features of the J units of features to influence the classification comprises: a) a step of allowing a feature impact determination system to extract k class input data, which are classified into the specific k class among the K units of classes, from among the N units of input data to calculate an impact (Dlj) of the specific j feature of the J units of features; b) a step of calculating a kk impact degree which shows a degree of impact on the j feature (xij) of the k class input data extracted by the feature impact determination system to be classified into the k class; c) a step of calculating at least one of the kr impact degrees, which is data which show a degree of an impact of the feature impact determination system on the j feature (xij) of the k class input data to be classified into the r (r=!k) class which is not the k class; and d) a step of allowing the feature impact determination system to calculate the impact (Dlj) based on a difference between each of one or more kr impact degrees and the kk impact value.

Description

피쳐 영향 판단 방법 및 그 시스템{System and method for selecting optimized medical features using neural network}TECHNICAL FIELD [0001] The present invention relates to a method and system for determining a feature effect,

본 발명은 뉴럴 네트워크를 이용한 분류(classification)에 있어서, 인풋 데이터에 포함된 복수의 피쳐들의 상기 분류에 미치는 영향도를 판단할 수 있는 방법 또는 피쳐 셀렉션(Feature Selection)에 대한 방법 및 그 시스템에 관한 것이다. The present invention relates to a method and a method for feature selection that can determine the degree of influence on a classification of a plurality of features included in input data in classification using a neural network, will be.

피쳐 셀렉션(Feature Selection)으로 불리우는 프로세스는 머신러닝 등에서 널리 이용되는 기술이다. The process called feature selection is a technique widely used in machine learning and the like.

이러한 피쳐 셀렉션을 통해 원본 데이터가 주어졌을 때, 가장 좋은 성능을 보여 줄 수 있는 데이터 피쳐의 부분집합을 원본 데이터에서 찾아낼 수 있다.With these feature selections, you can find a subset of the data features in the original data that can give you the best performance given the original data.

한편 뉴럴 네트워크(또는 딥 러닝)이 다양한 분야에서 널리 이용되고 있다. On the other hand, neural networks (or deep running) are widely used in various fields.

예컨대, 유전자 시퀀스로부터 특정 질병이 발현되는지 여부를 판단하거나, 신체의 조직 이미지를 이용해 정상 조직 또는 특정 질병이 발현된 조직인지 여부를 판단하는 과정에서도 이러한 뉴럴 네트워크가 활용되고 있다.For example, such a neural network is utilized in a process of determining whether a specific disease is expressed from a gene sequence, or determining whether a normal tissue or a specific disease is expressed using a tissue image of the body.

특히 이처럼 유전자 정보를 통한 질병의 발현 등과 같이 뉴럴 네트워크의 인풋 데이터의 피쳐(feature)들의 수가 많은 경우에는, 어떤 피쳐들이 질병의 발현에 영향을 많이 미치는지 알 수 있는 것이 매우 효과적일 수 있다.In particular, when the number of features of the input data of the neural network, such as the expression of diseases through gene information, is large, it can be very effective to know which features are highly influential on the expression of the disease.

1. Peduzzi, P., Concato, J., Kemper, E., Holford, T. R., and Feinstein, A. R. (1996). A simulation study of the number of events per variable in logistic regression analysis. Journal of clinical epidemiology, 49(12), 13731379.1. Peduzzi, P., Concato, J., Kemper, E., Holford, T. R., and Feinstein, A. R. (1996). A simulation study of the number of events per variable in logistic regression analysis. Journal of clinical epidemiology, 49 (12), 13731379. 2. Identification of a multi-cancer gene expression biomarker for cancer clinical outcomes using a network-based algorithm Emmanuel Martinez-Ledesma, Roeland G.W. Verhaak& Victor Trevin Scientific Reports 5, Article number: 11966 (2015)2. Identification of a multi-cancer gene expression biomarker for cancer based on a network-based algorithm Emmanuel Martinez-Ledesma, Roeland G.W. Verhaak & Victor Trevin Scientific Reports 5, Article number: 11966 (2015) 3. Large-scale RNA-Seq Transcriptome Analysis of 4043 Cancers and 548 Normal Tissue Controls across 12 TCGA Cancer Types.3. Large-scale RNA-Seq Transcriptome Analysis of 4043 Cancers and 548 Normal Tissue Controls across 12 TCGA Cancer Types. Peng L, Bian XW, Li DK, Xu C, Wang GM, Xia QY, Xiong Q.Peng L, Bian XW, Li DK, Xu C, Wang GM, Xia QY, Xiong Q. Scientific Reports (2015)Scientific Reports (2015)

본 발명이 이루고자 하는 기술적인 과제는 소정의 방식으로 학습된 뉴럴 네트워크를 이용하여 인풋 데이터에 포함된 피쳐들 각각의 영향력(영향도)를 판단할 수 있는 방법 또는 이러한 방법을 이용하여 피쳐 셀렉션을 할 수 있는 방법 및 그 시스템을 제공하는 것이다.SUMMARY OF THE INVENTION The present invention has been made in view of the above problems, and it is an object of the present invention to provide a method of determining influence (degree of influence) of each of features included in input data using a learned neural network, And to provide that system.

상기 기술적 과제를 달성하기 위한 J(J는 2 이상의 자연수)개의 피쳐(feature)들을 갖는 인풋 데이터들을 K(K는 2 이상의 자연수)개의 서로 다른 클래스들로 분류하는 뉴럴 네트워크를 이용하여 상기 J개의 피쳐들 중 적어도 하나 각각이 상기 분류에 영향을 미치는 정도를 판단하기 위한 방법은 a)피쳐 영향 판단시스템이 J개의 피쳐들 중 특정 j 피쳐의 영향력(DIj)을 연산하기 위해, N개의 인풋 데이터들 중에서, K 개의 클래스들 중 특정 k 클래스로 분류된, k 클래스 인풋 데이터를 추출하는 단계, b)상기 피쳐 영향 판단시스템이 추출한 상기 k 클래스 인풋 데이터의 상기 j 피쳐(xij)가 상기 k 클래스로 분류되는데 미치는 영향의 정도를 나타내는 kk 영향도를 연산하는 단계, 및 c)상기 피쳐 영향 판단시스템이 상기 k 클래스 인풋 데이터의 상기 j 피쳐(xij)가 상기 k 클래스가 아닌 r(r=!k) 클래스로 분류되는데 미치는 영향의 정도를 나타내는 데이터인 kr 영향도를 적어도 하나 연산하는 단계, 및 d)상기 피쳐 영향 판단시스템이 적어도 하나의 kr 영향도 각각과 상기 kk영향도 값의 차이에 기초하여 상기 영향력(DIj)을 연산하는 단계를 포함한다.In order to accomplish the above object, there is provided a method of generating J pieces of input data by using a neural network that classifies input data having J (J is a natural number of 2 or more) features into different classes of K (K is a natural number of 2 or more) The method for determining the degree to which each of at least one of the at least one of the at least one of the at least one of the J features affects the classification comprises the steps of: a) , Extracting k-class input data classified as a specific k-class among K classes, b) classifying the j-feature (xij) of the k-class input data extracted by the feature influence determination system into the k-class Calculating a k k influence degree that indicates the extent of the effect, and c) if the feature effect determination system determines that the j-feature (x ij) of the k- Calculating at least one of kr influence, which is data representing the degree of influence on classifying into a class r (r =! K), not a class; and d) and calculating the influence (DIj) based on the difference of the kk influence values.

상기 c)단계는 상기 k 클래스를 제외한 모든 kr(r!=k) 영향도를 연산하는 것을 특징으로 하고, 상기 d)단계는 상기 kk 영향도와 상기 모든 kr(r!=k) 영향도 각각 간의 차이에 기초하여 상기 영향력(DIj)을 연산하는 것을 특징으로 할 수 있다.Wherein the step (c) calculates all kr (r! = K) influences except for the k class, wherein the step (d) And the influence (DIj) is calculated based on the difference.

상기 b) 단계는 상기 k 클래스 인풋 데이터와 상기 뉴럴 네트워크의 웨이트 파라미터 중에서 상기 j 피쳐와 상기 k 클래스 파라미터에 상응하는 k 웨이트 파라미터를 이용하여 kk영향도를 연산하는 것을 특징으로 할 수 있다.The step (b) may calculate the kk influence degree using the k-weight parameter corresponding to the j-feature parameter and the k-class parameter among the k-class input data and the weight parameter of the neural network.

상기 b)단계는 상기 k 클래스 인풋 데이터의 평균 벡터와 상기 k 웨이트 파라미터의 내적에 기초하여 상기 kk영향도를 연산하는 것을 특징으로 할 수 있다.And the step (b) may calculate the kk influence degree based on an inner product of the mean vector of the k-class input data and the k-weight parameter.

상기 피쳐 영향 판단방법은 e)상기 피쳐 영향 판단시스템이 상기 N개의 인풋 데이터들 중에서 상기 k 클래스가 아닌 소정의 s(s=!k) 클래스로 분류된 s 클래스 인풋 데이터를 추출하는 단계, f)상기 피쳐 영향 판단시스템이 추출한 상기 s 클래스 인풋 데이터의 상기 j 피쳐(xij)가 상기 k 클래스로 분류되는데 미치는 영향의 정도를 나타내는 제2 kk 영향도를 연산하는 단계 및 g)상기 피쳐 영향 판단시스템이 상기 s 클래스 인풋 데이터의 상기 j 피쳐(xij)가 상기 k 클래스가 아닌 r(r=!k) 클래스로 분류되는데 미치는 영향의 정도를 나타내는 데이터인 제2 kr 영향도를 적어도 하나 연산하는 단계 및 h)상기 피쳐 영향 판단시스템이 적어도 하나의 제2 kr 영향도 각각과 상기 제2 kk영향도의 차이에 더 기초하여 상기 영향력(DIj)을 연산하는 단계를 포함할 수 있다.E) the feature effect determination system extracts s-class input data classified into a predetermined s (s =! K) class that is not the k-th class among the N input data; f) Calculating a second kk influence degree indicative of a degree of influence of the j-feature input data extracted by the feature influence determination system on classification of the j-feature (xij) into the k-th class; and g) Calculating at least one second kr affinity, which is data indicative of the degree of influence on the classification of the j-feature (xij) of the s-class input data into the r (r = k) class instead of the k class; and h ) The feature effect determination system may include calculating the influence (DIj) based further on the difference between each of the at least one second kr impact and the second kk impact.

상기 g)단계는 상기 k 클래스를 제외한 모든 제2 kr(r!=k) 영향도를 연산하는 것을 특징으로 하고, 상기 h)단계는 상기 제2 kk 영향도와 상기 모든 제2 kr(r!=k) 영향도 각각 간의 차이에 기초하여 상기 영향력(DIj)을 연산하는 것을 특징으로 할 수 있다.Wherein the step (g) calculates all the second kr (r! = K) influences except for the k class, wherein the step (h) k) influence on the basis of the difference between the respective degrees of influence (DIj).

상기 피쳐 영향 판단방법은 상기 피쳐 영향 판단 시스템이 상기 k 클래스가 아닌 모든 타 클래스 각각에대해 상기 e) 단계 내지 h)단계를 수행하는 것을 특징으로 할 수 있다.The feature effect determination method may be characterized in that the feature effect determination system performs steps (e) to (h) for each of the other classes other than the k-class.

상기 기술적 과제를 해결하기 위한 J(J는 2 이상의 자연수)개의 피쳐(feature)들을 갖는 인풋 데이터들을 K(K는 2 이상의 자연수)개의 서로 다른 클래스들로 분류하는 뉴럴 네트워크를 이용하여 상기 J개의 피쳐들 중 적어도 하나 각각이 상기 분류에 영향을 미치는 정도를 판단하기 위한 방법은 a)피쳐 영향 판단시스템이 J개의 피쳐들 중 특정 j 피쳐의 영향력(DIj)을 연산하기 위해, N개의 인풋 데이터들 중에서, K 개의 클래스들 중 특정 k 클래스로 분류된, k 클래스 인풋 데이터를 추출하는 단계, b)상기 피쳐 영향 판단시스템이 추출한 상기 k 클래스 인풋 데이터의 상기 j 피쳐)가 상기 k 클래스로 분류되는데 미치는 영향의 정도를 나타내는 kk 영향도를 연산하는 단계, 및 c)상기 피쳐 영향 판단시스템이 상기 k 클래스 인풋 데이터의 상기 j 피쳐가 상기 k 클래스가 아닌 모든 타 클래스로 분류되는데 미치는 영향의 정도를 나타내는 데이터인 kr 영향도를 연산하는 단계, d)상기 피쳐 영향 판단시스템이 상기 kr 영향도 각각과 상기 kk영향도의 차이의 합인 j 피쳐의 k 클래스의 부분 영향력을 연산하는 단계, e) 상기 N개의 인풋 데이터들 중에서, K 개의 클래스들 중 특정 k 클래스가 아닌 모든 타 클래스 각각에 대해 상기 a)단계 내지 d)단계를 수행하여 모든 클래스 각각에 대해 j 피쳐의 부분 영향력을 연산하는 단계, 및 f) 연산된 모든 부분 영향력을 이용하여 상기 영향력(DIj)을 연산하는 단계를 포함한다.In order to solve the above technical problem, there is provided a computer-readable storage medium storing a program for causing a computer to function as: a storage unit configured to store input data having J features (J is a natural number of 2 or more) The method for determining the degree to which each of at least one of the at least one of the at least one of the at least one of the J features affects the classification comprises the steps of: a) , Extracting k-class input data classified as a specific k-class among K classes, b) effect on the classification of the k-class input data of the k-class input data extracted by the feature effect determination system) into the k-class Calculating a k k influence degree that indicates the degree of k-class input data, and c) Calculating the kr influence, which is data indicating the degree of influence on the classification of all other classes, not k, of the j feature, which is the sum of the kr influence degree and the kk influence degree, E) performing steps a) through d) for each of the other classes of the K input data, which is not a specific k class among the K input classes, Calculating a partial influence of the j-feature for the partial effect, and f) calculating the influence (DIj) using all the calculated partial influence.

상기의 방법은 기록된 컴퓨터 프로그램에 의해 구현될 수 있다.The above method can be implemented by a recorded computer program.

상기의 기술적 과제를 해결하기 위한 데이터 처리장치는 프로세서 및 상기 프로세서에 의하여 실행되는 컴퓨터 프로그램을 저장하는 메모리를 포함하며, 상기 컴퓨터 프로그램은, 상기 프로세서에 의해 실행되는 경우, 상기 방법을 수행하도록 한다.    According to an aspect of the present invention, there is provided a data processing apparatus including a processor and a memory storing a computer program executed by the processor, the computer program causing the computer to execute the method when executed by the processor.

상기의 기술적 과제를 해결하기 위한 J(J는 2 이상의 자연수)개의 피쳐(feature)들을 갖는 인풋 데이터들을 K(K는 2 이상의 자연수)개의 서로 다른 클래스들로 분류하는 뉴럴 네트워크를 이용하여 상기 J개의 피쳐들 중 적어도 하나 각각이 상기 분류에 영향을 미치는 정도를 판단하기 위한 피쳐 영향 판단시스템은 J개의 피쳐들 중 특정 j 피쳐의 영향력(DIj)을 연산하기 위해, N개의 인풋 데이터들 중에서, K 개의 클래스들 중 특정 k 클래스로 분류된, k 클래스 인풋 데이터를 추출하기 위한 추출모듈, 상기 추출모듈에 의해 추출된 상기 k 클래스 인풋 데이터의 j 피쳐가 상기 k 클래스로 분류되는데 미치는 영향의 정도를 나타내는 kk 영향도를 연산하고, 상기 k 클래스 인풋 데이터의 상기 j 피쳐가 상기 k 클래스가 아닌 r(r=!k) 클래스로 분류되는데 미치는 영향의 정도를 나타내는 데이터인 kr 영향도를 적어도 하나 연산하며, 적어도 하나의 kr 영향도 값 각각과 상기 kk영향도 값의 차이에 기초하여 상기 j 피쳐의 영향력(DIj)을 연산하는 제어모듈을 포함한다.According to an aspect of the present invention, there is provided a method of classifying input data having J (J is a natural number of 2 or more) features into a plurality of different classes by classifying input data into K A feature effect determination system for determining the degree to which each of at least one of the features affects the classification is configured to determine, for each of the N input data, K An extracting module for extracting k-class input data classified as a specific k-class among the classes, an extracting module for extracting k-class input data classified as a specific k- (K) of the k-class input data is classified into the class r (r =! K) instead of the class k At least one operational data of kr influence diagram illustrating a FIG., And comprises at least one kr impact control module for calculating the influence (DIj) of the j feature to Fig based on the difference between the value of the kk influence the values, respectively.

상기의 기술적 과제를 해결하기 위한 J(J는 2 이상의 자연수)개의 피쳐(feature)들을 갖는 인풋 데이터들을 K(K는 2 이상의 자연수)개의 서로 다른 클래스들로 분류하는 뉴럴 네트워크를 이용하여 상기 J개의 피쳐들 중 적어도 하나 각각이 상기 분류에 영향을 미치는 정도를 판단하기 위한 피쳐 영향 판단시스템은 J개의 피쳐들 중 특정 j 피쳐의 영향력(DIj)을 연산하기 위해, N개의 인풋 데이터들 중에서, K 개의 클래스들 중 특정 k 클래스로 분류된, k 클래스 인풋 데이터를 추출하기 위한 추출모듈, 상기 추출모듈에 의해 추출된 상기 k 클래스 인풋 데이터의 상기 j 피쳐가 상기 k 클래스로 분류되는데 미치는 영향의 정도를 나타내는 kk 영향도를 연산하고, 상기 j 피쳐가 상기 k 클래스가 아닌 모든 타 클래스로 분류되는데 미치는 영향의 정도를 나타내는 데이터인 kr 영향도를 연산하며, 상기 kr 영향도 각각과 상기 kk영향도의 차이의 합인 k 클래스의 부분 영향력을 연산하기 위한 제어모듈을 포함하며, 상기 제어모듈은 K 개의 클래스들에 포함된 모든 클래스들 각각에 대해 상기의 부분 영향력을 연산하고, 연산된 모든 부분 영향력을 이용하여 상기 영향력(DIj)을 연산할 수 있다.According to an aspect of the present invention, there is provided a method of classifying input data having J (J is a natural number of 2 or more) features into a plurality of different classes by classifying input data into K A feature effect determination system for determining the degree to which each of at least one of the features affects the classification is configured to determine, for each of the N input data, K An extracting module for extracting k-class input data classified into a specific k-class among the classes, and an extracting module for extracting k-class input data from the k-class input data extracted by the extracting module, kk, and the degree of influence of the j feature on classification into all other classes other than the k class And a control module for computing a partial influence of the k class which is a sum of the kr influences and the difference of the kk influences, , And calculate the influence (DIj) using all the calculated partial influences.

본 발명의 기술적 사상에 따르면 뉴럴 네트워크를 통해 특정 분류에 있어서 영향력이 큰 피쳐를 용이하게 추출할 수 있는 효과가 있다.According to the technical idea of the present invention, it is possible to easily extract a feature having a large influence in a specific classification through a neural network.

이러한 기술적 사상을 유전자 시퀀스가 특정 질병의 발현여부를 분류하는 뉴럴 네트워크에 적용할 경우, 상기 특정 질병의 발현여부에 영향을 많이 미치는 유전자 정보(예컨대, RNA-seq.)를 확인할 수 있으며, 이를 통해 효과적인 바이오 마커의 개발이 가능한 효과가 있다.When the gene sequence is applied to a neural network that classifies the expression of a specific disease, it is possible to identify gene information (for example, RNA-seq.) Highly influencing the expression of the specific disease, It is possible to develop an effective biomarker.

또한 본 발명의 기술적 사상을 통해 소정의 암을 진단하기 위한 뉴럴 네트워크를 이용하여 영향력이 큰 소정 개수(예컨대, 14개)의 유전자(feature)를 추출하였고, 이를 기존의 알려진 바이오 마커("Large-cale RNA-Seq Transcriptome Analysis of 4043 Cancers and 548 Normal Tissue Controls across 12 TCGA Cancer Type")와 비교한 결과 보다 높은 진단율을 나타내는 효과가 있었다.In addition, through the technical idea of the present invention, a predetermined number (for example, 14) of genes having a large influence is extracted using a neural network for diagnosing a cancer, and a known large- The results were compared with the results of cale RNA-Seq Transcriptome Analysis of 4043 Cancers and 548 Normal Tissue Controls across 12 TCGA Cancer Type.

본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 기술적 사상에 따른 피쳐 영향 판단시스템의 개략적인 시스템 구성을 나타내는 도면이다.
도 2 내지 도3은 본 발명의 실시 예에 따른 피쳐 영향 판단방법을 개념적으로 설명하기 위한 도면이다.
도 4는 도 2와 비교하여 레이어 수가 다른 경우의 피쳐 영향 판단방법을 설명하기 위한 도면이다.
도 5는 본 발명의 실시 예에 따른 피쳐 영향 판단방법을 통해 피쳐 셀렉션을 수행하는 알고리즘의 일 예를 나타낸다.
BRIEF DESCRIPTION OF THE DRAWINGS A brief description of each drawing is provided to more fully understand the drawings recited in the description of the invention.
1 is a diagram showing a schematic system configuration of a feature effect determination system according to the technical idea of the present invention.
FIGS. 2 to 3 are conceptual diagrams illustrating a method for determining a feature effect according to an embodiment of the present invention.
FIG. 4 is a diagram for explaining a feature influence determination method in a case where the number of layers is different as compared with FIG.
5 illustrates an example of an algorithm for performing feature selection through a feature effect determination method according to an embodiment of the present invention.

본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시 예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.The present invention is capable of various modifications and various embodiments, and specific embodiments are illustrated and described in the drawings. It is to be understood, however, that the invention is not to be limited to the specific embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 아니 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.The terms first, second, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.

본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise.

본 명세서에 있어서, “포함하다”또는 “가지다”등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In this specification, the terms "comprises" or "having" and the like refer to the presence of stated features, integers, steps, operations, elements, components, or combinations thereof, But do not preclude the presence or addition of features, numbers, steps, operations, components, parts, or combinations thereof.

또한, 본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터를 전송할 수도 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터를 상기 다른 구성요소로 전송할 수도 있는 것을 의미한다. 반대로 어느 하나의 구성요소가 다른 구성요소로 데이터를 '직접 전송'하는 경우에는 상기 구성요소에서 다른 구성요소를 통하지 않고 상기 다른 구성요소로 상기 데이터가 전송되는 것을 의미한다.Also, in this specification, when any one element 'transmits' data to another element, the element may transmit the data directly to the other element, or may be transmitted through at least one other element And may transmit the data to the other component. Conversely, when one element 'directly transmits' data to another element, it means that the data is transmitted to the other element without passing through another element in the element.

이하, 첨부된 도면들을 참조하여 본 발명의 실시 예들을 중심으로 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.Hereinafter, the present invention will be described in detail with reference to the embodiments of the present invention with reference to the accompanying drawings. Like reference symbols in the drawings denote like elements.

도 1은 본 발명의 기술적 사상에 따른 피쳐 영향 판단시스템의 개략적인 시스템 구성을 나타내는 도면이다.1 is a diagram showing a schematic system configuration of a feature effect determination system according to the technical idea of the present invention.

도 1을 참조하면, 본 발명의 기술적 사상에 따른 피쳐 영향 판단방법을 구현하기 위해서는 피쳐 영향 판단시스템(이하, '판단시스템', 100)이 구비될 수 있다. 상기 판단시스템(100)은 소정의 서버(미도시)에 설치되어 본 발명의 기술적 사상을 구현할 수 있다. 상기 서버(미도시)는 본 발명의 기술적 사상을 구현하기 위한 연산능력을 가진 데이터 처리장치를 의미하며, 일반적으로 네트워크를 통해 클라이언트가 접속가능한 데이터 처리장치뿐만 아니라 개인용 컴퓨터, 휴대 단말 등과 같이 특정 서비스를 수행할 수 있는 어떠한 장치도 서버로 정의될 수 있음을 본 발명의 기술분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다. 물론 상기 판단시스템(100)은 소정의 유저 단말기에 설치될 수도 있다. 이하에서는 상기 판단시스템(100)이 서버(미도시)에 설치되는 일 예를 설명하지만 본 발명의 권리범위가 이에 한정되진 않는다.Referring to FIG. 1, a feature effect determination system (hereinafter referred to as a 'determination system') 100 may be provided to implement a feature effect determination method according to the technical idea of the present invention. The judgment system 100 may be installed in a predetermined server (not shown) to implement the technical idea of the present invention. The server (not shown) refers to a data processing apparatus having computation capability for realizing the technical idea of the present invention. In general, the server is a data processing apparatus to which a client can access through a network, It will be readily apparent to one of ordinary skill in the art to which the present invention pertains that any device capable of performing the functions described herein may be defined as a server. Of course, the judgment system 100 may be installed in a predetermined user terminal. Hereinafter, an example in which the determination system 100 is installed in a server (not shown) will be described, but the scope of the present invention is not limited thereto.

상기 서버(미도시)는 소정의 프로세서 및 저장장치를 포함할 수 있다. 상기 프로세서는 본 발명의 기술적 사상을 구현하기 위한 프로그램을 구동시킬 수 있는 연산장치를 의미할 수 있으며, 상기 프로세서는 상기 프로그램을 구동하여 본 발명의 기술적 사상에 따른 피쳐 영향 판단방법을 수행할 수 있다. 또한 피쳐 영향 판단방법을 수행함으로써 일정 개수의 피쳐 셀렉션을 수행할 수도 있다. The server (not shown) may include a predetermined processor and a storage device. The processor may be an arithmetic unit capable of driving a program for realizing the technical idea of the present invention and the processor may execute the program to perform the feature influence determination method according to the technical idea of the present invention . Also, a certain number of feature selections may be performed by performing a feature influence determination method.

상기 저장장치는 본 발명의 기술적 사상을 구현하기 위한 프로그램 및/또는 뉴럴 네트워크(NN, 130)를 저장할 수 있는 데이터 저장수단을 의미할 수 있으며, 구현 예에 따라 복수의 저장수단으로 구현될 수도 있다. 또한 상기 저장장치는 상기 서버(미도시)에 포함된 주 기억장치 뿐만 아니라, 상기 프로세서에 포함될 수 있는 임시 저장장치 또는 메모리 등을 포함하는 의미일 수도 있다. 물론 필요에 따라 상기 뉴럴 네트워크(130)는 상기 판단시스템(100)과는 이격된 장치에 저장되어 있을 수도 있다. 또는 상기 판단시스템(100)은 상기 뉴럴 네트워크(130) 자체가 아니라 상기 뉴럴 네트워크(130)를 정의하는 소정의 정보(예컨대, 모델 파라미터 등)만을 저장할 수도 있다. The storage device may be a data storage device capable of storing a program and / or a neural network (NN) 130 for implementing the technical idea of the present invention, and may be implemented as a plurality of storage devices according to an embodiment . The storage device may also include a main storage device included in the server (not shown) as well as a temporary storage device or memory that may be included in the processor. Of course, if necessary, the neural network 130 may be stored in a separate apparatus from the determination system 100. Alternatively, the determination system 100 may store only predetermined information (e.g., model parameters, etc.) defining the neural network 130, rather than the neural network 130 itself.

상기 판단시스템(100)은 도 1에서는 어느 하나의 물리적 장치로 구현된 것으로 도시하였지만, 필요에 따라 복수의 물리적 장치가 유기적으로 결합되어 본 발명의 기술적 사상에 따른 판단시스템(100)을 구현할 수 있음을 본 발명의 기술분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다.Although the determination system 100 is illustrated as being implemented as any one physical device in FIG. 1, a plurality of physical devices may be organically combined as needed to implement the determination system 100 according to the technical idea of the present invention. May be easily deduced by the average expert in the field of the present invention.

본 명세서에서 상기 판단시스템(100)은 소정의 뉴럴 네트워크(130)가 이용하는 인풋 데이터(Input data)에 포함되는 피쳐들(features) 각각의 영향력(영향도)을 판단할 수 있다. The determination system 100 may determine the influence of each of the features included in the input data used by the predetermined neural network 130. For example,

상기 영향력은 상기 뉴럴 네트워크(130)가 상기 인풋 데이터를 소정 개수의 클래스로 분류하는 기능을 수행하는 네트워크인 경우, 각각의 피쳐들이 상기 분류에 영향을 미치는 정도를 소정의 기준으로 정량화한 정보일 수 있다.In the case where the neural network 130 performs a function of classifying the input data into a predetermined number of classes, the influence may be information obtained by quantifying the degree to which each feature affects the classification by a predetermined criterion have.

이처럼 인풋 데이터에 포함되는 피쳐들 각각의 영향력을 판단할 수 있다면, 영향력이 큰 일정 개수의 피쳐들이 선택될 수 있으며 이를 피쳐 셀렉션이라 할 수 있다. If we can determine the influence of each of the features included in the input data, a certain number of highly influential features can be selected, which can be called feature selection.

이러한 피쳐 셀렉션이 이루어지는 경우, 상기 분류에 있어서 불필요한 정보들(영향력이 없거나 거의 없는 data)을 필터링할 수 있으며, 분류의 성능이나 속도를 향상시킬 수 있는 효과가 있다.When such a feature selection is performed, it is possible to filter unnecessary information (data with little or no influence) in the classification, and it is possible to improve the performance or speed of classification.

특히 본 발명의 기술적 사상이 유전자 정보를 인풋 데이터로 입력받아 특정 질병의 발현여부를 출력하는 뉴럴 네트워크인 경우, 인풋 데이터는 어떤 특징을 갖는 유전자 시퀀스(예컨대, RNA-seq.)일 수 있다. 그리고 영향력이 큰 몇 개의 유전자 시퀀스 즉 피쳐가 선택된다면 선택된 피쳐는 상기 특정 질병의 바이오 마커(bio marker)로 이용될 수 있다. In particular, in the case of a neural network in which the technical idea of the present invention is inputting genetic information as input data and outputting the expression of a specific disease, the input data may be a gene sequence having certain characteristics (for example, RNA-seq.). And if a number of gene sequences or features that are highly influential are selected, the selected feature can be used as a biomarker of the specific disease.

따라서 본 발명의 기술적 사상은 특정 질병에 대한 바이오 마커를 발견하는데에도 유용하게 이용될 수 있음은 물론이다.Therefore, it is needless to say that the technical idea of the present invention can be also useful for finding a biomarker for a specific disease.

이러한 기술적 사상을 구현하기 위한 상기 판단시스템(100)은 논리적으로 도 1에 도시된 바와 같은 구성을 가질 수 있다.The determination system 100 for implementing such a technical idea may logically have a configuration as shown in FIG.

상기 판단시스템(100)은 제어모듈(110) 및 추출모듈(120)을 포함할 수 있다. 또한 상기 판단시스템(100)은 뉴럴 네트워크(130)를 더 포함할 수도 있다.The determination system 100 may include a control module 110 and an extraction module 120. In addition, the determination system 100 may further include a neural network 130.

상기 판단시스템(100)은 본 발명의 기술적 사상을 구현하기 위해 필요한 하드웨어 리소스(resource) 및/또는 소프트웨어를 구비한 논리적인 구성을 의미할 수 있으며, 반드시 하나의 물리적인 구성요소를 의미하거나 하나의 장치를 의미하는 것은 아니다. 즉, 상기 판단시스템(100)은 본 발명의 기술적 사상을 구현하기 위해 구비되는 하드웨어 및/또는 소프트웨어의 논리적인 결합을 의미할 수 있으며, 필요한 경우에는 서로 이격된 장치에 설치되어 각각의 기능을 수행함으로써 본 발명의 기술적 사상을 구현하기 위한 논리적인 구성들의 집합으로 구현될 수도 있다. 또한, 상기 판단시스템(100)은 본 발명의 기술적 사상을 구현하기 위한 각각의 기능 또는 역할별로 별도로 구현되는 구성들의 집합을 의미할 수도 있다. 예컨대, 상기 제어모듈(110), 상기 추출모듈(120), 및/또는 상기 뉴럴 네트워크(130) 각각은 서로 다른 물리적 장치에 위치할 수도 있고, 동일한 물리적 장치에 위치할 수도 있다. 또한, 구현 예에 따라서는 상기 제어모듈(110), 상기 추출모듈(120), 및/또는 상기 뉴럴 네트워크(130) 각각을 구성하는 소프트웨어 및/또는 하드웨어의 결합 역시 서로 다른 물리적 장치에 위치하고, 서로 다른 물리적 장치에 위치한 구성들이 서로 유기적으로 결합되어 각각의 상기 모듈들을 구현할 수도 있다.The determination system 100 may mean a logical configuration having hardware resources and / or software necessary for implementing the technical idea of the present invention, and it may mean one physical component or one It does not mean a device. That is, the judgment system 100 may mean a logical combination of hardware and / or software provided to implement the technical idea of the present invention. If necessary, the judgment system 100 may be installed in a separate apparatus to perform respective functions And may be embodied as a set of logical structures for realizing the technical idea of the present invention. In addition, the judgment system 100 may mean a set of configurations separately implemented for each function or role for implementing the technical idea of the present invention. For example, each of the control module 110, the extraction module 120, and / or the neural network 130 may be located in different physical devices or may be located in the same physical device. Also, depending on the implementation, the combination of software and / or hardware that constitute each of the control module 110, the extraction module 120, and / or the neural network 130 may also be located in different physical devices, The configurations located in different physical devices may be combined with each other organically to implement each of the modules.

또한, 본 명세서에서 모듈이라 함은, 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예컨대, 상기 모듈은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스(resource)의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것은 아님은 본 발명의 기술분야의 평균적 전문가에게는 용이하게 추론될 수 있다.In this specification, a module may mean a functional and structural combination of hardware for carrying out the technical idea of the present invention and software for driving the hardware. For example, the module may refer to a logical unit of a predetermined code and a hardware resource for executing the predetermined code, and does not necessarily mean a physically connected code or a kind of hardware. Can be easily deduced to the average expert in the field of the present invention.

상기 제어모듈(110)은 본 발명의 기술적 사상을 구현하기 위해 상기 판단시스템(100)에 포함된 다른 구성(예컨대, 상기 추출모듈(120) 및/또는 상기 뉴럴 네트워크(130) 등)을 제어할 수 있다. The control module 110 may control other configurations (e.g., the extraction module 120 and / or the neural network 130) included in the determination system 100 to implement the technical idea of the present invention .

상기 추출모듈(120)은, 소정의 피쳐(예컨대, J개의 피쳐들 중 j번째 피쳐)의 영향력(DI)을 판단하기 위해 인풋 데이터들 중 특정 클래스(예컨대, K개의 클래스 중 k번째 클래스)로 분류된 인풋 데이터 즉, k 클래스 인풋 데이터를 추출할 수 있다. 상기 추출모듈(120)은 k 클래스 인풋 데이터들로부터 각각 상기 피쳐(예컨대, j)의 인스턴스를 추출할 수 있음은 물론이다.The extraction module 120 may be configured to extract a specific class of input data (e.g., the kth class of K classes) to determine the influence DI of a given feature (e.g., jth feature of J features) Classified input data, that is, k-class input data, can be extracted. Of course, the extraction module 120 may extract an instance of the feature (e.g., j) from k-class input data, respectively.

그러면 상기 제어모듈(110)은 추출된 상기 k 클래스 인풋 데이터를 이용하여 상기 피쳐(예컨대, j)의 k 클래스의 부분 영향력을 판단할 수 있다. The control module 110 may then use the extracted k-class input data to determine the partial impact of the k-class of the feature (e.g., j).

상기 피쳐(예컨대, j)의 k 클래스의 부분 영향력이라 함은 개념적으로, k클래스로 분류된 인풋 데이터들을 이용하여 j라는 피쳐가 상기 분류에 영향을 미친 정도를 표현하는 정보일 수 있다.The partial influence of the k class of the feature (e.g., j) may conceptually be information representing the degree to which the feature j has affected the classification using the input data classified into the k class.

이때 본 발명의 기술적 사상에 의하면 j라는 피쳐가 상기 분류에 영향을 미친 정도는, j라는 피쳐가 특정 클래스(예컨대, k 클래스)로 분류되는데 영향을 미친 정도(jk 영향력이라 함)와 j라는 피쳐가 타 클래스(예컨대, r 클래스, 여기서 r은 k가 아니면서 K개의 클래스 중 어느 하나)로 분류되는데 영향을 미친 정도(jr 영향력이라 함)의 차이를 이용하는 정보일 수 있다.According to the technical idea of the present invention, the degree to which the feature j affects the classification depends on the degree of influence (called the jk influence) of the feature j as being classified into a specific class (for example, the class k) May be information that uses the difference in the degree of influence (referred to as jr influence) that is classified into another class (e.g., r class, where r is not k but any of K classes).

즉, j라는 피쳐가 해당 인풋 데이터를 k 클래스로 분류하는데 영향을 미친 정도와 j라는 피쳐가 해당 인풋 데이터를 r 클래스로 분류하는데 영향을 미친 정도가 같거나 유사하다면 적어도 j라는 피쳐는 인풋 데이터를 k클래스와 r클래스로 분류하는데에는 별로 중요하지 않은 피쳐임을 의미할 수 있다.That is, if the feature j has an effect on classifying the input data as the k class and the feature j has the same or similar effect on classifying the input data as the class r, This means that it is a feature that is not important to classify as k class and r class.

이러한 개념을 이용하여 특정 피쳐의 영향력(DI)을 연산하는 개념의 일 예를 도 2 및 도3을 참조하여 설명하면 다음과 같을 수 있다.An example of the concept of calculating the influence (DI) of a specific feature using this concept will be described with reference to FIG. 2 and FIG. 3 as follows.

도 2 내지 도3은 본 발명의 실시 예에 따른 피쳐 영향 판단방법을 개념적으로 설명하기 위한 도면이다. FIGS. 2 to 3 are conceptual diagrams illustrating a method for determining a feature effect according to an embodiment of the present invention.

도 2 및 도 3은, 인풋 레이어와 아웃풋 레이어만 존재하는 뉴럴 네트워크(130)를 일 예로 도시하고 있으며, 아웃풋 레이어의 각각의 출력은 분류할 클래스(Y1, Y2)를 나타낼 수 있다. 그리고 소정의 인풋 데이터는 도 2에 도시된 바와 같이 3개의 피쳐(x1, x2, x3)로 표현할 수 있다. 한편 상기 뉴럴 네트워크(130)에서 x1 노드와 Y1 간의 웨이트는 Wx1y1으로 표시하기로 하고, x1노드와 Y2간의 웨이트는 Wx1y2로 표현하기로 한다.2 and 3 illustrate a neural network 130 in which only an input layer and an output layer exist, and each output of the output layer may represent classes Y1 and Y2 to be classified. The predetermined input data can be represented by three features x1, x2, x3 as shown in Fig. On the other hand, in the neural network 130, the weight between the x1 node and Y1 is represented by Wx1y1, and the weight between the x1 node and Y2 is represented by Wx1y2.

그리고 도 2에 도시된 바와 같은 뉴럴 네트워크(130)는 도 3에 도시된 바와 같은 인풋 데이터(Sample 1 내지 Sample 4)가 입력되면, 입력된 인풋 데이터를 Class Y1(A 클래스로 약칭하기로 함) 또는 Class Y2(B 클래스로 약칭하기로 함)로 분류하는 네트워크일 수 있다. The input data (Sample 1 to Sample 4) as shown in FIG. 3 is input to the neural network 130 as shown in FIG. 2. The input data is classified into Class Y1 (abbreviated as Class A) Or Class Y2 (abbreviated as B class).

각각의 인풋 데이터는 도 3의 상단 표에 도시된 바와 같이 3개의 피쳐들(x1, x2, x3)를 포함하며, 각 피쳐의 인스턴스 역시 도 3의 상단 표에 도시된 바와 같을 수 있다.Each input data includes three features (x1, x2, x3) as shown in the top table of Fig. 3, and the instance of each feature may also be as shown in the top table of Fig.

예컨대, 제1인풋 데이터(Sample 1)의 x1피쳐는 1, x2 피쳐는 2, x3 피쳐는 3일 수 있고, 제2인풋 데이터(Sample 2)의 x1피쳐는 5, x2 피쳐는 5, x3 피쳐는 4일 수 있다. For example, the x1 feature of the first input data Sample 1 may be 1, the x2 feature may be 2, the x3 feature may be 3, the x1 feature of the second input data Sample 2 may be 5, the x2 feature may be 5, Lt; / RTI >

상기 뉴럴 네트워크(130)는 다수의 트레이닝 데이터를 통해 학습된 네트워크이며, 상기 뉴럴 네트워크(130)를 정의하는 파라미터 예컨대, 노드들간의 웨이트 파라미터는 도 3의 하단에 도시된 바와 같을 수 있다. The neural network 130 is a network learned through a plurality of training data. A parameter defining the neural network 130, for example, a weight parameter between nodes, may be as shown in the lower part of FIG.

그리고 상기 뉴럴 네트워크(130)를 통해 각각의 인풋 데이터들(Sample 1 내지 Sample 4)는 각각 , A, B, A, B로 분류되었다고 가정한다.It is assumed that each input data (Sample 1 to Sample 4) is classified into A, B, A, and B through the neural network 130, respectively.

이러한 경우 상기 추출모듈(120)은 전체 피쳐들(x1, x2, x3) 중 소정의 제1피쳐(x1)의 영향력을 연산하기 위해, 전체 클래스(A, B) 중 어느 하나의 제1클래스(A)로 분류된 인풋 데이터 즉, A 클래스 인풋 데이터(예컨대, Sample 1 및 Sample 3)를 추출할 수 있다. 상기 추출모듈(120)은 A 클래스 인풋 데이터들(예컨대, Sample 1 및 Sample 3)로부터 각각 상기 제1피쳐(x1)의 인스턴스(1 및 10)를 추출할 수 있음은 물론이다.In this case, the extraction module 120 may extract any one of the first classes (A, B) of all the classes (A, B) to calculate the influence of the predetermined first feature (x1) A) input data classified as A class input data (e.g., Sample 1 and Sample 3). The extraction module 120 may extract the instances 1 and 10 of the first feature x1 from the A class input data (e.g., Sample 1 and Sample 3), respectively.

그러면 상기 제어모듈(110)은 추출된 상기 A 클래스 인풋 데이터(예컨대, Sample 1 및 Sample 3)를 이용하여 상기 제1피쳐(x1)의 A 클래스의 부분 영향력을 판단할 수 있다. The control module 110 may then use the extracted A class input data (e.g., Sample 1 and Sample 3) to determine the partial influence of the A class of the first feature x1.

상기 제1피쳐(x1)의 A 클래스의 부분 영향력이라 함은 개념적으로, A 클래스로 분류된 인풋 데이터들을 이용하여 제1피쳐(x1)가 상기 분류에 영향을 미친 정도를 표현하는 정보일 수 있다.The partial influence of the A class of the first feature x1 may be conceptually information that represents the degree to which the first feature x1 has affected the classification using the input data classified into the A class .

그리고 전술한 바와 같이 제1피쳐(x1)가 상기 분류에 영향을 미친 정도는, A 클래스 인풋 데이터의 제1피쳐(x1)가 상기 A 클래스로 분류되는데 영향을 미친 정도(AA 영향력, WxAA)와 A 클래스 인풋 데이터의 제1피쳐(x1)가 타 클래스(예컨대, B 클래스)로 분류되는데 영향을 미친 정도(AB 영향력, WxAB)의 차이를 이용하는 정보일 수 있다.As described above, the degree to which the first feature x1 affects the classification depends on the degree to which the first feature x1 of the A class input data has been classified into the A class (AA influence, WxAA) (AB influence, WxAB) that affects the classification of the first feature (x1) of the A class input data into another class (for example, the B class).

한편, 제1피쳐(x1)의 AA 영향력(WxAA) 즉, A클래스 인풋 데이터의 제1피쳐(x1)가 A 클래스로 분류되는데 영향을 미친 정도는 A 클래스 인풋 데이터들(예컨대, Sample 1 및 Sample 3) 각각의 제1피쳐(x1)의 인스턴스 값(예컨대, 1 및 10)을 이용하여 결정되는, A 클래스 인풋 데이터들(예컨대, Sample 1 및 Sample 3)에서의 제1피쳐(x1)의 소정의 대표 값과 x1 및 A 클래스에 연계된 웨이트 파라미터(예컨대, Wx1y1)에 의해 결정될 수 있다. On the other hand, the degree to which the AA influence (WxAA) of the first feature (x1), that is, the influence of the first feature (x1) of the A class input data, on classification into the A class is determined by the A class input data 3) the first feature x1 in the A class input data (e.g., Sample 1 and Sample 3), which is determined using instance values (e.g., 1 and 10) of each first feature x1 And the weight parameter associated with the x1 and A classes (e.g., Wx1y1).

일 실시 예에 의하면, A 클래스 인풋 데이터들(예컨대, Sample 1 및 Sample 3)에서의 제1피쳐(x1)의 소정의 대표 값은 평균 값일 수 있지만 이에 한정되지는 않는다.According to one embodiment, the predetermined representative value of the first feature x1 in the A class input data (e.g., Sample 1 and Sample 3) may be an average value, but is not limited thereto.

그러면 A 클래스 인풋 데이터들(예컨대, Sample 1 및 Sample 3)에서의 제1피쳐(x1)의 대표 값 즉, 평균 값은 (1+10)/2 = 5.5이고, Wx1y1=2이므로, 제1피쳐(x1)의 AA 영향력(WxAA)은 11일 수 있다. The representative value or average value of the first feature x1 in the A class input data (e.g., Sample 1 and Sample 3) is (1 + 10) / 2 = 5.5 and Wx1y1 = (x1) may have an AA influence (WxAA) of 11.

이와 같은 방식으로 AB 영향력(WxAB)은 (10+1)/2 * 1 = 5.5일 수 있다.In this way, the AB influence (WxAB) can be (10 + 1) / 2 * 1 = 5.5.

그러면 제1피쳐(x1)의 A 클래스의 부분 영향력은 abs(WxAA- WxAB) = 5.5일 수 있다. (여기서 abs()는 절대값 함수를 나타낸다)Then, the partial influence of the A class of the first feature (x1) may be abs (WxAA - WxAB) = 5.5. (Where abs () represents an absolute value function)

결국 제1피쳐(x1)의 A 클래스의 부분 영향력(PDI)을 PDIx1A로 표현한다면, PDIx1A는 abs(WxAA - WxAB)를 포함한다.Finally, PDIx1A includes abs (WxAA - WxAB) if PDIx1A represents the partial impact power (PDI) of the A class of the first feature (x1).

그리고 도 2에서는 A 클래스 외에는 B 클래스 밖에 존재하지 않으므로, In FIG. 2, since there is only a class B other than the class A,

[수식 1][Equation 1]

PDIx1A = abs(WxAA - WxAB)PDIx1A = abs (WxAA - WxAB)

로 표현될 수 있다.. ≪ / RTI >

수식 1을 일반화하면 수식 2와 같을 수 있다.The generalization of Equation 1 can be the same as Equation 2.

[수식 2][Equation 2]

PDIjk =

Figure pat00001
여기서 r=! k이다.PDIjk =
Figure pat00001
Where r =! k.

또한 제1피쳐(x1)의 WxAA는 A 클래스 인풋 데이터들의 제1피쳐(x1)의 대표 값(예컨대, avg(A label x1))과 제1피쳐(x1) 및 A 클래스와 연계된 웨이트(Wx1y1)의 곱으로 표현될 수 있다.The WxAA of the first feature x1 also includes a representative value (e.g., avg (A label x1)) of the first feature x1 of the A class input data, a first feature x1 and a weight Wx1y1 ). ≪ / RTI >

[수식 3][Equation 3]

제1피쳐(x1)의 WxAA = avg(A label x1) * Wx1y1WxAA = avg (A label x1) * Wx1y1 of the first feature (x1)

그리고 이를 일반화하면 즉, k 클래스 인풋 데이터의 j 피쳐가 m 클래스로 분류되는 영향력 Wxkm은 수식 4와 같을 수 있다.In other words, the influence W x km, in which the j-feature of the k-class input data is classified into the m class, may be equal to Equation 4.

[수식 4][Equation 4]

Wxkm = avg(k label j) * Wjm Wxkm = avg (k label j) * Wjm

한편 제1피쳐(x1)의 영향력(DI)은 K개의 클래스 중 전부 또는 일부의 부분 영향력의 합으로 정의될 수 있다.On the other hand, the influence DI of the first feature x1 can be defined as the sum of the partial influences of all or some of the K classes.

일반적으로 제1피쳐(x1)의 영향력(DI)은 모든 클래스들 각각의 부분 영향력의 합 즉, 수식 2와 같이 정의될 수 있다.In general, the influence (DI) of the first feature (x1) can be defined as the sum of the partial influences of each class, i.e., Equation (2).

[수식 5][Equation 5]

DI =

Figure pat00002
PDIx1k DI =
Figure pat00002
PDIx1k

이를 일반화하면 j 피쳐의 영향력(DIj)는 다음과 같이 정의될 수 있다.In general terms, the influence of the j-feature (DIj) can be defined as follows.

[수식 6][Equation 6]

DIj =

Figure pat00003
PDIjk DIj =
Figure pat00003
PDIjk

하지만 아웃 풋 레이어의 정의에 따라 아웃 풋 레이어의 특정 노드는 분류하고자 하는 클래스가 아닐 수도 있으며, 다양한 이유로 실시 예에 따라서는 클래스들 전부가 아닌(또는 아웃풋 레이어의 전체 노드에 대해서가 아닌) 일부에 대해서만 부분 영향력이 합해질 수도 있다.However, depending on the definition of the output layer, a particular node of the output layer may not be the class to classify, and for some reason it may not be the case for all of the classes (or for the entire node of the output layer) Only partial impacts may be combined.

본 명세서에서는 제1피쳐(x1)의 영향력(DI)는 제1피쳐(x1)의 모든 클래스들 각각의 부분 영향력(PDI)의 합으로 정의하기로 한다. 즉, 수식 2와 같이 정의하기로 한다.In this specification, the influence (DI) of the first feature (x1) is defined as the sum of the partial influence powers (PDI) of each of all the classes of the first feature (x1). That is, it is defined as Equation (2).

따라서 도 2 및 도 3에서 제1피쳐(x1)의 B 클래스 부분 영향력(PDIx1B)을 수식 1과 마찬가지로 계산해보면 다음과 같을 수 있다.Therefore, the B class partial influence (PDIx1B) of the first feature x1 in FIGS. 2 and 3 can be calculated as in Equation 1 as follows.

B 클래스 인풋 데이터는 Sample 2 및 Sample 4이고, B 클래스 인풋 데이터들(예컨대, Sample 2 및 Sample 4)에서의 제1피쳐(x1)의 대표 값 즉, 평균 값은 (5+1)/2 = 3이고, 제1피쳐(x1)와 B 클래스에 연계된 웨이트 Wx1y2=1므로, 제1피쳐(x1)의 WxBB = 3일 수 있다. B class input data is Sample 2 and Sample 4 and the representative value or average value of the first feature x 1 in the B class input data (e.g., Sample 2 and Sample 4) is (5 + 1) / 2 = 3, and the weight Wx1y2 = 1 associated with the first feature (x1) and the B class can be WxBB = 3 of the first feature (x1).

마찬가지로 계산하면 제1피쳐(x1)의 WxBA = (5+1)/2 * (Wx1y1=2) = 6이 된다.Similarly, WxBA = (5 + 1) / 2 * (Wx1y1 = 2) = 6 of the first feature (x1) is calculated.

그러면 PDIx1B = abs(WxBA - Wxx2B) = 3이 될 수 있다.Then PDIx1B = abs (WxBA - Wxx2B) = 3.

그러면 제1피쳐의 영향력(DI)은 수식 5 또는 수식 6에 의해 Then, the influence (DI) of the first feature is calculated by Equation 5 or Equation 6

DIx1 = PDIx1A + PDIx1B = 5.5 + 3= 8.5가 될 수 있다.DIx1 = PDIx1A + PDIx1B = 5.5 + 3 = 8.5.

이와 같은 방식으로 제2피쳐(x2)의 영향력 및 제3피쳐(x3)의 영향력이 각각 계산될 수 있다.In this way, the influence of the second feature x2 and the influence of the third feature x3 can be respectively calculated.

한편 도 2 및 도 3에서는 아웃 풋 레이어가 2개의 노드인 경우을 예시적으로 설명하였다. 2 and 3 illustrate a case in which the output layer is two nodes.

하지만 아웃 풋 레이어가 3개의 노드를 가지는 경우, 즉, 인풋 데이터가 3개의 클래스로 분류될 경우를 가정하면 도 2 및 도 3에서 C 클래스까지 존재하는 경우일 수 있다.However, if the output layer has three nodes, that is, assuming that the input data is classified into three classes, it may be a case where C classes exist in FIGS. 2 and 3.

이러한 경우 x1피쳐의 영향력은 수식 5에 의해 다음과 같을 수 있다. In this case, the influence of the x1 feature can be expressed by Equation 5 as follows.

DI =

Figure pat00004
PDIx1k =PDIx1A + PDIx1B + PDIx1CDI =
Figure pat00004
PDIx1k = PDIx1A + PDIx1B + PDIx1C

그리고 수식 2에 의해, 즉, PDIjk =

Figure pat00005
에 의해Then, according to Equation 2, that is, PDIjk =
Figure pat00005
By

PDIx1A = abs(WxAA-WxAB) + abs(WxAA-WxAC)PDIx1A = abs (WxAA-WxAB) + abs (WxAA-WxAC)

PDIx1B = abs(WxBB-WxBA) + abs(WxBB-WxBC)PDIx1B = abs (WxBB-WxBA) + abs (WxBB-WxBC)

PDIx1C = abs(WxCC-WxCA) + abs(WxCC-WxCB)로 정의될 수 있다. PDIx1C = abs (WxCC-WxCA) + abs (WxCC-WxCB).

한편, 도 2 및 도 3에서는 인풋 레이어와 아웃풋 레이어만 존재하는 경우를 도시하였지만, 도 4에 도시된 바와 같이 뉴럴 네트워크(130)는 인풋 레이어와 아웃풋 레이어 외에 복수의 레이어들을 포함할 수 있다.2 and 3, only the input layer and the output layer are shown. However, as shown in FIG. 4, the neural network 130 may include a plurality of layers other than the input layer and the output layer.

도 4는 도 2와 비교하여 아웃풋 레이어가 다른 경우의 피쳐 영향 판단방법을 설명하기 위한 도면이다. 4 is a diagram for explaining a feature influence determination method in a case where the output layer is different from FIG.

우선 도 4a를 참조하면, 도 4a에 도시된 바와 같은 멀티 레이어들이 뉴럴 네트워크(130)에 포함될 수 있다. 그리고 A클래스로 라벨된 인풋 데이터의 첫 번째 피쳐의 벡터를 a 로 표현하기로 한다.Referring to FIG. 4A, multi-layers as shown in FIG. 4A may be included in the neural network 130. FIG. And it is made to represent the vector of the first feature of the input data with a label as A class.

이때 임의의 레이어에서 그 다음 레이어의 소정의 노드 j와 연결된 네트워크만을 표시하면 도 4b에 도시된 바와 같을 수 있다. In this case, only a network connected to a predetermined node j of the next layer in an arbitrary layer may be displayed as shown in FIG. 4B.

이때 노드 j는 (i1*Wi1j + i2*Wi2j + . . .+ in*Winj)로 표현될 수 있다.At this time, the node j can be expressed as (i1 * Wi1j + i2 * Wi2j + ... + in * Winj).

이와 같은 방식으로 멀티 레이어일 경우의 네트워크를 도식화하면 도 4c와 같을 수 있다. If the network in the case of a multi-layer is schematized in this manner, it can be as shown in FIG. 4C.

그러면 결국 A 클래스 인풋 데이터의 x1 피쳐가 인풋 데이터를 A 클래스로 분류하는 영향력은 수식 4와 유사하게 WXaA로 표현될 수 있다.The effect of classifying the input data as an A class in the event that the x1 feature of the A class input data eventually can be expressed as WX aA similarly to Equation 4.

또한 A 클래스 인풋 데이터의 x1 피쳐가 인풋 데이터를 B 클래스로 분류하는 영향력은 수식 4와 유사하게 WXaB로 표현될 수 있다.Also, the influence of the x1 feature of class A input data on classifying the input data as B class can be expressed as WX aB similarly to Equation 4.

이때 WXaA = avg(A label a) * WaA일 수 있다.At this time it may be WX aA = avg (A label a ) * WaA.

상술한 도 2 내지 도 4의 경우를 일반화하여 설명하면 다음과 같을 수 있다.The above-described cases of FIGS. 2 to 4 will be generalized as follows.

우선 본 발명의 뉴럴 네트워크(130)는 소프트맥스 회귀모델을 따르는 뉴럴 네트워크(130)로 가정할 수 있다. First, the neural network 130 of the present invention can be assumed to be a neural network 130 that follows a soft max regression model.

그리고 X는 인풋 데이터를 의미할 수 있다. And X can mean input data.

이때

Figure pat00006
로 표현될 수 있다.At this time
Figure pat00006
. ≪ / RTI >

각각 Xi는 J 개의 피쳐를 가질 수 있다. Each Xi can have J features.

한편 출력 값 Y는 K 개의 숫자를 가지는 백터

Figure pat00007
로 표현될 수 있다. On the other hand, the output value Y is a vector having K numbers
Figure pat00007
. ≪ / RTI >

그러면 i번째 인풋 데이터

Figure pat00008
로 표현될 수 있고,이러한 Xi의 출력 값은 yi로 표현될 수 있다. Then, the i-th input data
Figure pat00008
, And the output value of Xi can be expressed by yi.

만약 뉴럴 네트워크(130)가 인풋 데이터로 유전자 정보를 나타내고, 출력 값으로 특정 질병이 발현된 여부를 나타낸다고 가정할 수 있다. 그러면 Xi가 정상(질병이 미발현)인 경우 yi=[1,0], Xi가 비정상(질병이 발현)인 경우 yi = [0,1]로 표현될 수 있다. If the neural network 130 represents the genetic information as input data, it can be assumed that the output value indicates whether a specific disease has been expressed. Then yi = [1,0] if Xi is normal (disease is not expressed), and yi = [0,1] if Xi is abnormal (disease expression).

한편 소프트맥스 회귀 모델에 의하면 모델 파라미터

Figure pat00009
는 트레이닝 데이터를 통한 학습을 통해 결정될 수 있다.On the other hand, according to the soft max regression model,
Figure pat00009
Can be determined through learning through training data.

이러한 모델 파라미터를 통해 출력 함수 Yi는 Xi 에 대해 다음과 같이 정의될 수 있다. With this model parameter, the output function Yi can be defined as follows for Xi.

[수식 7][Equation 7]

Figure pat00010
Figure pat00010

이러한 수식에 의해 모델 파라미터가 학습되면, 전술한 바와 같이 각각의 피쳐들별로 영향력(도)(DI)가 판단될 수 있다.Once the model parameters are learned by these equations, the influence (DI) can be determined for each of the features as described above.

학습에 이용되는 데이터세트는 피쳐들의 영향력을 판단하는데 인풋으로 입력될 수 있다. The data set used for learning can be input as input to determine the influence of the features.

그리고 단순히 피쳐들 각각의 영향력을 판단하는데 그치지 않고, 영향력이 큰 순서대로 일정 개수(C)의 피쳐를 반환하는 피쳐 셀렉션을 수행한다면 이러한 피쳐 셀렉션을 수행하는 알고리즘(Discriminative Index(DI))은 다음의 도면 5에 도시된 바와 같을 수 있다.And if we do not merely judge the influence of each of the features, but perform a feature selection that returns a certain number of features (C) in descending order of influence, the algorithm for performing such feature selection (Discriminative Index (DI) May be as shown in FIG.

도 5는 본 발명의 실시 예에 따른 피쳐 영향 판단방법을 통해 피쳐 셀렉션을 수행하는 알고리즘의 일 예를 나타낸다.5 illustrates an example of an algorithm for performing feature selection through a feature effect determination method according to an embodiment of the present invention.

도 5를 참조하면,

Figure pat00011
는 X가 Y를 통해 K 클래스로 분류된 것을 나타낼 수 있다. 그리고 각각의
Figure pat00012
에 대해 모든 인스턴스들의 대표 값(예컨대, 평균값)을 갖도록 대표 값 벡터(예컨대, 평균값 벡터)
Figure pat00013
를 생성할 수 있다. Referring to Figure 5,
Figure pat00011
Can indicate that X is classified as K class through Y. And each
Figure pat00012
(E. G., The mean value vector) so as to have representative values (e. G., Average values)
Figure pat00013
Lt; / RTI >

그러면 각각의

Figure pat00014
에 대해,
Figure pat00015
를 연산할 수 있다.
Figure pat00016
는 k번째 소프트맥스 출력 값
Figure pat00017
와 상기
Figure pat00018
의 내적에 의해 연산될 수 있다. 이는 상술한 바와 같은 수식 4에 상응하는 벡터 표현일 수 있다.Then each
Figure pat00014
About,
Figure pat00015
Can be calculated.
Figure pat00016
Is the k-th soft max output value
Figure pat00017
And
Figure pat00018
As shown in FIG. This may be a vector expression corresponding to Equation 4 as described above.

한편 도 5에 도시된 바와 같이 특정 피쳐(예컨대, j=1)의 영향력 DIj 는 K 클래스 중에서 모든 서로 다른 페어(즉, KC2 개의) (a,b) 페어(여기서 a, b는 각각 K개의 클래스 중 어느 하나)의

Figure pat00019
의 값을 더하면 구해질 수 있다. 그리고 이는 전술한 수식 6과 실질적으로 동일한 의미를 가짐을 알 수 있다.On the other hand, as shown in FIG. 5, the influence DIj of a specific feature (for example, j = 1) includes all pairs (a, b) pairs (a and b) Of
Figure pat00019
Can be obtained. It can be seen that this has substantially the same meaning as in Equation (6).

이처럼 모든 피쳐들에 대해 각각 영향력(DI)가 연산되면, 영향력이 큰 순서대로 c 개의 피쳐(예컨대, 유전자 이름)를 상기 알고리즘은 출력할 수 있다.As each influence (DI) is computed for all of the features, the algorithm can output c features (e.g., gene names) in order of greatest influence.

본 발명의 기술적 사상에 따른 피쳐 영향 판단방법 및 이를 이용한 피쳐 셀렉션 방법을 TCGA RNA-seq 데이터에 적용하여 많은 암 종류에 대한 유니버설(universal) 바이오 마커를 찾는데 적용해보았다. 이렇게 찾아진 바이오 마커를 UCB(Universal Cancer Biomarker)로 정의하기로 한다.The feature influence determination method and the feature selection method using the feature effect according to the technical idea of the present invention were applied to the TCGA RNA-seq data to find a universal biomarker for many types of cancer. The biomarker thus found is defined as UCB (Universal Cancer Biomarker).

일 예에 따라 라벨(클래스)는 두 종류만을 갖도록 수행하였고, 하나는 종양(Tumor) RNA-seq sample 이고, 다른 하나는 정상(Normal) RNA-seq sample로 분류하도록 하였다.According to one example, the label (class) was performed to have only two types, one for the Tumor RNA-seq sample and the other for the Normal RNA-seq sample.

그리고 UCB를 찾기 위해, TCGA 12 cancer type RNA-seq 데이터를 이용하였다. 또한 UCB를 검증하기 위해 TCGA 12 cancer type RNA-seq data, GSE72056 RNA-seq data, GSE5364 microarray data를 이용하였다.To detect UCB, we used TCGA 12 cancer type RNA-seq data. To verify UCB, we used TCGA 12 cancer type RNA-seq data, GSE72056 RNA-seq data, and GSE5364 microarray data.

그리고 상기 UCB(Wx-14-UCB)는 다른 문헌("Large-cale RNA-Seq Transcriptome Analysis of 4043 Cancers and 548 Normal Tissue Controls across 12 TCGA Cancer Type", Peng-14-UCB)의 암 바이오마커에 비해 보다 일반적인 암 분류를 효과적으로 수행함을 알 수 있었다.The UCB (Wx-14-UCB) was compared with the cancer biomarkers of other references ("Large-cale RNA-Seq Transcriptome Analysis of 4043 Cancers and 548 Normal Tissue Controls across 12 TCGA Cancer Type", Peng-14-UCB) And more effective cancer classification.

그 결과(분류 정확도)는 다음과 같다.The result (classification accuracy) is as follows.

GSEGSE id id Cancer typeCancer type WxWx -14--14- UCBUCB PengPeng -14--14- UCBUCB GSE72056GSE72056 MelanomaMelanoma 93.35 93.35 75.49 75.49 GSE5364GSE5364 Multiple solid cancersMultiple solid cancers 85.29 85.29 -*- *

*GSE5364 데이터에 유전자가 포함되어 있지 않아서 측정 불가능 하였음.* GSE5364 The data was not available because the gene was not included.

TCGA 12 cancer type RNA-seq 데이터를 기반으로 추출된 상위 14개의 암 바이오마커를 비교한 결과, 기존 문헌에서 보고된 암 바이오마커(Peng-14-UCB) 보다 상기 UCB(Wx-14-UCB)가 두 종류의 암(악성 흑생종, melanoma; 다발성 고형암, multiple solid cancers)과 각 정상 샘플을 분류하는데 더 뛰어난 분류 정확도를 보임을 알 수 있다.The results of the comparison of the top 14 cancer biomarkers extracted based on the TCGA 12 cancer type RNA-seq data show that the UCB (Wx-14-UCB) is superior to the cancer biomarker (Peng-14-UCB) It can be seen that classification accuracy is better for classifying two types of cancer (malignant melanoma, multiple solid cancers, and each normal sample).

본 발명의 실시 예에 따른 피쳐 영향 판단방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 하드 디스크, 플로피 디스크, 광 데이터 저장장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.The feature effect determination method according to an exemplary embodiment of the present invention can be implemented as a computer-readable code on a computer-readable recording medium. A computer-readable recording medium includes all kinds of recording apparatuses in which data that can be read by a computer system is stored. Examples of the computer-readable recording medium include ROM, RAM, CD-ROM, magnetic tape, hard disk, floppy disk, optical data storage, and the like. In addition, the computer-readable recording medium may be distributed over network-connected computer systems so that computer readable codes can be stored and executed in a distributed manner. And functional programs, codes, and code segments for implementing the present invention can be easily inferred by programmers skilled in the art to which the present invention pertains.

본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims. Accordingly, the true scope of the present invention should be determined by the technical idea of the appended claims.

Claims (12)

J(J는 2 이상의 자연수)개의 피쳐(feature)들을 갖는 인풋 데이터들을 K(K는 2 이상의 자연수)개의 서로 다른 클래스들로 분류하는 뉴럴 네트워크를 이용하여 상기 J개의 피쳐들 중 적어도 하나 각각이 상기 분류에 영향을 미치는 정도를 판단하기 위한 방법에 있어서,
a)피쳐 영향 판단시스템이 J개의 피쳐들 중 특정 j 피쳐의 영향력(DIj)을 연산하기 위해, N개의 인풋 데이터들 중에서, K 개의 클래스들 중 특정 k 클래스로 분류된, k 클래스 인풋 데이터를 추출하는 단계;
b)상기 피쳐 영향 판단시스템이 추출한 상기 k 클래스 인풋 데이터의 상기 j 피쳐(xij)가 상기 k 클래스로 분류되는데 미치는 영향의 정도를 나타내는 kk 영향도를 연산하는 단계; 및
c)상기 피쳐 영향 판단시스템이 상기 k 클래스 인풋 데이터의 상기 j 피쳐(xij)가 상기 k 클래스가 아닌 r(r=!k) 클래스로 분류되는데 미치는 영향의 정도를 나타내는 데이터인 kr 영향도를 적어도 하나 연산하는 단계; 및
d)상기 피쳐 영향 판단시스템이 적어도 하나의 kr 영향도 각각과 상기 kk영향도 값의 차이에 기초하여 상기 영향력(DIj)을 연산하는 단계를 포함하는 피쳐 영향 판단방법.
Wherein each of at least one of the J features is selected by using a neural network that classifies input data having J features (J is a natural number of 2 or more) into different classes of K (K is a natural number of 2 or more) CLAIMS What is claimed is: 1. A method for determining a degree that affects classification,
a) The k-class input data, which is classified as a specific k-class among the K classes among the N input data, is extracted (extracted) from the input data to calculate the influence (DIj) of the specific j- ;
b) calculating a k k influence degree indicating the degree of influence of the j-feature input (x ij) extracted from the k-th class input data extracted by the feature effect determination system on classification into the k-th class; And
c) the feature influence determination system determines at least a kr influence, which is data representing the degree of influence on the classification of the j-feature (xij) of the k-class input data into the r (r = Computing one; And
d) calculating the influence (DIj) based on a difference between each of the at least one kr influence and the kk influence value.
제1항에 있어서, 상기 c)단계는,
상기 k 클래스를 제외한 모든 kr(r!=k) 영향도를 연산하는 것을 특징으로 하고,
상기 d)단계는,
상기 kk 영향도와 상기 모든 kr(r!=k) 영향도 각각 간의 차이에 기초하여 상기 영향력(DIj)을 연산하는 것을 특징으로 하는 피쳐 영향 판단방법
2. The method of claim 1, wherein step c)
And calculates kr (r! = K) influences except for the k class,
The step d)
, And said influence (DIj) is calculated based on a difference between said kk influence and each of said all kr (r! = K) influences
제1항에 있어서, 상기 b) 단계는,
상기 k 클래스 인풋 데이터와 상기 뉴럴 네트워크의 웨이트 파라미터 중에서 상기 j 피쳐와 상기 k 클래스 파라미터에 상응하는 k 웨이트 파라미터를 이용하여 kk영향도를 연산하는 것을 특징으로 하는 피쳐 영향 판단방법.
2. The method of claim 1, wherein step b)
Wherein the k k influence degree is calculated using the k-weight parameter corresponding to the j-feature parameter and the k-class input data among the k-class input data and the weight parameter of the neural network.
제3항에 있어서, 상기 b)단계는,
상기 k 클래스 인풋 데이터의 평균 벡터와 상기 k 웨이트 파라미터의 내적에 기초하여 상기 kk영향도를 연산하는 것을 특징으로 하는 피쳐 영향 판단방법.
4. The method of claim 3, wherein step b)
And the kk influence degree is calculated based on an inner product of the k-weight parameter and the mean vector of the k-class input data.
제1항에 있어서, 상기 피쳐 영향 판단방법은,
e)상기 피쳐 영향 판단시스템이 상기 N개의 인풋 데이터들 중에서 상기 k 클래스가 아닌 소정의 s(s=!k) 클래스로 분류된 s 클래스 인풋 데이터를 추출하는 단계;
f)상기 피쳐 영향 판단시스템이 추출한 상기 s 클래스 인풋 데이터의 상기 j 피쳐(xij)가 상기 k 클래스로 분류되는데 미치는 영향의 정도를 나타내는 제2 kk 영향도를 연산하는 단계; 및
g)상기 피쳐 영향 판단시스템이 상기 s 클래스 인풋 데이터의 상기 j 피쳐(xij)가 상기 k 클래스가 아닌 r(r=!k) 클래스로 분류되는데 미치는 영향의 정도를 나타내는 데이터인 제2 kr 영향도를 적어도 하나 연산하는 단계; 및
h)상기 피쳐 영향 판단시스템이 적어도 하나의 제2 kr 영향도 각각과 상기 제2 kk영향도의 차이에 더 기초하여 상기 영향력(DIj)을 연산하는 단계를 포함하는 피쳐 영향 판단방법.
2. The method of claim 1,
e) extracting s-class input data classified into a predetermined s (s =! k) class that is not the k-class among the N input data;
f) calculating a second kk influence degree indicating the degree of influence of the j-feature input (xij) extracted by the feature effect determination system on classification into the k-th class; And
g) a second kr effect, which is data indicative of the degree of influence the feature effect determination system has on classifying the j-feature (xij) of the s-class input data into the class r (r = Calculating at least one of And
h) calculating the influence (DIj) based on the difference between each of the at least one second kr influence and the second kk influence.
제1항에 있어서, 상기 g)단계는,
상기 k 클래스를 제외한 모든 제2 kr(r!=k) 영향도를 연산하는 것을 특징으로 하고,
상기 h)단계는,
상기 제2 kk 영향도와 상기 모든 제2 kr(r!=k) 영향도 각각 간의 차이에 기초하여 상기 영향력(DIj)을 연산하는 것을 특징으로 하는 피쳐 영향 판단방법
2. The method of claim 1, wherein step g)
(R! = K) influences except for the k class,
The step h)
Wherein the influence (DIj) is calculated based on the difference between the second kk influence and all the second kr (r! = K) influences
제5항에 있어서, 상기 피쳐 영향 판단방법은,
상기 피쳐 영향 판단 시스템이 상기 k 클래스가 아닌 모든 타 클래스 각각에대해 상기 e) 단계 내지 h)단계를 수행하는 것을 특징으로 하는 피쳐 영향 판단방법.
6. The method of claim 5,
Wherein the feature effect determination system performs steps e) through h) for each of the other classes that are not the k classes.
J(J는 2 이상의 자연수)개의 피쳐(feature)들을 갖는 인풋 데이터들을 K(K는 2 이상의 자연수)개의 서로 다른 클래스들로 분류하는 뉴럴 네트워크를 이용하여 상기 J개의 피쳐들 중 적어도 하나 각각이 상기 분류에 영향을 미치는 정도를 판단하기 위한 방법에 있어서,
a)피쳐 영향 판단시스템이 J개의 피쳐들 중 특정 j 피쳐의 영향력(DIj)을 연산하기 위해, N개의 인풋 데이터들 중에서, K 개의 클래스들 중 특정 k 클래스로 분류된, k 클래스 인풋 데이터를 추출하는 단계;
b)상기 피쳐 영향 판단시스템이 추출한 상기 k 클래스 인풋 데이터의 상기 j 피쳐)가 상기 k 클래스로 분류되는데 미치는 영향의 정도를 나타내는 kk 영향도를 연산하는 단계; 및
c)상기 피쳐 영향 판단시스템이 상기 k 클래스 인풋 데이터의 상기 j 피쳐가 상기 k 클래스가 아닌 모든 타 클래스로 분류되는데 미치는 영향의 정도를 나타내는 데이터인 kr 영향도를 연산하는 단계; 및
d)상기 피쳐 영향 판단시스템이 상기 kr 영향도 각각과 상기 kk영향도의 차이의 합인 j 피쳐의 k 클래스의 부분 영향력을 연산하는 단계; 및
e) 상기 N개의 인풋 데이터들 중에서, K 개의 클래스들 중 특정 k 클래스가 아닌 모든 타 클래스 각각에 대해 상기 a)단계 내지 d)단계를 수행하여 모든 클래스 각각에 대해 j 피쳐의 부분 영향력을 연산하는 단계; 및
f) 연산된 모든 부분 영향력을 이용하여 상기 영향력(DIj)을 연산하는 단계를 포함하는 피쳐 영향 판단방법.
Wherein each of at least one of the J features is selected by using a neural network that classifies input data having J features (J is a natural number of 2 or more) into different classes of K (K is a natural number of 2 or more) CLAIMS What is claimed is: 1. A method for determining a degree that affects classification,
a) The k-class input data, which is classified as a specific k-class among the K classes among the N input data, is extracted (extracted) from the input data to calculate the influence (DIj) of the specific j- ;
b) calculating a k k influence degree indicating the degree of influence on the classification of the j-feature of the k-class input data extracted by the feature influence determination system into the k-class; And
c) calculating a kr influence, which is data indicating the degree of influence of the feature effect determination system on classification of the j-feature of the k-class input data into all other classes other than the k-class; And
d) computing the partial influence of the k-th class of the j-feature, wherein the feature effect determination system is the sum of the kr influences and the difference of the kk influences; And
e) performing the steps a) through d) for each of the other classes of the N input data that are not specific k classes among the K classes to calculate the partial influence of the j feature for each of the classes step; And
f) calculating the influence (DIj) using all the calculated partial influences.
데이터 처리장치에 설치되며 제1항 내지 제8항 중 어느 한 항에 기재된 방법을 구현하기 위한 기록된 컴퓨터 프로그램.

A recorded computer program for implementing the method of any one of claims 1 to 8, installed in a data processing apparatus.

데이터 처리장치로서,
프로세서; 및 상기 프로세서에 의하여 실행되는 컴퓨터 프로그램을 저장하는 메모리를 포함하며,
상기 컴퓨터 프로그램은, 상기 프로세서에 의해 실행되는 경우, 상기 사용자 단말이 제1항 내지 제9항 중 어느 한 항에 기재된 방법을 수행하도록 하는 데이터 처리장치.
A data processing apparatus comprising:
A processor; And a memory for storing a computer program executed by the processor,
The computer program, when executed by the processor, causes the user terminal to perform the method recited in any one of claims 1 to 9.
J(J는 2 이상의 자연수)개의 피쳐(feature)들을 갖는 인풋 데이터들을 K(K는 2 이상의 자연수)개의 서로 다른 클래스들로 분류하는 뉴럴 네트워크를 이용하여 상기 J개의 피쳐들 중 적어도 하나 각각이 상기 분류에 영향을 미치는 정도를 판단하기 위한 피쳐 영향 판단시스템에 있어서,
J개의 피쳐들 중 특정 j 피쳐의 영향력(DIj)을 연산하기 위해, N개의 인풋 데이터들 중에서, K 개의 클래스들 중 특정 k 클래스로 분류된, k 클래스 인풋 데이터를 추출하기 위한 추출모듈;
상기 추출모듈에 의해 추출된 상기 k 클래스 인풋 데이터의 j 피쳐가 상기 k 클래스로 분류되는데 미치는 영향의 정도를 나타내는 kk 영향도를 연산하고, 상기 k 클래스 인풋 데이터의 상기 j 피쳐가 상기 k 클래스가 아닌 r(r=!k) 클래스로 분류되는데 미치는 영향의 정도를 나타내는 데이터인 kr 영향도를 적어도 하나 연산하며, 적어도 하나의 kr 영향도 값 각각과 상기 kk영향도 값의 차이에 기초하여 상기 j 피쳐의 영향력(DIj)을 연산하는 제어모듈을 포함하는 피쳐 영향 판단시스템.
Wherein each of at least one of the J features is selected by using a neural network that classifies input data having J features (J is a natural number of 2 or more) into different classes of K (K is a natural number of 2 or more) A feature effect determination system for determining a degree that affects classification,
An extraction module for extracting k-class input data classified as a specific k-class among K classes among N input data to calculate an influence (DIj) of a specific j-feature among J-features;
The k-th degree of influence of the j-th feature of the k-th input data extracted by the extraction module on the classification of the j-th feature into the k-th class is calculated, (k = 1, 2, 3, 4, 5, 6, 7, 8, 9, And a control module for calculating an influence (DIj) of the feature effect.
J(J는 2 이상의 자연수)개의 피쳐(feature)들을 갖는 인풋 데이터들을 K(K는 2 이상의 자연수)개의 서로 다른 클래스들로 분류하는 뉴럴 네트워크를 이용하여 상기 J개의 피쳐들 중 적어도 하나 각각이 상기 분류에 영향을 미치는 정도를 판단하기 위한 피쳐 영향 판단시스템에 있어서,
J개의 피쳐들 중 특정 j 피쳐의 영향력(DIj)을 연산하기 위해, N개의 인풋 데이터들 중에서, K 개의 클래스들 중 특정 k 클래스로 분류된, k 클래스 인풋 데이터를 추출하기 위한 추출모듈;
상기 추출모듈에 의해 추출된 상기 k 클래스 인풋 데이터의 상기 j 피쳐가 상기 k 클래스로 분류되는데 미치는 영향의 정도를 나타내는 kk 영향도를 연산하고, 상기 j 피쳐가 상기 k 클래스가 아닌 모든 타 클래스로 분류되는데 미치는 영향의 정도를 나타내는 데이터인 kr 영향도를 연산하며, 상기 kr 영향도 각각과 상기 kk영향도의 차이의 합인 k 클래스의 부분 영향력을 연산하기 위한 제어모듈을 포함하며,
상기 제어모듈은,
K 개의 클래스들에 포함된 모든 클래스들 각각에 대해 상기의 부분 영향력을 연산하고, 연산된 모든 부분 영향력을 이용하여 상기 영향력(DIj)을 연산하는 피쳐 영향 판단시스템.
Wherein each of at least one of the J features is selected by using a neural network that classifies input data having J features (J is a natural number of 2 or more) into different classes of K (K is a natural number of 2 or more) A feature effect determination system for determining a degree that affects classification,
An extraction module for extracting k-class input data classified as a specific k-class among K classes among N input data to calculate an influence (DIj) of a specific j-feature among J-features;
Calculating a k k influence degree indicating the degree of influence of the j feature of the k-class input data extracted by the extraction module on classification into the k class, and classifying the j feature into all other classes other than the k class And a control module for calculating a partial influence of k class which is a sum of the kr influences and the difference of the kk influences,
The control module includes:
Computing the partial influence for each of all classes included in the K classes, and computing the influence (DIj) using all the calculated partial influences.
KR1020170145553A 2017-11-02 2017-11-02 System and method for selecting optimized medical features using neural network KR20190050230A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170145553A KR20190050230A (en) 2017-11-02 2017-11-02 System and method for selecting optimized medical features using neural network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170145553A KR20190050230A (en) 2017-11-02 2017-11-02 System and method for selecting optimized medical features using neural network

Publications (1)

Publication Number Publication Date
KR20190050230A true KR20190050230A (en) 2019-05-10

Family

ID=66580752

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170145553A KR20190050230A (en) 2017-11-02 2017-11-02 System and method for selecting optimized medical features using neural network

Country Status (1)

Country Link
KR (1) KR20190050230A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102128852B1 (en) * 2020-03-30 2020-07-01 (주)위세아이텍 Device and method for visualizing key words of features extracted by applying principal component analysis to word vectors from text data

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
1. Peduzzi, P., Concato, J., Kemper, E., Holford, T. R., and Feinstein, A. R. (1996). A simulation study of the number of events per variable in logistic regression analysis. Journal of clinical epidemiology, 49(12), 13731379.
2. Identification of a multi-cancer gene expression biomarker for cancer clinical outcomes using a network-based algorithm Emmanuel Martinez-Ledesma, Roeland G.W. Verhaak& Victor Trevin Scientific Reports 5, Article number: 11966 (2015)
3. Large-scale RNA-Seq Transcriptome Analysis of 4043 Cancers and 548 Normal Tissue Controls across 12 TCGA Cancer Types.
Peng L, Bian XW, Li DK, Xu C, Wang GM, Xia QY, Xiong Q.
Scientific Reports (2015)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102128852B1 (en) * 2020-03-30 2020-07-01 (주)위세아이텍 Device and method for visualizing key words of features extracted by applying principal component analysis to word vectors from text data

Similar Documents

Publication Publication Date Title
Yan et al. Groupinn: Grouping-based interpretable neural network for classification of limited, noisy brain data
Shukri et al. Evolutionary static and dynamic clustering algorithms based on multi-verse optimizer
Mu et al. Classification under streaming emerging new classes: A solution using completely-random trees
Wahid et al. NaNOD: A natural neighbour-based outlier detection algorithm
Lee et al. Network dependence testing via diffusion maps and distance-based correlations
Kalra A survey on machine learning techniques in health care industry.
Wankhade et al. Data stream classification: a review
Jearanaiwongkul et al. An ontology-based approach to plant disease identification system
de Carvalho Brito et al. COVID-index: A texture-based approach to classifying lung lesions based on CT images
Sathyan et al. Interpretable AI for bio-medical applications
Zubi et al. Using data mining techniques to analyze crime patterns in the libyan national crime data
Windarto et al. K-Means Algorithm with Rapidminer in Clustering School Participation Rate in Indonesia
Qadrini Handling Unbalanced Data With Smote Adaboost
Jiang et al. Concave 1-norm group selection
US8495070B2 (en) Logic operation system
KR20190050230A (en) System and method for selecting optimized medical features using neural network
Ibragimova et al. Recognition algorithm models based on the selection of two-dimensional preference threshold functions
Srinivas et al. Hybrid Approach for Prediction of Cardiovascular Disease Using Class Association Rules and MLP.
Elezaj et al. Data-driven machine learning approach for predicting missing values in large data sets: A comparison study
Gharehchopogh et al. Automatic data clustering using farmland fertility metaheuristic algorithm
KR20190050229A (en) System and method for selecting optimized medical features using neural network
Agrawal Fundamentals of machine learning
CN114897290A (en) Evolution identification method and device of business process, terminal equipment and storage medium
KR20220097215A (en) Method for embedding normalization and electronic device using the same
Bintsi et al. A comparative study of population-graph construction methods and graph neural networks for brain age regression