KR20200128236A - Automatic widget applying apparatus and method based on Machine-Learning - Google Patents

Automatic widget applying apparatus and method based on Machine-Learning Download PDF

Info

Publication number
KR20200128236A
KR20200128236A KR1020190047051A KR20190047051A KR20200128236A KR 20200128236 A KR20200128236 A KR 20200128236A KR 1020190047051 A KR1020190047051 A KR 1020190047051A KR 20190047051 A KR20190047051 A KR 20190047051A KR 20200128236 A KR20200128236 A KR 20200128236A
Authority
KR
South Korea
Prior art keywords
data
widget
machine learning
collected
automatic
Prior art date
Application number
KR1020190047051A
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 KR1020190047051A priority Critical patent/KR20200128236A/en
Publication of KR20200128236A publication Critical patent/KR20200128236A/en

Links

Images

Classifications

    • 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/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Provided are a machine learning based automatic widget application device and a method thereof. The automatic widget application device comprises: a data collection part that collects data by performing a query from a data collection target server; a data analysis part that automatically determines a widget to be applied to the collected data by applying the collected data to a widget-applied learning model generated through machine learning (ML); a data binding part that automatically binds the collected data to the widget determined by the data analysis part; and a widget processing part that automatically visualizes the data-bound widget in a displayable form.

Description

머신 러닝 기반의 자동 위젯 적용 장치 및 방법{Automatic widget applying apparatus and method based on Machine-Learning}Automatic widget applying apparatus and method based on Machine-Learning

본 발명은 머신 러닝 기반의 자동 위젯 적용 장치 및 방법에 관한 것으로서, 보다 상세하게는, 수집된 데이터에 적용할 위젯을 머신러닝 기반으로 자동으로 판단하여 적용할 수 있는 머신 러닝 기반의 자동 위젯 적용 장치 및 방법에 관한 것이다.The present invention relates to a machine learning-based automatic widget application device and method, and more particularly, a machine learning-based automatic widget application device that can automatically determine and apply a widget to be applied to collected data based on machine learning. And a method.

기존에는 데이터 수집 대상 서버로부터 수집된 데이터를 시각적으로 보여주는 위젯 생성 시, 사용자가 수동으로 위젯을 생성하고, 위젯에 바인딩할 데이터를 직접 선택하고 있다.In the past, when creating a widget that visually shows the data collected from the data collection target server, the user manually creates the widget and directly selects the data to be bound to the widget.

데이터 수집 대상 서버로부터 수집된 데이터를 시각적으로 보여주기 위하여 사용하는 방식 중 하나로 위젯이 있다. 데이터가 수집되면 사용자는 데이터를 보여주기 위한 위젯을 수동으로 하나씩 작성하여 화면에 배치하고, 수집된 데이터를 위젯에 직접 바인딩한다. 따라서, 사용자는 새로운 데이터 수집 대상 서버로부터 데이터가 수집될 때마다 수동으로 위젯을 작성하고, 해당 데이터를 위젯에 바인딩하는 동작을 반복하여야 한다.One of the methods used to visually display the data collected from the data collection target server is a widget. When data is collected, the user manually creates one by one widget to show the data and places it on the screen, and binds the collected data directly to the widget. Therefore, whenever data is collected from a new data collection target server, the user must manually create a widget and repeat the operation of binding the data to the widget.

국내 공개특허 제10-2010-0134495호(2010.12.23. 공개)Korean Patent Publication No. 10-2010-0134495 (published on December 23, 2010)

전술한 문제점을 해결하기 위하여 본 발명이 이루고자 하는 기술적 과제는, 머신러닝 기반으로 데이터를 분석하여 데이터의 속성에 맞는 위젯을 자동으로 적용할 수 있는 머신 러닝 기반의 자동 위젯 적용 장치 및 방법을 제시하는 데 있다.In order to solve the above-described problem, the technical problem to be achieved by the present invention is to provide a machine learning-based automatic widget application apparatus and method capable of automatically applying a widget suitable for the data attribute by analyzing data based on machine learning. Have.

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

전술한 기술적 과제를 해결하기 위한 수단으로서, 본 발명의 실시 예에 따르면, 머신 러닝 기반의 자동 위젯 적용 장치는, 데이터 수집 대상 서버로부터 쿼리를 수행하여 데이터를 수집하는 데이터 수집부; 상기 수집된 데이터를 머신 러닝(ML: Machine Learning)을 통해 생성된 위젯 적용 학습 모델에 적용하여 상기 수집된 데이터에 적용할 위젯을 자동으로 판단하는 데이터 분석부; 상기 데이터 분석부에서 판단된 위젯에 상기 수집된 데이터를 자동으로 바인딩(Binding)하는 데이터 바인딩부; 및 상기 자동으로 데이터가 바인딩된 위젯을 표시가능한 형태로 시각처리화하는 위젯 처리부;를 포함한다.As a means for solving the above-described technical problem, according to an embodiment of the present invention, a machine learning-based automatic widget application apparatus includes: a data collection unit for collecting data by performing a query from a data collection target server; A data analysis unit for automatically determining a widget to be applied to the collected data by applying the collected data to a widget-applied learning model generated through machine learning (ML); A data binding unit for automatically binding the collected data to the widget determined by the data analysis unit; And a widget processing unit for visually processing the automatically data-bound widget in a displayable form.

상기 데이터 분석부는, 상기 수집된 데이터를 상기 위젯 적용 학습 모델에 입력하여 상기 수집된 데이터의 속성을 분석하고, 상기 분석된 데이터의 속성과 사전에 설정된 다수의 위젯들의 속성을 비교하여 유사율을 산출하고, 상기 산출된 유사율 중 기준 유사율 이상의 유사율을 갖는 위젯들 중 하나를 상기 수집된 데이터에 적용할 위젯으로 판단한다.The data analysis unit analyzes the properties of the collected data by inputting the collected data into the widget-applied learning model, and calculates a similarity rate by comparing the properties of the analyzed data with the properties of a plurality of preset widgets. And, among the calculated similarity rates, one of widgets having a similarity rate greater than or equal to a reference similarity rate is determined as a widget to be applied to the collected data.

상기 데이터 분석부는, 상기 수집된 데이터에 대해, 수치 및 문자열의 배치 패턴 분석, 상기 수치 및 문자열의 특수문자 배열 및 사이즈 분석, 데이터 필드명 용도 및 활용 분석, 열과 행의 개수 분석 및 타임라인의 사이즈 및 타입 분석 중 적어도 하나를 수행하여 상기 데이터의 속성을 분석하고, 분석 결과와 상기 사전에 생성된 다수의 위젯들의 속성을 비교한다.The data analysis unit, for the collected data, analyzes the arrangement pattern of numerical values and strings, analyzes the arrangement and size of special characters of the numerical values and strings, analyzes the use and use of data field names, analyzes the number of columns and rows, and size of the timeline. And at least one of type analysis is performed to analyze the attribute of the data, and compare the analysis result with the attributes of the plurality of previously generated widgets.

상기 데이터가 바인딩된 위젯의 컴포넌트가 사용자 요청에 의해 변경되면, 상기 데이터가 바인딩된 위젯의 컴포넌트의 변경 패턴과, 상기 위젯에 바인딩된 데이터의 속성을 머신러닝 DB에 갱신하는 행동 패턴 적용부;를 더 포함하고, 상기 데이터 분석부는, 상기 머신러닝 DB에 저장된 상기 변경 패턴과 상기 위젯에 바인딩된 데이터의 속성을 이용하여 상기 위젯 적용 학습 모델을 학습시키고, 이후, 상기 머신러닝 DB에 저장된 데이터의 속성과 유사한 신규 데이터가 수집되면, 상기 컴포넌트가 변경된 위젯을 상기 신규 데이터에 자동으로 적용한다.When the component of the widget to which the data is bound is changed by a user request, a behavior pattern application unit that updates the change pattern of the component of the widget to which the data is bound and the property of the data bound to the widget to a machine learning DB; Further comprising, wherein the data analysis unit trains the widget-applied learning model using the change pattern stored in the machine learning DB and the property of the data bound to the widget, and then, the property of the data stored in the machine learning DB When new data similar to that is collected, the component automatically applies the changed widget to the new data.

한편, 본 발명의 다른 실시 예에 따르면, 머신 러닝 기반의 자동 위젯 적용 방법은, (A) 자동 위젯 적용 장치가, 데이터 수집 대상 서버로부터 쿼리를 수행하여 데이터를 수집하는 단계; (B) 상기 자동 위젯 적용 장치가, 상기 (A) 단계에서 수집된 데이터를 머신 러닝(ML: Machine Learning)을 통해 생성된 위젯 적용 학습 모델에 적용하여 상기 수집된 데이터에 적용할 위젯을 자동으로 판단하는 단계; (C) 상기 자동 위젯 적용 장치가, 상기 (B) 단계에서 판단된 위젯에 상기 수집된 데이터를 자동으로 바인딩(Binding)하는 단계; 및 (D) 상기 자동 위젯 적용 장치가, 상기 (C) 단계에서 자동으로 데이터가 바인딩된 위젯을 표시가능한 형태로 시각처리화하는 단계;를 포함한다.On the other hand, according to another embodiment of the present invention, a machine learning-based automatic widget application method includes the steps of: (A) an automatic widget application device, collecting data by performing a query from a data collection target server; (B) The automatic widget application device automatically applies the widget to be applied to the collected data by applying the data collected in the step (A) to the learning model applying the widget generated through machine learning (ML). Judging; (C) automatically binding the collected data to the widget determined in step (B), by the automatic widget application device; And (D) visually processing, by the automatic widget application device, the widget to which data is automatically bound in the (C) step in a displayable form.

상기 (B) 단계는, (B1) 상기 수집된 데이터를 상기 위젯 적용 학습 모델에 입력하여 상기 수집된 데이터의 속성을 분석하는 단계; (B2) 상기 분석된 데이터의 속성과 사전에 설정된 다수의 위젯들의 속성을 비교하여 유사율을 산출하는 단계; 및 (B3) 상기 산출된 유사율 중 기준 유사율 이상의 유사율을 갖는 위젯들 중 하나를 상기 수집된 데이터에 적용할 위젯으로 판단하는 단계;를 포함한다.The step (B) includes: (B1) analyzing the properties of the collected data by inputting the collected data to the widget-applied learning model; (B2) calculating a similarity rate by comparing the properties of the analyzed data and properties of a plurality of widgets set in advance; And And (B3) determining one of the widgets having a similarity rate greater than or equal to a reference similarity rate among the calculated similarity rates as a widget to be applied to the collected data.

(E) 상기 자동 위젯 적용 장치가, 상기 데이터가 바인딩된 위젯의 컴포넌트가 사용자 요청에 의해 변경되면, 상기 데이터가 바인딩된 위젯의 컴포넌트의 변경 패턴과, 상기 위젯에 바인딩된 데이터의 속성을 머신러닝 DB에 갱신하는 단계; (F) 상기 자동 위젯 적용 장치가, 상기 머신러닝 DB에 저장된 상기 변경 패턴과 상기 위젯에 바인딩된 데이터의 속성을 이용하여 상기 위젯 적용 학습 모델을 학습시키는 단계; 및 (G) 상기 자동 위젯 적용 장치가, 상기 머신러닝 DB에 저장된 데이터의 속성과 유사한 신규 데이터가 수집되면, 상기 컴포넌트가 변경된 위젯을 상기 신규 데이터에 자동으로 적용하는 단계;를 더 포함한다. (E) When the automatic widget application device changes the component of the widget to which the data is bound by a user request, machine learning the change pattern of the component of the widget to which the data is bound and the properties of the data bound to the widget Updating the DB; (F) learning, by the automatic widget application device, the widget application learning model using the change pattern stored in the machine learning DB and the property of data bound to the widget; And (G) when the automatic widget application device collects new data similar to the property of the data stored in the machine learning DB, automatically applying the widget whose component is changed to the new data.

본 발명에 따르면, 동일한 패턴을 가지고 있는 데이터에 재활용성을 높여 자원 사용을 극대화할 수 있어 기대비용을 높일 수 있다.According to the present invention, it is possible to maximize the use of resources by increasing recyclability of data having the same pattern, thereby increasing the expected cost.

또한, 본 발명에 따르면, 사용자 중심의 간편한 UI 인터페이스를 통해 다양한 쿼리를 수행하여 다양한 데이터를 제공받을 수 있다.Further, according to the present invention, various data may be provided by performing various queries through a user-centered simple UI interface.

또한, 본 발명에 따르면, 가공되지 않은 수치 데이터 또는 문자열을 가독성과 판독성을 높일 수 있는 위젯으로 자동 생성한 후 바인딩하여 시각화 데이터 바인딩의 질을 향상시킬 수 있다.In addition, according to the present invention, it is possible to improve the quality of the visualization data binding by automatically generating raw numeric data or character strings as a widget that can improve readability and readability and then binding them.

또한, 본 발명에 따르면, 다양하고 방대한 데이터 속에서 머신 러닝(Machine Learning)을 통해 필요한 정보만을 추출하고, 불필요한 검색을 줄임으로써 주요 정보를 보다 손쉽게 접근할 수 있다.In addition, according to the present invention, it is possible to more easily access main information by extracting only necessary information through machine learning from various and vast amounts of data, and reducing unnecessary searches.

또한, 본 발명에 따르면, 간단한 입력만으로 다양한 경우의 조건을 충족시키는 데이터를 추출하여 위젯을 통해 자동으로 표현할 수 있다.In addition, according to the present invention, it is possible to extract data satisfying conditions in various cases with only a simple input and automatically express it through a widget.

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

도 1은 본 발명의 실시 예에 따른 머신 러닝 기반의 자동 위젯 적용 장치를 도시한 블록도,
도 2는 데이터 타입 별로 생성되는 다수의 위젯들의 예를 보여주는 도면,
도 3은 쿼리 화면의 예시도,
도 4는 본 발명의 실시 예에 따른 자동 위젯 적용 장치의 머신 러닝 기반의 자동 위젯 적용 방법을 개략적으로 도시한 흐름도,
도 5는 도 4의 S420단계를 자세히 도시한 흐름도, 그리고,
도 6은 도 1 내지 도 5를 참조하여 설명한 자동 위젯 적용 장치의 동작을 개략적으로 도시한 도면이다.
1 is a block diagram showing a machine learning-based automatic widget application apparatus according to an embodiment of the present invention;
2 is a diagram illustrating an example of a plurality of widgets generated for each data type;
3 is an exemplary view of a query screen,
4 is a flowchart schematically showing a machine learning-based automatic widget application method of an automatic widget application device according to an embodiment of the present invention;
Figure 5 is a flow chart showing in detail step S420 of Figure 4, and,
6 is a diagram schematically illustrating an operation of the apparatus for applying an automatic widget described with reference to FIGS. 1 to 5.

본 발명의 실시를 위한 구체적인 내용을 설명하기에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 발명자가 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사항에 부합하는 의미와 개념으로 해석되어야 할 것이다.Prior to describing specific details for the implementation of the present invention, terms or words used in the specification and claims may be appropriately defined by the inventor in order to describe his or her own invention in the best way. Based on the principle that there is, it should be interpreted as a meaning and concept corresponding to the technical matters of the present invention.

본 명세서에 기재된 "포함하다", "구성하다", "가지다" 등의 용어는 특별히 반대되는 기재가 없는 한 해당 구성요소가 내재될 수 있음을 의미하는 것이므로 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Terms such as "comprise", "comprise", and "have" described in the present specification mean that the corresponding component may be included unless otherwise specified, so other components are not excluded. It means that it can contain more elements.

또한, 본 명세서에 기재된 "…부", "…기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다. 또한, "일", "하나" 및 "그" 등의 관사는 본 발명을 기술하는 문맥에 있어서 본 명세서에 달리 지시되거나 문맥에 의해 분명하게 반박되지 않는 한, 단수 및 복수 모두를 포함하는 의미로 사용될 수 있다.In addition, terms such as "... unit", "... group", and "module" described in this specification mean units that process at least one function or operation, which can be implemented by hardware or software or a combination of hardware and software. I can. In addition, articles such as "one", "one" and "the" are meant to include both the singular and the plural in the context describing the present invention, unless otherwise indicated in the specification or clearly contradicted by the context. Can be used.

또한, 어떤 엘리먼트, 구성요소, 장치, 또는 시스템이 프로그램 또는 소프트웨어로 이루어진 구성요소를 포함한다고 언급되는 경우, 명시적인 언급이 없더라도, 그 엘리먼트, 구성요소, 장치, 또는 시스템은 그 프로그램 또는 소프트웨어가 실행 또는 동작하는데 필요한 하드웨어(예를 들면, 메모리, CPU 등)나 다른 프로그램 또는 소프트웨어(예를 들면 운영체제나 하드웨어를 구동하는데 필요한 드라이버 등)를 포함하는 것으로 이해되어야 할 것이다.In addition, if an element, component, device, or system is stated to include a program or a component made of software, the element, component, device, or system is executed by the program or software, even if there is no explicit mention. Or, it should be understood to include hardware (eg, memory, CPU, etc.) or other programs or software (eg, a driver required to drive an operating system or hardware) required to operate.

또한, 어떤 엘리먼트(또는 구성요소)가 구현됨에 있어서 특별한 언급이 없다면, 그 엘리먼트(또는 구성요소)는 소프트웨어, 하드웨어, 또는 소프트웨어 및 하드웨어 어떤 형태로도 구현될 수 있는 것으로 이해되어야 할 것이다.In addition, it should be understood that an element (or component) may be implemented in software, hardware, or any form of software and hardware, unless otherwise specified in the implementation of any element (or component).

이상의 본 발명의 목적들, 다른 목적들, 특징들 및 이점들은 첨부된 도면과 관련된 이하의 바람직한 실시 예들을 통해서 쉽게 이해될 것이다. 그러나 본 발명은 여기서 설명되는 실시 예들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 오히려, 여기서 소개되는 실시 예들은 개시된 내용이 철저하고 완전해질 수 있도록 그리고 당업자에게 본 발명의 사상이 충분히 전달될 수 있도록 하기 위해 제공되는 것이다.The above objects, other objects, features, and advantages of the present invention will be easily understood through the following preferred embodiments related to the accompanying drawings. However, the present invention is not limited to the embodiments described herein and may be embodied in other forms. Rather, the embodiments introduced herein are provided so that the disclosed content may be thorough and complete, and the spirit of the present invention may be sufficiently conveyed to those skilled in the art.

이하, 도면을 참조하여 본 발명을 상세히 설명하도록 한다. Hereinafter, the present invention will be described in detail with reference to the drawings.

도 1은 본 발명의 실시 예에 따른 머신 러닝 기반의 자동 위젯 적용 장치(100)를 도시한 블록도이다.1 is a block diagram showing an apparatus 100 for applying an automatic widget based on machine learning according to an embodiment of the present invention.

도 1에 도시된 본 발명의 실시 예에 따른 머신 러닝 기반의 자동 위젯 적용 장치(100)는 데이터를 수집한 후 머신러닝 DB(140)에 저장된 데이터의 패턴 분석을 통해, 수집된 데이터의 속성에 맞는 위젯을 자동으로 적용하고, 데이터의 활용 패턴을 실시간으로 머신러닝 DB(140)에 저장하며, 각 위젯에 룰셋을 적용할 수 있다. 그리고, 자동 위젯 적용 장치(100)는 자동으로 적용된 위젯에 수집된 데이터를 바인딩하여 사용자에게 제공할 수 있다. 이러한 자동 위젯 적용 장치(100)는 대시보드 빌더이거나 또는 대시보드 빌더의 동작을 위한 전자장치일 수 있다.The machine learning-based automatic widget application apparatus 100 according to the embodiment of the present invention shown in FIG. 1 collects data and then analyzes the pattern of the data stored in the machine learning DB 140 to determine the properties of the collected data. Appropriate widgets are automatically applied, data utilization patterns are stored in the machine learning DB 140 in real time, and rulesets can be applied to each widget. In addition, the automatic widget application device 100 may bind the collected data to the automatically applied widget and provide it to the user. The automatic widget application device 100 may be a dashboard builder or an electronic device for the operation of the dashboard builder.

도 1을 참조하면, 본 발명의 실시 예에 따른 머신 러닝 기반의 자동 위젯 적용 장치(100)는 사용자 인터페이스부(110), 표시부(120), 통신 인터페이스부(130), 머신러닝 DB(140), 메모리(150) 및 프로세서(160)를 포함할 수 있다.Referring to FIG. 1, a machine learning-based automatic widget application apparatus 100 according to an embodiment of the present invention includes a user interface unit 110, a display unit 120, a communication interface unit 130, and a machine learning DB 140. , May include a memory 150 and a processor 160.

사용자 인터페이스부(110)는 사용자와 자동 위젯 적용 장치(100) 간의 인터페이싱 경로를 제공한다. 예를 들어, 사용자는 사용자 인터페이스부(110)를 조작하여 각종 데이터의 리소스 타입별로 위젯을 생성할 수 있다.The user interface unit 110 provides an interfacing path between the user and the automatic widget application device 100. For example, a user may manipulate the user interface unit 110 to generate a widget for each resource type of various data.

도 2는 데이터 타입 별로 생성되는 다수의 위젯들의 예를 보여주는 도면이다.2 is a diagram illustrating an example of a plurality of widgets generated for each data type.

도 2를 참조하면, 사용자가 데이터의 리소스 타입별로 위젯의 컴포넌트 또는 속성을 상이하게 또는 유사하게 설정하면 위젯 생성부(161)는 사용자에 의해 설정된 컴포넌트 또는 속성을 참조하여 다수의 위젯들을 생성할 수 있다. 위젯의 컴포넌트는 막대차트, 버블차트, 선차트, 타임라인차트, 그리드, 이미지, 히트맵, Alert, 필드맵(Field Map), 심볼맵, 플로우맵, 표, 텍스트 등과 같이 데이터를 시각화하기 위한 요소이다. 위젯의 속성은 위젯 작성 시 설정한 수치 및 문자열의 배치 패턴, 데이터 필드명, 용도, 열과 행, 차트의 단위, 타임라인의 사이즈 및 타입 등 위젯마다 또는 컴포넌트마다 상이할 수 있다.Referring to FIG. 2, when a user sets a component or property of a widget differently or similarly for each resource type of data, the widget generator 161 may generate a plurality of widgets by referring to the component or property set by the user. have. The components of the widget are elements to visualize data such as bar chart, bubble chart, line chart, timeline chart, grid, image, heat map, alert, field map, symbol map, flow map, table, text, etc. to be. The properties of the widget may be different for each widget or for each component, such as an arrangement pattern of values and strings set when creating the widget, data field names, usage, columns and rows, units of charts, size and type of timeline, and so on.

표시부(120)는 사용자 인터페이스부(110)가 위젯을 작성하기 위해 사용하는 신규 레이어들, 컴포넌트들, 위젯 생성부(161)에 의해 생성되는 위젯들, 후술할 위젯 처리부(165)에 의해 데이터가 바인딩되어 처리된 위젯 등 사용자에게 제공할 다양한 정보를 표시한다. The display unit 120 includes new layers used by the user interface unit 110 to create a widget, components, widgets generated by the widget creation unit 161, and data by the widget processing unit 165 to be described later. Displays various information to be provided to the user, such as a widget that has been bound and processed.

통신 인터페이스부(130)는 데이터 수집 대상 서버(10)와 연결되어 데이터 수집 대상 서버(10)에서 발생하는 데이터를 수신할 수 있다. 예를 들어, 통신 인터페이스부(130)는 데이터 어댑터를 통해 데이터 수집 대상 서버(10)로 TCP/IP 연결을 시도하고, 데이터 어댑터 연결이 완료되면 데이터 수집 대상 서버(10)로부터 데이터를 수신할 수 있다.The communication interface unit 130 may be connected to the data collection target server 10 to receive data generated by the data collection target server 10. For example, the communication interface unit 130 attempts a TCP/IP connection to the data collection target server 10 through the data adapter, and when the data adapter connection is completed, the communication interface unit 130 may receive data from the data collection target server 10. have.

머신러닝 DB(140)는 데이터 수집 대상 서버(10)로부터 수신되는 초기 데이터, 각 컨텐츠에 맞는 쿼리 수행에 의해 수집된 데이터, 위젯 생성부(161)에 의해 생성되는 다수의 위젯들 등 자동 위젯 적용 장치(100)에서 발생하는 다수의 데이터, 정보 등을 저장 및 업데이트할 수 있다.The machine learning DB 140 applies automatic widgets, such as initial data received from the data collection target server 10, data collected by executing a query suitable for each content, and a plurality of widgets generated by the widget generator 161 It is possible to store and update a plurality of data, information, etc. generated in the device 100.

메모리(150)는 휘발성 메모리 및/또는 비휘발성 메모리를 포함할 수 있다. 메모리(150)에는 예를 들어, 전자 장치(200)가 제공하는 동작, 기능 등을 구현 및/또는 제공하기 위하여, 구성요소들(210~260)에 관계된 명령 또는 데이터, 하나 이상의 프로그램 및/또는 소프트웨어, 운영체제 등이 저장될 수 있다.The memory 150 may include volatile memory and/or nonvolatile memory. In the memory 150, for example, in order to implement and/or provide an operation and a function provided by the electronic device 200, commands or data related to the components 210 to 260, one or more programs, and/or Software, operating system, etc. may be stored.

메모리(150)에 저장되는 프로그램은 위젯 생성을 위한 위젯 생성 프로그램과, 머신러닝(ML: Machine Learning)을 통해 위젯 적용 학습 모델을 생성하기 위한 머신러닝 프로그램과, 수집된 데이터의 타입에 기초하여 위젯을 자동으로 적용하기 위해 사전에 기계 학습하여 생성된 위젯 적용 학습 모델과, 위젯 적용 학습 모델을 통해 자동 적용된 위젯에 수집된 데이터를 바인딩하기 위한 위젯 적용 프로그램을 포함할 수 있다.Programs stored in the memory 150 include a widget creation program for generating a widget, a machine learning program for generating a widget-applied learning model through machine learning (ML), and a widget based on the type of collected data. A widget application learning model generated by machine learning in advance in order to automatically apply a widget, and a widget application program for binding data collected to a widget automatically applied through the widget application learning model may be included.

프로세서(160)는 메모리(150)에 저장된 하나 이상의 프로그램을 실행하여 자동 위젯 적용 장치(100)의 전반적인 동작을 제어한다. The processor 160 controls the overall operation of the automatic widget application device 100 by executing one or more programs stored in the memory 150.

예를 들어, 프로세서(160)는 메모리(150)에 저장된 위젯 생성 프로그램을 실행하여 위젯을 생성할 수 있다. 이를 위하여 프로세서(160)는 위젯 생성부(161)를 포함할 수 있다. 위젯 생성부(161)는 위젯 작성용 화면들을 생성하여 표시부(120)에 표시하고, 표시부(120)에 표시되는 다수의 위젯 작성용 화면들, 사용자 인터페이스부(110)를 통해 수신되는 위젯의 속성들(또는 위젯의 생성 조건)을 참조하여 다수의 위젯들을 작성하고, 작성된 위젯들을 머신러닝 DB(140)에 저장할 수 있다. 이후, 사용자가 시각화 바탕 화면에 신규 레이어를 생성한 후 작성된 위젯들을 각 레이어에 배치하고, 데이터 어댑터와 데이터 수집 대상 서버를 선택한 후, 자동 위젯 적용 메뉴를 선택하면, 프로세서(160)는 수집된 데이터의 속성(또는 타입)에 따라 최적의 위젯을 자동으로 적용할 수 있다. For example, the processor 160 may generate a widget by executing a widget generation program stored in the memory 150. To this end, the processor 160 may include a widget generator 161. The widget creation unit 161 generates widget creation screens and displays them on the display unit 120, and a plurality of widget creation screens displayed on the display unit 120, the properties of the widget received through the user interface unit 110 A number of widgets may be created with reference to (or widget creation conditions), and the created widgets may be stored in the machine learning DB 140. Thereafter, when the user creates a new layer on the visualization desktop and places the created widgets on each layer, selects a data adapter and a data collection target server, and selects the automatic widget application menu, the processor 160 returns the collected data. The optimal widget can be automatically applied according to the property (or type) of.

사용자 인터페이스부(110)를 통해 수신되는 위젯의 속성들은, 위젯 적용 학습 모델을 생성하고, 또한, 위젯 적용 프로그램이 위젯 적용 학습 모델을 통해, 수집된 데이터의 타입을 분석하는데 사용될 수 있다. 위젯의 속성들은, 대시보드를 구현하기 위해 설정된 수치 및 문자열의 배치 패턴과, 수치 및 문자열의 특수문자 배열 및 사이즈와, 대시보드를 구현하기 위해 설정된 데이터 필드명 용도 및 활용과, 대시보드를 구현하기 위해 설정된 열과 행의 개수와, 타임라인의 사이즈 및 타입을 포함하며, 대시보드 구현을 위해 설정하는 모든 속성을 포함할 수 있다.The properties of the widget received through the user interface unit 110 may be used to generate a widget application learning model, and the widget application program to analyze the type of data collected through the widget application learning model. The properties of the widget are the layout pattern of numbers and strings set to implement the dashboard, the arrangement and size of special characters of the numbers and strings, the purpose and use of data field names set to implement the dashboard, and implement the dashboard. It includes the number of columns and rows set to do so, the size and type of the timeline, and all properties set for implementing the dashboard.

또한, 프로세서(160)는 메모리(150)에 저장된 머신러닝 프로그램을 실행하여 머신러닝 DB(140)에 저장된 위젯들에 설정된 속성들과 속성들에 매핑된 위젯들을 머신러닝하여 위젯 적용 학습 모델을 생성할 수 있다.In addition, the processor 160 executes the machine learning program stored in the memory 150 to machine-learn properties set in the widgets stored in the machine learning DB 140 and the widgets mapped to the properties to generate a widget-applied learning model. can do.

또한, 프로세서(160)는 위젯 적용 프로그램을 실행하여 수집된 데이터를 머신 러닝을 통해 생성된 위젯 적용 학습 모델에 적용하여, 수집된 데이터에 적용할 위젯을 자동으로 판단하고, 수집된 데이터를 위젯에 바인딩할 수 있다. 또한, 프로세서(160)는 위젯이 수집된 데이터에 자동 적용된 후, 초기 위젯의 속성이 변경되면, 속성이 변경된 패턴에 기초하여 위젯 적용 학습 모델을 업데이트할 수 있다.In addition, the processor 160 executes the widget application program and applies the collected data to the widget application learning model generated through machine learning, automatically determines the widget to be applied to the collected data, and applies the collected data to the widget. Can be bound. Further, after the widget is automatically applied to the collected data, if the property of the initial widget is changed, the processor 160 may update the widget application learning model based on the pattern in which the property is changed.

이를 위하여, 프로세서(160)는 데이터 수집부(162), 데이터 분석부(163), 데이터 바인딩부(164), 위젯 처리부(165), 행동 패턴 적용부(166) 및 룰셋 정의부(167)를 더 포함할 수 있다.To this end, the processor 160 includes a data collection unit 162, a data analysis unit 163, a data binding unit 164, a widget processing unit 165, a behavior pattern application unit 166, and a ruleset definition unit 167. It may contain more.

데이터 수집부(162)는 데이터 어댑터를 통해 데이터 수집 대상 서버(10)로 접속하기 위한 TCP/IP 연결을 시도하고, 데이터 어댑터 연결이 완료되면, 데이터 쿼리를 수행하여 데이터 수집 대상 서버(10)로부터 데이터를 수집한다. 사용자는 도 3과 같은 쿼리 화면을 통해 쿼리, 즉, 검색 조건을 설정하고, 데이터 수집부(162)는 설정된 쿼리에 해당하는 데이터를 수집하여 머신러닝 DB(140)에 저장한다. The data collection unit 162 attempts a TCP/IP connection to connect to the data collection target server 10 through the data adapter, and when the data adapter connection is completed, performs a data query to receive the data from the data collection target server 10. Collect data. The user sets a query, that is, a search condition, through the query screen as shown in FIG. 3, and the data collection unit 162 collects data corresponding to the set query and stores it in the machine learning DB 140.

데이터 분석부(163)는 데이터 수집부(162)에 의해 수집된 데이터를 머신 러닝을 통해 생성된 위젯 적용 학습 모델에 적용하여 위젯을 자동으로 적용하기 위한 다수의 조건들을 분석하여 수집된 데이터의 타입을 판단하고, 판단된 데이터의 타입에 기초하여 데이터에 적용할 위젯을 자동으로 판단할 수 있다.The data analysis unit 163 applies the data collected by the data collection unit 162 to the widget application learning model generated through machine learning, and analyzes a number of conditions for automatically applying the widget to the type of the collected data. Is determined, and a widget to be applied to the data may be automatically determined based on the determined data type.

자세히 설명하면 데이터 분석부(163)는 데이터 수집부(162)에서 수집된 데이터를 위젯 적용 학습 모델에 입력하여 수집된 데이터의 다양한 속성을 분석하여 데이터의 타입을 판단한고, 분석된 데이터의 속성과 사전에 설정된 다수의 위젯들의 속성을 비교하여 유사율을 산출한다.In detail, the data analysis unit 163 inputs the data collected by the data collection unit 162 into a widget-applied learning model, analyzes various properties of the collected data, determines the type of data, and determines the type of the analyzed data. The similarity rate is calculated by comparing the properties of a plurality of preset widgets.

데이터 분석부(163) 또는 위젯 적용 학습 모델은, 수집된 데이터에 대해, 수치 및 문자열의 배치 패턴 분석, 수치 및 문자열의 특수문자 배열 및 사이즈 분석, 데이터 필드명 용도 및 활용 분석, 열과 행의 개수 분석 및 타임라인의 사이즈 및 타입 분석을 포함하는 다수의 분석 방식들 중 적어도 하나를 수행하여 데이터의 다양한 속성을 분석하고, 분석 결과와 사전에 생성된 다수의 위젯들의 속성을 비교하여 유사율을 산출할 수 있다. 이는 다수의 수치 및 문자열의 배치 패턴, 수치 및 문자열의 특수문자 배열 및 사이즈, 데이터 필드명 용도 및 활용, 열과 행의 개수 및 타임라인의 사이즈 및 타입과 같은 속성은 수집된 데이터의 타입에 따라 다른 값을 가지고, 또한, 기생성된 위젯들 각각의 속성(또는 역할)에 따라 다르게 설정되기 때문이다.The data analysis unit 163 or the learning model applying a widget, for the collected data, analyzes the arrangement pattern of numbers and strings, analyzes the arrangement and size of special characters of numbers and strings, analyzes the use and utilization of data field names, the number of columns and rows Analyze various properties of data by performing at least one of a number of analysis methods including analysis and timeline size and type analysis, and calculate the similarity rate by comparing the analysis result with the properties of a plurality of previously generated widgets can do. This means that properties such as the arrangement pattern of multiple numbers and strings, the arrangement and size of special characters of numbers and strings, the purpose and use of data field names, the number of columns and rows, and the size and type of the timeline vary depending on the type of collected data. This is because it has a value and is set differently according to the properties (or roles) of each of the para-generated widgets.

그리고, 데이터 분석부(163)는 산출된 유사율 중 최대 유사율을 갖는 위젯을 수집된 데이터에 적용할 위젯으로 판단할 수 있다. 또는 데이터 분석부(163)는 산출된 유사율들 중 기준 유사율 이상의 유사율을 갖는 위젯들 중 하나를 수집된 데이터에 적용할 위젯으로 판단할 수 있다. 예를 들어, 기준 유사율이 95%이고, 산출된 유사율이 95% 이상인 위젯들이 3개인 경우, 데이터 분석부(163)는 3개의 위젯들 중 유사율이 가장 높은 위젯을 수집된 데이터에 적용할 위젯으로 판단할 수 있다.In addition, the data analysis unit 163 may determine a widget having a maximum similarity rate among the calculated similarity rates as a widget to be applied to the collected data. Alternatively, the data analysis unit 163 may determine one of widgets having a similarity rate greater than or equal to the reference similarity rate among the calculated similarity rates as a widget to be applied to the collected data. For example, when there are three widgets with a reference similarity rate of 95% and a calculated similarity rate of 95% or more, the data analysis unit 163 applies the widget with the highest similarity rate among the three widgets to the collected data. It can be determined as a widget to do.

데이터 바인딩부(164)는 데이터 분석부(163)에서 판단된 위젯에 수집된 데이터를 자동으로 바인딩(Binding)할 수 있다.The data binding unit 164 may automatically bind the collected data to the widget determined by the data analysis unit 163.

위젯 처리부(165)는 데이터 바인딩부(164)에 의해 자동으로 데이터가 바인딩된 위젯을 표시가능한 형태로 시각처리화한다.The widget processing unit 165 visually processes the widget to which data is automatically bound by the data binding unit 164 in a displayable form.

행동 패턴 적용부(166)는 데이터가 바인딩된 위젯의 컴포넌트가 사용자 요청에 의해 변경되면, 데이터가 바인딩된 위젯의 컴포넌트의 변경 패턴과, 위젯에 바인딩된 데이터의 속성을 머신러닝 DB(140)에 갱신할 수 있다.When the component of the widget to which data is bound is changed by a user request, the behavior pattern application unit 166 transmits the change pattern of the component of the widget to which data is bound and the properties of the data bound to the widget to the machine learning DB 140 Can be updated.

데이터 분석부(163)는, 머신러닝 DB(140)에 갱신된 위젯의 변경 패턴과 위젯에 바인딩된 데이터의 속성을 이용하여 위젯 적용 학습 모델을 학습시켜 위젯의 컴포넌트를 사용자 요청대로 변경할 수 있다. 즉, 행동 패턴 적용부(166)는 사용자 인터페이스부(110)를 통해 동일한 위젯에 대해 동일한 변경 패턴이 설정된 횟수만큼 입력되면, 초기에 작성된 위젯의 컴포넌트를 사용자 요청대로 변경할 수 있다. 이후, 머신러닝 DB(140)에 저장된 데이터의 속성과 유사한 신규 데이터가 수집되면, 데이터 분석부(163)는 속성 또는 컴포넌트가 변경된 위젯을 신규 데이터에 자동으로 적용할 수 있다.The data analysis unit 163 may learn a widget application learning model by using a change pattern of a widget updated in the machine learning DB 140 and a property of data bound to the widget to change a component of the widget according to a user request. That is, when the same change pattern is input for the same widget through the user interface unit 110 as many times as a set number of times, the behavior pattern application unit 166 may change the component of the initially created widget as requested by the user. Thereafter, when new data similar to the attribute of the data stored in the machine learning DB 140 is collected, the data analysis unit 163 may automatically apply a widget whose attribute or component has been changed to the new data.

예를 들어, 수집된 데이터에 대해 적용된 타겟 위젯이 대한민국만 보여주는 지도 위젯인 경우, 사용자가 대한민국을 포함하는 아시아를 모두 보여주도록 패턴을 변경 요청하고, 이러한 변경 요청이 정해진 횟수만큼 반복되면, 행동 패턴 적용부(166)는 타겟 위젯의 컴포넌트를 대한민국에서 아시아 지도로 변경한다. 이후, 새로 수집된 데이터의 속성이 타겟 위젯의 속성과 유사하면, 타겟 위젯에 수집된 데이터를 바인딩하며, 이로써 아시아 지도를 보여주는 위젯이 제공될 수 있다.For example, if the target widget applied to the collected data is a map widget that shows only Korea, the user requests to change the pattern to show all of Asia, including Korea, and if the change request is repeated a set number of times, the behavior pattern The application unit 166 changes the component of the target widget from Korea to an Asia map. Thereafter, if the property of the newly collected data is similar to the property of the target widget, the collected data is bound to the target widget, thereby providing a widget showing an Asia map.

룰셋 정의부(167)는 수집된 데이터의 속성에 따라 자동 적용된 위젯에 룰셋을 일괄 정의할 수 있다. 사용자가 사용자 인터페이스부(110)를 통해 위젯에 적용할 룰셋을 위젯마다 동일하게 또는 상이하게 입력하면, 룰셋 정의부(167)는 위젯 별로 입력된 룰셋이 각 위젯에 적용되도록 처리한다. 이후 데이터 어댑터로부터 데이터 수집 시 해당 위젯에 기 적용된 룰셋에 의해 알람 또는 이펙트가 표현될 수 있다. 예를 들어, 룰셋 정의부(167)는 수집된 데이터 중 초등학교 5학년 이상의 학생에 대한 데이터에 대해서는 파랑색 깜빡임이 발생하도록 하는 룰셋을 위젯에 정의하여, 이후 초등학교 5학년 이상의 학생과 관련된 데이터가 수집될 때마다 위젯은 파랑색으로 깜빡이게 된다. The rule set definition unit 167 may collectively define a rule set in the automatically applied widget according to the properties of the collected data. When a user inputs a rule set to be applied to a widget identically or differently for each widget through the user interface unit 110, the rule set definition unit 167 processes the input rule set for each widget to be applied to each widget. Subsequently, when data is collected from the data adapter, an alarm or effect may be expressed by a rule set previously applied to the corresponding widget. For example, the ruleset definition unit 167 defines a rule set in the widget that causes blue flicker to occur with respect to data on students of 5th grade or higher of elementary school among the collected data. Each time the widget flashes blue.

도 4는 본 발명의 실시 예에 따른 자동 위젯 적용 장치의 머신 러닝 기반의 자동 위젯 적용 방법을 개략적으로 도시한 흐름도, 도 5는 도 4의 S420단계를 자세히 도시한 흐름도이다.4 is a flowchart schematically illustrating a machine learning-based automatic widget application method of an automatic widget application apparatus according to an embodiment of the present invention, and FIG. 5 is a detailed flowchart illustrating step S420 of FIG. 4.

도 4를 참조하면, 자동 위젯 적용 장치(100)는 데이터 수집 대상 서버(10)로부터 쿼리를 수행하여 데이터를 수집하여 머신러닝 DB에 저장한다(S410).Referring to FIG. 4, the automatic widget application device 100 collects data by performing a query from the data collection target server 10 and stores it in a machine learning DB (S410).

자동 위젯 적용 장치(100)는 수집된 데이터를 머신 러닝(ML: Machine Learning)을 통해 생성된 위젯 적용 학습 모델에 적용하여 수집된 데이터에 적용할 위젯을 자동으로 판단한다(S420).The automatic widget application device 100 automatically determines a widget to be applied to the collected data by applying the collected data to a widget-applied learning model generated through machine learning (ML) (S420).

도 5를 참조하면, 자동 위젯 적용 장치(100)는 수집된 데이터를 위젯 적용 학습 모델에 입력하여 상기 수집된 데이터의 속성, 즉, 데이터의 타입을 분석한다(S422). S422단계는, 수집된 데이터에 대해, 수치 및 문자열의 배치 패턴 분석, 수치 및 문자열의 특수문자 배열 및 사이즈 분석, 데이터 필드명 용도 및 활용 분석, 열과 행의 개수 분석 및 타임라인의 사이즈 및 타입 분석 중 적어도 하나를 수행하여 데이터의 속성을 분석할 수 있다.Referring to FIG. 5, the automatic widget application apparatus 100 inputs the collected data into the widget application learning model and analyzes the properties of the collected data, that is, the type of data (S422). Step S422, for the collected data, analyzes the arrangement pattern of numbers and strings, analyzes the arrangement and size of special characters of numbers and strings, analyzes the use and use of data field names, analyzes the number of columns and rows, and analyzes the size and type of the timeline. You can perform at least one of to analyze the properties of the data.

자동 위젯 적용 장치(100)는 분석된 데이터의 속성과 사전에 설정된 다수의 위젯들의 속성을 비교하여 유사율을 산출한다(S424).The automatic widget application apparatus 100 calculates a similarity rate by comparing the properties of the analyzed data with the properties of a plurality of widgets set in advance (S424).

자동 위젯 적용 장치(100)는 산출된 유사율 중 기준 유사율 이상의 유사율을 갖는 위젯들 중 하나(예를 들어, 최대 유사율을 갖는 위젯)를 수집된 데이터에 적용할 위젯으로 판단한다(S426).The automatic widget application apparatus 100 determines one of the widgets having a similarity rate equal to or greater than the reference similarity rate among the calculated similarity rates (eg, a widget having a maximum similarity rate) as a widget to be applied to the collected data (S426). ).

다시 도 4를 참조하면, 자동 위젯 적용 장치(100)는 S420단계에서 판단된 위젯에 S410단계에서 수집된 데이터를 자동으로 바인딩한다(S430).Referring to FIG. 4 again, the automatic widget application device 100 automatically binds the data collected in step S410 to the widget determined in step S420 (S430).

자동 위젯 적용 장치(100)는 자동으로 데이터가 바인딩된 위젯을 표시가능한 형태로 시각처리화하여 화면에 표시한다(S440).The automatic widget application device 100 automatically visualizes a widget to which data is bound in a displayable form and displays it on the screen (S440).

이후, 화면에 표시된 위젯의 컴포넌트, 즉, 데이터가 바인딩된 위젯의 컴포넌트가 사용자의 요청에 의해 변경되면, 자동 위젯 적용 장치(100)는 데이터가 바인딩된 위젯의 컴포넌트의 변경 패턴과, 위젯에 바인딩된 데이터의 속성을 머신러닝 DB(140)에 갱신한다(S450).Thereafter, when the component of the widget displayed on the screen, that is, the component of the widget to which data is bound, is changed at the request of the user, the automatic widget application device 100 binds to the widget and the change pattern of the component of the widget to which data is bound The properties of the obtained data are updated in the machine learning DB 140 (S450).

자동 위젯 적용 장치(100)는 머신러닝 DB(140)에 저장된 변경 패턴과 위젯에 바인딩된 데이터의 속성을 이용하여 위젯 적용 학습 모델을 학습시킨다(S460). S460단계는 S450단계가 정해진 횟수만큼 반복되면 수행될 수 있다.The automatic widget application device 100 trains the widget application learning model using the change pattern stored in the machine learning DB 140 and the property of data bound to the widget (S460). Step S460 may be performed when step S450 is repeated a predetermined number of times.

자동 위젯 적용 장치(100)는 머신러닝 DB(140)에 저장된 데이터의 속성과 유사한 신규 데이터가 수집되면, 컴포넌트가 변경된 위젯을 신규 데이터에 자동으로 적용한다(S470). 이로써 S422단계에서 수집된 데이터의 속성과 유사하거나 동일한 신규 데이터가 수집되어도 자동 위젯 적용 장치(100)는 S420단계에서 적용된 위젯이 아닌 S450단계에서 컴포넌트가 변경된 위젯을 적용한다.When new data similar to the property of the data stored in the machine learning DB 140 is collected, the automatic widget applying device 100 automatically applies the widget whose component has been changed to the new data (S470). Accordingly, even if new data similar or identical to the property of the data collected in step S422 is collected, the automatic widget application apparatus 100 applies the widget whose component is changed in step S450, not the widget applied in step S420.

자동 위젯 적용 장치(100)는 수집된 데이터 타입에 적용된 자동 위젯에 데이터 임계값 또는 각종 컴포넌트의 속성값 등의 룰셋을 정의하여 저장한다(S480).The automatic widget application apparatus 100 defines and stores a rule set such as a data threshold value or attribute values of various components in the automatic widget applied to the collected data type (S480).

도 6은 도 1 내지 도 5를 참조하여 설명한 자동 위젯 적용 장치(100)의 동작을 개략적으로 도시한 것으로서, 자동 위젯 적용 장치(100)는 데이터 수집 후 머신러닝 DB(140)의 데이터 패턴분석을 통해 수집된 데이터의 속성에 맞는 위젯을 자동으로 판단하고, 데이터의 행동 패턴(즉, 사용자에 의해 변경되는 위젯 패턴)을 실시간으로 머신러닝 DB(140)에 저장한 후 룰셋을 일괄 적용할 수 있다.6 schematically illustrates the operation of the automatic widget application device 100 described with reference to FIGS. 1 to 5, and the automatic widget application device 100 performs data pattern analysis of the machine learning DB 140 after data collection. It is possible to automatically determine a widget that fits the properties of the collected data, store the behavior pattern of the data (i.e., the widget pattern changed by the user) in the machine learning DB 140 in real time, and then apply the rule set at once. .

특히, 데이터 수집 대상 서버(10)에 다른 쿼리를 수행하여 쿼리 별 데이터가 수집되는 경우, 쿼리 별로 수집된 데이터마다 데이터 타입을 판단하고, 개별적으로 위젯을 자동 적용할 수 있다. 즉, 쿼리에 따라 수집되는 데이터의 타입도 달라지므로(데이터 타입 1~n), 데이터 수집 대상 서버(10)에서 발생하는 데이터에 대해서도 쿼리 별로 상이한 데이터가 수집될 수 있다. 따라서, 하나의 데이터 수집 대상 서버(10)에 대해서도 다수의 다른 데이터를 수집하고, 다른 위젯을 적용할 수 있다.In particular, when data for each query is collected by performing another query on the data collection target server 10, a data type may be determined for each data collected for each query, and a widget may be automatically applied individually. That is, since the type of data to be collected varies according to the query (data types 1 to n), different data may be collected for each query even for data generated in the data collection target server 10. Accordingly, a plurality of different data may be collected for one data collection target server 10 and different widgets may be applied.

또한, 데이터 행동 패턴 분석에서, 자동으로 데이터가 할당된 위젯의 컴포넌트 또는 속성을 변경하는 행동 패턴 변경이 발생하면 해당 위젯에 적용된 데이터의 속성과 변경된 패턴을 머신러닝 DB(140)에 갱신하고, 추후 유사 데이터 수집 또는 바인딩 시 변경된 위젯으로 재 할당할 수 있다.In addition, in the data behavior pattern analysis, when a behavior pattern change occurs that automatically changes the component or attribute of the widget to which data is assigned, the attribute of the data and the changed pattern applied to the corresponding widget are updated in the machine learning DB 140, and later When similar data is collected or bound, it can be reassigned to the changed widget.

상술한 본 발명이 실시 예에 의하면, 데이터의 속성과 행동 패턴을 통한 데이터 타입별 위젯을 자동 생성하고, 데이터의 활용 패턴 변화에 따라 기존 위젯의 속성이 자동 수정된다. 차트, 그리드, 이미지, Alert등 다양한 컴포넌트를 기반으로 하는 데이터 위젯은 초기 파이 컴포넌트를 생성 후 데이터의 활용 패턴 변화에 의해 그리드 또는 라인차트 컴포넌트 등으로 자동 변경되어 적용될 수 있다.According to the embodiment of the present invention described above, a widget for each data type is automatically generated through data properties and behavior patterns, and the properties of the existing widgets are automatically modified according to a change in the use pattern of data. Data widgets based on various components such as charts, grids, images, alerts, etc. can be automatically changed to grid or line chart components and applied by changing the usage pattern of data after creating an initial pie component.

100: 자동 위젯 적용 장치 110: 사용자 인터페이스부
120: 표시부 130: 통신 인터페이스부
140: 머신러닝 DB 150: 메모리
160: 프로세서
100: automatic widget application device 110: user interface unit
120: display unit 130: communication interface unit
140: machine learning DB 150: memory
160: processor

Claims (8)

데이터 수집 대상 서버로부터 쿼리를 수행하여 데이터를 수집하는 데이터 수집부;
상기 수집된 데이터를 머신 러닝(ML: Machine Learning)을 통해 생성된 위젯 적용 학습 모델에 적용하여 상기 수집된 데이터에 적용할 위젯을 자동으로 판단하는 데이터 분석부;
상기 데이터 분석부에서 판단된 위젯에 상기 수집된 데이터를 자동으로 바인딩(Binding)하는 데이터 바인딩부; 및
상기 자동으로 데이터가 바인딩된 위젯을 표시가능한 형태로 시각처리화하는 위젯 처리부;를 포함하는 것을 특징으로 하는 머신 러닝 기반의 자동 위젯 적용 장치.
A data collection unit for collecting data by performing a query from a data collection target server;
A data analysis unit for automatically determining a widget to be applied to the collected data by applying the collected data to a widget-applied learning model generated through machine learning (ML);
A data binding unit for automatically binding the collected data to the widget determined by the data analysis unit; And
And a widget processing unit for visually processing the automatically data-bound widget in a displayable form.
제1항에 있어서,
상기 데이터 분석부는,
상기 수집된 데이터를 상기 위젯 적용 학습 모델에 입력하여 상기 수집된 데이터의 속성을 분석하고, 상기 분석된 데이터의 속성과 사전에 설정된 다수의 위젯들의 속성을 비교하여 유사율을 산출하고, 상기 산출된 유사율 중 기준 유사율 이상의 유사율을 갖는 위젯들 중 하나를 상기 수집된 데이터에 적용할 위젯으로 판단하는 것을 특징으로 하는 머신 러닝 기반의 자동 위젯 적용 장치.
The method of claim 1,
The data analysis unit,
The collected data is input into the widget-applied learning model to analyze the properties of the collected data, compare the properties of the analyzed data with the properties of a plurality of preset widgets to calculate a similarity rate, and the calculated A machine learning-based automatic widget application device, characterized in that, among the similarity rates, one of widgets having a similarity rate greater than or equal to a reference similarity rate is determined as a widget to be applied to the collected data.
제2항에 있어서,
상기 데이터 분석부는,
상기 수집된 데이터에 대해, 수치 및 문자열의 배치 패턴 분석, 상기 수치 및 문자열의 특수문자 배열 및 사이즈 분석, 데이터 필드명 용도 및 활용 분석, 열과 행의 개수 분석 및 타임라인의 사이즈 및 타입 분석 중 적어도 하나를 수행하여 상기 데이터의 속성을 분석하고, 분석 결과와 상기 사전에 생성된 다수의 위젯들의 속성을 비교하는 것을 특징으로 하는 머신 러닝 기반의 자동 위젯 적용 장치.
The method of claim 2,
The data analysis unit,
For the collected data, at least one of analysis of the arrangement pattern of numerical values and strings, analysis of the arrangement and size of special characters of the numerical values and strings, analysis of data field names use and utilization, analysis of the number of columns and rows, and analysis of the size and type of the timeline. A machine learning-based automatic widget application device, characterized in that performing one to analyze the properties of the data, and comparing the analysis result with the properties of the plurality of previously generated widgets.
제1항에 있어서,
상기 데이터가 바인딩된 위젯의 컴포넌트가 사용자 요청에 의해 변경되면, 상기 데이터가 바인딩된 위젯의 컴포넌트의 변경 패턴과, 상기 위젯에 바인딩된 데이터의 속성을 머신러닝 DB에 갱신하는 행동 패턴 적용부;를 더 포함하고,
상기 데이터 분석부는,
상기 머신러닝 DB에 저장된 상기 변경 패턴과 상기 위젯에 바인딩된 데이터의 속성을 이용하여 상기 위젯 적용 학습 모델을 학습시키고, 이후, 상기 머신러닝 DB에 저장된 데이터의 속성과 유사한 신규 데이터가 수집되면, 상기 컴포넌트가 변경된 위젯을 상기 신규 데이터에 자동으로 적용하는 것을 특징으로 하는 머신 러닝 기반의 자동 위젯 적용 장치.
The method of claim 1,
When the component of the widget to which the data is bound is changed by a user request, a behavior pattern application unit that updates the change pattern of the component of the widget to which the data is bound and the property of the data bound to the widget to a machine learning DB; Including more,
The data analysis unit,
The widget-applied learning model is trained using the change pattern stored in the machine learning DB and the property of the data bound to the widget, and then, when new data similar to the property of the data stored in the machine learning DB is collected, the Machine learning-based automatic widget application device, characterized in that automatically applying a widget whose component has been changed to the new data.
(A) 자동 위젯 적용 장치가, 데이터 수집 대상 서버로부터 쿼리를 수행하여 데이터를 수집하는 단계;
(B) 상기 자동 위젯 적용 장치가, 상기 (A) 단계에서 수집된 데이터를 머신 러닝(ML: Machine Learning)을 통해 생성된 위젯 적용 학습 모델에 적용하여 상기 수집된 데이터에 적용할 위젯을 자동으로 판단하는 단계;
(C) 상기 자동 위젯 적용 장치가, 상기 (B) 단계에서 판단된 위젯에 상기 수집된 데이터를 자동으로 바인딩(Binding)하는 단계; 및
(D) 상기 자동 위젯 적용 장치가, 상기 (C) 단계에서 자동으로 데이터가 바인딩된 위젯을 표시가능한 형태로 시각처리화하는 단계;를 포함하는 것을 특징으로 하는 머신 러닝 기반의 자동 위젯 적용 방법.
(A) the automatic widget application device, collecting data by performing a query from a data collection target server;
(B) The automatic widget application device automatically applies the widget to be applied to the collected data by applying the data collected in the step (A) to the learning model applying the widget generated through machine learning (ML). Judging;
(C) automatically binding the collected data to the widget determined in step (B), by the automatic widget applying device; And
(D) the automatic widget applying device visually processing the widget to which the data is automatically bound in the (C) step in a displayable form; and a machine learning-based automatic widget application method comprising:
제5항에 있어서,
상기 (B) 단계는,
(B1) 상기 수집된 데이터를 상기 위젯 적용 학습 모델에 입력하여 상기 수집된 데이터의 속성을 분석하는 단계;
(B2) 상기 분석된 데이터의 속성과 사전에 설정된 다수의 위젯들의 속성을 비교하여 유사율을 산출하는 단계; 및
(B3) 상기 산출된 유사율 중 기준 유사율 이상의 유사율을 갖는 위젯들 중 하나를 상기 수집된 데이터에 적용할 위젯으로 판단하는 단계;를 포함하는 것을 특징으로 하는 머신 러닝 기반의 자동 위젯 적용 방법.
The method of claim 5,
The (B) step,
(B1) analyzing the properties of the collected data by inputting the collected data into the widget-applied learning model;
(B2) calculating a similarity rate by comparing the properties of the analyzed data and properties of a plurality of preset widgets; And
(B3) determining one of the widgets having a similarity rate greater than or equal to a reference similarity rate among the calculated similarity rates as a widget to be applied to the collected data; a machine learning-based automatic widget application method comprising .
제6항에 있어서,
상기 (B1) 단계는,
상기 수집된 데이터에 대해, 수치 및 문자열의 배치 패턴 분석, 상기 수치 및 문자열의 특수문자 배열 및 사이즈 분석, 데이터 필드명 용도 및 활용 분석, 열과 행의 개수 분석 및 타임라인의 사이즈 및 타입 분석 중 적어도 하나를 수행하여 상기 데이터의 속성을 분석하는 것을 특징으로 하는 머신 러닝 기반의 자동 위젯 적용 방법.
The method of claim 6,
The step (B1),
For the collected data, at least one of analysis of the arrangement pattern of numerical values and strings, analysis of the arrangement and size of special characters of the numerical values and strings, analysis of data field names use and utilization, analysis of the number of columns and rows, and analysis of the size and type of the timeline. Machine learning-based automatic widget application method, characterized in that performing one to analyze the properties of the data.
제5항에 있어서,
(E) 상기 자동 위젯 적용 장치가, 상기 데이터가 바인딩된 위젯의 컴포넌트가 사용자 요청에 의해 변경되면, 상기 데이터가 바인딩된 위젯의 컴포넌트의 변경 패턴과, 상기 위젯에 바인딩된 데이터의 속성을 머신러닝 DB에 갱신하는 단계;
(F) 상기 자동 위젯 적용 장치가, 상기 머신러닝 DB에 저장된 상기 변경 패턴과 상기 위젯에 바인딩된 데이터의 속성을 이용하여 상기 위젯 적용 학습 모델을 학습시키는 단계; 및
(G) 상기 자동 위젯 적용 장치가, 상기 머신러닝 DB에 저장된 데이터의 속성과 유사한 신규 데이터가 수집되면, 상기 컴포넌트가 변경된 위젯을 상기 신규 데이터에 자동으로 적용하는 단계;를 더 포함하는 것을 특징으로 하는 머신 러닝 기반의 자동 위젯 적용 방법.
The method of claim 5,
(E) When the automatic widget application device changes the component of the widget to which the data is bound by a user request, machine learning the change pattern of the component of the widget to which the data is bound and the properties of the data bound to the widget Updating the DB;
(F) learning, by the automatic widget application device, the widget application learning model using the change pattern stored in the machine learning DB and the property of data bound to the widget; And
(G) when the automatic widget application apparatus collects new data similar to the property of the data stored in the machine learning DB, automatically applying the widget whose component has been changed to the new data; characterized in that it further comprises How to apply automatic widgets based on machine learning.
KR1020190047051A 2019-04-23 2019-04-23 Automatic widget applying apparatus and method based on Machine-Learning KR20200128236A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190047051A KR20200128236A (en) 2019-04-23 2019-04-23 Automatic widget applying apparatus and method based on Machine-Learning

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190047051A KR20200128236A (en) 2019-04-23 2019-04-23 Automatic widget applying apparatus and method based on Machine-Learning

Publications (1)

Publication Number Publication Date
KR20200128236A true KR20200128236A (en) 2020-11-12

Family

ID=73398616

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190047051A KR20200128236A (en) 2019-04-23 2019-04-23 Automatic widget applying apparatus and method based on Machine-Learning

Country Status (1)

Country Link
KR (1) KR20200128236A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102226543B1 (en) * 2020-12-09 2021-03-11 주식회사 이글루시큐리티 System and method for automatic display of security visualization events in dashboards based on previously learned user patterns

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100134495A (en) 2009-06-15 2010-12-23 삼성전자주식회사 Method for activating and communication widget

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100134495A (en) 2009-06-15 2010-12-23 삼성전자주식회사 Method for activating and communication widget

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102226543B1 (en) * 2020-12-09 2021-03-11 주식회사 이글루시큐리티 System and method for automatic display of security visualization events in dashboards based on previously learned user patterns

Similar Documents

Publication Publication Date Title
TWI703458B (en) Data processing model construction method, device, server and client
US20170052984A1 (en) Methods and systems for optimizing data in large data sets using relevant metadata
CN108090032B (en) Visual interpretation method and device of logistic regression model
KR20080081193A (en) Content development and distribution using cognitive sciences database
CN110807152B (en) Method for creating recommendation engine system based on multiple services and storage medium
WO2019051492A1 (en) Immersive virtual environment (ive) tools and architecture
US10866956B2 (en) Optimizing user time and resources
CN105279600B (en) Mark in Working procedure management system extends adding method
CN110795000A (en) Automatic control method and device based on interface segmentation and terminal
CN109426415A (en) A kind of method and device generating cascade selector
CN104866174A (en) Information displaying method and apparatus
KR20200128236A (en) Automatic widget applying apparatus and method based on Machine-Learning
CN114168019A (en) Multi-application window level management method and device
US20180196928A1 (en) Network visualization for access controls
CN110517547B (en) Mechanical intelligent analysis system based on human-computer interaction
US20200133451A1 (en) Techniques for analyzing the proficiency of users of software applications
JP7151146B2 (en) Computer program, information processing method and computer
US10969958B2 (en) Key-input display apparatus, key-input display system, and key-input display program
Papamanthou A parametric visualization software for the assignment problem
CN110019431A (en) Processing method, system and the terminal device of data visualization
CN105094511A (en) Test case generating method and test case generating device
CN110794999B (en) Automatic control method and device based on interface segmentation and terminal
JP6133356B2 (en) Method for connecting a plurality of data structures of a data processing device and a plurality of man-machine interface elements, a data processing device, a computer program, and a digital storage medium
JPWO2020085374A1 (en) Proficiency index providing device, proficiency index providing method, and program
Carrança et al. Augmented Reality Towards Industry 5.0: Improving Voice and Tap Interaction Based on User Experience Feedback

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E601 Decision to refuse application