WO2022055020A1 - 자동화된 기계 학습 방법 및 그 장치 - Google Patents

자동화된 기계 학습 방법 및 그 장치 Download PDF

Info

Publication number
WO2022055020A1
WO2022055020A1 PCT/KR2020/016084 KR2020016084W WO2022055020A1 WO 2022055020 A1 WO2022055020 A1 WO 2022055020A1 KR 2020016084 W KR2020016084 W KR 2020016084W WO 2022055020 A1 WO2022055020 A1 WO 2022055020A1
Authority
WO
WIPO (PCT)
Prior art keywords
learning
parameter set
parameter
validation
data
Prior art date
Application number
PCT/KR2020/016084
Other languages
English (en)
French (fr)
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 US18/013,492 priority Critical patent/US20230297830A1/en
Priority to JP2023516482A priority patent/JP2023541264A/ja
Priority to CN202080105033.6A priority patent/CN116057543A/zh
Publication of WO2022055020A1 publication Critical patent/WO2022055020A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/0985Hyperparameter optimisation; Meta-learning; Learning-to-learn
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]

Definitions

  • a technical idea of the present disclosure relates to an automated machine learning method and an apparatus thereof.
  • Machine Learning is a field of AI that develops algorithms and technologies that allow computers to learn based on data. It shows excellent performance in prediction, object detection, object classification, object segmentation, and anomaly detection.
  • a network with a deep layer may have good performance, and on the contrary, it may have sufficient performance even if the layer is not deep. Deep networks may not be appropriate because there are cases where
  • An automated machine learning apparatus includes an automated machine learning method capable of quickly and automatically optimizing a network function and its parameters to be suitable for characteristics such as input data, and to provide the device.
  • the automated machine learning method registers at least one first parameter set including a combination of different setting data for at least one parameter affecting the performance of the learning model. to do; selecting at least one second parameter set to be used for generating the learning model from among the first parameter sets based on the input learning condition; By performing training on a network function based on the second parameter set and a predetermined input data set, the training model corresponding to each of the second parameter sets is generated, and a validation score for each of the training models is performed. ) to calculate; and selecting one of the generated learning models as an application model based on the verification score.
  • the registering of the first parameter set may include: generating a plurality of candidate parameter sets by combining different setting data for the at least one parameter; performing cross-validation by learning the network function through a first data set for each of the candidate parameter sets; and determining at least one of the candidate parameter sets as the first parameter set according to a result of the cross-validation.
  • performing the cross-validation and determining the first parameter set may be repeatedly performed based on at least one second data set different from the first data set.
  • the result of the cross-validation includes the average and standard deviation of the verification scores according to the cross-validation calculated for each of the candidate parameter sets, and in the determining of the first parameter set, By performing statistical comparison based on the mean and standard deviation of the verification scores, the candidate parameter set having a performance higher than a predetermined baseline may be determined as the first parameter set.
  • the first parameter set may include configuration data of parameters related to at least one of a type of a network function, an optimizer, a learning rate, and data augmentation. there is.
  • the learning condition may include a condition related to at least one of a learning environment, an inference speed, and a search range.
  • the selecting of the second parameter may include: arranging the first parameter set based on at least one of an architecture and the inference speed; and selecting, as the second parameter set, a higher predetermined ratio among the sorted first parameter sets according to the input learning condition.
  • the verification score may be calculated based on at least one of recall, precision, accuracy, and a combination thereof.
  • an automated machine learning apparatus includes: a memory for storing a program for automated machine learning; By executing the program, at least one first parameter set including a combination of different setting data for at least one parameter affecting the performance of the learning model is registered, and based on the input learning condition, the first Selecting at least one second parameter set to be used in generating the training model from among parameter sets, and performing training on a network function based on the second parameter set and a predetermined input data set, each of the second parameter sets a processor for generating the learning model corresponding to , calculating a validation score for each of the learning models, and controlling to select one of the generated learning models as an applied model based on the validation score; may include
  • the processor generates a plurality of candidate parameter sets by combining different configuration data for the at least one parameter, and for each of the candidate parameter sets, the network function through a first data set cross-validation is performed by learning about , and it is possible to control to determine at least one of the candidate parameter sets as the first parameter set according to a result of the cross-validation.
  • the processor is configured to repeatedly perform the cross-validation and the determination of the first parameter set according to a result of the cross-validation based on at least one second data set different from the first data set. can be controlled
  • the processor calculates the average and standard deviation of the verification scores according to the cross-validation for each of the candidate parameter sets, and performs statistical comparison based on the mean and standard deviation of the verification scores.
  • the candidate parameter set having higher performance than a predetermined baseline may be controlled to be determined as the first parameter set.
  • the first parameter set may include configuration data of parameters related to at least one of a type of a network function, an optimizer, a learning rate, and data augmentation. there is.
  • the learning condition may include a condition related to at least one of a learning environment, an inference speed, and a search range.
  • the processor aligns the first parameter set based on at least one of an architecture and the inference speed, and according to the input learning condition, one of the sorted first parameter sets. It is possible to control to select an upper predetermined ratio as the second parameter set.
  • the verification score may be calculated based on at least one of recall, precision, accuracy, and a combination thereof.
  • the selection of a suitable network function and optimization of hyperparameters are automatically performed only by a user inputting learning conditions and input data.
  • the selection of a suitable network function and optimization of hyperparameters are automatically performed only by a user inputting learning conditions and input data.
  • 1 is a diagram for explaining optimization of parameters of a network function.
  • FIG. 2 is a flowchart illustrating an automated machine learning method according to an embodiment according to the technical spirit of the present disclosure.
  • FIG. 3 shows an embodiment of step S210 of FIG. 2 .
  • FIG. 4 shows an embodiment of step S220 of FIG. 2 .
  • FIG. 5 exemplarily illustrates a process of registering a parameter set to a preset group in an automated machine learning method according to an embodiment according to the technical spirit of the present disclosure.
  • FIG. 6 exemplarily illustrates a user interface for inputting learning conditions in an automated machine learning method according to an embodiment according to the technical spirit of the present disclosure.
  • FIG. 7 is a block diagram schematically illustrating the configuration of an automated machine learning apparatus according to an embodiment according to the technical spirit of the present disclosure.
  • a component when referred to as “connected” or “connected” with another component, the one component may be directly connected or directly connected to the other component, but in particular It should be understood that, unless there is a description to the contrary, it may be connected or connected through another element in the middle.
  • ⁇ unit means a unit that processes at least one function or operation, which is a processor, a micro Processor (Micro Processor), Micro Controller (Micro Controller), CPU (Central Processing Unit), GPU (Graphics Processing Unit), APU (Accelerate Processor Unit), DSP (Digital Signal Processor), ASIC (Application Specific Integrated Circuit), FPGA (Field Programmable Gate Array) may be implemented as hardware or software, or a combination of hardware and software.
  • a micro Processor Micro Processor
  • Micro Controller Micro Controller
  • CPU Central Processing Unit
  • GPU Graphics Processing Unit
  • APU Accelerate Processor Unit
  • DSP Digital Signal Processor
  • ASIC Application Specific Integrated Circuit
  • FPGA Field Programmable Gate Array
  • each constituent unit in the present disclosure is merely a division for each main function that each constituent unit is responsible for. That is, two or more components to be described below may be combined into one component, or one component may be divided into two or more for each more subdivided function.
  • each of the constituent units to be described below may additionally perform some or all of the functions of other constituent units in addition to the main function it is responsible for. Of course, it may be carried out by being dedicated to it.
  • a network function may be used synonymously with a neural network and/or a neural network.
  • a neural network may be generally composed of a set of interconnected computational units that may be referred to as nodes, and these nodes may be referred to as neurons.
  • a neural network is generally configured to include a plurality of nodes. Nodes constituting the neural network may be interconnected by one or more links.
  • Some of the nodes constituting the neural network may configure one layer based on distances from the initial input node. For example, a set of nodes having a distance of n from the initial input node may constitute n layers.
  • the neural network described herein may include a deep neural network (DNN) including a plurality of hidden layers in addition to an input layer and an output layer.
  • the deep neural network may include a convolutional neural network (CNN), a recurrent neural network (RNN), and the like.
  • 1 is a diagram for explaining optimization of parameters of a network function.
  • a network function can produce different learning models by learning on different data sets.
  • the performance (speed, quality, etc.) of the learning model generated from the network function may be affected by the setting value of at least one parameter.
  • the parameter can be directly set by the user, and may refer to a variable that can give a meaningful change to the learning model, that is, a hyper-parameter.
  • the hyperparameter may include variables related to a type of a network function (or architecture), an optimizer, a learning rate, and data augmentation.
  • the performance of the learning model varies according to the set value of the parameter, it is required to optimize the parameters to suit the characteristics of the data set to be learned in the creation and application of the learning model.
  • FIG. 1 conceptually illustrates a grid search as one method used for parameter optimization.
  • Grid search is to search for setting values of all possible combinations of parameters that can significantly change the performance of the learning model within a specific search range.
  • FIG. 2 is a flowchart for explaining an automated machine learning method according to an embodiment according to the technical idea of the present disclosure
  • Figure 3 shows an embodiment of step S210 of Figure 2
  • Figure 4 is step S220 of Figure 2 shows an example of
  • the automated machine learning method is performed on a personal computer, a workstation, a server computer device, etc. having a computing capability, or the automated machine learning method It may be performed in a separate device in which a program for performing the program is embedded.
  • the automated machine learning method according to an embodiment according to the spirit of the present disclosure may be performed in one or more computing devices.
  • at least one or more steps of the automated machine learning method according to an embodiment of the present disclosure may be performed in a client device, and other steps may be performed in a server device.
  • the client device and the server device may be connected to each other through a network to transmit/receive an operation result.
  • the automated machine learning method according to an embodiment of the present disclosure may be performed by distributed computing technology.
  • the machine learning apparatus may register at least one first parameter set including a combination of different setting data for at least one parameter affecting the learning model.
  • the parameter may refer to the hyperparameter described above with reference to FIG. 1 , a type of a network function (eg, a type of CNN, etc.), an optimizer, a learning rate, and data It may include a parameter related to at least one of data augmentation.
  • the first parameter set may be composed of a combination of setting data of at least one hyperparameter that allows the learning model to exhibit a performance greater than or equal to a predetermined reference value.
  • step S210 may include steps S211 to S214 as shown in FIG. 3 .
  • the machine learning apparatus may generate a candidate parameter set by combining different setting data for at least one parameter.
  • the candidate parameter set may include parameters related to at least one of a type of network function, an optimizer, a learning rate, and data augmentation, and the setting data for these parameters may have different combinations for each candidate parameter set. there is.
  • the machine learning apparatus may perform cross-validation by learning the network function through the first data set for each of the generated candidate parameter sets. For example, the machine learning apparatus sets hyperparameters based on the setting data included in each candidate parameter set, divides the first data set into k folds, and then performs learning and cross-validation of the network function Thus, the average and standard deviation of validation scores for each candidate parameter set may be calculated.
  • the machine learning apparatus may register at least one of the candidate parameter sets in a preset group according to the cross-validation result. For example, the machine learning apparatus may perform statistical comparison based on the average and standard deviation of the verification scores calculated in step S212, and register a candidate parameter set having higher performance than a predetermined baseline in the preset group. there is.
  • the machine learning apparatus may repeatedly perform steps S212 and S213 based on at least one second data set different from the first data set. Accordingly, for example, at least one parameter set may be respectively registered in a plurality of preset groups corresponding to different data sets.
  • the machine learning apparatus may select at least one second parameter set to be used in generating the learning model from among the first parameter sets registered in at least one preset group.
  • step S220 may include steps S221 to S223 as shown in FIG. 4 .
  • the machine learning apparatus may receive a user input for a learning condition.
  • the machine learning apparatus may provide a predetermined user interface to the user terminal or its own display unit, and receive learning conditions input through the user interface.
  • the learning condition may include a condition related to at least one of a learning environment (PC or embedded device), an inference speed, and a search range.
  • the condition regarding the search range may refer to a condition for determining how much of the first parameter set registered in the preset group to be used (ie, the ratio of selecting the second parameter set).
  • the machine learning apparatus may further receive an input data set from the user terminal.
  • the first parameter set registered in the at least one preset group may be sorted based on at least one of an architecture and an inference speed.
  • the machine learning apparatus first aligns the first parameter set based on the architecture in response to the learning environment input by the user, and then determines the inference rate recorded for each of the first parameter sets through step S210. Based on (ie, in the order of the highest inference speed), the first parameter set may be secondarily ordered.
  • the machine learning apparatus may select a higher predetermined ratio among the first parameter sets sorted in step S222 as the second parameter set according to the learning condition input by the user.
  • the machine learning apparatus may select a predetermined ratio from the first parameter set as the second parameter set based on the inference speed level and/or the search range level input by the user. For example, the machine learning apparatus may select the top 20% as the second parameter set when the inference speed input by the user is level 3, and select the top 50% as the second parameter set when the inference speed is level 2.
  • steps S222 and S223 may be individually performed for each preset group. That is, when a plurality of preset groups exist, sorting of the first parameter set included therein for each preset group and selection of the second parameter set may be performed.
  • step S230 different learning models are generated by learning the network function based on the selected second parameter set and the input data set, and a validation score can be calculated for each of the generated learning models.
  • a learning model may be generated by setting a hyperparameter of the network function as the setting data of the second parameter set, inputting at least a portion of the input data set as training data to the network function, and learning the network function.
  • the verification score may be calculated based on at least one of recall, precision, accuracy, and a combination thereof.
  • the machine learning device calculates a validation score based on the recall if the learning model is for object detection and/or classification, and if the learning model is for object segmentation, the recall rate It may be configured to calculate a verification score based on the F1score combined with the precision, but is not limited thereto.
  • step S240 the machine learning apparatus may select one of the learning models generated based on the verification score calculated in step S230 as the applied model.
  • the machine learning apparatus may select a learning model having the highest calculated verification score as the applied model. Also, in an embodiment, when there are a plurality of learning models having the highest calculated verification scores, the machine learning apparatus may select a learning model generated by the higher-ordered second parameter set as the applied model.
  • the machine learning apparatus may evaluate the applied model through a test set that is a part of the input data set, and may derive a result requested by the user through the applied model.
  • FIG. 5 exemplarily illustrates a process of registering a parameter set to a preset group in an automated machine learning method according to an embodiment according to the technical spirit of the present disclosure.
  • a candidate parameter having performance greater than or equal to a predetermined reference value using six different data sets is added to the preset group. can register.
  • the machine learning apparatus generates six preset groups corresponding to the data sets, respectively, and repeats the cross-validation process using each data set to register the candidate parameter sets in the preset groups corresponding to the data sets.
  • Information about the parameter set registered as a preset group may be stored in a machine learning device or an external server communicating with the machine learning device.
  • FIG. 6 exemplarily illustrates a user interface for inputting learning conditions in an automated machine learning method according to an embodiment according to the technical spirit of the present disclosure.
  • the machine learning apparatus may provide a user interface for receiving a user input for a learning condition through a user terminal or a self-equipped display unit.
  • the user interface may include an area 610 for setting a learning environment, an area 620 for setting a level of a search space, and an area 630 for setting a level of an inference speed.
  • the user can set, for the parameters registered in the preset group, to select a parameter set according to what environment, and what percentage of the parameters registered for each level to use through this user interface.
  • FIG. 7 is a block diagram schematically illustrating the configuration of an automated machine learning apparatus according to an embodiment according to the technical spirit of the present disclosure.
  • the communication unit 710 may transmit/receive data or signals to and from an external device (such as a user terminal) or an external server under the control of the processor 740 .
  • the communication unit 710 may include a wired/wireless communication unit.
  • the communication unit 710 is a local area network (LAN), a wide area network (WAN), a value added network (VAN), a mobile communication network ( It may include one or more components that allow communication through a mobile radio communication network), a satellite communication network, and a combination thereof.
  • the communication unit 710 includes a wireless communication unit
  • the communication unit 710 wirelessly transmits and receives data or signals using cellular communication or a wireless LAN (eg, Wi-Fi).
  • a wireless LAN eg, Wi-Fi
  • the input unit 720 may receive various user commands through external manipulation.
  • the input unit 720 may include or connect one or more input devices.
  • the input unit 720 may be connected to an interface for various inputs, such as a keypad and a mouse, to receive a user command.
  • the input unit 720 may include an interface such as a Thunderbolt as well as a USB port.
  • the input unit 720 may include or combine various input devices such as a touch screen and a button to receive an external user command.
  • the memory 730 may store a program for the operation of the processor 740 and may temporarily or permanently store input/output data.
  • the memory 730 is a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (eg, SD or XD memory, etc.), a RAM (RAM).
  • SRAM, ROM, EEPROM, PROM, magnetic memory, a magnetic disk, and an optical disk may include at least one type of storage medium.
  • the memory 730 may store various network functions and algorithms, and may store various data, programs (one or more instructions), applications, software, commands, codes, etc. for driving and controlling the device 700 . there is.
  • the processor 740 may control the overall operation of the device 700 .
  • the processor 740 may execute one or more programs stored in the memory 730 .
  • the processor 740 may mean a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor on which methods according to the technical idea of the present disclosure are performed.
  • the processor 740 may register at least one first parameter set including a combination of different setting data for at least one parameter affecting the performance of the learning model.
  • the processor 740 generates a plurality of candidate parameter sets by combining different configuration data for at least one parameter, and, for each candidate parameter set, learns a network function through the first data set. In the process, cross-validation is performed, and according to a result of the cross-validation, it is possible to control to determine at least one of the candidate parameter sets as the first parameter set.
  • the processor 740 may control to repeatedly perform the cross-validation and the determination of the first parameter set according to a result of the cross-validation based on at least one second data set different from the first data set.
  • the processor 740 calculates the mean and standard deviation of the verification scores according to cross-validation for each of the candidate parameter sets, and performs statistical comparison based on the mean and standard deviation of the verification scores, thereby providing a predetermined reference value. (Baseline) It is possible to control to determine a candidate parameter set having higher performance as the first parameter set.
  • the processor 740 may select at least one second parameter set to be used in generating the learning model from among the first parameter sets based on the input learning condition.
  • the processor 740 sorts the first parameter set based on at least one of an architecture and an inference speed, and according to the input learning condition, an upper predetermined one of the sorted first parameter sets.
  • the ratio may be controlled to be selected as the second parameter set.
  • the processor 740 generates a learning model corresponding to each of the second parameter sets by performing training on the network function based on the second parameter set and a predetermined input data set, It is possible to calculate a validation score, and control to select one of the generated learning models as an application model based on the validation score.
  • the verification score may be calculated based on at least one of recall, precision, accuracy, and a combination thereof.
  • the machine learning apparatus 700 may further include an output unit, a display unit, and the like.
  • the output unit is for generating an output related to sight, sound, vibration, etc., and may include a display unit, a sound output unit, a motor, and the like.
  • the display unit may display a user interface for inputting a learning condition, an input data set, etc., an output of a learning model, etc. under the control of the processor 740 .
  • the display unit may include a display module.
  • the display module may include a display panel, a display driver, and a touch panel.
  • the automated machine learning method may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium.
  • the computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination.
  • the program instructions recorded on the medium may be specially designed and configured for the present disclosure, or may be known and available to those skilled in the art of computer software.
  • Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floppy disks.
  • - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like.
  • Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.
  • automated machine learning method may be provided by being included in a computer program product (computer program product).
  • Computer program products may be traded between sellers and buyers as commodities.
  • the computer program product may include a S/W program and a computer-readable storage medium in which the S/W program is stored.
  • computer program products may include products (eg, downloadable apps) in the form of S/W programs distributed electronically through manufacturers of electronic devices or electronic markets (eg, Google Play Store, App Store). there is.
  • the S/W program may be stored in a storage medium or may be temporarily generated.
  • the storage medium may be a server of a manufacturer, a server of an electronic market, or a storage medium of a relay server temporarily storing a SW program.
  • the computer program product in a system consisting of a server and a client device, may include a storage medium of the server or a storage medium of the client device.
  • a third device eg, a smart phone
  • the computer program product may include a storage medium of the third device.
  • the computer program product may include the S/W program itself transmitted from the server to the client device or the third device, or transmitted from the third device to the client device.
  • one of the server, the client device and the third device may execute the computer program product to perform the method according to the disclosed embodiments.
  • two or more of a server, a client device, and a third device may execute a computer program product to distribute the method according to the disclosed embodiments.
  • a server eg, a cloud server or an artificial intelligence server

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Image Analysis (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Abstract

본 개시는 자동화된 기계 학습 방법 및 그 장치에 관한 것으로, 본 개시의 일 실시예에 따른 자동화된 기계 학습 방법은, 학습 모델의 성능에 영향을 미치는 적어도 하나의 파라미터에 대한 상이한 설정 데이터의 조합을 포함하는 적어도 하나의 제 1 파라미터 세트를 등록하는 단계; 입력된 학습 조건에 기초하여, 상기 제 1 파라미터 세트 중 상기 학습 모델의 생성에 사용할 적어도 하나의 제 2 파라미터 세트를 선정하는 단계; 상기 제 2 파라미터 세트 및 소정의 입력 데이터 세트에 기초하여 네트워크 함수에 대한 학습을 진행함으로써, 상기 제 2 파라미터 세트 각각에 대응하는 상기 학습 모델을 생성하고, 상기 학습 모델 각각에 대한 검증 점수(validation score)를 산출하는 단계; 및 상기 검증 점수에 기초하여, 생성된 상기 학습 모델 중 하나를 적용 모델로 선택하는 단계를 포함할 수 있다.

Description

자동화된 기계 학습 방법 및 그 장치
본 개시(disclosure)의 기술적 사상은 자동화된 기계 학습 방법 및 그 장치에 관한 것이다.
기계 학습(Machine Learning)은 AI의 한 분야로 데이터를 바탕으로 컴퓨터가 학습할 수 있도록 하는 알고리즘과 기술을 개발하는 분야이며, 이미지 처리, 영상 인식, 음성 인식, 인터넷 검색 등의 다양한 분야의 핵심 기술로 예측(prediction), 객체 검출(detection), 객체 분류(classification), 객체 분할(segmentation), 이상 탐지(anomaly detection) 등에 탁월한 성과를 나타낸다.
이와 같은 기계 학습을 통해 목표로 하는 성능의 학습 모델을 도출해 내기 위해서는, 기계 학습을 위한 신경망(neural network)을 적절하게 선택할 것이 요구된다. 그러나, 신경망의 선택에 있어서 절대적인 기준이 존재하고 있지 않기 때문에 적용하고자 분야 또는 입력 데이터의 특성에 적합한 신경망을 선택하는 것은 상당히 어려운 문제일 수밖에 없다.
예를 들어, 데이터 세트의 종류에 따라 레이어가 깊은 네트워크가 성능이 좋을 수 있고 오히려 레이어가 깊지 않아도 충분히 성능을 끌어낼 수 있는 경우도 있으며, 특히, 산업체의 경우, 추론 시간(inference time)을 매우 중요하게 여기는 경우가 있기 때문에 깊은 네트워크가 적절치 않을 수도 있다.
또한, 학습 모델의 성능은 사용자에 의해 설정되는 복수의 하이퍼 파라미터(hyper parameter)에 영향을 받게 되기 때문에, 이러한 하이퍼 파라미터를 입력 데이터 등의 특성에 맞도록 설정하는 것 또한 기계 학습에 있어서 중요한 사안이다.
그런데, 기계 학습의 블랙박스의 특성 상, 입력 데이터 세트에 적합한 하이퍼 파라미터를 알기 위해서는 가능한 모든 경우의 수에 대해 매우 소모적인 실험 과정이 필요하며, 특히, 비전문가의 경우, 어떤 하이퍼 파라미터가 유의미한 변화를 이끌어 낼지 추측하는 것조차 어려울 수 있다는 문제점이 존재한다.
본 개시의 기술적 사상에 따른 자동화된 기계 학습 장치 및 그 장치가 이루고자 하는 기술적 과제는, 입력 데이터 등의 특성에 적합하도록 네트워크 함수 및 이의 파라미터를 신속하게 자동으로 최적화할 수 있는 자동화된 기계 학습 방법 및 장치를 제공하는 데에 있다.
본 개시의 기술적 사상에 따른 이상 탐지 방법 및 이를 위한 장치가 이루고자 하는 기술적 과제는 이상에서 언급한 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제는 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
본 개시의 기술적 사상에 의한 일 양태에 따르면, 자동화된 기계 학습 방법은, 학습 모델의 성능에 영향을 미치는 적어도 하나의 파라미터에 대한 상이한 설정 데이터의 조합을 포함하는 적어도 하나의 제 1 파라미터 세트를 등록하는 단계; 입력된 학습 조건에 기초하여, 상기 제 1 파라미터 세트 중 상기 학습 모델의 생성에 사용할 적어도 하나의 제 2 파라미터 세트를 선정하는 단계; 상기 제 2 파라미터 세트 및 소정의 입력 데이터 세트에 기초하여 네트워크 함수에 대한 학습을 진행함으로써, 상기 제 2 파라미터 세트 각각에 대응하는 상기 학습 모델을 생성하고, 상기 학습 모델 각각에 대한 검증 점수(validation score)를 산출하는 단계; 및 상기 검증 점수에 기초하여, 생성된 상기 학습 모델 중 하나를 적용 모델로 선택하는 단계를 포함할 수 있다.
예시적인 실시예에 따르면, 상기 제 1 파라미터 세트를 등록하는 단계는, 상기 적어도 하나의 파라미터에 대하여 상이한 설정 데이터를 조합함으로써, 복수의 후보 파라미터 세트를 생성하는 단계; 상기 후보 파라미터 세트에 각각 대하여 제 1 데이터 세트에 통해 상기 네트워크 함수에 대한 학습을 진행하여 교차 검증을 수행하는 단계; 및 상기 교차 검증의 결과에 따라, 상기 후보 파라미터 세트 중 적어도 하나를 상기 제 1 파라미터 세트로 결정하는 단계를 포함할 수 있다.
예시적인 실시예에 따르면, 상기 교차 검증을 수행하는 단계 및 상기 제 1 파라미터 세트로 결정하는 단계는, 상기 제 1 데이터 세트와 상이한 적어도 하나의 제 2 데이터 세트에 기초하여 반복 수행될 수 있다.
예시적인 실시예에 따르면, 상기 교차 검증의 결과는, 상기 후보 파라미터 세트 각각에 대하여 산출된 상기 교차 검증에 따른 검증 점수의 평균 및 표준 편차를 포함하고, 상기 제 1 파라미터 세트로 결정하는 단계에서는, 상기 검증 점수의 평균 및 표준 편차를 기초로 통계적 비교를 수행함으로써, 소정의 기준치(baseline) 보다 높은 성능을 가지는 상기 후보 파라미터 세트를 상기 제 1 파라미터 세트로 결정할 수 있다.
예시적인 실시예에 따르면, 상기 제 1 파라미터 세트는 네트워크 함수의 종류, 옵티마이저(optimizer), 학습 속도(learning rate) 및 데이터 증강(data augmentation) 중 적어도 하나에 관한 파라미터의 설정 데이터를 포함할 수 있다.
예시적인 실시예에 따르면, 상기 학습 조건은 학습 환경, 추론 속도(inference speed) 및 검색 범위 중 적어도 하나에 관한 조건을 포함할 수 있다.
예시적인 실시예에 따르면, 상기 제 2 파라미터를 선정하는 단계는, 상기 제 1 파라미터 세트를 아키텍처(architecture) 및 상기 추론 속도 중 적어도 하나를 기준으로 정렬하는 단계; 및 입력된 상기 학습 조건에 따라, 상기 정렬된 제 1 파라미터 세트 중 상위의 소정의 비율을 상기 제 2 파라미터 세트로 선정하는 단계를 포함할 수 있다.
예시적인 실시예에 따르면, 상기 검증 점수는 재현율(recall), 정밀도(precision), 정확도(accuracy) 및 이들의 조합 중 적어도 하나에 기초하여 산출될 수 있다.
본 개시의 기술적 사상에 의한 따른 양태에 따르면, 자동화된 기계 학습 장치는, 자동화된 기계 학습을 위한 프로그램을 저장하는 메모리; 상기 프로그램을 실행함으로써, 학습 모델의 성능에 영향을 미치는 적어도 하나의 파라미터에 대한 상이한 설정 데이터의 조합을 포함하는 적어도 하나의 제 1 파라미터 세트를 등록하고, 입력된 학습 조건에 기초하여, 상기 제 1 파라미터 세트 중 상기 학습 모델의 생성에 사용할 적어도 하나의 제 2 파라미터 세트를 선정하며, 상기 제 2 파라미터 세트 및 소정의 입력 데이터 세트에 기초하여 네트워크 함수에 대한 학습을 진행함으로써, 상기 제 2 파라미터 세트 각각에 대응하는 상기 학습 모델을 생성하고, 상기 학습 모델 각각에 대한 검증 점수(validation score)를 산출하고, 상기 검증 점수에 기초하여, 생성된 상기 학습 모델 중 하나를 적용 모델로 선택하도록 제어하는 프로세서;를 포함할 수 있다.
예시적인 실시예에 따르면, 상기 프로세서는, 상기 적어도 하나의 파라미터에 대하여 상이한 설정 데이터를 조합함으로써, 복수의 후보 파라미터 세트를 생성하고, 상기 후보 파라미터 세트에 각각 대하여 제 1 데이터 세트에 통해 상기 네트워크 함수에 대한 학습을 진행하여 교차 검증을 수행하며, 상기 교차 검증의 결과에 따라, 상기 후보 파라미터 세트 중 적어도 하나를 상기 제 1 파라미터 세트로 결정하도록 제어할 수 있다.
예시적인 실시예에 따르면, 상기 프로세서는, 상기 제 1 데이터 세트와 상이한 적어도 하나의 제 2 데이터 세트에 기초하여 상기 교차 검증과 상기 교차 검증의 결과에 따른 상기 제 1 파라미터 세트의 결정을 반복 수행하도록 제어할 수 있다.
예시적인 실시예에 따르면, 상기 프로세서는, 상기 후보 파라미터 세트 각각에 대하여 상기 교차 검증에 따른 검증 점수의 평균 및 표준 편차를 산출하고, 상기 검증 점수의 평균 및 표준 편차를 기초로 통계적 비교를 수행함으로써, 소정의 기준치(baseline) 보다 높은 성능을 가지는 상기 후보 파라미터 세트를 상기 제 1 파라미터 세트로 결정하도록 제어할 수 있다.
예시적인 실시예에 따르면, 상기 제 1 파라미터 세트는 네트워크 함수의 종류, 옵티마이저(optimizer), 학습 속도(learning rate) 및 데이터 증강(data augmentation) 중 적어도 하나에 관한 파라미터의 설정 데이터를 포함할 수 있다.
예시적인 실시예에 따르면, 상기 학습 조건은 학습 환경, 추론 속도(inference speed) 및 검색 범위 중 적어도 하나에 관한 조건을 포함할 수 있다.
예시적인 실시예에 따르면, 상기 프로세서는, 상기 제 1 파라미터 세트를 아키텍처(architecture) 및 상기 추론 속도 중 적어도 하나를 기준으로 정렬하고, 입력된 상기 학습 조건에 따라, 상기 정렬된 제 1 파라미터 세트 중 상위의 소정의 비율을 상기 제 2 파라미터 세트로 선정하도록 제어할 수 있다.
예시적인 실시예에 따르면, 상기 검증 점수는 재현율(recall), 정밀도(precision), 정확도(accuracy) 및 이들의 조합 중 적어도 하나에 기초하여 산출될 수 있다.
본 개시의 기술적 사상에 의한 실시예들에 따른 자동화된 기계 학습 방법 및 이를 위한 장치에 따르면, 사용자가 학습 조건과 입력 데이터 등을 입력하는 것만으로 적합한 네트워크 함수의 선택 및 하이퍼 파라미터의 최적화를 자동으로 수행하도록 구현됨으로써, 비전문가라도 손쉽게 학습 모델을 생성하고 활용할 수 있다.
또한, 본 개시의 기술적 사상에 의한 실시예들에 따른 자동화된 기계 학습 방법 및 이를 위한 장치에 따르면, 일정한 기준치 이상의 성능을 가지는 유의미한 하이퍼 파라미터 조합을 미리 탐색 및 등록함으로써, 하이퍼 파라미터의 최적화에 필요한 탐색 범위 및 시간을 최소화할 수 있다.
본 개시의 기술적 사상에 따른 이상 탐지 방법 및 이를 위한 장치가 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 개시에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 네트워크 함수의 파라미터의 최적화를 설명하기 위한 도면이다.
도 2 본 개시의 기술적 사상에 의한 일 실시예에 따른 자동화된 기계 학습 방법을 설명하기 위한 흐름도이다.
도 3은 도 2의 S210 단계의 일 실시예를 도시한다.
도 4는 도 2의 S220 단계의 일 실시예를 도시한다.
도 5는 본 개시의 기술적 사상에 의한 일 실시예에 따른 자동화된 기계 학습 방법에 있어서, 파라미터 세트를 프리셋 그룹에 등록하는 과정을 예시적으로 도시한다.
도 6은 본 개시의 기술적 사상에 의한 일 실시예에 따른 자동화된 기계 학습 방법에 있어서, 학습 조건을 입력하기 위한 사용자 인터페이스를 예시적으로 도시한다.
도 7은 본 개시의 기술적 사상에 의한 일 실시예에 따른 자동화된 기계 학습 장치의 구성을 간략히 도시한 블록도이다.
본 개시의 기술적 사상은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 이를 상세히 설명하고자 한다. 그러나, 이는 본 개시의 기술적 사상을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 개시의 기술적 사상의 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 개시의 기술적 사상을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 개시의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 개시의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.
또한, 본 개시에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.
또한, 본 개시에 기재된 "~부", "~기", "~자", "~모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 프로세서(Processor), 마이크로 프로세서(Micro Processer), 마이크로 컨트롤러(Micro Controller), CPU(Central Processing Unit), GPU(Graphics Processing Unit), APU(Accelerate Processor Unit), DSP(Digital Signal Processor), ASIC(Application Specific Integrated Circuit), FPGA(Field Programmable Gate Array) 등과 같은 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
그리고 본 개시에서의 구성부들에 대한 구분은 각 구성부가 담당하는 주기능 별로 구분한 것에 불과함을 명확히 하고자 한다. 즉, 이하에서 설명할 2개 이상의 구성부가 하나의 구성부로 합쳐지거나 또는 하나의 구성부가 보다 세분화된 기능별로 2개 이상으로 분화되어 구비될 수도 있다. 그리고 이하에서 설명할 구성부 각각은 자신이 담당하는 주기능 이외에도 다른 구성부가 담당하는 기능 중 일부 또는 전부의 기능을 추가적으로 수행할 수도 있으며, 구성부 각각이 담당하는 주기능 중 일부 기능이 다른 구성부에 의해 전담되어 수행될 수도 있음은 물론이다.
이하, 본 개시의 실시예들을 차례로 상세히 설명한다.
본 명세서에 걸쳐, 네트워크 함수는 신경망 네트워크 및/또는 뉴럴 네트워크(neural network)와 동일한 의미로 사용될 수 있다. 여기서, 뉴럴 네트워크(신경망)는 일반적으로 노드라 지칭될 수 있는 상호 연결된 계산 단위들의 집합으로 구성될 수 있고, 이러한 노드들은 뉴런으로 지칭될 수 있다. 뉴럴 네트워크는 일반적으로 복수의 노드들을 포함하여 구성된다. 뉴럴 네트워크를 구성하는 노드들은 하나 이상의 링크에 의해 상호 연결될 수 있다.
뉴럴 네트워크를 구성하는 노드들 중 일부는 최초 입력 노드로부터의 거리들에 기초하여 하나의 레이어(layer)를 구성할 수 있다. 예를 들어, 최초 입력 노드로부터 거리가 n인 노드들의 집합은 n 레이어를 구성할 수 있다.
본 명세서에서 설명하는 뉴럴 네트워크는 입력 레이어와 출력 레이어 외에 복수의 히든 레이어를 포함하는 딥 뉴럴 네트워크(Deep Neural Network, DNN)를 포함할 수 있다. 딥 뉴럴 네트워크는 컨볼루셔널 뉴럴 네트워크(Convolutional Neural Network, CNN), 리커런트 뉴럴 네트워크(Recurrent Neural Network, RNN) 등을 포함할 수 있다.
도 1은 네트워크 함수의 파라미터의 최적화를 설명하기 위한 도면이다.
네트워크 함수는 상이한 데이터 세트에 대한 학습을 통해 상이한 학습 모델을 생성할 수 있다. 이때, 네트워크 함수로부터 생성된 학습 모델의 성능(속도, 품질 등)은 적어도 하나의 파라미터의 설정 값에 의하여 영향을 받을 수 있다. 여기서 파라미터는 사용자에 의하여 직접 설정 가능하며, 학습 모델에 유의미한 변화를 줄 수 있는 변수, 즉, 하이퍼 파라미터(hyper-parameter)를 지칭할 수 있다. 예를 들어, 하이퍼 파라미터는 네트워크 함수(또는 아키텍처)의 종류, 옵티마이저(optimizer), 학습 속도(learning rate) 및 데이터 증강(data augmentation) 등에 관한 변수를 포함할 수 있다.
이와 같이, 파라미터의 설정 값에 따라 학습 모델의 성능의 달라지기 때문에, 학습 모델의 생성 및 적용에 있어서 학습하고자 하는 데이터 세트의 특성에 적합하도록 파라미터를 최적화하는 것이 선행적으로 요구된다.
도 1은 파라미터의 최적화를 위하여 사용되는 한 방법으로서, 그리드 서치(grid search)를 개념적으로 도시한다.
그리드 서치는 특정한 탐색 범위 내에서 학습 모델의 성능에 유의미한 변화를 줄 수 있는 파라미터들에 대하여 가능한 모든 조합의 설정 값을 탐색하는 것으로서, 예를 들어, 상이하게 조합된 파라미터의 설정 값을 기초로 소정의 데이터 세트를 통해 네트워크 함수를 교차 검증하여 학습 모델의 성능을 확인하는 방법을 통해, 파라미터의 설정 값을 최적화할 수 있다.
그런데, 그리드 서치 방식 또한, 가능한 모든 파라미터의 설정 값 조합을 대상으로 검증을 수행하기 때문에 탐색 범위 및 비용이 클 수밖에 없는 바, 이하에서는, 탐색 범위 및 비용을 최소화할 수 있는 본 개시의 일 실시예에 따른 자동화된 기계 학습 방법 및 장치에 대해 설명하기로 한다.
도 2 본 개시의 기술적 사상에 의한 일 실시예에 따른 자동화된 기계 학습 방법을 설명하기 위한 흐름도이며, 도 3은 도 2의 S210 단계의 일 실시예를 도시하고, 도 4는 도 2의 S220 단계의 일 실시예를 도시한다.
본 개시의 기술적 사상에 의한 일 실시예에 따른 자동화된 기계 학습 방법은 연산 능력을 구비한 개인용 컴퓨터(Personal Computer), 워크스테이션(work station), 서버용 컴퓨터 장치 등에서 수행되거나, 상기 자동화된 기계 학습 방법을 수행하기 위한 프로그램이 탑재(embedded)된 별도의 장치 등에서 수행될 수 있다.
또한, 본 개시의 기술적 사상에 의한 일 실시예에 따른 자동화된 기계 학습 방법은 하나 이상의 연산 장치들에서 수행될 수도 있다. 예를 들어, 본 개시의 일 실시예에 따른 자동화된 기계 학습 방법 중 적어도 하나 이상의 단계들은 클라이언트 디바이스에서, 다른 단계들은 서버 디바이스에서 수행될 수 있다. 이러한 경우, 클라이언트 디바이스와 서버 디바이스는 네트워크로 연결되어 연산 결과를 송수신할 수 있다. 또는, 본 개시의 일 실시예에 따른 자동화된 기계 학습 방법은 분산 컴퓨팅 기술에 의해 수행될 수도 있다.
S210 단계에서, 기계 학습 장치는 학습 모델에 영향을 미치는 적어도 하나의 파라미터에 대한 상이한 설정 데이터의 조합을 포함하는 적어도 하나의 제 1 파라미터 세트를 등록할 수 있다.
일 실시예에서, 파라미터는 도 1 참조하여 상술한 하이퍼 파라미터를 지칭할 수 있으며, 네트워크 함수의 종류(예를 들어, CNN의 종류 등), 옵티마이저(optimizer), 학습 속도(learning rate) 및 데이터 증강(data augmentation) 중 적어도 하나에 관한 파라미터를 포함할 수 있다. 예를 들어, 제 1 파라미터 세트는 학습 모델에 대하여 소정의 기준치 이상의 성능을 발휘하도록 하는 적어도 하나의 하이퍼 파라미터의 설정 데이터의 조합으로 구성될 수 있다.
일 실시예에서, S210 단계는, 도 3에 도시되는 바와 같이, S211 내지 S214 단계를 포함할 수 있다.
S211 단계에서, 기계 학습 장치는 적어도 하나의 파라미터에 대하여 상이한 설정 데이터를 조합함으로써, 후보 파라미터 세트를 생성할 수 있다. 예를 들어, 후보 파라미터 세트에는 네트워크 함수의 종류, 옵티마이저, 학습 속도 및 데이터 증강 중 적어도 하나에 관한 파라미터가 포함될 수 있으며, 이들 파라미터에 대한 설정 데이터는 각각의 후보 파라미터 세트별로 상이한 조합을 가질 수 있다.
이어서, S212 단계에서, 기계 학습 장치는 생성된 후보 파라미터 세트에 각각 대하여 제 1 데이터 세트를 통해 네트워크 함수에 대한 학습을 진행함으로써, 교차 검증을 수행할 수 있다. 예를 들어, 기계 학습 장치는 하이퍼 파라미터를 각각의 후보 파라미터 세트에 포함된 설정 데이터에 기초하여 설정하고, 제 1 데이터 세트를 k개의 폴드로 분할한 다음, 네트워크 함수에 대한 학습 및 교차 검증을 진행하여, 각각의 후보 파라미터 세트에 대한 검증 점수(validation score)의 평균 및 표준 편차를 산출할 수 있다.
이어서, S213 단계에서, 기계 학습 장치는 교차 검증 결과에 따라, 후보 파라미터 세트 중 적어도 하나를 프리셋 그룹(preset group)에 등록할 수 있다. 예를 들어, 기계 학습 장치는 S212 단계에서 산출한 검증 점수의 평균 및 표준 편차를 기초로 통계적 비교를 수행하고, 소정의 기준치(baseline) 보다 높은 성능을 가지는 후보 파라미터 세트를 프리셋 그룹에 등록할 수 있다.
이어서, S214 단계에서, 기계 학습 장치는 S212 및 S213 단계를 제 1 데이터 세트와 상이한 적어도 하나의 제 2 데이터 세트에 기초하여 반복 수행할 수 있다. 이에 따라, 예를 들어, 상이한 데이터 세트에 대응하는 복수의 프리셋 그룹 내에 각각 적어도 하나의 파라미터 세트가 각각 등록될 수 있다.
S220 단계에서, 기계 학습 장치는 적어도 하나의 프리셋 그룹에 등록된 제 1 파라미터 세트 중에서 학습 모델의 생성에 사용할 적어도 하나의 제 2 파라미터 세트를 선정할 수 있다.
일 실시예에서, S220 단계는, 도 4에 도시되는 바와 같이, S221 내지 S223 단계를 포함할 수 있다.
S221 단계에서, 기계 학습 장치는 학습 조건에 대한 사용자 입력을 수신할 수 있다. 예를 들어, 기계 학습 장치는 사용자 단말 또는 자체의 디스플레이부에 소정의 사용자 인터페이스를 제공하고, 이를 통해 입력되는 학습 조건을 수신할 수 있다. 일 실시예에서, 학습 조건은 학습 환경(PC 또는 임베디드 장치), 추론 속도(inference speed) 및 검색 범위 중 적어도 하나에 관한 조건을 포함할 수 있다. 여기서 검색 범위에 관한 조건은 프리셋 그룹에 등록된 제 1 파라미터 세트 중에서 얼마 만큼을 사용할 것인가(즉, 제 2 파라미터 세트로 선정하는 비율)를 결정하기 위한 조건을 지칭할 수 있다.
실시예에 따라, S221 단계에서, 기계 학습 장치는 사용자 단말로부터 입력 데이터 세트를 더 수신할 수 있다.
이어서, S222 단계에서, 적어도 하나의 프리셋 그룹에 등록된 제 1 파라미터 세트를 아키텍처(architecture) 및 추론 속도(inference speed) 중 적어도 하나를 기준으로 정렬할 수 있다.
예를 들어, 기계 학습 장치는 사용자에 의해 입력된 학습 환경에 대응하여 아키텍처를 기준으로 제 1 파라미터 세트를 1차 정렬하고, 이어서, S210 단계를 통해 제 1 파라미터 세트 각각에 대해 기록된 추론 속도를 기초로(즉, 추론 속도가 높은 순으로), 제 1 파라미터 세트를 2차 정렬할 수 있다.
이어서, S223 단계에서, 기계 학습 장치는 사용자가 입력한 학습 조건에 따라, S222 단계를 통해 정렬된 제 1 파라미터 세트 중 상위의 소정의 비율을 제 2 파라미터 세트로 선정할 수 있다.
일 실시예에서, 기계 학습 장치는 사용자가 입력한 추론 속도 레벨 및/또는 탐색 범위 레벨에 기초하여 제 1 파라미터 세트 중에서 일정한 비율을 제 2 파라미터 세트로 선정할 수 있다. 예를 들어, 기계 학습 장치는 사용자가 입력한 추론 속도가 레벨 3이면, 상위 20%를 제 2 파라미터 세트로 선정하고, 레벨 2면, 상위 50%를 제 2 파라미터 세트로 선정할 수 있다.
일 실시예에서, S222 및 S223 단계는 프리셋 그룹별로 개별 수행될 수 있다. 즉, 복수의 프리셋 그룹이 존재하는 경우, 프리셋 그룹별로 이에 포함된 제 1 파라미터 세트에 대한 정렬 및 제 2 파라미터 세트의 선정이 수행될 수 있다.
S230 단계에서, 선정된 제 2 파라미터 세트 및 입력 데이터 세트에 기초하여 네트워크 함수에 대한 학습을 진행함으로써 상이한 학습 모델을 생성하고, 생성된 학습 모델에 각각에 대한 검증 검수(validation score)를 산출할 수 있다.
예를 들어, 제 2 파라미터 세트의 설정 데이터로 네트워크 함수의 하이퍼 파라미터를 설정하고, 입력 데이터 세트 중 적어도 일부를 학습 데이터로 네트워크 함수에 입력하여, 네트워크 함수를 학습시킴으로써 학습 모델을 생성할 수 있다.
일 실시예에서, 검증 점수는 재현율(recall), 정밀도(precision), 정확도(accuracy) 및 이들의 조합 중 적어도 하나에 기초하여 산출될 수 있다. 예를 들어, 기계 학습 장치는 학습 모델이 객체 검출(detection) 및/또는 분류(classification)을 위한 것이라면, 재현율에 기초하여 검증 점수를 산출하고, 학습 모델이 객체 분할(segmentation)을 위한 것이라면, 재현율과 정밀도가 조합된 F1score에 기초하여 검증 점수를 산출하도록 구성될 수 있으나, 이에 한정하는 것은 아니다.
S240 단계에서, 기계 학습 장치는 S230 단계에서 산출된 검증 점수에 기초하여 생성된 학습 모델 중 하나를 적용 모델로 선택할 수 있다.
일 실시예에서, 기계 학습 장치는 산출된 검증 점수가 가장 높은 학습 모델을 적용 모델로 선택할 수 있다. 또한, 일 실시예에서, 기계 학습 장치는 산출된 검증 점수가 가장 높은 학습 모델이 복수인 경우, 보다 상위로 정렬된 제 2 파라미터 세트에 의해 생성된 학습 모델을 적용 모델로 선택할 수 있다.
이어서, 적용 모델이 결정되면, 기계 학습 장치는 입력 데이터 세트 중 일부인 테스트 세트를 통해 적용 모델을 평가하고, 적용 모델을 통해 사용자가 요구하는 결과를 도출할 수 있다.
도 5는 본 개시의 기술적 사상에 의한 일 실시예에 따른 자동화된 기계 학습 방법에 있어서, 파라미터 세트를 프리셋 그룹에 등록하는 과정을 예시적으로 도시한다.
도 5에서 도시되는 바와 같이, 적어도 하나의 하이퍼 파라미터에 대한 상이한 조합의 설정 데이터를 포함하는 후보 파라미터 세트에 대하여, 상이한 6개의 데이터 세트를 이용하여 소정의 기준치 이상의 성능을 갖는 후보 파라미터를 프리셋 그룹에 등록할 수 있다.
이때, 기계 학습 장치는 데이터 세트에 대응하는 6개의 프리셋 그룹을 각각 생성하고, 각각의 데이터 세트를 이용한 교차 검증 과정을 반복 수행함으로써, 데이터 세트에 대응하는 프리셋 그룹에 후보 파라미터 세트를 등록하도록 구현될 수 있다.
프리셋 그룹으로 등록된 파라미터 세트에 관한 정보는 기계 학습 장치 또는 기계 학습 장치와 통신하는 외부 서버 등에 저장될 수 있다.
도 6은 본 개시의 기술적 사상에 의한 일 실시예에 따른 자동화된 기계 학습 방법에 있어서, 학습 조건을 입력하기 위한 사용자 인터페이스를 예시적으로 도시한다.
기계 학습 장치는 사용자 단말 또는 자체 구비된 디스플레이부를 통해 학습 조건에 대한 사용자 입력을 수신하기 위한 사용자 인터페이스를 제공할 수 있다.
예를 들어, 사용자 인터페이스에는 학습 환경을 설정하기 위한 영역(610), 탐색 공간의 레벨을 설정하기 위한 영역(620) 및 추론 속도의 레벨을 설정하기 위한 영역(630)을 포함할 수 있다.
사용자는 이러한 사용자 인터페이스를 통해, 프리셋 그룹에 등록된 파라미터에 대하여, 어떠한 환경에 맞추어 파라미터 세트를 선택할 것인지, 또한, 레벨별로 등록된 파라미터 중 몇 퍼센트를 이용할 것인지를 설정할 수 있다.
도 7은 본 개시의 기술적 사상에 의한 일 실시예에 따른 자동화된 기계 학습 장치의 구성을 간략히 도시한 블록도이다.
통신부(710)는 프로세서(740)의 제어에 의해 외부 장치(사용자 단말 등) 또는 외부 서버와 데이터 또는 신호를 송수신할 수 있다. 통신부(710)는 유무선 통신부를 포함할 수 있다. 통신부(710)가 유선 통신부를 포함하는 경우, 통신부(710)는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 부가가치 통신망(Value Added Network; VAN), 이동 통신망(mobile radio communication network), 위성 통신망 및 이들의 상호 조합을 통하여 통신을 하게 하는 하나 이상의 구성요소를 포함할 수 있다. 또한, 통신부(710)가 무선 통신부를 포함하는 경우, 통신부(710)는 셀룰러 통신, 무선랜(예를 들어, 와이-파이(Wi-Fi)) 등을 이용하여 무선으로 데이터 또는 신호를 송수신할 수 있다.
입력부(720)는 외부의 조작을 통해 다양한 사용자 명령을 수신할 수 있다. 이를 위해, 입력부(720)는 하나 이상의 입력 장치를 포함하거나 연결할 수 있다. 예를 들어, 입력부(720)는 키패드, 마우스 등 다양한 입력을 위한 인터페이스와 연결되어 사용자 명령을 수신할 수 있다. 이를 위해, 입력부(720)는 USB 포트 뿐만 아니라 선더볼트 등의 인터페이스를 포함할 수도 있다. 또한, 입력부(720)는 터치스크린, 버튼 등의 다양한 입력 장치를 포함하거나 이들과 결합하여 외부의 사용자 명령을 수신할 수 있다.
메모리(730)는 프로세서(740)의 동작을 위한 프로그램을 저장할 수 있고, 입/출력되는 데이터들을 임시 또는 영구 저장할 수 있다. 메모리(730)는 플래시 메모리(flash memory) 타입, 하드디스크(hard disk) 타입, 멀티미디어 카드 마이크로(multimedia card micro) 타입, 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM), SRAM, 롬(ROM), EEPROM, PROM, 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
또한, 메모리(730)는 다양한 네트워크 함수 및 알고리즘을 저장할 수 있으며, 장치(700)를 구동하고 제어하기 위한 다양한 데이터, 프로그램(하나 이상이 인스트럭션들), 어플리케이션, 소프트웨어, 명령, 코드 등을 저장할 수 있다.
프로세서(740)는 장치(700)의 전반적인 동작을 제어할 수 있다. 프로세서(740)는 메모리(730)에 저장되는 하나 이상의 프로그램들을 실행할 수 있다. 프로세서(740)는 중앙 처리 장치(Central Processing Unit, CPU), 그래픽 처리 장치(Graphics Processing Unit, GPU) 또는 본 개시의 기술적 사상에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다.
일 실시예에서, 프로세서(740)는 학습 모델의 성능에 영향을 미치는 적어도 하나의 파라미터에 대한 상이한 설정 데이터의 조합을 포함하는 적어도 하나의 제 1 파라미터 세트를 등록할 수 있다.
일 실시예에서, 프로세서(740)는 적어도 하나의 파라미터에 대하여 상이한 설정 데이터를 조합함으로써, 복수의 후보 파라미터 세트를 생성하고, 후보 파라미터 세트에 각각 대하여 제 1 데이터 세트에 통해 네트워크 함수에 대한 학습을 진행하여 교차 검증을 수행하며, 교차 검증의 결과에 따라, 후보 파라미터 세트 중 적어도 하나를 제 1 파라미터 세트로 결정하도록 제어할 수 있다.
일 실시예에서, 프로세서(740)는 제 1 데이터 세트와 상이한 적어도 하나의 제 2 데이터 세트에 기초하여 상기 교차 검증과 상기 교차 검증의 결과에 따른 상기 제 1 파라미터 세트의 결정을 반복 수행하도록 제어할 수 있다.
일 실시예에서, 프로세서(740)는 후보 파라미터 세트 각각에 대하여 교차 검증에 따른 검증 점수의 평균 및 표준 편차를 산출하고, 검증 점수의 평균 및 표준 편차를 기초로 통계적 비교를 수행함으로써, 소정의 기준치(baseline) 보다 높은 성능을 가지는 후보 파라미터 세트를 제 1 파라미터 세트로 결정하도록 제어할 수 있다.
일 실시예에서, 프로세서(740)는 입력된 학습 조건에 기초하여, 제 1 파라미터 세트 중 학습 모델의 생성에 사용할 적어도 하나의 제 2 파라미터 세트를 선정할 수 있다.
일 실시예에서, 프로세서(740)는 제 1 파라미터 세트를 아키텍처(architecture) 및 추론 속도 중 적어도 하나를 기준으로 정렬하고, 입력된 상기 학습 조건에 따라, 정렬된 제 1 파라미터 세트 중 상위의 소정의 비율을 상기 제 2 파라미터 세트로 선정하도록 제어할 수 있다.
일 실시예에서, 프로세서(740)는 제 2 파라미터 세트 및 소정의 입력 데이터 세트에 기초하여 네트워크 함수에 대한 학습을 진행함으로써, 제 2 파라미터 세트 각각에 대응하는 학습 모델을 생성하고, 학습 모델 각각에 대한 검증 점수(validation score)를 산출하고, 검증 점수에 기초하여, 생성된 학습 모델 중 하나를 적용 모델로 선택하도록 제어할 수 있다. 이때, 검증 점수는 재현율(recall), 정밀도(precision), 정확도(accuracy) 및 이들의 조합 중 적어도 하나에 기초하여 산출될 수 있다.
또한, 도 7에는 도시하지 않았으나, 기계 학습 장치(700)는 출력부, 디스플레이부 등을 더 포함할 수 있다.
출력부는 시각, 청각, 진동 등과 관련된 출력을 발생시키기 위한 것으로, 디스플레이부, 음향 출력부, 모터 등을 포함할 수 있다.
디스플레이부는 프로세서(740)의 제어에 따라, 학습 조건, 입력 데이터 세트 등의 입력을 위한 사용자 인터페이스, 학습 모델의 출력 등을 표시할 수 있다. 디스플레이부는 디스플레이 모듈을 포함할 수 있다. 디스플레이 모듈은 디스플레이 패널, 디스플레이 구동부 및 터치 패널을 포함할 수 있다.
이상과 같은 본 개시의 기술적 사상에 의한 다양한 실시예에 따르면, 사용자가 학습 조건과 입력 데이터 등을 입력하는 것만으로 적합한 네트워크 함수의 선택 및 하이퍼 파라미터의 최적화를 자동으로 수행하도록 구현됨으로써, 비전문가라도 손쉽게 학습 모델을 생성하고 활용할 수 있다.
또한, 본 개시의 기술적 사상에 의한 다양한 실시예에 따르면, 일정한 기준치 이상의 성능을 제공하는 유의미한 하이퍼 파라미터 조합을 사전에 탐색하여 프리셋 그룹으로 등록함으로써, 하이퍼 파라미터의 최적화에 필요한 탐색 범위 및 시간을 최소화할 수 있다.
일 실시예에 따른 자동화된 기계 학습 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 개시를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
또한, 개시된 실시예들에 따른 자동화된 기계 학습 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다.
컴퓨터 프로그램 제품은 S/W 프로그램, S/W 프로그램이 저장된 컴퓨터로 읽을 수 있는 저장 매체를 포함할 수 있다. 예를 들어, 컴퓨터 프로그램 제품은 전자 장치의 제조사 또는 전자 마켓(예, 구글 플레이 스토어, 앱 스토어)을 통해 전자적으로 배포되는 S/W 프로그램 형태의 상품(예, 다운로더블 앱)을 포함할 수 있다. 전자적 배포를 위하여, S/W 프로그램의 적어도 일부는 저장 매체에 저장되거나, 임시적으로 생성될 수 있다. 이 경우, 저장 매체는 제조사의 서버, 전자 마켓의 서버, 또는 SW 프로그램을 임시적으로 저장하는 중계 서버의 저장매체가 될 수 있다.
컴퓨터 프로그램 제품은, 서버 및 클라이언트 장치로 구성되는 시스템에서, 서버의 저장매체 또는 클라이언트 장치의 저장매체를 포함할 수 있다. 또는, 서버 또는 클라이언트 장치와 통신 연결되는 제 3 장치(예, 스마트폰)가 존재하는 경우, 컴퓨터 프로그램 제품은 제 3 장치의 저장매체를 포함할 수 있다. 또는, 컴퓨터 프로그램 제품은 서버로부터 클라이언트 장치 또는 제 3 장치로 전송되거나, 제 3 장치로부터 클라이언트 장치로 전송되는 S/W 프로그램 자체를 포함할 수 있다.
이 경우, 서버, 클라이언트 장치 및 제 3 장치 중 하나가 컴퓨터 프로그램 제품을 실행하여 개시된 실시예들에 따른 방법을 수행할 수 있다. 또는, 서버, 클라이언트 장치 및 제 3 장치 중 둘 이상이 컴퓨터 프로그램 제품을 실행하여 개시된 실시예들에 따른 방법을 분산하여 실시할 수 있다.
예를 들면, 서버(예로, 클라우드 서버 또는 인공 지능 서버 등)가 서버에 저장된 컴퓨터 프로그램 제품을 실행하여, 서버와 통신 연결된 클라이언트 장치가 개시된 실시예들에 따른 방법을 수행하도록 제어할 수 있다.
이상에서 실시예들에 대하여 상세하게 설명하였지만 본 개시의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 개시의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 개시의 권리범위에 속한다.

Claims (17)

  1. 자동화된 기계 학습 방법에 있어서,
    학습 모델의 성능에 영향을 미치는 적어도 하나의 파라미터에 대한 상이한 설정 데이터의 조합을 포함하는 적어도 하나의 제 1 파라미터 세트를 등록하는 단계;
    입력된 학습 조건에 기초하여, 상기 제 1 파라미터 세트 중 상기 학습 모델의 생성에 사용할 적어도 하나의 제 2 파라미터 세트를 선정하는 단계;
    상기 제 2 파라미터 세트 및 소정의 입력 데이터 세트에 기초하여 네트워크 함수에 대한 학습을 진행함으로써, 상기 제 2 파라미터 세트 각각에 대응하는 상기 학습 모델을 생성하고, 상기 학습 모델 각각에 대한 검증 점수(validation score)를 산출하는 단계; 및
    상기 검증 점수에 기초하여, 생성된 상기 학습 모델 중 하나를 적용 모델로 선택하는 단계를 포함하는, 방법.
  2. 제 1 항에 있어서,
    상기 제 1 파라미터 세트를 등록하는 단계는,
    상기 적어도 하나의 파라미터에 대하여 상이한 설정 데이터를 조합함으로써, 복수의 후보 파라미터 세트를 생성하는 단계;
    상기 후보 파라미터 세트에 각각 대하여 제 1 데이터 세트에 통해 상기 네트워크 함수에 대한 학습을 진행하여 교차 검증을 수행하는 단계; 및
    상기 교차 검증의 결과에 따라, 상기 후보 파라미터 세트 중 적어도 하나를 상기 제 1 파라미터 세트로 결정하는 단계를 포함하는, 방법.
  3. 제 2 항에 있어서,
    상기 교차 검증을 수행하는 단계 및 상기 제 1 파라미터 세트로 결정하는 단계는, 상기 제 1 데이터 세트와 상이한 적어도 하나의 제 2 데이터 세트에 기초하여 반복 수행되는, 방법.
  4. 제 2 항에 있어서,
    상기 교차 검증의 결과는, 상기 후보 파라미터 세트 각각에 대하여 산출된 상기 교차 검증에 따른 검증 점수의 평균 및 표준 편차를 포함하고,
    상기 제 1 파라미터 세트로 결정하는 단계에서는,
    상기 검증 점수의 평균 및 표준 편차를 기초로 통계적 비교를 수행함으로써, 소정의 기준치(baseline) 보다 높은 성능을 가지는 상기 후보 파라미터 세트를 상기 제 1 파라미터 세트로 결정하는, 방법.
  5. 제 1 항에 있어서,
    상기 제 1 파라미터 세트는 네트워크 함수의 종류, 옵티마이저(optimizer), 학습 속도(learning rate) 및 데이터 증강(data augmentation) 중 적어도 하나에 관한 파라미터의 설정 데이터를 포함하는, 방법.
  6. 제 1 항에 있어서,
    상기 학습 조건은 학습 환경, 추론 속도(inference speed) 및 검색 범위 중 적어도 하나에 관한 조건을 포함하는, 방법.
  7. 제 6 항에 있어서,
    상기 제 2 파라미터를 선정하는 단계는,
    상기 제 1 파라미터 세트를 아키텍처(architecture) 및 상기 추론 속도 중 적어도 하나를 기준으로 정렬하는 단계; 및
    입력된 상기 학습 조건에 따라, 상기 정렬된 제 1 파라미터 세트 중 상위의 소정의 비율을 상기 제 2 파라미터 세트로 선정하는 단계를 포함하는, 방법.
  8. 제 1 항에 있어서,
    상기 검증 점수는 재현율(recall), 정밀도(precision), 정확도(accuracy) 및 이들의 조합 중 적어도 하나에 기초하여 산출되는, 방법.
  9. 자동화된 기계 학습 장치로서,
    자동화된 기계 학습을 위한 프로그램을 저장하는 메모리;
    상기 프로그램을 실행함으로써, 학습 모델의 성능에 영향을 미치는 적어도 하나의 파라미터에 대한 상이한 설정 데이터의 조합을 포함하는 적어도 하나의 제 1 파라미터 세트를 등록하고, 입력된 학습 조건에 기초하여, 상기 제 1 파라미터 세트 중 상기 학습 모델의 생성에 사용할 적어도 하나의 제 2 파라미터 세트를 선정하며, 상기 제 2 파라미터 세트 및 소정의 입력 데이터 세트에 기초하여 네트워크 함수에 대한 학습을 진행함으로써, 상기 제 2 파라미터 세트 각각에 대응하는 상기 학습 모델을 생성하고, 상기 학습 모델 각각에 대한 검증 점수(validation score)를 산출하고, 상기 검증 점수에 기초하여, 생성된 상기 학습 모델 중 하나를 적용 모델로 선택하도록 제어하는 프로세서;를 포함하는, 장치.
  10. 제 9 항에 있어서,
    상기 프로세서는,
    상기 적어도 하나의 파라미터에 대하여 상이한 설정 데이터를 조합함으로써, 복수의 후보 파라미터 세트를 생성하고, 상기 후보 파라미터 세트에 각각 대하여 제 1 데이터 세트에 통해 상기 네트워크 함수에 대한 학습을 진행하여 교차 검증을 수행하며, 상기 교차 검증의 결과에 따라, 상기 후보 파라미터 세트 중 적어도 하나를 상기 제 1 파라미터 세트로 결정하도록 제어하는, 장치.
  11. 제 10 항에 있어서,
    상기 프로세서는,
    상기 제 1 데이터 세트와 상이한 적어도 하나의 제 2 데이터 세트에 기초하여 상기 교차 검증과 상기 교차 검증의 결과에 따른 상기 제 1 파라미터 세트의 결정을 반복 수행하도록 제어하는, 장치.
  12. 제 10 항에 있어서,
    상기 프로세서는,
    상기 후보 파라미터 세트 각각에 대하여 상기 교차 검증에 따른 검증 점수의 평균 및 표준 편차를 산출하고, 상기 검증 점수의 평균 및 표준 편차를 기초로 통계적 비교를 수행함으로써, 소정의 기준치(baseline) 보다 높은 성능을 가지는 상기 후보 파라미터 세트를 상기 제 1 파라미터 세트로 결정하도록 제어하는, 장치.
  13. 제 9 항에 있어서,
    상기 제 1 파라미터 세트는 네트워크 함수의 종류, 옵티마이저(optimizer), 학습 속도(learning rate) 및 데이터 증강(data augmentation) 중 적어도 하나에 관한 파라미터의 설정 데이터를 포함하는, 장치.
  14. 제 9 항에 있어서,
    상기 학습 조건은 학습 환경, 추론 속도(inference speed) 및 검색 범위 중 적어도 하나에 관한 조건을 포함하는, 장치.
  15. 제 9 항에 있어서,
    상기 프로세서는,
    상기 제 1 파라미터 세트를 아키텍처(architecture) 및 상기 추론 속도 중 적어도 하나를 기준으로 정렬하고, 입력된 상기 학습 조건에 따라, 상기 정렬된 제 1 파라미터 세트 중 상위의 소정의 비율을 상기 제 2 파라미터 세트로 선정하도록 제어하는, 장치.
  16. 제 9 항에 있어서,
    상기 검증 점수는 재현율(recall), 정밀도(precision), 정확도(accuracy) 및 이들의 조합 중 적어도 하나에 기초하여 산출되는, 장치.
  17. 제 1 항 내지 제 8 항 중 어느 한 항의 방법을 실행하기 위하여 기록 매체에 저장된 컴퓨터 프로그램.
PCT/KR2020/016084 2020-09-11 2020-11-16 자동화된 기계 학습 방법 및 그 장치 WO2022055020A1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US18/013,492 US20230297830A1 (en) 2020-09-11 2020-11-16 Automated machine learning method and apparatus therefor
JP2023516482A JP2023541264A (ja) 2020-09-11 2020-11-16 自動化された機械学習方法及びその装置
CN202080105033.6A CN116057543A (zh) 2020-09-11 2020-11-16 自动化机器学习方法及其装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020200116989A KR102271736B1 (ko) 2020-09-11 2020-09-11 자동화된 기계 학습 방법 및 그 장치
KR10-2020-0116989 2020-09-11

Publications (1)

Publication Number Publication Date
WO2022055020A1 true WO2022055020A1 (ko) 2022-03-17

Family

ID=76896784

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2020/016084 WO2022055020A1 (ko) 2020-09-11 2020-11-16 자동화된 기계 학습 방법 및 그 장치

Country Status (5)

Country Link
US (1) US20230297830A1 (ko)
JP (1) JP2023541264A (ko)
KR (1) KR102271736B1 (ko)
CN (1) CN116057543A (ko)
WO (1) WO2022055020A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102592515B1 (ko) * 2021-12-14 2023-10-23 한국전자기술연구원 임베딩 기반 데이터 집합의 처리 장치 및 그 방법
KR102552115B1 (ko) * 2023-03-27 2023-07-06 유비즈정보기술(주) 범용성을 가지는 기계 학습 프로그램 기록매체

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170078256A (ko) * 2015-12-29 2017-07-07 삼성에스디에스 주식회사 시계열의 데이터를 예측 하는 방법 및 그 장치
KR20170079159A (ko) * 2015-12-30 2017-07-10 주식회사 솔리드웨어 빅데이터와 기계학습을 이용한 타겟 정보 예측 시스템 및 예측 방법
KR20180079995A (ko) * 2017-01-03 2018-07-11 주식회사 데일리인텔리전스 머신러닝을 기반으로 데이터를 분석하는 프로그램을 생성하기 위한 방법
KR20190048895A (ko) * 2017-10-31 2019-05-09 삼성에스디에스 주식회사 하이퍼파라미터 자동 최적화 방법 및 그 장치
KR20200080947A (ko) * 2018-12-27 2020-07-07 (주)아크릴 인공 신경망의 파라미터 셋을 결정하는 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170078256A (ko) * 2015-12-29 2017-07-07 삼성에스디에스 주식회사 시계열의 데이터를 예측 하는 방법 및 그 장치
KR20170079159A (ko) * 2015-12-30 2017-07-10 주식회사 솔리드웨어 빅데이터와 기계학습을 이용한 타겟 정보 예측 시스템 및 예측 방법
KR20180079995A (ko) * 2017-01-03 2018-07-11 주식회사 데일리인텔리전스 머신러닝을 기반으로 데이터를 분석하는 프로그램을 생성하기 위한 방법
KR20190048895A (ko) * 2017-10-31 2019-05-09 삼성에스디에스 주식회사 하이퍼파라미터 자동 최적화 방법 및 그 장치
KR20200080947A (ko) * 2018-12-27 2020-07-07 (주)아크릴 인공 신경망의 파라미터 셋을 결정하는 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HAN, MU MOUNG CHO; LEE, CHOONG KWON; KIM, YANG SOK: "A Study on Defect Prediction Method Using Sensor Data and Machine Learning in Manufacturing Process", ENTRUE JOURNAL OF INFORMATION TECHNOLOGY, vol. 17, no. 1, 1 December 2019 (2019-12-01), KR, pages 89 - 98, XP009535492 *

Also Published As

Publication number Publication date
KR102271736B1 (ko) 2021-07-02
JP2023541264A (ja) 2023-09-29
CN116057543A (zh) 2023-05-02
US20230297830A1 (en) 2023-09-21

Similar Documents

Publication Publication Date Title
WO2022055020A1 (ko) 자동화된 기계 학습 방법 및 그 장치
US11377115B2 (en) Method for testing at least one control device function of at least one control device
WO2019050247A2 (ko) 클래스 인식을 위한 뉴럴 네트워크 학습 방법 및 디바이스
WO2018212494A1 (ko) 객체를 식별하는 방법 및 디바이스
WO2019164237A1 (ko) 시스톨릭 배열을 이용하여 딥 러닝 연산을 수행하는 방법 및 장치
WO2022055099A1 (ko) 이상 탐지 방법 및 이를 위한 장치
WO2021075699A1 (ko) 전자 장치 및 그 동작방법
WO2022085958A1 (ko) 전자 장치 및 그 동작방법
WO2020091207A1 (ko) 이미지의 채색 완성 방법, 장치 및 컴퓨터 프로그램과 인공 신경망 학습 방법, 장치 및 컴퓨터 프로그램
WO2022145981A1 (ko) 자동학습 기반 시계열 데이터 예측 및 제어 방법 및 장치
WO2023140476A1 (ko) 자율 주행 알고리즘의 성능 평가 방법 및 시스템
WO2020050456A1 (ko) 설비 데이터의 이상 정도 평가 방법
WO2015020361A1 (ko) 페트리넷과 발사 추천기에 기반한 최적화 시스템 및 구현 방법
WO2022139327A1 (en) Method and apparatus for detecting unsupported utterances in natural language understanding
WO2022177345A1 (ko) 인공지능 기반으로 화면 정보를 인지하여 화면 상의 오브젝트에 이벤트를 발생시키는 방법 및 시스템
EP3707646A1 (en) Electronic apparatus and control method thereof
WO2022181919A1 (ko) 가상 현실 기반의 수술 환경을 제공하는 장치 및 방법
WO2022191361A1 (ko) 무압축 합성곱 신경망 기반 소리 이상 탐지 장치 및 방법
WO2020130687A1 (en) System and method for automated execution of user-specified commands
KR102325612B1 (ko) 시뮬레이터를 구현하는 방법, 장치, 기기 및 매체
CN114898174A (zh) 基于不同识别模型的电缆故障识别系统
WO2023128677A1 (ko) 다중 레이블 세트를 이용한 학습 모델 생성 방법 및 이를 위한 장치
WO2023214795A1 (ko) 상용망 기지국 데이터 기반 디지털 트윈 구축 전자 장치 및 방법
WO2024034830A1 (ko) Gnn 기반으로 그래프 데이터를 군집화하는 전자 장치 및 그의 제어 방법
WO2023182795A1 (ko) 제품 이미지를 기반으로 불량 제품을 감지하는 인공 지능 장치 및 그 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20953422

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2023516482

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20953422

Country of ref document: EP

Kind code of ref document: A1