KR102513822B1 - Extract, transform, load apparatus and method for controlling the same - Google Patents

Extract, transform, load apparatus and method for controlling the same Download PDF

Info

Publication number
KR102513822B1
KR102513822B1 KR1020210003683A KR20210003683A KR102513822B1 KR 102513822 B1 KR102513822 B1 KR 102513822B1 KR 1020210003683 A KR1020210003683 A KR 1020210003683A KR 20210003683 A KR20210003683 A KR 20210003683A KR 102513822 B1 KR102513822 B1 KR 102513822B1
Authority
KR
South Korea
Prior art keywords
management
column
source
source data
pop
Prior art date
Application number
KR1020210003683A
Other languages
Korean (ko)
Other versions
KR20220101787A (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 KR1020210003683A priority Critical patent/KR102513822B1/en
Publication of KR20220101787A publication Critical patent/KR20220101787A/en
Application granted granted Critical
Publication of KR102513822B1 publication Critical patent/KR102513822B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/254Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/221Column-oriented storage; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0486Drag-and-drop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/232Orthographic correction, e.g. spell checking or vowelisation
    • 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
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/20ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/70ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for mining of medical data, e.g. analysing previous cases of other patients

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Public Health (AREA)
  • Medical Informatics (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Epidemiology (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Primary Health Care (AREA)
  • Software Systems (AREA)
  • Pathology (AREA)
  • Biophysics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Molecular Biology (AREA)
  • Evolutionary Computation (AREA)
  • Human Computer Interaction (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Electrically Operated Instructional Devices (AREA)
  • Machine Translation (AREA)

Abstract

ELT 장치 및 그것의 제어방법이 제공된다. 상기 ELT 장치는 소스 테이블에 포함된 컬럼을 제공하고, 필요한 컬럼을 기 설정된 방식의 조작을 통해 선택할 수 있는 사용자 인터페이스를 제공하는 DML 매니지먼트, 소스 데이터를 수신하고, 수신된 소스 데이터를 자연어 처리하여, 적어도 하나의 컬럼을 추출하는 컬럼 매니지먼트, 상기 소스 테이블 사이의 연결고리를 설정하는 키 매니지먼트, 딥러닝 알고리즘을 통해 상기 소스 데이터와 관련된 예측을 수행하는 기능 매니지먼트, 상기 소스 데이터에서 사용되는 서로 다른 용어들에 대하여 특정 용어로 변경하는 코퍼스 매니지먼트 및 상기 기능 매니지먼트에서 수행된 예측 결과를 데이터베이스에 저장하고, ETL 시스템으로 상기 데이터베이스에 적재된 데이터를 출력하는 ETL 러너를 포함한다.An ELT device and a control method thereof are provided. The ELT device provides columns included in the source table, receives DML management, source data, and natural language processing of the received source data, Column management that extracts at least one column, key management that establishes a link between the source tables, function management that performs prediction related to the source data through a deep learning algorithm, and different terms used in the source data and an ETL runner that stores prediction results performed in the corpus management and function management for changing into specific terms in a database and outputs the data loaded in the database to the ETL system.

Figure R1020210003683
Figure R1020210003683

Description

ETL 장치 및 그것의 제어방법 {EXTRACT, TRANSFORM, LOAD APPARATUS AND METHOD FOR CONTROLLING THE SAME}ETL device and its control method {EXTRACT, TRANSFORM, LOAD APPARATUS AND METHOD FOR CONTROLLING THE SAME}

본 발명은 ETL 장치 및 그것의 제어방법에 관한 것이다. The present invention relates to an ETL device and a control method thereof.

데이터웨어하우스(DW:DataWarehouse) 구축시 적재(ETL: Extraction, Transformation, Loading) 프로그램 과정은 전체 데이터웨어하우스 구축 과정에 70%~80%의 노력이 들어가는 노동집약적인 과정이다. 따라서, 데이터웨어 하우스를 구축하는 경우 많은 인력이 투입된다The ETL (Extraction, Transformation, Loading) program process when building a data warehouse (DW: DataWarehouse) is a labor-intensive process that requires 70% to 80% of the effort in the entire data warehouse construction process. Therefore, a lot of manpower is invested in building a data warehouse.

기존의 암종 데이터 ETL 기술은 칼럼의 자연어에서 암의 재발 여부를 추출하기 어렵다는 문제가 있었다.Existing carcinoma data ETL technology has a problem in that it is difficult to extract whether or not cancer has recurred from the natural language of the column.

이는, 암종 데이터에 포함된 칼럼은, 동일한 의미를 뜻하는 단어가 다양한 용어로 표현되어 있으며, 특히 암의 재발 여부는, 의사의 판단이 개입되어야 하기 때문에, 종래의 ETL 기술만으로는, 암의 재발 여부를 추출하기 어렵다는 문제가 있다.This is because, in the columns included in the carcinoma data, words with the same meaning are expressed in various terms, and in particular, whether or not cancer recurrence requires a doctor's judgment, so conventional ETL technology alone cannot determine whether or not cancer recurrence There is a problem that it is difficult to extract .

공개특허공보 제10-2012-0018009호, 2012.02.29.공개Publication No. 10-2012-0018009, published on February 29, 2012

본 발명이 해결하고자 하는 과제는 입력되는 소스 데이터에서 사용자가 원하는 데이터를 예측할 수 있는 ETL 장치 및 그것의 제어방법을 제공하는 것이다.An object of the present invention is to provide an ETL device capable of predicting data desired by a user from input source data and a control method thereof.

본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present invention are not limited to the problems mentioned above, and other problems not mentioned will be clearly understood by those skilled in the art from the description below.

상술한 과제를 해결하기 위한 본 발명의 일 면에 따른 ETL 장치는 소스 테이블에 포함된 컬럼을 제공하고, 필요한 컬럼을 기 설정된 방식의 조작을 통해 선택할 수 있는 사용자 인터페이스를 제공하는 DML 매니지먼트, 소스 데이터를 수신하고, 수신된 소스 데이터를 자연어 처리하여, 적어도 하나의 컬럼을 추출하는 컬럼 매니지먼트, 상기 소스 테이블 사이의 연결고리를 설정하는 키 매니지먼트, 딥러닝 알고리즘을 통해 상기 소스 데이터와 관련된 예측을 수행하는 기능 매니지먼트, 상기 소스 데이터에서 사용되는 서로 다른 용어들에 대하여 특정 용어로 변경하는 코퍼스 매니지먼트 및 상기 기능 매니지먼트에서 수행된 예측 결과를 데이터베이스에 저장하고, ETL 시스템으로 상기 데이터베이스에 적재된 데이터를 출력하는 ETL 러너를 포함한다.An ETL device according to an aspect of the present invention for solving the above problems is DML management and source data providing a user interface that provides columns included in a source table and selects necessary columns through a predetermined manipulation. Receiving and natural language processing of the received source data, column management for extracting at least one column, key management for establishing a link between the source tables, and performing prediction related to the source data through a deep learning algorithm Function management, corpus management that changes different terms used in the source data into specific terms, and ETL that stores prediction results performed in the function management in a database and outputs the data loaded into the database as an ETL system. include runners

실시 예에 있어서, 상기 DML 매니지먼트는, 상기 필요한 컬럼을 포함하는 소스 테이블에 상기 기 설정된 방식의 조작이 가해지는 것에 근거하여, 상기 필요한 컬럼을 포함하는 소스 테이블을 팝업창으로 출력 한다.In an embodiment, the DML management outputs the source table including the required column to a pop-up window based on the preset type of manipulation being applied to the source table including the required column.

실시 예에 있어서, 상기 기 설정된 방식의 조작은, 드래그 앤 드롭(Drag & Drop) 조작이고, 상기 DML 매니지먼트는, 상기 드래그 앤 드롭을 통해 팝업창으로 출력된 소스 테이블에 포함된 컬럼이 사용자에 의해 선택되는 경우, 선택된 컬럼을 나타내는 컬럼 리스트를 출력하는 것을 특징으로 한다.In an embodiment, the preset operation is a drag and drop operation, and in the DML management, a column included in a source table output to a pop-up window through the drag and drop is selected by the user. If it is, it is characterized in that a column list indicating the selected column is output.

실시 예에 있어서, 상기 DML 매니지먼트는, 복수의 소스 테이블이 복수의 팝업창으로 출력된 상태에서, 상기 복수의 팝업창 중 제1 팝업창에 포함된 제1 컬럼에서 시작된 드래그 조작이, 상기 복수의 팝업창 중 상기 제1 팝업창과 다른 제2 팝업창에 포함된 제2 컬럼에서 드롭되는 것에 근거하여, 상기 제1 및 제2 컬럼을 포함하는 코드를 생성하는 것을 특징으로 한다.In an embodiment, in the DML management, in a state in which a plurality of source tables are output to a plurality of pop-up windows, a drag operation started from a first column included in a first pop-up window among the plurality of pop-up windows A code including the first and second columns is generated based on a drop in a second column included in a second pop-up window different from the first pop-up window.

실시 예에 있어서, 상기 컬럼 매니지먼트는, 소스 컬럼 및 타겟 컬럼을 선택받고, 상기 기능 매니지먼트에서 제공하는 함수를 선택받으며, 선택된 소스 컬럼, 타겟 컬럼 및 함수를 매핑하는 것을 특징으로 한다.In an embodiment, the column management is characterized in that a source column and a target column are selected, a function provided by the function management is selected, and the selected source column, target column and function are mapped.

실시 예에 있어서, 상기 기능 매니지먼트는, 사용자 요청에 근거하여, 적어도 하나의 기능을 수행하는 함수를 추가하는 것을 특징으로 한다.In an embodiment, the function management is characterized by adding a function that performs at least one function based on a user request.

실시 예에 있어서, 상기 기능 매니지먼트는, 소스 데이터와, 상기 소스 데이터와 관련된 결과를 태깅하여, 상기 딥러닝 알고리즘을 학습시키고, 학습된 딥러닝 알고리즘에 새로운 소스 데이터를 입력하여, 상기 새로운 소스 데이터와 관련된 예측을 수행하는 것을 특징으로 한다.In an embodiment, the function management tags source data and a result related to the source data to learn the deep learning algorithm, inputs new source data to the learned deep learning algorithm, and It is characterized by performing related predictions.

실시 예에 있어서, 상기 기능 매니지먼트는, 상기 소스 데이터와 관련된 예측 결과를 상기 ETL 러너를 통해 상기 데이터베이스에 적재하고, 적재된 예측 결과를 이용하여 상기 딥러닝 알고리즘을 추가로 학습시키는 것을 특징으로 한다.In an embodiment, the function management is characterized in that the prediction result related to the source data is loaded into the database through the ETL runner, and the deep learning algorithm is additionally trained using the loaded prediction result.

실시 예에 있어서, 상기 서로 다른 용어는, 특정 단어에 대한 오기, 오탈자 및 약어를 포함하고, 상기 코퍼스 매니지먼트는, 상기 특정 단어에 대한 오기, 오탈자 및 약어 중 적어도 하나를 상기 특정 단어로 변경하는 것을 특징으로 한다.In an embodiment, the different terms include misspellings, misspellings, and abbreviations for a specific word, and the corpus management changes at least one of the misspellings, misspellings, and abbreviations for the specific word to the specific word. to be characterized

실시 예에 있어서, ETL 장치는, 타겟 병명을 선택하도록 형성된 ETL 컨피규레이션을 더 포함 한다.In an embodiment, the ETL device further includes an ETL configuration configured to select a target disease name.

실시 예에 있어서, 상기 소스 데이터는, 영상 판독 데이터인 것을 특징으로 한다.In an embodiment, the source data may be image reading data.

실시 예에 있어서, 상기 소스 데이터와 관련된 예측은, 암이 재발했는지 여부 및 암이 재발한 경우, 재발한 장기의 위치 중 적어도 하나를 포함한다.In an embodiment, the prediction related to the source data includes at least one of whether cancer has recurred and, if cancer has recurred, the location of a recurring organ.

본 발명의 일 실시 예에 따른 ETL 장치의 제어방법은, DML 매니지먼트가 소스 테이블에 포함된 컬럼을 제공하고, 필요한 컬럼을 기 설정된 방식의 조작을 통해 선택할 수 있는 사용자 인터페이스를 제공하는 단계, 컬럼 매니지먼트가 소스 데이터를 수신하고, 수신된 소스 데이터를 자연어 처리하여, 적어도 하나의 컬럼을 추출하는 단계, 키 매니지먼트가 상기 소스 테이블 사이의 연결고리를 설정하는 단계, 기능 매니지먼트가 딥러닝 알고리즘을 통해 상기 소스 데이터와 관련된 예측을 수행하는 단계, 코퍼스 매니지먼트가 상기 소스 데이터에서 사용되는 서로 다른 용어들에 대하여 특정 용어로 변경하는 단계 및 ETL 러너가 상기 기능 매니지먼트에서 수행된 예측 결과를 데이터베이스에 저장하고, ETL 시스템으로 상기 데이터베이스에 적재된 데이터를 출력하는 단계를 포함한다.A control method of an ETL apparatus according to an embodiment of the present invention includes the steps of providing a user interface through which DML management provides columns included in a source table and selects a necessary column through a predetermined manipulation, column management receiving source data, processing the received source data in natural language, and extracting at least one column; key management establishing a link between the source tables; function management using a deep learning algorithm to extract the source data. Performing data-related prediction, corpus management changing different terms used in the source data into specific terms, and the ETL runner storing the prediction results performed in the function management in a database, and the ETL system and outputting the data loaded into the database as

실시 예에 있어서, 상기 DML 매니지먼트는, 상기 필요한 컬럼을 포함하는 소스 테이블에 상기 기 설정된 방식의 조작이 가해지는 것에 근거하여, 상기 필요한 컬럼을 포함하는 소스 테이블을 팝업창으로 출력 한다.In an embodiment, the DML management outputs the source table including the required column to a pop-up window based on the preset type of manipulation being applied to the source table including the required column.

실시 예에 있어서, 상기 DML 매니지먼트는, 복수의 소스 테이블이 복수의 팝업창으로 출력된 상태에서, 상기 복수의 팝업창 중 제1 팝업창에 포함된 제1 컬럼에서 시작된 드래그 조작이, 상기 복수의 팝업창 중 상기 제1 팝업창과 다른 제2 팝업창에 포함된 제2 컬럼에서 드롭되는 것에 근거하여, 상기 제1 및 제2 컬럼을 포함하는 코드를 생성하는 것을 특징으로 한다.In an embodiment, in the DML management, in a state in which a plurality of source tables are output to a plurality of pop-up windows, a drag operation started from a first column included in a first pop-up window among the plurality of pop-up windows A code including the first and second columns is generated based on a drop in a second column included in a second pop-up window different from the first pop-up window.

실시 예에 있어서, 상기 컬럼 매니지먼트는, 소스 컬럼 및 타겟 컬럼을 선택받고, 상기 기능 매니지먼트에서 제공하는 함수를 선택받으며, 선택된 소스 컬럼, 타겟 컬럼 및 함수를 매핑하는 것을 특징으로 한다.In an embodiment, the column management is characterized in that a source column and a target column are selected, a function provided by the function management is selected, and the selected source column, target column and function are mapped.

실시 예에 있어서, 상기 기능 매니지먼트는, 소스 데이터와, 상기 소스 데이터와 관련된 결과를 태깅하여, 상기 딥러닝 알고리즘을 학습시키고, 학습된 딥러닝 알고리즘에 새로운 소스 데이터를 입력하여, 상기 새로운 소스 데이터와 관련된 예측을 수행하는 것을 특징으로 한다.In an embodiment, the function management tags source data and a result related to the source data to learn the deep learning algorithm, inputs new source data to the learned deep learning algorithm, and It is characterized by performing related predictions.

실시 예에 있어서, 상기 기능 매니지먼트는, 상기 소스 데이터와 관련된 예측 결과를 상기 ETL 러너를 통해 상기 데이터베이스에 적재하고, 적재된 예측 결과를 이용하여 상기 딥러닝 알고리즘을 추가로 학습시키는 것을 특징으로 한다.In an embodiment, the function management is characterized in that the prediction result related to the source data is loaded into the database through the ETL runner, and the deep learning algorithm is additionally trained using the loaded prediction result.

실시 예에 있어서, 상기 서로 다른 용어는, 특정 단어에 대한 오기, 오탈자 및 약어를 포함하고, 상기 코퍼스 매니지먼트는, 상기 특정 단어에 대한 오기, 오탈자 및 약어 중 적어도 하나를 상기 특정 단어로 변경하는 것을 특징으로 한다.In an embodiment, the different terms include misspellings, misspellings, and abbreviations for a specific word, and the corpus management changes at least one of the misspellings, misspellings, and abbreviations for the specific word to the specific word. to be characterized

상술한 과제를 해결하기 위한 본 발명의 다른 실시 예에 따른 프로그램은, 하드웨어인 컴퓨터와 결합되어 상술한 방법 중 어느 하나의 방법을 수행하기 위해 매체에 저장된다. A program according to another embodiment of the present invention for solving the above problems is combined with a computer, which is hardware, and stored in a medium to perform any one of the above methods.

본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Other specific details of the invention are included in the detailed description and drawings.

본 발명에 따르면, 본 발명은, 사용자의 의견이 포함된 소스 데이터에서 소스 데이터와 관련된 최적화된 예측을 수행할 수 있는 ETL 장치를 제공할 수 있다.According to the present invention, it is possible to provide an ETL apparatus capable of performing an optimized prediction related to source data in source data including user opinions.

본 발명에 따르면, 본 발명은, 암의 전이 여부 및 전이 위치를 최적화된 방법으로 예측하고, 예측된 결과를 적재하여 용이하게 활용할 수 있는 최적화된 ETL 장치 및 그것의 제어방법을 제공할 수 있다.According to the present invention, it is possible to provide an optimized ETL device and a control method thereof, which can predict metastasis of cancer and the location of metastasis in an optimized way, load the predicted results, and easily utilize them.

본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description below.

도 1은 본 발명의 ETL 장치를 개략적으로 나타낸 개념도이다.
도 2는 본 발명의 대표적인 ETL 장치의 제어방법을 설명하기 위한 흐름도이다.
도 3, 도 4 및 도 5는 도 2에서 살펴본 제어방법을 설명하기 위한 개념도이다.
1 is a conceptual diagram schematically illustrating an ETL device according to the present invention.
2 is a flowchart illustrating a control method of a representative ETL device of the present invention.
3, 4 and 5 are conceptual diagrams for explaining the control method described in FIG. 2 .

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. Advantages and features of the present invention, and methods of achieving them, will become clear with reference to the detailed description of the following embodiments taken in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in various different forms, only these embodiments are intended to complete the disclosure of the present invention, and are common in the art to which the present invention belongs. It is provided to fully inform the person skilled in the art of the scope of the invention, and the invention is only defined by the scope of the claims.

본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.Terminology used herein is for describing the embodiments and is not intended to limit the present invention. In this specification, singular forms also include plural forms unless specifically stated otherwise in a phrase. As used herein, "comprises" and/or "comprising" does not exclude the presence or addition of one or more other elements other than the recited elements. Like reference numerals throughout the specification refer to like elements, and “and/or” includes each and every combination of one or more of the recited elements. Although "first", "second", etc. are used to describe various components, these components are not limited by these terms, of course. These terms are only used to distinguish one component from another. Accordingly, it goes without saying that the first element mentioned below may also be the second element within the technical spirit of the present invention.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used in this specification may be used with meanings commonly understood by those skilled in the art to which the present invention belongs. In addition, terms defined in commonly used dictionaries are not interpreted ideally or excessively unless explicitly specifically defined.

이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 ETL 장치를 개략적으로 나타낸 개념도이다.1 is a conceptual diagram schematically illustrating an ETL device according to the present invention.

본 발명의 ETL(Extract, Transform, Load) 장치는, 추출, 변환 및 저장을 수행하는 것이 가능한 장치를 의미한다.An ETL (Extract, Transform, Load) device of the present invention refers to a device capable of performing extraction, transformation, and storage.

상기 ETL 장치는, 컴퓨터일 수 있다. 본 명세서에서 '컴퓨터'는 연산처리를 수행하여 사용자에게 결과를 제공할 수 있는 다양한 장치들이 모두 포함된다. 예를 들어, 컴퓨터는 데스크 탑 PC, 노트북(Note Book) 뿐만 아니라 스마트폰(Smart phone), 태블릿 PC, 셀룰러폰(Cellular phone), 피씨에스폰(PCS phone; Personal Communication Service phone), 동기식/비동기식 IMT-2000(International Mobile Telecommunication-2000)의 이동 단말기, 팜 PC(Palm Personal Computer), 개인용 디지털 보조기(PDA; Personal Digital Assistant) 등도 해당될 수 있다. 또한, 컴퓨터는 클라이언트로부터 요청을 수신하여 정보처리를 수행하는 서버가 해당될 수 있다.The ETL device may be a computer. In this specification, 'computer' includes all various devices that can perform calculation processing and provide results to users. For example, a computer includes not only a desktop PC and a notebook (Note Book) but also a smart phone, a tablet PC, a cellular phone, a PCS phone (Personal Communication Service phone), synchronous/asynchronous A mobile terminal of IMT-2000 (International Mobile Telecommunication-2000), a Palm Personal Computer (Palm PC), and a Personal Digital Assistant (PDA) may also be applicable. In addition, the computer may correspond to a server that receives a request from a client and performs information processing.

또한, 본 발명의 일 실시 예에 따른 ETL 장치는, 이동 단말기일 수 있다. Also, the ETL device according to an embodiment of the present invention may be a mobile terminal.

본 명세서에서 설명되는 이동 단말기에는 휴대폰, 스마트 폰(smart phone), 노트북 컴퓨터(laptop computer), 디지털방송용 단말기, PDA(personal digital assistants), PMP(portable multimedia player), 네비게이션, 슬레이트 PC(slate PC), 태블릿 PC(tablet PC), 울트라북(ultrabook), 웨어러블 디바이스(wearable device, 예를 들어, 워치형 단말기 (smartwatch), 글래스형 단말기 (smart glass), HMD(head mounted display)) 등이 포함될 수 있다. Mobile terminals described in this specification include mobile phones, smart phones, laptop computers, digital broadcasting terminals, personal digital assistants (PDAs), portable multimedia players (PMPs), navigation devices, and slate PCs. , tablet PC, ultrabook, wearable device (eg, watch type terminal (smartwatch), glass type terminal (smart glass), HMD (head mounted display)), etc. may be included there is.

도 1을 참조하면, 본 발명의 일 실시 예에 따른 ETL 장치(100)는, DML(Data Manipulation Language) 매니지먼트(Management)(110), 컬럼(Column) 매니지먼트(120), 키(key) 매니지먼트(130), 기능(function) 매니지먼트(140), 코퍼스(Corpus) 매니지먼트(150) 및 ETL러너(Runner)(160)를 포함할 수 있다.Referring to FIG. 1 , the ETL device 100 according to an embodiment of the present invention includes data manipulation language (DML) management 110, column management 120, and key management ( 130), function management 140, corpus management 150, and ETL runner 160.

상기 ETL 장치(100)에 포함된 각 구성들(110, 120, 130, 140, 150, 160)은 유닛(Unit) 또는 모듈(Module)로 형성될 수 있다.Each component 110, 120, 130, 140, 150, 160 included in the ETL device 100 may be formed as a unit or module.

또한, 상기 각 구성들(110, 120, 130, 140, 150, 160)은, 하나의 프로세서에서 구현된 소프트웨어적인 컴포넌트(Component)로 이해될 수도 있다.In addition, each of the components 110, 120, 130, 140, 150, and 160 may be understood as a software component implemented in one processor.

또한, 상기 각 구성들(110, 120, 130, 140, 150, 160)은, 각각 물리적으로 독립된 별도의 칩 또는 모듈로 형성될 수 있다.In addition, each of the components 110, 120, 130, 140, 150, and 160 may be formed as a separate physically independent chip or module.

이하에서는, 각 구성들의 기능/동작/제어방법에 대하여 보다 구체적으로 살펴보기로 한다.Hereinafter, the function / operation / control method of each component will be examined in more detail.

본 발명의 ETL 장치(100)는, 의료 데이터를 기반으로 컬럼을 추출하고, 추출된 컬럼을 사용자가 원하는 데이터로 변환하며, 변환된 데이터를 적재하는 기능/동작/제어를 수행할 수 있다.The ETL device 100 of the present invention may perform functions/operations/controls of extracting a column based on medical data, converting the extracted column into data desired by a user, and loading the converted data.

일 예로, 본 발명의 ETL 장치(100)는, 암종 데이터에서 암의 전이 여부를 판단하기 위해 암종과 관련된 컬럼(단어)를 추출하고, 추출된 컬럼들을 이용하여 암의 전이 여부를 예측(판단)하며, 암이 전이되었다고 판단되는 경우, 전이된 장기의 위치를 예측하고, 예측된 결과를 데이터베이스에 적재하여, 추후 진료에 용이하게 활용할 수 있는 사용자 인터페이스(또는 프로그램)를 제공할 수 있다.For example, the ETL device 100 of the present invention extracts columns (words) related to cancer types in order to determine metastasis of cancer from carcinoma data, and predicts (determines) metastasis of cancer using the extracted columns. And, when it is determined that the cancer has metastasized, the location of the metastasized organ can be predicted, the predicted results loaded into a database, and a user interface (or program) that can be easily utilized for future treatment can be provided.

이하에서는, 첨부된 도면을 참조하여, 본 발명의 ETL 장치(100)가 소스 데이터를 기반으로 사용자가 원하는 결과를 예측하고, 예측 결과를 적재하는 방법에 대하여 보다 구체적으로 살펴보기로 한다.Hereinafter, with reference to the accompanying drawings, a detailed description will be given of how the ETL device 100 of the present invention predicts a result desired by a user based on source data and loads the predicted result.

도 2는 본 발명의 대표적인 ETL 장치의 제어방법을 설명하기 위한 흐름도이고, 도 3, 도 4 및 도 5는 도 2에서 살펴본 제어방법을 설명하기 위한 개념도이다.2 is a flowchart for explaining a control method of a representative ETL apparatus according to the present invention, and FIGS. 3, 4 and 5 are conceptual diagrams for explaining the control method described in FIG. 2 .

도 2를 참조하면, 우선, ETL 장치(100)의 DML 매니지먼트(110)는, 소스 데이블에 포함된 컬럼을 제공하고, 필요한 컬럼을 기 설정된 방식의 조작을 통해 선택할 수 있는 사용자 인터페이스를 제공할 수 있다(S210).Referring to FIG. 2 , first, the DML management 110 of the ETL device 100 may provide columns included in the source table and provide a user interface capable of selecting necessary columns through a preset manipulation. Yes (S210).

도 3을 참조하면, 상기 DML 매니지먼트(110)는, 필요한 컬럼을 포함하는 소스 테이블(300)에 상기 기 설정된 방식의 조작이 가해지는 것에 근거하여, 상기 필요한 컬럼(310)을 포함하는 소스 테이블을 팝업창(320)으로 출력할 수 있다.Referring to FIG. 3 , the DML management 110 converts the source table including the necessary columns 310 based on the predetermined manipulation applied to the source table 300 including the necessary columns. It can be output to the pop-up window 320.

각 소스 테이블(300)은, 적어도 하나의 컬럼(310)을 포함할 수 있으며, 상기 컬럼(310)은, 컬럼 매니지먼트에서 자연어 처리를 통해 소스 데이터로부터 추출되거나, 데이터베이스에 기 저장되어 있을 수 있다.Each source table 300 may include at least one column 310, and the column 310 may be extracted from source data through natural language processing in column management or previously stored in a database.

상기 기 설정된 방식의 조작은, 드래그 앤 드롭(Drag & Drop) 조작일 수 있다.The preset type of manipulation may be a drag and drop manipulation.

상기 DML 매니지먼트(110)는, 상기 드래그 앤 드롭을 통해 팝업창으로 출력된 소스 테이블에 포함된 컬럼이 사용자에 의해 선택되는 경우, 선택된 컬럼을 나타내는 컬럼 리스트(330)를 출력할 수 있다.The DML management 110 may output a column list 330 indicating the selected column when a user selects a column included in the source table output to the pop-up window through the drag and drop.

상기 DML 매니지먼트(110)는, 복수의 소스 테이블이 복수의 팝업창(320, 340)으로 출력된 상태에서, 상기 복수의 팝업창 중 제1 팝업창(320)에 포함된 제1 컬럼에서 시작된 드래그 조작이, 상기 복수의 팝업창 중 상기 제1 팝업창과 다른 제2 팝업창(340)에 포함된 제2 컬럼에서 드롭되는 것에 근거하여, 상기 제1 및 제2 컬럼을 포함하는 코드(예를 들어, SQL 코드)를 생성할 수 있다.The DML management 110, in a state in which a plurality of source tables are output to a plurality of pop-up windows 320 and 340, a drag operation initiated from a first column included in a first pop-up window 320 among the plurality of pop-up windows, Based on being dropped in the second column included in the second pop-up window 340 different from the first pop-up window among the plurality of pop-up windows, codes (eg, SQL codes) including the first and second columns are generated. can create

생성된 코드는, 도 3에 도시된 것과 같이, SQL 텍스트 탭에 자동으로 작성, 저장될 수 있다.The generated code can be automatically written and saved in the SQL text tab, as shown in FIG. 3 .

DML 매니지먼트(110)는, 상기 드래그 앤 드롭의 조작을 통해 팝업창이 출력되고, 팝업창에 포함된 컬럼에 가해지는 드래그 앤 드롭 조작을 통해, SQL 코드를 자동으로 작성/생성할 수 있으며, 상기 컬럼 리스트(330)를 통해 코드에 추가될 정보를 추가하거나, 수정할 수 있다.The DML management 110 outputs a pop-up window through the drag-and-drop operation, automatically writes/creates SQL code through a drag-and-drop operation applied to columns included in the pop-up window, and the column list Through 330, information to be added to the code can be added or modified.

이와 같이, 본 발명의 ETL 장치는, 소스 데이터에 포함된 컬럼을 간단한 드래그 앤 드롭 조작을 통해 손쉽게 SQL 코딩을 수행할 수 최적화된 사용자 인터페이스를 제공할 수 있다.As such, the ETL apparatus of the present invention can provide an optimized user interface through which SQL coding can be easily performed through a simple drag-and-drop operation of columns included in source data.

상기 DML 매니지먼트(110)에서 작성된 코드에 기반하여, ETL 장치(100)는, 입력된 소스 데이터에서 자연어 처리를 수행할 수 있다.Based on the code written in the DML management 110, the ETL device 100 may perform natural language processing on input source data.

한편, 도 2로 돌아가, 컬럼 매니지먼트(120)는, 소스 데이터를 수신하고, 수신된 소스 데이터를 자연어 처리하여, 적어도 하나의 컬럼을 추출할 수 있다(S220).Meanwhile, returning to FIG. 2 , the column management 120 may receive source data, process the received source data in natural language, and extract at least one column (S220).

또한, 도 4에 도시된 것과 같이, 컬럼 매니지먼트(120)는, 소스, 컬럼(Source Column) 및 타겟 컬럼(Target Column)을 선택받을 수 있으며, 기능 매니지먼트(140)에서 제공하는 함수(예를 들어, Python Function)을 선택받을 수 있다. 이 경우, 컬럼 매니지먼트(120)는, 선택된 소스 컬럼, 타겟 컬럼 및 함수를 매핑(Mapping)할 수 있다.In addition, as shown in FIG. 4, the column management 120 may receive selection of a source, a column (Source Column), and a target column (Target Column), and functions provided by the function management 140 (for example, , Python Function). In this case, the column management 120 may map the selected source column, target column, and function.

컬럼 매니지먼트(120)는, 소스 데이터에 포함된 정보를 자연어 처리하여, 적어도 하나의 컬럼을 추출할 수 있다. 상기 컬럼은, 일 예로, 의료 행위(예를 들어, 암 진단)과 관련된 정보일 수 있다.The column management 120 may extract at least one column by natural language processing of information included in the source data. The column may be, for example, information related to medical practice (eg, cancer diagnosis).

상기 컬럼 매니지먼트(120)에서 추출된 컬럼은, 앞서 설명한 DML 매니지먼트(110)에서 사용될 수도 있다.Columns extracted from the column management 120 may be used in the DML management 110 described above.

상기 소스 데이터는, 영상 판독 데이터일 수 있으며, 일 예로, 사용자(예를 들어, 의료인, 의사)가 영상(예를 들어, EMR(Electronic Medical Records))을 보고 진단한 내용을 포함하는 텍스트일 수 있다.The source data may be image reading data, and may be, for example, text including contents of a diagnosis made by a user (eg, medical practitioner, doctor) by viewing an image (eg, Electronic Medical Records (EMR)). there is.

컬럼 매니지먼트(120)는, 일 예로, 소스 데이터를 자연어 처리하여, 소스 데이터와 관련된 예측(예를 들어, 암의 재발 유무에 대한 정보)를 소스 데이터에 태깅(매핑)할 수 있다.The column management 120 may, for example, process the source data in natural language, and tag (map) a prediction related to the source data (eg, information on whether or not cancer recurs) to the source data.

키 매니지먼트(130)는, 소스 테이블 간 연결고리를 설정하도록 형성될 수 있다(S230).The key management 130 may be configured to establish a link between source tables (S230).

예를 들어, 키 매니지먼트(130)는, 도 3에 도시된 것과 같이, 제1 팝업창(320)에 대응하는 제1 소스 테이블과, 제2 팝업창(340)에 대응하는 제2 소스 테이블 사이의 연결고리(또는 연결관계)(예를 들어, 제1 소스 테이블에서 컬럼이 선택되고, 제2 소스 테이블에서 컬럼이 선택된 경우, 이들을 연결하는 코드(연결고리))를 설정/수정하도록 형성될 수 있다.For example, as shown in FIG. 3 , the key management 130 connects a first source table corresponding to the first pop-up window 320 and a second source table corresponding to the second pop-up window 340 . It can be formed to set / modify a link (or linkage) (eg, when a column is selected in the first source table and a column is selected in the second source table, a code (link) connecting them).

기능 매니지먼트(140)는, 딥러닝 알고리즘을 통해 소스 데이터와 관련된 예측을 수행할 수 있다(S240).The function management 140 may perform prediction related to the source data through a deep learning algorithm (S240).

상기 기능 매니지먼트(140)는, 딥러닝 알고리즘을 통해 학습된 인공지능 모델(AI 모델)이 구비(포함)될 수 있다. The function management 140 may include (include) an artificial intelligence model (AI model) learned through a deep learning algorithm.

상기 기능 매니지먼트(140)에 포함된 딥러닝 알고리즘은, 일 예로, 도 4에 도시된 것과 같이, 파이썬(Python)으로 구현될 수 있으며, 소스 데이터가 입력되면, Data Preparation, Modeling, Model evaluation & Tunning 과정을 거쳐 가공된 정보를 적용하여, 소스 데이터로부터 원하는 결과를 예측(Prediction)할 수 있다.The deep learning algorithm included in the function management 140 can be implemented in Python, for example, as shown in FIG. 4, and when source data is input, Data Preparation, Modeling, Model evaluation & Tunning By applying the information processed through the process, a desired result can be predicted from the source data.

본 발명에서의 딥러닝 알고리즘은, 입력값으로 입력된 소스 데이터와 관련된 예측을 수행할 수 있으며, 상기 소스 데이터와 관련된 예측은, 일 예로, 암이 재발했는지 여부 및 암이 재발한 경우, 재발한 장기의 위치 중 적어도 하나를 포함할 수 있다.The deep learning algorithm in the present invention may perform prediction related to source data input as an input value, and the prediction related to the source data may, for example, determine whether or not cancer has recurred and, if the cancer has recurred, recurrence rate. It may include at least one of the location of the organ.

또한, 상기 기능 매니지먼트(140)는, 도 4에 도시된 것과 같이, 사용자 요청에 근거하여, 적어도 하나의 기능을 수행하는 함수를 추가할 수 있다.Also, as shown in FIG. 4 , the function management 140 may add a function that performs at least one function based on a user request.

기능 매니지먼트(140)에서 추가된 함수는, 딥러닝 알고리즘에서 추가로 구동되거나, 컬럼 매니지먼트(140)에서 선택되어, 소스 컬럼 및 타켓 컬럼과 매핑될 수 있다.A function added in the function management 140 may be additionally driven in a deep learning algorithm or selected in the column management 140 and mapped to a source column and a target column.

기능 매니지먼트(140)는, 소스 데이터와, 상기 소스 데이터와 관련된 결과를 태깅(tagging)하여, 딥러닝 알고리즘(또는 AI 모델)을 학습시킬 수 있다.The function management 140 may learn a deep learning algorithm (or AI model) by tagging source data and results related to the source data.

기능 매니지먼트(140)는, 학습된 딥러닝 알고리즘(또는 AI 모델)에 새로운 소스 데이터를 입력하여, 새로운 소스 데이터와 관련된 예측을 수행할 수 있다.The function management 140 may perform prediction related to the new source data by inputting new source data to the learned deep learning algorithm (or AI model).

코퍼스 매니지먼트(150)는, 소스 데이터에서 사용되는 서로 다른 용어들에 대하여 특정 용어로 변경할 수 있다(S250).The corpus management 150 may change different terms used in the source data into specific terms (S250).

소스 데이터에는, 동일한 내용을 의미하더라도, 서로 다른 용어들로 기재되어 있을 수 있다.In the source data, even if they mean the same content, they may be described in different terms.

여기서, 상기 서로 다른 용어는, 특정 단어에 대한 오기, 오탈자 및 약어 등을 포함할 수 있다.Here, the different terms may include misspellings, misspellings, and abbreviations for specific words.

코퍼스 매니지먼트(150)는, 상기 특정 단어에 대한 오기, 오탈자 및 약어 중 적어도 하나를 특정 단어로 변경할 수 있다. 이를 통해, 본 발명은, 이와 같이 다양한 용어들(서로 다른 용어들)로 기재된 소스 데이터가 입력되더라도, 용어 통일을 수행할 수 있으며, 용어를 통일 시킨 후 컬럼을 추출하고, 추출된 컬럼을 통해 작성된 코드를 기반으로 하여 최적화된 예측을 수행하는 ETL 장치를 제공할 수 있다.The corpus management 150 may change at least one of misspellings, misspellings, and abbreviations of the specific word to a specific word. Through this, the present invention can perform term unification even if source data written in various terms (different terms) is input, extracts columns after unifying terms, and writes through the extracted columns. It is possible to provide an ETL device that performs an optimized prediction based on a code.

이후, ETL 러너(160)는, 기능 매니지먼트(140)에서 수행된 예측 결과를 데이터베이스에 저장하고, ETL 시스템으로 데이터베이스에 적재된 데이터(예를 들어, 복수의 소스 데이터에 대한 예측 결과)를 출력(전송, 제공)하거나, 사용자에게 제공할 수 있다.Thereafter, the ETL runner 160 stores the prediction result performed by the function management 140 in a database, and outputs data (eg, prediction results for a plurality of source data) loaded into the database by the ETL system ( transmission, provision), or may be provided to the user.

또한, 앞서 설명한 기능 매니지먼트(140)는, 소스 데이터와 관련된 예측 결과를 상기 ETL 러너(160)를 통해 데이터베이스에 적재하고, 적재된 예측 결과를 이용하여 딥러닝 알고리즘을 추가로 학습(또는 업데이트)시킬 수도 있다.In addition, the function management 140 described above loads prediction results related to the source data into the database through the ETL runner 160, and additionally learns (or updates) the deep learning algorithm using the loaded prediction results. may be

또한, 본 발명의 ETL 장치(100)는, 도 4에 도시된 것과 같이, 타겟 병명(예를 들어, 타겟 암종)을 선택하도록 형성된 ETL 컨피규레이션(configuration)을 더 포함할 수 있다.In addition, as shown in FIG. 4 , the ETL device 100 of the present invention may further include an ETL configuration configured to select a target disease name (eg, target cancer type).

이상에서 설명한 내용은, 도 5를 참조하면 보다 명확해질 것이다.What has been described above will become clearer with reference to FIG. 5 .

본 발명의 ETL 장치(100)는, 소스 데이터(예를 들어, EMR 데이터, 영상 판독 데이터, 판독지)가 수신되면, 자연어 처리를 통해 컬럼을 추출할 수 있다.When source data (eg, EMR data, image read data, read paper) is received, the ETL apparatus 100 of the present invention may extract a column through natural language processing.

ETL 장치는, 타겟 암종을 설정받고, 타겟/소스 컬럼을 설정받을 수 있으며, 적어도 하나의 기능을 수행하는 함수를 추가받을 수 있다. 또한, ETL 장치는, 타겟/소스 컬럼 및 함수를 매핑하여 저장할 수 있다.The ETL device may receive a target cancer type, a target/source column, and an additional function that performs at least one function. Also, the ETL device may map and store target/source columns and functions.

ETL 장치는, 소스 데이터로부터 적어도 하나의 예측을 수행할 수 있는 딥러닝 알고리즘(또는 AI 모델)을 구비할 수 있다.The ETL device may have a deep learning algorithm (or AI model) capable of performing at least one prediction from source data.

상기 딥러닝 알고리즘은, 소스 데이터 및 소스 데이터와 관련된 결과(즉, 사용자에 의해 판독된 예측 결과)가 매핑된 데이터(즉, 태깅 데이터)를 이용하여, 딥러닝 알고리즘을 학습시킬 수 있다.The deep learning algorithm may train the deep learning algorithm using data (ie, tagging data) to which source data and a result related to the source data (ie, a prediction result read by a user) are mapped.

이후, 학습된 알고리즘에, 소스 데이터와 관련된 결과가 없는, 새로운 소스 데이터가 입력되면, 새로운 소스 데이터와 관련된 예측을 수행할 수 있다.Thereafter, if new source data without results related to the source data is input to the learned algorithm, prediction related to the new source data may be performed.

소스 데이터는, 앞서 설명한 것과 같이, 영상을 판독한 데이터(예를 들어, 판독지 데이터)일 수 있으며, 상기 소스 데이터는, 동일한 의미를 가지더라도 서로 다른 용어로 기재되어 있을 수 있다.As described above, the source data may be data obtained by reading an image (eg, reading paper data), and the source data may be described in different terms even though they have the same meaning.

이에, 본 발명의 ETL 장치는, 코퍼스 매니지먼트를 이용하여, 서로 다른 용어를 동일한 용어로 통일시킬 수 있다.Accordingly, the ETL device of the present invention may unify different terms into the same term using corpus management.

또한, 본 발명의 ETL 장치는, 상기 딥러닝 알고리즘에 자연어 처리된 소스 데이터를 입력하여, 소스 데이터와 관련된 예측을 수행할 수 있다.In addition, the ETL device of the present invention may perform prediction related to the source data by inputting natural language processed source data to the deep learning algorithm.

여기서, 소스 데이터와 관련된 예측은, 일 예로, 암이 재발했는지 여부 및 암이 재발한 경우 재발한 장기의 위치 중 적어도 하나를 포함할 수 있다.Here, the prediction related to the source data may include, for example, at least one of whether or not the cancer has recurred and, if the cancer has recurred, the location of the recurring organ.

또한, 본 발명의 ETL 장치는, 소스 데이터와 관련된 예측 결과를 데이터베이스에 적재하고, ETL 시스템 구동 시 적재된 데이터를 이용할 수 있다.In addition, the ETL apparatus of the present invention may load prediction results related to source data into a database and use the loaded data when driving the ETL system.

도 4를 참조하면, 컬럼 매니지먼트에서 타겟 컬럼, 소스 컬럼 및 함수가 선택되면, 선택된 타겟 컬럼, 소스 컬럼 및 함수를 이용하여, ETL이 실행될 수 있으며, ETL이 실행된다는 것은, 소스 데이터에서, 소스 컬럼, 타겟 컬럼 및 함수가 매핑되어 추출 및 적재된다는 것을 의미할 수 있다.Referring to FIG. 4, when a target column, source column, and function are selected in column management, ETL can be executed using the selected target column, source column, and function, and ETL being executed means that in the source data, the source column , it can mean that the target columns and functions are mapped to be extracted and loaded.

이 때, ETL 장치는, 딥러닝 알고리즘을 이용할 수 있으며, 딥러닝 알고리즘을 주기적으로/실시간으로 학습/업데이트시킬 수 있다.At this time, the ETL device may use a deep learning algorithm, and may learn/update the deep learning algorithm periodically/real time.

본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.Steps of a method or algorithm described in connection with an embodiment of the present invention may be implemented directly in hardware, implemented in a software module executed by hardware, or implemented by a combination thereof. A software module may include random access memory (RAM), read only memory (ROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory, hard disk, removable disk, CD-ROM, or It may reside in any form of computer readable recording medium well known in the art to which the present invention pertains.

이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다. Although the embodiments of the present invention have been described with reference to the accompanying drawings, those skilled in the art to which the present invention pertains can be implemented in other specific forms without changing the technical spirit or essential features of the present invention. you will be able to understand Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive.

Claims (20)

소스 테이블에 포함된 컬럼을 제공하고, 필요한 컬럼을 기 설정된 방식의 조작을 통해 선택할 수 있는 사용자 인터페이스를 제공하는 DML 매니지먼트;
소스 데이터를 수신하고, 수신된 소스 데이터를 자연어 처리하여, 적어도 하나의 컬럼을 추출하는 컬럼 매니지먼트;
상기 소스 테이블 사이의 연결고리를 설정하는 키 매니지먼트;
딥러닝 알고리즘을 통해 상기 소스 데이터와 관련된 예측을 수행하는 기능 매니지먼트;
상기 소스 데이터에서 사용되는 서로 다른 용어들에 대하여 특정 용어로 변경하는 코퍼스 매니지먼트; 및
상기 기능 매니지먼트에서 수행된 예측 결과를 데이터베이스에 저장하고, ETL 시스템으로 상기 데이터베이스에 적재된 데이터를 출력하는 ETL 러너를 포함하고,
상기 DML 매니지먼트는,
상기 필요한 컬럼을 포함하는 소스 테이블에 상기 기 설정된 방식의 조작이 가해지는 것에 근거하여, 상기 필요한 컬럼을 포함하는 소스 테이블을 팝업창으로 출력하며,
상기 기 설정된 방식의 조작은, 드래그 앤 드롭(Drag & Drop) 조작이고,
상기 DML 매니지먼트는,
상기 드래그 앤 드롭을 통해 팝업창으로 출력된 소스 테이블에 포함된 컬럼이 사용자에 의해 선택되는 경우, 선택된 컬럼을 나타내는 컬럼 리스트를 출력하며,
상기 DML 매니지먼트는,
복수의 소스 테이블이 복수의 팝업창으로 출력된 상태에서, 상기 복수의 팝업창 중 제1 팝업창에 포함된 제1 컬럼에서 시작된 드래그 조작이, 상기 복수의 팝업창 중 상기 제1 팝업창과 다른 제2 팝업창에 포함된 제2 컬럼에서 드롭되는 것에 근거하여, 상기 제1 및 제2 컬럼을 포함하는 코드를 생성하고,
상기 컬럼 매니지먼트는,
소스 컬럼 및 타겟 컬럼을 선택받고,
상기 기능 매니지먼트에서 제공하는 Python Function을 선택받으며,
선택된 소스 컬럼, 타겟 컬럼 및 Python Function을 매핑하고,
상기 키 매니지먼트는,
상기 제1 팝업창에 대응하는 제1 소스 테이블과, 상기 제2 팝업창에 대응하는 제2 소스 테이블 사이의 연결고리를 설정 또는 수정하도록 형성되며,
상기 소스 데이터와 관련된 예측은,
암이 재발했는지 여부 및 상기 암이 재발한 경우 재발한 장기의 위치를 포함하는 것을 특징으로 하는 ETL 장치.
DML management that provides a user interface that provides columns included in the source table and selects necessary columns through preset manipulation;
a column management unit that receives source data, processes the received source data in natural language, and extracts at least one column;
Key management for establishing a link between the source tables;
function management that performs prediction related to the source data through a deep learning algorithm;
Corpus management that changes different terms used in the source data into specific terms; and
An ETL runner that stores prediction results performed in the function management in a database and outputs data loaded in the database to an ETL system;
The DML management,
Outputting a source table including the necessary columns to a pop-up window based on the preset type of manipulation being applied to the source table including the necessary columns;
The preset type of operation is a drag and drop operation,
The DML management,
When a column included in the source table output to the pop-up window is selected by the user through the drag-and-drop, a column list indicating the selected column is output;
The DML management,
In a state where a plurality of source tables are output to a plurality of pop-up windows, a drag operation started from a first column included in a first pop-up window among the plurality of pop-up windows is included in a second pop-up window different from the first pop-up window among the plurality of pop-up windows. Based on the drop in the second column, generating a code including the first and second columns,
The column management,
Source column and target column are selected,
The Python Function provided by the above function management is selected,
Map selected source columns, target columns and Python functions,
The key management,
It is formed to set or modify a link between a first source table corresponding to the first pop-up window and a second source table corresponding to the second pop-up window,
The prediction associated with the source data is,
An ETL device comprising whether or not cancer has recurred and, when the cancer has recurred, the location of a recurring organ.
삭제delete 삭제delete 삭제delete 삭제delete 제 1 항에 있어서,
상기 기능 매니지먼트는,
사용자 요청에 근거하여, 적어도 하나의 기능을 수행하는 함수를 추가하는 것을 특징으로 하는 ETL 장치.
According to claim 1,
The function management,
An ETL device characterized by adding a function that performs at least one function based on a user request.
제 1 항에 있어서,
상기 기능 매니지먼트는,
소스 데이터와, 상기 소스 데이터와 관련된 결과를 태깅하여, 상기 딥러닝 알고리즘을 학습시키고,
학습된 딥러닝 알고리즘에 새로운 소스 데이터를 입력하여, 상기 새로운 소스 데이터와 관련된 예측을 수행하는 것을 특징으로 하는 ETL 장치.
According to claim 1,
The function management,
Learning the deep learning algorithm by tagging source data and results related to the source data;
An ETL device, characterized in that by inputting new source data to the learned deep learning algorithm, and performing prediction related to the new source data.
제 7 항에 있어서,
상기 기능 매니지먼트는,
상기 소스 데이터와 관련된 예측 결과를 상기 ETL 러너를 통해 상기 데이터베이스에 적재하고, 적재된 예측 결과를 이용하여 상기 딥러닝 알고리즘을 추가로 학습시키는 것을 특징으로 하는 ETL 장치.
According to claim 7,
The function management,
ETL apparatus, characterized in that for loading a prediction result related to the source data into the database through the ETL runner, and further learning the deep learning algorithm using the loaded prediction result.
제 1 항에 있어서,
상기 서로 다른 용어는, 특정 단어에 대한 오기, 오탈자 및 약어를 포함하고,
상기 코퍼스 매니지먼트는,
상기 특정 단어에 대한 오기, 오탈자 및 약어 중 적어도 하나를 상기 특정 단어로 변경하는 것을 특징으로 하는 ETL 장치.
According to claim 1,
The different terms include misspellings, misspellings, and abbreviations for specific words,
The corpus management,
and changing at least one of misspellings, misspellings, and abbreviations of the specific word to the specific word.
제 1 항에 있어서,
타겟 병명을 선택하도록 형성된 ETL 컨피규레이션을 더 포함하는 ETL 장치.
According to claim 1,
The ETL device further comprising an ETL configuration configured to select a target disease name.
제 1 항에 있어서,
상기 소스 데이터는,
영상 판독 데이터인 것을 특징으로 하는 ETL 장치.
According to claim 1,
The source data is
An ETL device characterized in that it is image reading data.
삭제delete DML 매니지먼트가 소스 테이블에 포함된 컬럼을 제공하고, 필요한 컬럼을 기 설정된 방식의 조작을 통해 선택할 수 있는 사용자 인터페이스를 제공하는 단계;
컬럼 매니지먼트가 소스 데이터를 수신하고, 수신된 소스 데이터를 자연어 처리하여, 적어도 하나의 컬럼을 추출하는 단계;
키 매니지먼트가 상기 소스 테이블 사이의 연결고리를 설정하는 단계;
기능 매니지먼트가 딥러닝 알고리즘을 통해 상기 소스 데이터와 관련된 예측을 수행하는 단계;
코퍼스 매니지먼트가 상기 소스 데이터에서 사용되는 서로 다른 용어들에 대하여 특정 용어로 변경하는 단계; 및
ETL 러너가 상기 기능 매니지먼트에서 수행된 예측 결과를 데이터베이스에 저장하고, ETL 시스템으로 상기 데이터베이스에 적재된 데이터를 출력하는 단계를 포함하고,
상기 DML 매니지먼트는,
상기 필요한 컬럼을 포함하는 소스 테이블에 상기 기 설정된 방식의 조작이 가해지는 것에 근거하여, 상기 필요한 컬럼을 포함하는 소스 테이블을 팝업창으로 출력하며,
상기 기 설정된 방식의 조작은, 드래그 앤 드롭(Drag & Drop) 조작이고,
상기 DML 매니지먼트는,
상기 드래그 앤 드롭을 통해 팝업창으로 출력된 소스 테이블에 포함된 컬럼이 사용자에 의해 선택되는 경우, 선택된 컬럼을 나타내는 컬럼 리스트를 출력하며,
상기 DML 매니지먼트는,
복수의 소스 테이블이 복수의 팝업창으로 출력된 상태에서, 상기 복수의 팝업창 중 제1 팝업창에 포함된 제1 컬럼에서 시작된 드래그 조작이, 상기 복수의 팝업창 중 상기 제1 팝업창과 다른 제2 팝업창에 포함된 제2 컬럼에서 드롭되는 것에 근거하여, 상기 제1 및 제2 컬럼을 포함하는 코드를 생성하고,
상기 컬럼 매니지먼트는,
소스 컬럼 및 타겟 컬럼을 선택받고,
상기 기능 매니지먼트에서 제공하는 Python Function을 선택받으며,
선택된 소스 컬럼, 타겟 컬럼 및 Python Function을 매핑하고,
상기 키 매니지먼트는,
상기 제1 팝업창에 대응하는 제1 소스 테이블과, 상기 제2 팝업창에 대응하는 제2 소스 테이블 사이의 연결고리를 설정 또는 수정하도록 형성되며,
상기 소스 데이터와 관련된 예측은,
암이 재발했는지 여부 및 상기 암이 재발한 경우 재발한 장기의 위치를 포함하는 것을 특징으로 하는, ETL 장치의 제어방법.
providing a user interface through which the DML management provides columns included in the source table and selects necessary columns through manipulation in a preset manner;
extracting at least one column by column management by receiving source data and processing the received source data in natural language;
establishing a link between the source tables by key management;
Function management performing prediction related to the source data through a deep learning algorithm;
changing, by corpus management, different terms used in the source data into specific terms; and
An ETL runner storing prediction results performed in the function management in a database and outputting data loaded in the database to an ETL system,
The DML management,
Outputting a source table including the necessary columns to a pop-up window based on the preset type of manipulation being applied to the source table including the necessary columns;
The preset type of operation is a drag and drop operation,
The DML management,
When a column included in the source table output to the pop-up window is selected by the user through the drag-and-drop, a column list indicating the selected column is output;
The DML management,
In a state where a plurality of source tables are output to a plurality of pop-up windows, a drag operation started from a first column included in a first pop-up window among the plurality of pop-up windows is included in a second pop-up window different from the first pop-up window among the plurality of pop-up windows. Based on the drop in the second column, generating a code including the first and second columns,
The column management,
Source column and target column are selected,
The Python Function provided by the above function management is selected,
Map selected source columns, target columns and Python functions,
The key management,
It is formed to set or modify a link between a first source table corresponding to the first pop-up window and a second source table corresponding to the second pop-up window,
The prediction associated with the source data is,
A method for controlling an ETL device, comprising: whether or not cancer has recurred and, when the cancer has recurred, the location of a recurring organ.
삭제delete 삭제delete 삭제delete 제 13 항에 있어서,
상기 기능 매니지먼트는,
소스 데이터와, 상기 소스 데이터와 관련된 결과를 태깅하여, 상기 딥러닝 알고리즘을 학습시키고,
학습된 딥러닝 알고리즘에 새로운 소스 데이터를 입력하여, 상기 새로운 소스 데이터와 관련된 예측을 수행하는 것을 특징으로 하는 ETL 장치의 제어방법.
According to claim 13,
The function management,
Learning the deep learning algorithm by tagging source data and results related to the source data;
A control method of an ETL device, characterized in that by inputting new source data to the learned deep learning algorithm, and performing prediction related to the new source data.
제 17 항에 있어서,
상기 기능 매니지먼트는,
상기 소스 데이터와 관련된 예측 결과를 상기 ETL 러너를 통해 상기 데이터베이스에 적재하고, 적재된 예측 결과를 이용하여 상기 딥러닝 알고리즘을 추가로 학습시키는 것을 특징으로 하는 ETL 장치의 제어방법.
18. The method of claim 17,
The function management,
A control method of an ETL device, characterized in that for loading a prediction result related to the source data into the database through the ETL runner, and further learning the deep learning algorithm using the loaded prediction result.
제 13 항에 있어서,
상기 서로 다른 용어는, 특정 단어에 대한 오기, 오탈자 및 약어를 포함하고,
상기 코퍼스 매니지먼트는,
상기 특정 단어에 대한 오기, 오탈자 및 약어 중 적어도 하나를 상기 특정 단어로 변경하는 것을 특징으로 하는 ETL 장치의 제어방법.
According to claim 13,
The different terms include misspellings, misspellings, and abbreviations for specific words,
The corpus management,
and changing at least one of misspellings, misspellings, and abbreviations of the specific word to the specific word.
하드웨어인 컴퓨터와 결합되어, 제13항 또는 제17항 내지 제19항 중 어느 한 항의 방법을 수행하기 위해 컴퓨터 판독가능 기록매체에 저장된, 프로그램.A program, which is combined with a computer that is hardware, stored in a computer-readable recording medium to perform the method of any one of claims 13 or 17 to 19.
KR1020210003683A 2021-01-12 2021-01-12 Extract, transform, load apparatus and method for controlling the same KR102513822B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210003683A KR102513822B1 (en) 2021-01-12 2021-01-12 Extract, transform, load apparatus and method for controlling the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210003683A KR102513822B1 (en) 2021-01-12 2021-01-12 Extract, transform, load apparatus and method for controlling the same

Publications (2)

Publication Number Publication Date
KR20220101787A KR20220101787A (en) 2022-07-19
KR102513822B1 true KR102513822B1 (en) 2023-03-24

Family

ID=82607017

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210003683A KR102513822B1 (en) 2021-01-12 2021-01-12 Extract, transform, load apparatus and method for controlling the same

Country Status (1)

Country Link
KR (1) KR102513822B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102519538B1 (en) 2022-10-25 2023-04-10 주식회사 비플컨설팅 Data flow tracking method and system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102103902B1 (en) * 2019-07-03 2020-04-23 (주)위세아이텍 Component-based machine learning automation device and method

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101120989B1 (en) 2010-08-20 2012-03-05 데이터투테크놀로지(주) Method and system for generating standardized source etl program, recording medium and data-etl-method using the method
KR101864700B1 (en) * 2016-07-04 2018-07-13 한다시스템 주식회사 Method and computer program for integrating spread sheet with database
KR20200027091A (en) * 2018-08-31 2020-03-12 주식회사 비플컨설팅 A system that recommends diagnostic cases by deducing the degree of similarity using the artificial neural network technique for the patient's main symptom and diagnostic relationship

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102103902B1 (en) * 2019-07-03 2020-04-23 (주)위세아이텍 Component-based machine learning automation device and method

Also Published As

Publication number Publication date
KR20220101787A (en) 2022-07-19

Similar Documents

Publication Publication Date Title
CN108604227B (en) System and method for neural clinical paraphrasing generation
CN104298478B (en) The deduction acted based on filename to thesaurus
CN111553162A (en) Intention identification method and related device
CN109710951B (en) Auxiliary translation method, device, equipment and storage medium based on translation history
CN112287069B (en) Information retrieval method and device based on voice semantics and computer equipment
US20200380311A1 (en) Collaborative Information Extraction
CN110852106A (en) Named entity processing method and device based on artificial intelligence and electronic equipment
CN111386686A (en) Machine reading understanding system for answering queries related to documents
CN113707299A (en) Auxiliary diagnosis method and device based on inquiry session and computer equipment
CN112949320B (en) Sequence labeling method, device, equipment and medium based on conditional random field
CN115438232A (en) Knowledge graph construction method and device, electronic equipment and storage medium
CN115525757A (en) Contract abstract generation method and device and contract key information extraction model training method
KR102513822B1 (en) Extract, transform, load apparatus and method for controlling the same
CN107430599A (en) For providing the technology for the visual translation card for including context-sensitive definition and example
CN117522538A (en) Bid information processing method, device, computer equipment and storage medium
CN115080039A (en) Front-end code generation method, device, computer equipment, storage medium and product
CN116796730A (en) Text error correction method, device, equipment and storage medium based on artificial intelligence
US11599711B2 (en) Automatic delineation and extraction of tabular data in portable document format using graph neural networks
CN112307198B (en) Method and related device for determining abstract of single text
CN107729347B (en) Method, device and equipment for acquiring synonym label and computer readable storage medium
US12008026B1 (en) Determining repair instructions in response to natural language queries
CN109710751A (en) Intelligent recommendation method, apparatus, equipment and the storage medium of legal document
CN106716308A (en) Input method editor for inputting names of geographic locations
CN114444441A (en) Name similarity calculation method and device, storage medium and calculation equipment
CN113657104A (en) Text extraction method and device, computer equipment and storage medium

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant