WO2021182748A1 - 전자 장치 및 그 제어 방법 - Google Patents

전자 장치 및 그 제어 방법 Download PDF

Info

Publication number
WO2021182748A1
WO2021182748A1 PCT/KR2021/000891 KR2021000891W WO2021182748A1 WO 2021182748 A1 WO2021182748 A1 WO 2021182748A1 KR 2021000891 W KR2021000891 W KR 2021000891W WO 2021182748 A1 WO2021182748 A1 WO 2021182748A1
Authority
WO
WIPO (PCT)
Prior art keywords
artificial intelligence
intelligence model
layers
output
auxiliary
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/KR2021/000891
Other languages
English (en)
French (fr)
Inventor
송원석
손원철
황원준
구강모
김영빈
문영수
이희중
조영훈
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Ajou University Industry Academic Cooperation Foundation
Original Assignee
Samsung Electronics Co Ltd
Ajou University Industry Academic Cooperation Foundation
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
Priority claimed from KR1020200114122A external-priority patent/KR20210114315A/ko
Application filed by Samsung Electronics Co Ltd, Ajou University Industry Academic Cooperation Foundation filed Critical Samsung Electronics Co Ltd
Publication of WO2021182748A1 publication Critical patent/WO2021182748A1/ko
Priority to US17/497,193 priority Critical patent/US12488281B2/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0495Quantised networks; Sparse networks; Compressed networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/094Adversarial learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation

Definitions

  • the present disclosure relates to an electronic device and a control method thereof, and more particularly, to an electronic device for learning an artificial intelligence model and a control method thereof.
  • the artificial intelligence model is a model in which the machine learns, judges, and becomes smarter by itself, and the existing rule-based model is gradually being replaced by a deep learning-based artificial intelligence model.
  • knowledge distillation is a method of re-learning a small-capacity network (Student network) so that the output of the small-capacity network (Student network) is similar to the output of the high-capacity network (Teacher network). .
  • FIG. 1B there may be a method of comparing the output of each layer, but the size of the output of each layer is different, so it is necessary to change the size of one of them. In this case, additional computation is required in the learning process, and when the number of layers is different or the number of channels included in the layers is different, there is a problem in that the low-level characteristics are not accurately reflected.
  • the present disclosure has been made in accordance with the above-mentioned necessity, and an object of the present disclosure is to provide an electronic device and a control method therefor for improving performance while compressing an artificial intelligence model through knowledge distillation.
  • the electronic device provides information on a first artificial intelligence model learned through the first learning data and a second artificial intelligence learned through the first learning data.
  • a memory in which information about the model is stored and a processor connected to the memory to control the electronic device, wherein the processor inputs second learning data to each of the first artificial intelligence model and the second artificial intelligence model; re-learning the second artificial intelligence model based on the output of each of the plurality of first layers included in the first artificial intelligence model and the output of each of the plurality of second layers included in the second artificial intelligence model;
  • Each of the plurality of first layers may include a plurality of 2D filters, and each of the plurality of second layers may include a plurality of filters in which sizes of the plurality of 2D filters of the corresponding first layer are reduced.
  • the number of the plurality of first layers is the same as the number of the plurality of second layers, and the processor compares the output of each of the plurality of first layers with the output of the corresponding second layer to obtain a plurality of comparison results. may be obtained, and the second artificial intelligence model may be retrained based on the plurality of comparison results.
  • the number of the plurality of 2D filters included in each of the plurality of first layers is the same as the number of the plurality of filters included in the corresponding second layer, and the size of the output of each of the plurality of first layers may be equal to the size of the corresponding output of the second layer.
  • the memory stores information about a third artificial intelligence model trained to distinguish the output of each of the plurality of first layers and the output of each of the plurality of second layers
  • the processor is configured to: inputting respective outputs to each of the third artificial intelligence models, and obtaining a plurality of discrimination results for the outputs of the plurality of second layers output from the third artificial intelligence model, the plurality of comparison results and the plurality of The second artificial intelligence model may be retrained based on the discrimination result of .
  • the processor inputs the second learning data to each of the retrained second artificial intelligence models, and outputs each of the plurality of first layers and a plurality of second learning data included in the retrained second artificial intelligence model.
  • the third artificial intelligence model may be retrained to distinguish the output of each of the three layers.
  • the processor may retrain the second artificial intelligence model by weighting and summing the plurality of comparison results and the plurality of discrimination results.
  • the processor may re-learn the second artificial intelligence model by giving a weight of a comparison result corresponding to a last layer among the plurality of first layers greater than or equal to a weight of a plurality of comparison results corresponding to the remaining layers.
  • each of the plurality of filters has a 1 ⁇ N type or an N ⁇ 1 type
  • the processor reads input data from the memory in a row unit or a column unit, and reads the read input data in the The input data may be processed by input to the retrained second artificial intelligence model.
  • first artificial intelligence model and the second artificial intelligence model may be implemented in the form of a convolutional neural network (CNN).
  • CNN convolutional neural network
  • the memory further stores information on the auxiliary artificial intelligence model learned through the first learning data
  • the processor inputs the second learning data to the auxiliary artificial intelligence model, and the plurality of first layers retraining the auxiliary artificial intelligence model based on each output and the output of each of the plurality of auxiliary layers included in the auxiliary artificial intelligence model, and inputting the second training data to the retrained auxiliary artificial intelligence model;
  • the second artificial intelligence model may be retrained based on an output of each of a plurality of auxiliary layers included in the retrained auxiliary artificial intelligence model and an output of each of the plurality of second layers.
  • each of the plurality of auxiliary layers may include a plurality of filters in which sizes of the plurality of 2D filters of the corresponding first layer are reduced.
  • the memory further stores information on the first auxiliary artificial intelligence model learned through the first learning data and information on the second auxiliary artificial intelligence model learned through the first learning data
  • the processor comprises: inputting the second training data to the first auxiliary artificial intelligence model and the second auxiliary artificial intelligence model, and outputting each of the plurality of first layers and a plurality of first auxiliary objects included in the first auxiliary artificial intelligence model
  • the first auxiliary artificial intelligence model is retrained based on the output of each layer, and based on the output of each of the plurality of first layers and the output of each of the plurality of second auxiliary layers included in the second auxiliary artificial intelligence model to retrain the second auxiliary artificial intelligence model, input the second learning data to the retrained first auxiliary artificial intelligence model and the retrained second auxiliary artificial intelligence model, and the retrained first
  • each of the plurality of first auxiliary layers includes a plurality of filters in which the size of each of the plurality of 2D filters of the corresponding first layer is reduced, and each of the plurality of second auxiliary layers is of the corresponding first layer.
  • Each of the plurality of 2D filters may include a plurality of filters with reduced sizes, and each of the plurality of filters included in each of the plurality of first auxiliary layers may have a different shape from a filter included in each of the corresponding second auxiliary layers.
  • the second learning is performed on each of the first artificial intelligence model learned through the first learning data and the second artificial intelligence model learned through the first learning data. inputting data and the second artificial intelligence model based on the output of each of the plurality of first layers included in the first artificial intelligence model and the output of each of the plurality of second layers included in the second artificial intelligence model and re-learning, wherein each of the plurality of first layers includes a plurality of two-dimensional filters, and each of the plurality of second layers reduces the size of each of the plurality of two-dimensional filters of the corresponding first layer.
  • a plurality of filters may be included.
  • the number of the plurality of first layers is the same as the number of the plurality of second layers
  • the re-learning may include comparing the output of each of the plurality of first layers with the output of the corresponding second layer. may obtain a comparison result of , and retrain the second artificial intelligence model based on the plurality of comparison results.
  • the number of the plurality of 2D filters included in each of the plurality of first layers is the same as the number of the plurality of filters included in the corresponding second layer, and the size of the output of each of the plurality of first layers may be equal to the size of the corresponding output of the second layer.
  • the re-learning may include inputting the output of each of the plurality of second layers to each of the third artificial intelligence models, and a plurality of discriminations for the outputs of the plurality of second layers output from the third artificial intelligence model a result is obtained, and the second artificial intelligence model is retrained based on the plurality of comparison results and the plurality of discrimination results, and the third artificial intelligence model is an output of each of the plurality of first layers and the plurality of It may be an artificial intelligence model trained to distinguish the output of each of the second layers.
  • the method may further include retraining the third artificial intelligence model to distinguish each output.
  • the second artificial intelligence model may be re-learned by weighted summing the plurality of comparison results and the plurality of discrimination results.
  • the weight of the comparison result corresponding to the last layer among the plurality of first layers is given greater than or equal to the weight of the comparison result corresponding to the remaining layers to re-learn the second artificial intelligence model.
  • each of the plurality of filters is in the form of 1 ⁇ N or N ⁇ 1, and reading input data in a row unit or a column unit, and reading the read input data in the re-learned second 2 It may further include the step of inputting into the artificial intelligence model and processing the input data.
  • first artificial intelligence model and the second artificial intelligence model may be implemented in the form of a convolutional neural network (CNN).
  • CNN convolutional neural network
  • the operating method is a first artificial intelligence model learned through first learning data and inputting second learning data to each of the second artificial intelligence models learned through the first learning data, and outputting each of the plurality of first layers included in the first artificial intelligence model and the second artificial intelligence model. and re-learning the second artificial intelligence model based on the output of each of the plurality of second layers included in the Each of the two layers may include a plurality of filters in which sizes of the plurality of two-dimensional filters of the corresponding first layer are reduced.
  • the electronic device compares the outputs of each layer of the Teacher network and the Student network to relearn the Student network, so that the artificial intelligence with low-level features is highlighted. model can be obtained.
  • the electronic device may acquire an artificial intelligence model in which low-level features are more emphasized by further using a discriminator trained to discriminate the outputs of each layer of the Teacher network and the Student network.
  • the electronic device can reduce the capacity of the artificial intelligence model and process input data on the fly by using the Student network in which the size of the two-dimensional filter of the Teacher network is reduced.
  • FIG. 1A and 1B are diagrams for explaining a problem according to the prior art.
  • FIG. 2 is a block diagram illustrating a configuration of an electronic device according to an embodiment of the present disclosure.
  • FIG. 3 is a diagram for comparing a first artificial intelligence model and a second artificial intelligence model according to an embodiment of the present disclosure.
  • FIG. 4 is a diagram comparing outputs of layers of a first artificial intelligence model and a second artificial intelligence model according to an embodiment of the present disclosure.
  • FIG. 5 is a diagram for explaining a re-learning step of a second artificial intelligence model according to an embodiment of the present disclosure.
  • 6A and 6B are diagrams for explaining an on the fly method according to an embodiment of the present disclosure.
  • 7A to 8B are diagrams for explaining the performance of a second retrained artificial intelligence model according to various embodiments of the present disclosure.
  • FIG. 9 is a diagram for explaining the performance of a second retrained artificial intelligence model according to another embodiment of the present disclosure.
  • FIG. 10 is a view for explaining a step-by-step re-learning method according to an extended embodiment of the present disclosure.
  • 11A and 11B are diagrams for explaining a parallel re-learning method according to an extended embodiment of the present disclosure.
  • FIG. 12 is a flowchart illustrating a method of controlling an electronic device according to an embodiment of the present disclosure.
  • expressions such as “have,” “may have,” “include,” or “may include” indicate the presence of a corresponding characteristic (eg, a numerical value, function, operation, or component such as a part). and does not exclude the presence of additional features.
  • the term user may refer to a person who uses an electronic device or a device (eg, an artificial intelligence electronic device) using the electronic device.
  • a device eg, an artificial intelligence electronic device
  • FIG. 2 is a block diagram illustrating a configuration of an electronic device 100 according to an embodiment of the present disclosure.
  • the electronic device 100 is a device for learning an artificial intelligence model, and includes a TV, a desktop PC, a laptop computer, a video wall, a large format display (LFD), a digital signage, a digital information display (DID), It may be a device such as a projector display, a digital video disk (DVD) player, a smartphone, a tablet PC, a monitor, smart glasses, a smart watch, a set-top box (STB), a speaker, a computer body, and the like.
  • the present invention is not limited thereto, and the electronic device 100 may be any device as long as it can learn an artificial intelligence model.
  • the electronic device 100 includes a memory 110 and a processor 120 .
  • the present invention is not limited thereto, and the electronic device 100 may be implemented in a form in which some components are excluded.
  • the memory 110 may store the first artificial intelligence model and the second artificial intelligence model.
  • the first artificial intelligence model and the second artificial intelligence model may be implemented in the form of a convolutional neural network (CNN).
  • CNN convolutional neural network
  • the first artificial intelligence model may be trained through the first training data, and may be a large-capacity teacher network.
  • the second artificial intelligence model may be learned through the first training data, and may be a small network (student network). That is, the first artificial intelligence model and the second artificial intelligence model may be trained using the same first learning data.
  • the second artificial intelligence model may be an artificial intelligence model in which the size of the filter in the first artificial intelligence model is reduced.
  • the number of the plurality of first layers included in the first AI model may be the same as the number of the plurality of second layers included in the second AI model.
  • each of the plurality of first layers may include a plurality of 2D filters
  • each of the plurality of second layers may include a plurality of filters in which sizes of the plurality of 2D filters of the corresponding first layer are reduced.
  • the number of the plurality of 2D filters included in each of the plurality of first layers may be the same as the number of the plurality of filters included in the corresponding second layer.
  • the second AI model is It can be implemented with a capacity of n/N of 1 artificial intelligence model. However, since it is implemented with a relatively small capacity and trained by the same learning method, the output of the second artificial intelligence model may have lower quality than the output of the first artificial intelligence model. Thereafter, re-learning of the second artificial intelligence model is performed so that the output of the second artificial intelligence model is similar to the output of the first artificial intelligence model, and the processor 120 will be described in operation.
  • the memory 110 has been described as storing the first artificial intelligence model and the second artificial intelligence model learned through the first learning data, but is not limited thereto.
  • the memory 110 may store only the first training data, the first artificial intelligence model in which the weight value is not determined, and the second artificial intelligence model in which the weight value is not determined.
  • the first artificial intelligence model in which the weight value is not determined is a model before learning is performed, and has the same shape as the first artificial intelligence model, but all weight values may be 0.
  • the second artificial intelligence model in which the weight value is not determined is a model before learning is performed, and has the same shape as the second artificial intelligence model, but all weight values may be 0.
  • the processor 120 learns each of the first artificial intelligence model in which the weight value is not determined and the second artificial intelligence model in which the weight value is not determined by using the first training data to learn the first artificial intelligence model and the second artificial intelligence model.
  • An artificial intelligence model may be acquired, and the acquired first artificial intelligence model and the second artificial intelligence model may be stored in the memory 110 .
  • the memory 110 may further store information on the third artificial intelligence model learned to distinguish the outputs of each of the plurality of first layers and the respective outputs of the plurality of second layers.
  • the third artificial intelligence model is a kind of discriminator, and when data is input, it may be a model trained to identify whether the corresponding data is the output of the first artificial intelligence model or the output of the second artificial intelligence model.
  • the memory 110 may store the third artificial intelligence model in which the weight value is not determined.
  • the third artificial intelligence model in which the weight value is not determined is a model before learning is performed, and has the same shape as the third artificial intelligence model, but all weight values may be 0.
  • the processor 120 trains the third artificial intelligence model in which the weight value is not determined to distinguish the output of each of the plurality of first layers and the output of each of the plurality of second layers, and the third artificial intelligence is completed.
  • the model may be stored in the memory 110 .
  • the memory 110 may further store second learning data.
  • the second learning data may be data used when re-learning of the second artificial intelligence model is performed.
  • the memory 110 may further store input data.
  • the input data may be a target processed through the retrained second artificial intelligence model.
  • the processor 120 controls the overall operation of the electronic device 100 .
  • the processor 120 may be connected to each component of the electronic device 100 to control the overall operation of the electronic device 100 .
  • the processor 120 may be connected to components such as the memory 110 and a communication interface (not shown) to control the operation of the electronic device 100 .
  • the processor 120 may be implemented as a digital signal processor (DSP), a microprocessor, or a time controller (TCON).
  • DSP digital signal processor
  • TCON time controller
  • the present invention is not limited thereto, and the central processing unit (central processing unit (CPU)), micro controller unit (MCU), micro processing unit (MPU), controller, application processor (AP), or communication processor (CP), ARM processor
  • the processor 120 may be implemented as a SoC (System on Chip) or LSI (large scale integration) in which a processing algorithm is embedded, or an FPGA ( Field programmable gate array) may be implemented.
  • SoC System on Chip
  • LSI large scale integration
  • FPGA Field programmable gate array
  • the processor 120 inputs the second training data to each of the first artificial intelligence model and the second artificial intelligence model, and includes an output of each of the plurality of first layers included in the first artificial intelligence model and the second artificial intelligence model.
  • the second artificial intelligence model may be retrained based on the output of each of the plurality of second layers.
  • the output of each of the plurality of first layers included in the first artificial intelligence model and the output of each of the plurality of second layers included in the second artificial intelligence model include feature map data and final output data.
  • the output of each of the plurality of first layers included in the first artificial intelligence model and the output of each of the plurality of second layers included in the second artificial intelligence model is a convolution layer output (feature map) and It may include a fully connected layer output (Logits).
  • the processor 120 may compare the output of each of the plurality of first layers with the output of the corresponding second layer to obtain a plurality of comparison results, and retrain the second artificial intelligence model based on the plurality of comparison results. .
  • the processor 120 may retrain the second artificial intelligence model to reduce the norm value using the Euclidean distance between the output of each of the plurality of first layers and the output of the corresponding second layer. can Through this learning, the output of each of the plurality of second layers may be similar to the output of the corresponding first layer.
  • the size of the output of each of the plurality of first layers may be the same as the size of the output of the corresponding second layer. This is because the second artificial intelligence model is an artificial intelligence model in which only the size of the filter in the first artificial intelligence model is reduced.
  • the processor 120 inputs the output of each of the plurality of second layers to each of the third artificial intelligence models, and obtains a plurality of discrimination results for the outputs of the plurality of second layers output from the third artificial intelligence model, , the second artificial intelligence model may be retrained based on the plurality of comparison results and the plurality of discrimination results. That is, the processor 120 may retrain the second artificial intelligence model so that the output of each of the plurality of second layers is identified as the output of the first artificial intelligence model by the third artificial intelligence model.
  • the processor 120 may retrain the second artificial intelligence model by weighting and summing the plurality of comparison results and the plurality of discrimination results. For example, the processor 120 may re-learn the second artificial intelligence model by giving a weight of a comparison result corresponding to the last layer among the plurality of first layers greater than or equal to a weight of a plurality of comparison results corresponding to the remaining layers. have.
  • the present invention is not limited thereto, and the processor 120 may assign weights in various ways.
  • the output of the second artificial intelligence model may be more similar to the output of the first artificial intelligence model.
  • the processor 120 inputs the second learning data to each of the retrained second artificial intelligence models, outputs each of the plurality of first layers, and a plurality of third layers included in the retrained second artificial intelligence model. It is also possible to retrain the third artificial intelligence model to distinguish each output.
  • the processor 120 inputs the third learning data to each of the first artificial intelligence model and the retrained second artificial intelligence model, and outputs and re-learning of each of the plurality of first layers included in the first artificial intelligence model. Secondary retraining of the retrained second artificial intelligence model may also be performed based on the output of each of the plurality of third layers included in the second artificial intelligence model. For example, the processor 120 compares the output of each of the plurality of first layers with the output of the corresponding third layer to obtain a plurality of comparison results, and obtains a second artificial intelligence model retrained based on the plurality of comparison results. Secondary re-learning is also possible.
  • the processor 120 inputs the output of each of the plurality of third layers to each of the retrained third artificial intelligence model, and the plurality of outputs of the plurality of third layers output from the retrained third artificial intelligence model
  • the second artificial intelligence model may be secondarily relearned based on the plurality of comparison results and the plurality of discrimination results.
  • the processor 120 may iteratively re-learn the second artificial intelligence model and the third artificial intelligence model to improve the performance of the second artificial intelligence model.
  • the plurality of filters included in each of the plurality of second layers may have reduced sizes of the plurality of 2D filters of the corresponding first layer.
  • the plurality of filters may have an n ⁇ N shape or an N ⁇ n shape.
  • n is less than N.
  • the plurality of filters included in each of the plurality of second layers may have a one-dimensional shape in which the sizes of the plurality of two-dimensional filters of the corresponding first layer are reduced.
  • each of the plurality of one-dimensional filters has a 1 ⁇ N shape or an N ⁇ 1 shape, and the processor 120 reads input data from the memory 110 in a row unit or a column unit, and reads out The input data can be processed by inputting the input data to the retrained second artificial intelligence model.
  • the second artificial intelligence model is obtained by compressing the first artificial intelligence model, but this method may be performed in stages or in parallel.
  • the memory 110 may further store information about the auxiliary artificial intelligence model learned through the first training data.
  • the processor 120 inputs the second learning data to the auxiliary artificial intelligence model, and based on the output of each of the plurality of first layers and the output of each of the plurality of auxiliary layers included in the auxiliary artificial intelligence model, the auxiliary artificial intelligence model is reproduced. learning, input the second training data to the retrained auxiliary artificial intelligence model, and based on the output of each of the plurality of auxiliary layers included in the retrained auxiliary artificial intelligence model and the output of each of the plurality of second layers Artificial intelligence models can be retrained.
  • each of the plurality of auxiliary layers may include a plurality of filters in which sizes of the plurality of 2D filters of the corresponding first layer are reduced.
  • the auxiliary artificial intelligence model also has almost the same shape as the first artificial intelligence model and the second artificial intelligence model.
  • the auxiliary artificial intelligence model may be an artificial intelligence model in which the size of the filter in the first artificial intelligence model is reduced.
  • the auxiliary AI model may have a larger size than the filter of the second AI model.
  • the memory 110 may further store information on the first auxiliary artificial intelligence model learned through the first training data and information on the second auxiliary artificial intelligence model learned through the first training data.
  • the processor 120 inputs the second training data to the first auxiliary artificial intelligence model and the second auxiliary artificial intelligence model, and outputs each of the plurality of first layers and a plurality of first assistants included in the first auxiliary artificial intelligence model.
  • the first auxiliary artificial intelligence model is retrained based on the output of each layer
  • the second auxiliary artificial intelligence model is retrained based on the output of each of the plurality of first layers and the output of each of the plurality of second auxiliary layers included in the second auxiliary artificial intelligence model.
  • each of the plurality of first auxiliary layers includes a plurality of filters in which sizes of the plurality of 2D filters of the corresponding first layer are reduced
  • each of the plurality of second auxiliary layers includes a plurality of filters of the corresponding first layer.
  • Each of the two-dimensional filters may include a plurality of filters with reduced sizes, and each of the plurality of filters included in each of the plurality of first auxiliary layers may have a different shape from a filter included in each of the corresponding second auxiliary layers.
  • the processor 120 outputs each of the plurality of first auxiliary layers included in the retrained first auxiliary AI model and each of the plurality of second auxiliary layers included in the retrained second auxiliary AI model. It is possible to weight sum the output of , and retrain the second artificial intelligence model based on the weighted result and the output of each of the plurality of second layers.
  • the processor 120 may relearn the two auxiliary artificial intelligence models in parallel, and retrain the second artificial intelligence model based on the two retrained auxiliary artificial intelligence models.
  • functions related to artificial intelligence according to the present disclosure are operated through the processor 120 and the memory 110 .
  • the processor 120 may include one or a plurality of processors.
  • one or more processors may be general-purpose processors such as CPUs, APs, DSPs, etc., graphics-only processors such as GPUs and VPUs (Vision Processing Units), or artificial intelligence-only processors such as NPUs.
  • One or a plurality of processors control to process input data according to a predefined operation rule or artificial intelligence model stored in the memory 110 .
  • the artificial intelligence-only processor may be designed with a hardware structure specialized for processing a specific artificial intelligence model.
  • the predefined action rule or artificial intelligence model is characterized in that it is created through learning.
  • a basic artificial intelligence model is learned using a plurality of learning data by a learning algorithm, so that a predefined action rule or artificial intelligence model set to perform a desired characteristic (or purpose) is created means burden.
  • Such learning may be performed in the device itself on which the artificial intelligence according to the present disclosure is performed, or may be performed through a separate server and/or system.
  • Examples of the learning algorithm include, but are not limited to, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning.
  • An artificial intelligence model may be composed of a plurality of neural network layers.
  • Each of the plurality of neural network layers has a plurality of weight values, and a neural network operation is performed through an operation between an operation result of a previous layer and a plurality of weight values.
  • the plurality of weights of the plurality of neural network layers may be optimized by the learning result of the artificial intelligence model. For example, a plurality of weights may be updated so that a loss value or a cost value obtained from the artificial intelligence model during the learning process is reduced or minimized.
  • the artificial neural network may include a deep neural network (DNN), for example, a Convolutional Neural Network (CNN), a Deep Neural Network (DNN), a Recurrent Neural Network (RNN), a Restricted Boltzmann Machine (RBM), Deep Belief Network (DBN), Bidirectional Recurrent Deep Neural Network (BRDNN), Generative Adversarial Network (GAN), or Deep Q-Networks, but is not limited thereto.
  • DNN deep neural network
  • CNN Convolutional Neural Network
  • DNN Deep Neural Network
  • RNN Recurrent Neural Network
  • RBM Restricted Boltzmann Machine
  • DBN Deep Belief Network
  • BBN Bidirectional Recurrent Deep Neural Network
  • GAN Generative Adversarial Network
  • Deep Q-Networks Deep Q-Networks
  • the electronic device 100 may further include a communication interface.
  • the communication interface is a configuration for performing communication with various types of external devices according to various types of communication methods.
  • the communication interface includes a Wi-Fi module, a Bluetooth module, an infrared communication module, and a wireless communication module.
  • each communication module may be implemented in the form of at least one hardware chip.
  • the processor 120 may communicate with various external devices using a communication interface. For example, the processor 120 receives the first learning data, the second learning data, the first artificial intelligence model, the second artificial intelligence model, and the third artificial intelligence model from the first external device through the communication interface, and receives The stored data may be stored in the memory 110 . In addition, the processor 120 may control the communication interface to transmit the retrained second artificial intelligence model to the second external device.
  • the external device may include a server, a Bluetooth earphone, a display device, and the like.
  • the Wi-Fi module and the Bluetooth module perform communication using a WiFi method and a Bluetooth method, respectively.
  • various types of connection information such as an SSID and a session key are first transmitted and received, and then various types of information can be transmitted and received after communication connection using this.
  • the infrared communication module communicates according to the infrared data association (IrDA) technology, which wirelessly transmits data in a short distance using infrared that is between visible light and millimeter waves.
  • IrDA infrared data association
  • the wireless communication module includes Zigbee, 3rd Generation (3G), 3rd Generation Partnership Project (3GPP), Long Term Evolution (LTE), LTE Advanced (LTE-A), 4th Generation (4G), 5G It may include at least one communication chip that performs communication according to various wireless communication standards such as (5th Generation).
  • 3G 3rd Generation
  • 3GPP 3rd Generation Partnership Project
  • LTE Long Term Evolution
  • LTE-A LTE Advanced
  • 4G 4th Generation
  • 5G 5G It may include at least one communication chip that performs communication according to various wireless communication standards such as (5th Generation).
  • the communication interface may include at least one of a local area network (LAN) module, an Ethernet module, or a wired communication module for performing communication using a pair cable, a coaxial cable, or an optical fiber cable.
  • LAN local area network
  • Ethernet Ethernet
  • wired communication module for performing communication using a pair cable, a coaxial cable, or an optical fiber cable.
  • the communication interface may further include an input/output interface.
  • Input/output interfaces are HDMI (High Definition Multimedia Interface), MHL (Mobile High-Definition Link), USB (Universal Serial Bus), DP (Display Port), Thunderbolt, VGA (Video Graphics Array) port, RGB port,
  • the interface may be any one of D-subminiature (D-SUB) and Digital Visual Interface (DVI).
  • the input/output interface may input/output at least one of audio and video signals.
  • the input/output interface may include a port for inputting and outputting only an audio signal and a port for inputting and outputting only a video signal as separate ports, or may be implemented as a single port for inputting and outputting both an audio signal and a video signal.
  • the second artificial intelligence model is re-learned, it is possible to reduce the weight of the first artificial intelligence model while further improving the performance, and to change the shape of the filter included in the second artificial intelligence model. Due to its characteristics, input data can be processed on the fly.
  • FIG. 3 is a diagram for comparing a first artificial intelligence model and a second artificial intelligence model according to an embodiment of the present disclosure.
  • the first artificial intelligence model (Teacher Configuration) and the second artificial intelligence model (Student Configuration) have almost the same shape.
  • the second artificial intelligence model may be an artificial intelligence model in which the size of the filter in the first artificial intelligence model is reduced.
  • the number of the plurality of first layers included in the first artificial intelligence model and the number of the plurality of second layers included in the second artificial intelligence model may be equal to a total of five. have.
  • the number of channels of the corresponding layer that is, the number of filters included in the corresponding layer may be the same.
  • the first layer of the first AI model and the first layer of the second AI model may include a total of 64 channels.
  • each of the plurality of first layers may include a plurality of 2D filters
  • each of the plurality of second layers may include a plurality of filters in which sizes of the plurality of 2D filters of the corresponding first layer are reduced.
  • FIG. 3 it is illustrated that each of the plurality of first layers includes a plurality of 3 ⁇ 3 filters, and each of the plurality of second layers includes a plurality of 1 ⁇ 3 filters. Accordingly, the second artificial intelligence model can be implemented with 1/3 capacity compared to the first artificial intelligence model.
  • the convolution operation result may be output in the same form. That is, the size of the output of each of the plurality of first layers may be the same as the size of the corresponding output of the second layer, and accordingly, direct comparison between the corresponding outputs is possible, and it is necessary to separately perform an operation such as changing the size there is no
  • FIG. 4 is a diagram comparing outputs of layers of a first artificial intelligence model and a second artificial intelligence model according to an embodiment of the present disclosure.
  • the processor 120 compares the output of each of the plurality of first layers included in the first artificial intelligence model with the output of the second layer included in the corresponding second artificial intelligence model to obtain a plurality of comparison results, and The output of each of the second layers may be input to each of the third artificial intelligence models to obtain a plurality of discrimination results for the outputs of the plurality of second layers output from the third artificial intelligence model.
  • the processor 120 compares the output of the first layer among the plurality of first layers with the output of the first layer among the plurality of second layers to obtain a comparison result between the first layers, and obtains a comparison result between the first layers among the plurality of second layers.
  • a discrimination result of the third artificial intelligence model with respect to the output of the th layer may be obtained.
  • the comparison results (L2 loss, Softmax) and discrimination results (Discriminator loss) in each layer are displayed as Guide Loss, and the processor 120 can obtain the same Guide Loss for the layers after the first layer. have.
  • the processor 120 may further emphasize the low-level feature by re-learning the second artificial intelligence model by reflecting the guide loss of each layer. That is, compared with the prior art comparing only the last softmax information, according to the present disclosure, the intermediate result of the network is guided, so that the performance of the second artificial intelligence model can be improved.
  • FIG. 5 is a diagram for explaining a re-learning step of a second artificial intelligence model according to an embodiment of the present disclosure.
  • the first artificial intelligence model (Teacher) and the second artificial intelligence model (Student) may be in a state in which initial learning is performed through the first learning data.
  • the third artificial intelligence model (Discriminator) may be in a learned state to distinguish the feature map data of the first artificial intelligence model and the feature map data of the second artificial intelligence model.
  • the processor 120 inputs the second training data Xi to the first artificial intelligence model and the second artificial intelligence model, respectively, and compares the output of each of the plurality of first layers with the output of the corresponding second layer to obtain a plurality of Comparison results (L2 loss, Softmax) can be obtained.
  • the processor 120 may obtain a plurality of discrimination results (discriminator loss) for the outputs of the plurality of second layers by inputting the respective outputs of the plurality of second layers to each of the third artificial intelligence models.
  • the processor 120 may retrain the second artificial intelligence model based on the plurality of comparison results and the plurality of discrimination results.
  • the processor 120 inputs the second learning data to each of the retrained second artificial intelligence models, outputs each of the plurality of first layers, and a plurality of third layers included in the retrained second artificial intelligence model.
  • the third artificial intelligence model can be retrained to distinguish each output.
  • the performance of the second artificial intelligence model may be improved and the discrimination performance of the third artificial intelligence model may be improved.
  • 6A and 6B are diagrams for explaining an on the fly method according to an embodiment of the present disclosure.
  • FIG. 6A is a diagram for explaining a case in which a conventional two-dimensional filter is used, and a 3 ⁇ 3 two-dimensional filter is assumed.
  • the 2D filter is shifted to the right from the first region 610 of the input data, and a convolution operation may be performed.
  • the processor reads the first region 610 from the memory and performs an operation, and then calculates the region shifted one space to the right from the first region 610 .
  • the processor may read only the added area from the memory and delete the non-overlapping area from among the first area 610 .
  • the processor reads the second area 620 . That is, a portion of the first region 610 may be read again from the memory.
  • the third region 630 may be read a total of three times.
  • FIG. 6B is a diagram for explaining a case of using a one-dimensional filter, and a one-dimensional filter of 1 ⁇ 3 is assumed.
  • the one-dimensional filter is shifted to the right from the fourth region 640 of the input data, and a convolution operation may be performed.
  • the processor reads the fourth region 640 from the memory 110 and performs an operation, and then operates the region shifted one space to the right from the fourth region 640 . Thereafter, after a row is changed, the processor 120 reads the fifth region 650 , but since there is no overlapping portion with the fourth region 640 , the problem of repeatedly reading the same region is solved, on the fly It is possible to calculate more favorable to the method.
  • 7A to 8B are diagrams for explaining the performance of a retrained second artificial intelligence model according to various embodiments of the present disclosure
  • FIGS. 7A to 8B are experimental results using the first artificial intelligence model and the second artificial intelligence model of the form shown in FIG. 3, wherein the first artificial intelligence model and the second artificial intelligence model each have eight convolution layers. ), it is assumed to include one fully connected layer (FC). In addition, it is assumed that each of the plurality of first layers of the first artificial intelligence model includes a plurality of 3 ⁇ 3 filters. However, in the second artificial intelligence model, as shown on the x-axis of FIGS. 7A and 7B , only some of the plurality of second layers were changed to a 1 ⁇ 3 filter. 8A and 8B show that all layers of the second artificial intelligence model are changed to a 1 ⁇ 3 filter.
  • 7A and 7B show the Classification Accuracy performance of the second artificial intelligence model retrained by considering only the output of the convolution layer and the output of the FC layer, and Student shows the improved performance over the baseline.
  • the first convolution layer plays a very important role in extracting low-level features such as edges and curves, which are considered important for classification or object detection, and has the largest input size. Therefore, if the first convolutional layer is replaced with a 1 ⁇ 3 filter, a rapid performance degradation may occur.
  • FIGS. 8A and 8B show the Classification Accuracy performance of the second artificial intelligence model re-trained in consideration of the output of the convolution layer, the output of the FC layer, and the discrimination result of the third artificial intelligence model.
  • the third artificial intelligence model was applied only to some layers. In this case, it can be seen that Student shows improved performance than baseline.
  • FIG. 9 is a diagram for comparing the performance of the prior art and the retrained second artificial intelligence model according to an embodiment of the present disclosure.
  • Baseline represents the performance of the model using only the 1 ⁇ 3 shape
  • L HT represents the performance of the prior art
  • L HT + L L2 represents the performance when using the comparison result of each layer of the prior art and the present disclosure
  • L HT + L Gen represents the performance when using the discrimination result of each layer of the prior art and the present disclosure
  • L HT + L L2 + L Gen represents the performance when using the comparison result and discrimination result of each layer of the prior art and the present disclosure, and it can be seen that the performance is the most improved when both the comparison result and the discrimination result are used. have.
  • FIG. 10 is a view for explaining a step-by-step re-learning method according to an extended embodiment of the present disclosure.
  • the processor 120 may finally re-learn the second artificial intelligence model by further using a plurality of auxiliary artificial intelligence models (TA).
  • TA auxiliary artificial intelligence models
  • the size of the filter included in the auxiliary AI model may be reduced compared to the filter included in the first AI model.
  • the filter included in the auxiliary AI model may have a larger size than the filter included in the second AI model.
  • the stepwise retrained second artificial intelligence model may have characteristics of the first artificial intelligence model than the retrained second artificial intelligence model without using the auxiliary artificial intelligence model.
  • 11A and 11B are diagrams for explaining a parallel re-learning method according to an extended embodiment of the present disclosure.
  • the processor 120 may use a plurality of auxiliary artificial intelligence models (TA) in parallel as shown in FIG. 11A .
  • the processor 120 may acquire a second artificial intelligence model that further reflects the characteristics of the first artificial intelligence model by using a plurality of auxiliary artificial intelligence models having different filter types.
  • the processor 120 includes a first auxiliary artificial intelligence model including a 1 ⁇ 1 filter, a second auxiliary AI model including a 1 ⁇ 3 filter, 3
  • the third auxiliary AI model including the ⁇ 1 filter and the fourth auxiliary AI model including the 2 ⁇ 2 filter may be retrained, respectively.
  • the method of re-learning the first to fourth auxiliary artificial intelligence models is merely a parallel application of the method of re-learning the second artificial intelligence model above, and thus a redundant description will be omitted.
  • the weight value of the auxiliary artificial intelligence model having a filter shape suitable for the characteristics of the first artificial intelligence model may be greater than the weight value of the other auxiliary artificial intelligence models.
  • the weight value of the fourth auxiliary artificial intelligence model is higher than the weight value of the rest of the auxiliary artificial intelligence models.
  • the 1 ⁇ 3 filter of the second AI model reflects the characteristics of the first AI model relatively less. Therefore, when a plurality of auxiliary artificial intelligence models are used, the characteristics of the first artificial intelligence model can be better reflected while maintaining the same effect of step-by-step re-learning as shown in FIG. 10 .
  • the second artificial intelligence model is retrained by averaging the retrained first to fourth auxiliary artificial intelligence models, but the present invention is not limited thereto.
  • the processor 120 may retrain the second artificial intelligence model by weighting the retrained first to fourth auxiliary artificial intelligence models.
  • processor 120 may use any number or various types of auxiliary artificial intelligence models.
  • FIG. 12 is a flowchart illustrating a method of controlling an electronic device according to an embodiment of the present disclosure.
  • the second learning data is input to each of the first artificial intelligence model learned through the first learning data and the second artificial intelligence model learned through the first learning data (S1210). Then, the second artificial intelligence model is re-learned based on the output of each of the plurality of first layers included in the first artificial intelligence model and the output of each of the plurality of second layers included in the second artificial intelligence model (S1220) .
  • each of the plurality of first layers may include a plurality of 2D filters
  • each of the plurality of second layers may include a plurality of filters in which sizes of the plurality of 2D filters of the corresponding first layer are reduced. .
  • the number of the plurality of first layers is the same as the number of the plurality of second layers, and in the re-learning ( S1220 ), the output of each of the plurality of first layers is compared with the output of the corresponding second layer to obtain a plurality of A comparison result may be obtained, and the second artificial intelligence model may be retrained based on the plurality of comparison results.
  • the number of the plurality of 2D filters included in each of the plurality of first layers is the same as the number of the plurality of filters included in the corresponding second layer, and the size of the output of each of the plurality of first layers is equal to the number of the plurality of filters included in the corresponding second layer. It may be the same as the size of the output of the 2nd layer.
  • the output of each of the plurality of second layers is input to each of the third artificial intelligence models, and a plurality of discrimination results for the outputs of the plurality of second layers output from the third artificial intelligence model are performed. obtains, re-learns the second artificial intelligence model based on the plurality of comparison results and the plurality of discrimination results, and the third artificial intelligence model obtains the output of each of the plurality of first layers and the output of each of the plurality of second layers. It can be an artificial intelligence model that has been trained to distinguish.
  • the step of inputting the second learning data to each of the retrained second artificial intelligence model and the output of each of the plurality of first layers and the output of each of the plurality of third layers included in the retrained second artificial intelligence model may further include retraining the third artificial intelligence model to differentiate.
  • the second artificial intelligence model may be re-learned by weighting and summing a plurality of comparison results and a plurality of discrimination results.
  • the weight of the comparison result corresponding to the last layer among the plurality of first layers is given to be greater than or equal to the weight of the comparison results corresponding to the remaining layers to relearn the second artificial intelligence model.
  • each of the plurality of filters is in the form of 1 ⁇ N or N ⁇ 1, and the second artificial intelligence that reads input data in rows or columns and re-learns the read input data
  • the method may further include processing the input data by input to the model.
  • first artificial intelligence model and the second artificial intelligence model may be implemented in the form of a convolutional neural network (CNN).
  • CNN convolutional neural network
  • the electronic device compares the outputs of each layer of the Teacher network and the Student network to relearn the Student network, so that the artificial intelligence with low-level features is highlighted. model can be obtained.
  • the electronic device may acquire an artificial intelligence model in which low-level features are more emphasized by further using a discriminator trained to discriminate the outputs of each layer of the Teacher network and the Student network.
  • the electronic device can reduce the capacity of the artificial intelligence model and process input data on the fly by using the Student network in which the size of the two-dimensional filter of the Teacher network is reduced.
  • the various embodiments described above are implemented as software including instructions stored in a machine-readable storage media readable by a machine (eg, a computer).
  • the device is a device capable of calling a stored command from a storage medium and operating according to the called command, and may include an electronic device (eg, the electronic device A) according to the disclosed embodiments.
  • the processor may perform a function corresponding to the instruction by using other components directly or under the control of the processor.
  • Instructions may include code generated or executed by a compiler or interpreter.
  • the device-readable storage medium may be provided in the form of a non-transitory storage medium.
  • 'non-transitory' means that the storage medium does not include a signal and is tangible, and does not distinguish that data is semi-permanently or temporarily stored in the storage medium.
  • the method according to the various embodiments described above may be included in a computer program product and provided.
  • Computer program products may be traded between sellers and buyers as commodities.
  • the computer program product may be distributed in the form of a machine-readable storage medium (eg, compact disc read only memory (CD-ROM)) or online through an application store (eg, Play StoreTM).
  • an application store eg, Play StoreTM
  • at least a part of the computer program product may be temporarily stored or temporarily generated in a storage medium such as a memory of a server of a manufacturer, a server of an application store, or a relay server.
  • the various embodiments described above are stored in a recording medium readable by a computer or a similar device using software, hardware, or a combination thereof. can be implemented in In some cases, the embodiments described herein may be implemented by the processor itself. According to the software implementation, embodiments such as the procedures and functions described in this specification may be implemented as separate software modules. Each of the software modules may perform one or more functions and operations described herein.
  • non-transitory computer-readable medium refers to a medium that stores data semi-permanently, rather than a medium that stores data for a short moment, such as a register, cache, memory, etc., and can be read by a device.
  • Specific examples of the non-transitory computer-readable medium may include a CD, DVD, hard disk, Blu-ray disk, USB, memory card, ROM, and the like.
  • each of the components may be composed of a single or a plurality of entities, and some sub-components of the aforementioned sub-components may be omitted, or other sub-components may be omitted. Components may be further included in various embodiments.
  • some components eg, a module or a program

Landscapes

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

Abstract

전자 장치가 개시된다. 본 전자 장치는 제1 학습 데이터를 통해 학습된 제1 인공 지능 모델에 대한 정보 및 제1 학습 데이터를 통해 학습된 제2 인공 지능 모델에 대한 정보가 저장된 메모리 및 메모리와 연결되어 전자 장치를 제어하는 프로세서를 포함하며, 프로세서는 제2 학습 데이터를 제1 인공 지능 모델 및 제2 인공 지능 모델 각각에 입력하고, 제1 인공 지능 모델에 포함된 복수의 제1 레이어 각각의 출력 및 제2 인공 지능 모델에 포함된 복수의 제2 레이어 각각의 출력에 기초하여 제2 인공 지능 모델을 재학습하며, 복수의 제1 레이어 각각은 복수의 2차원 필터를 포함하고, 복수의 제2 레이어 각각은 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 복수의 필터를 포함할 수 있다.

Description

전자 장치 및 그 제어 방법
본 개시는 전자 장치 및 그 제어 방법에 대한 것으로, 더욱 상세하게는 인공 지능 모델(Artificial Intelligence Model)을 학습하는 전자 장치 및 그 제어 방법에 대한 것이다.
인간 수준의 지능이 구현된 인공 지능 모델이 다양한 분야에서 이용되고 있다. 인공 지능 모델은 기존의 룰(rule) 기반 모델과는 달리 기계가 스스로 학습하고 판단하며 똑똑해지는 모델이며, 기존 룰 기반 모델은 점차 딥러닝 기반 인공 지능 모델로 대체되고 있다.
인공 지능 모델은 일반적으로 용량이 클수록 성능이 향상된다. 다만, 전자 장치의 소형화에 따라 인공 지능 모델의 성능을 유지하면서도 용량을 축소시킬 필요가 있다. 이를 위한 다양한 방법이 개발되고 있으며, 그 중 Knowledge distillation은 용량이 큰 네트워크(Teacher network)의 지식을 실제로 사용하고자 하는 용량이 작은 네트워크(Student network)에게 전달하는 방법을 이용하고 있다.
도 1a에 도시된 바와 같이, Knowledge distillation은 용량이 작은 네트워크(Student network)의 출력이 용량이 큰 네트워크(Teacher network)의 출력과 유사해지도록 용량이 작은 네트워크(Student network)를 재학습하는 방법이다.
다만, 이 방법은 각 네트워크의 마지막 softmax 정보만을 이용하기 때문에 하이-레벨(high-level)의 특징만이 부각되고 로우-레벨(low-level)의 특징은 부각되지 않는 문제가 있다. 즉, 객체의 특징 추출이 중요한 응용에서는 해당 방법의 적용이 어려운 문제가 있다.
또는, 도 1b에 도시된 바와 같이, 각 레이어의 출력을 비교하는 방법도 있을 수 있으나, 각 레이어의 출력의 크기가 달라 어느 하나의 크기를 변경해줄 필요가 있다. 이 경우, 학습 과정에서 추가 연산이 필요하며, 레이어의 개수가 다르거나 레이어에 포함된 채널의 개수가 다른 경우 로우-레벨의 특징이 정확히 반영되지 않는 문제도 있다.
그에 따라, 로우-레벨의 특징을 좀더 정확히 반영하면서도 성능이 개선된 학습 방법이 개발될 필요가 있다.
본 개시는 상술한 필요성에 따른 것으로, 본 개시의 목적은 Knowledge Distillation을 통해 인공 지능 모델을 압축하면서도 성능을 향상시키기 위한 전자 장치 및 그 제어 방법을 제공함에 있다.
이상과 같은 목적을 달성하기 위한 본 개시의 일 실시 예에 따르면, 전자 장치는 제1 학습 데이터를 통해 학습된 제1 인공 지능 모델에 대한 정보 및 상기 제1 학습 데이터를 통해 학습된 제2 인공 지능 모델에 대한 정보가 저장된 메모리 및 상기 메모리와 연결되어 상기 전자 장치를 제어하는 프로세서를 포함하며, 상기 프로세서는 제2 학습 데이터를 상기 제1 인공 지능 모델 및 상기 제2 인공 지능 모델 각각에 입력하고, 상기 제1 인공 지능 모델에 포함된 복수의 제1 레이어 각각의 출력 및 상기 제2 인공 지능 모델에 포함된 복수의 제2 레이어 각각의 출력에 기초하여 상기 제2 인공 지능 모델을 재학습하며, 상기 복수의 제1 레이어 각각은 복수의 2차원 필터를 포함하고, 상기 복수의 제2 레이어 각각은 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 복수의 필터를 포함할 수 있다.
또한, 상기 복수의 제1 레이어의 개수는 상기 복수의 제2 레이어의 개수와 동일하고, 상기 프로세서는 상기 복수의 제1 레이어 각각의 출력을 대응되는 제2 레이어의 출력과 비교하여 복수의 비교 결과를 획득하고, 상기 복수의 비교 결과에 기초하여 상기 제2 인공 지능 모델을 재학습할 수 있다.
그리고, 상기 복수의 제1 레이어 각각에 포함된 상기 복수의 2차원 필터의 개수는 대응되는 제2 레이어에 포함된 상기 복수의 필터의 개수와 동일하며, 상기 복수의 제1 레이어 각각의 출력의 크기는 대응되는 제2 레이어의 출력의 크기와 동일할 수 있다.
또한, 상기 메모리는 상기 복수의 제1 레이어 각각의 출력 및 상기 복수의 제2 레이어 각각의 출력을 구별하도록 학습된 제3 인공 지능 모델에 대한 정보를 저장하며, 상기 프로세서는 상기 복수의 제2 레이어 각각의 출력을 상기 제3 인공 지능 모델 각각에 입력하고, 상기 제3 인공 지능 모델로부터 출력되는 상기 복수의 제2 레이어의 출력에 대한 복수의 구별 결과를 획득하며, 상기 복수의 비교 결과 및 상기 복수의 구별 결과에 기초하여 상기 제2 인공 지능 모델을 재학습할 수 있다.
그리고, 상기 프로세서는 상기 제2 학습 데이터를 상기 재학습된 제2 인공 지능 모델 각각에 입력하고, 상기 복수의 제1 레이어 각각의 출력 및 상기 재학습된 제2 인공 지능 모델에 포함된 복수의 제3 레이어 각각의 출력을 구별하도록 상기 제3 인공 지능 모델을 재학습할 수 있다.
또한, 상기 프로세서는 상기 복수의 비교 결과 및 상기 복수의 구별 결과를 가중합하여 상기 제2 인공 지능 모델을 재학습할 수 있다.
그리고, 상기 프로세서는 상기 복수의 제1 레이어 중 마지막 레이어에 대응되는 비교 결과의 가중치를 나머지 레이어에 대응되는 복수의 비교 결과의 가중치 이상으로 부여하여 상기 제2 인공 지능 모델을 재학습할 수 있다.
또한, 상기 복수의 필터 각각은 1 × N 형태 또는 N × 1 형태이고, 상기 프로세서는 상기 메모리로부터 입력 데이터를 행(row) 단위 또는 컬럼(column) 단위로 독출하고, 상기 독출된 입력 데이터를 상기 재학습된 제2 인공 지능 모델에 입력하여 상기 입력 데이터를 처리할 수 있다.
그리고, 상기 제1 인공 지능 모델 및 상기 제2 인공 지능 모델은 컨볼루션 신경망(Convolutional Neural Network, CNN) 형태로 구현될 수 있다.
또한, 상기 메모리는 상기 제1 학습 데이터를 통해 학습된 보조 인공 지능 모델에 대한 정보를 더 저장하고, 상기 프로세서는 상기 제2 학습 데이터를 상기 보조 인공 지능 모델에 입력하고, 상기 복수의 제1 레이어 각각의 출력 및 상기 보조 인공 지능 모델에 포함된 복수의 보조 레이어 각각의 출력에 기초하여 상기 보조 인공 지능 모델을 재학습하며, 상기 제2 학습 데이터를 상기 재학습된 보조 인공 지능 모델에 입력하고, 상기 재학습된 보조 인공 지능 모델에 포함된 복수의 보조 레이어 각각의 출력 및 상기 복수의 제2 레이어 각각의 출력에 기초하여 상기 제2 인공 지능 모델을 재학습할 수 있다. 여기서, 상기 복수의 보조 레이어 각각은 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 복수의 필터를 포함할 수 있다.
그리고, 상기 메모리는 상기 제1 학습 데이터를 통해 학습된 제1 보조 인공 지능 모델에 대한 정보 및 상기 제1 학습 데이터를 통해 학습된 제2 보조 인공 지능 모델에 대한 정보를 더 저장하고, 상기 프로세서는 상기 제2 학습 데이터를 상기 제1 보조 인공 지능 모델 및 상기 제2 보조 인공 지능 모델에 입력하고, 상기 복수의 제1 레이어 각각의 출력 및 상기 제1 보조 인공 지능 모델에 포함된 복수의 제1 보조 레이어 각각의 출력에 기초하여 상기 제1 보조 인공 지능 모델을 재학습하고, 상기 복수의 제1 레이어 각각의 출력 및 상기 제2 보조 인공 지능 모델에 포함된 복수의 제2 보조 레이어 각각의 출력에 기초하여 상기 제2 보조 인공 지능 모델을 재학습하며, 상기 제2 학습 데이터를 상기 재학습된 제1 보조 인공 지능 모델 및 상기 재학습된 제2 보조 인공 지능 모델에 입력하고, 상기 재학습된 제1 보조 인공 지능 모델에 포함된 복수의 제1 보조 레이어 각각의 출력, 상기 재학습된 제2 보조 인공 지능 모델에 포함된 복수의 제2 보조 레이어 각각의 출력 및 상기 복수의 제2 레이어 각각의 출력에 기초하여 상기 제2 인공 지능 모델을 재학습할 수 있다. 여기서, 상기 복수의 제1 보조 레이어 각각은 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 복수의 필터를 포함하고, 상기 복수의 제2 보조 레이어 각각은 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 복수의 필터를 포함하고, 상기 복수의 제1 보조 레이어 각각에 포함된 복수의 필터 각각은 대응되는 제2 보조 레이어 각각에 포함된 필터와 형태가 상이할 수 있다.
한편, 본 개시의 일 실시 예에 따르면, 전자 장치의 제어 방법은 제1 학습 데이터를 통해 학습된 제1 인공 지능 모델 및 상기 제1 학습 데이터를 통해 학습된 제2 인공 지능 모델 각각에 제2 학습 데이터를 입력하는 단계 및 상기 제1 인공 지능 모델에 포함된 복수의 제1 레이어 각각의 출력 및 상기 제2 인공 지능 모델에 포함된 복수의 제2 레이어 각각의 출력에 기초하여 상기 제2 인공 지능 모델을 재학습하는 단계를 포함하며, 상기 복수의 제1 레이어 각각은 복수의 2차원 필터를 포함하고, 상기 복수의 제2 레이어 각각은 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 복수의 필터를 포함할 수 있다.
또한, 상기 복수의 제1 레이어의 개수는 상기 복수의 제2 레이어의 개수와 동일하고, 상기 재학습하는 단계는 상기 복수의 제1 레이어 각각의 출력을 대응되는 제2 레이어의 출력과 비교하여 복수의 비교 결과를 획득하고, 상기 복수의 비교 결과에 기초하여 상기 제2 인공 지능 모델을 재학습할 수 있다.
그리고, 상기 복수의 제1 레이어 각각에 포함된 상기 복수의 2차원 필터의 개수는 대응되는 제2 레이어에 포함된 상기 복수의 필터의 개수와 동일하며, 상기 복수의 제1 레이어 각각의 출력의 크기는 대응되는 제2 레이어의 출력의 크기와 동일할 수 있다.
또한, 상기 재학습하는 단계는 상기 복수의 제2 레이어 각각의 출력을 제3 인공 지능 모델 각각에 입력하고, 상기 제3 인공 지능 모델로부터 출력되는 상기 복수의 제2 레이어의 출력에 대한 복수의 구별 결과를 획득하며, 상기 복수의 비교 결과 및 상기 복수의 구별 결과에 기초하여 상기 제2 인공 지능 모델을 재학습하고, 상기 제3 인공 지능 모델은 상기 복수의 제1 레이어 각각의 출력 및 상기 복수의 제2 레이어 각각의 출력을 구별하도록 학습된 인공 지능 모델일 수 있다.
그리고, 상기 제2 학습 데이터를 상기 재학습된 제2 인공 지능 모델 각각에 입력하는 단계 및 상기 복수의 제1 레이어 각각의 출력 및 상기 재학습된 제2 인공 지능 모델에 포함된 복수의 제3 레이어 각각의 출력을 구별하도록 상기 제3 인공 지능 모델을 재학습하는 단계를 더 포함할 수 있다.
또한, 상기 재학습하는 단계는 상기 복수의 비교 결과 및 상기 복수의 구별 결과를 가중합하여 상기 제2 인공 지능 모델을 재학습할 수 있다.
그리고, 상기 재학습하는 단계는 상기 복수의 제1 레이어 중 마지막 레이어에 대응되는 비교 결과의 가중치를 나머지 레이어에 대응되는 복수의 비교 결과의 가중치 이상으로 부여하여 상기 제2 인공 지능 모델을 재학습할 수 있다.
또한, 상기 복수의 필터 각각은 1 × N 형태 또는 N × 1 형태이고, 입력 데이터를 행(row) 단위 또는 컬럼(column) 단위로 독출하는 단계 및 상기 독출된 입력 데이터를 상기 재학습된 제2 인공 지능 모델에 입력하여 상기 입력 데이터를 처리하는 단계를 더 포함할 수 있다.
그리고, 상기 제1 인공 지능 모델 및 상기 제2 인공 지능 모델은 컨볼루션 신경망(Convolutional Neural Network, CNN) 형태로 구현될 수 있다.
한편, 본 개시의 일 실시 예에 따르면, 전자 장치의 동작 방법을 실행하기 위한 프로그램이 저장된 비일시적 컴퓨터 판독가능 기록매체에 있어서, 상기 동작 방법은 제1 학습 데이터를 통해 학습된 제1 인공 지능 모델 및 상기 제1 학습 데이터를 통해 학습된 제2 인공 지능 모델 각각에 제2 학습 데이터를 입력하는 단계 및 상기 제1 인공 지능 모델에 포함된 복수의 제1 레이어 각각의 출력 및 상기 제2 인공 지능 모델에 포함된 복수의 제2 레이어 각각의 출력에 기초하여 상기 제2 인공 지능 모델을 재학습하는 단계를 포함하며, 상기 복수의 제1 레이어 각각은 복수의 2차원 필터를 포함하고, 상기 복수의 제2 레이어 각각은 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 복수의 필터를 포함할 수 있다.
이상과 같은 본 개시의 다양한 실시 예에 따르면, 전자 장치는 Teacher network 및 Student network의 각 레이어의 출력을 비교하여 Student network를 재학습함에 따라 로우-레벨(low-level)의 특징이 부각된 인공 지능 모델을 획득할 수 있다.
또한, 전자 장치는 Teacher network 및 Student network의 각 레이어의 출력을 구분하도록 학습된 discriminator를 더 이용하여 로우-레벨의 특징이 좀더 부각된 인공 지능 모델을 획득할 수도 있다.
그리고, 전자 장치는 Teacher network의 2차원 형태의 필터의 크기를 축소한 Student network를 이용함에 따라 인공 지능 모델의 용량을 경량화하고 on the fly 방식으로 입력 데이터를 처리할 수 있다.
도 1a 및 도 1b는 종래 기술에 따른 문제점을 설명하기 위한 도면들이다.
도 2는 본 개시의 일 실시 예에 따른 전자 장치의 구성을 나타내는 블럭도이다.
도 3은 본 개시의 일 실시 예에 따른 제1 인공 지능 모델과 제2 인공 지능 모델을 비교하기 위한 도면이다.
도 4는 본 개시의 일 실시 예에 따른 제1 인공 지능 모델과 제2 인공 지능 모델의 각 레이어의 출력을 비교하는 도면이다.
도 5는 본 개시의 일 실시 예에 따른 제2 인공 지능 모델의 재학습 단계를 설명하기 위한 도면이다.
도 6a 및 도 6b는 본 개시의 일 실시 예에 따른 on the fly 방식을 설명하기 위한 도면들이다.
도 7a 내지 도 8b는 본 개시의 다양한 실시 예에 따른 재학습된 제2 인공 지능 모델의 성능을 설명하기 위한 도면들이다.
도 9는 본 개시의 다른 실시 예에 따른 재학습된 제2 인공 지능 모델의 성능을 설명하기 위한 도면이다.
도 10은 본 개시의 확장 실시 예에 따른 단계적 재학습 방법을 설명하기 위한 도면이다.
도 11a 및 도 11b는 본 개시의 확장 실시 예에 따른 병렬적 재학습 방법을 설명하기 위한 도면들이다.
도 12는 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법을 설명하기 위한 흐름도이다.
-
이하에서는 첨부 도면을 참조하여 본 개시를 상세히 설명한다.
본 개시의 실시 예에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 개시의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
본 명세서에서, "가진다," "가질 수 있다," "포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
A 또는/및 B 중 적어도 하나라는 표현은 "A" 또는 "B" 또는 "A 및 B" 중 어느 하나를 나타내는 것으로 이해되어야 한다.
본 명세서에서 사용된 "제1," "제2," "첫째," 또는 "둘째,"등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구성되다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 명세서에서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공 지능 전자 장치)를 지칭할 수 있다.
이하 첨부된 도면들을 참조하여 본 개시의 일 실시 예를 보다 상세하게 설명한다.
도 2는 본 개시의 일 실시 예에 따른 전자 장치(100)의 구성을 나타내는 블럭도이다.
전자 장치(100)는 인공 지능 모델을 학습하는 장치로서, TV, 데스크탑 PC, 노트북, 비디오 월(video wall), LFD(large format display), Digital Signage(디지털 간판), DID(Digital Information Display), 프로젝터 디스플레이, DVD(digital video disk) 플레이어, 스마트폰, 태블릿 PC, 모니터, 스마트 안경, 스마트 워치, 셋탑박스(STB), 스피커, 컴퓨터 본체 등과 같은 장치일 수 있다. 다만, 이에 한정되는 것은 아니며, 전자 장치(100)는 인공 지능 모델을 학습할 수 있는 장치라면 어떠한 장치라도 무방하다.
도 2에 따르면, 전자 장치(100)는 메모리(110) 및 프로세서(120)를 포함한다. 다만, 이에 한정되는 것은 아니며, 전자 장치(100)는 일부 구성이 제외된 형태로 구현될 수도 있다.
메모리(110)는 제1 인공 지능 모델 및 제2 인공 지능 모델을 저장할 수 있다. 예를 들어, 제1 인공 지능 모델 및 제2 인공 지능 모델은 컨볼루션 신경망(Convolutional Neural Network, CNN) 형태로 구현될 수 있다.
제1 인공 지능 모델은 제1 학습 데이터를 통해 학습될 수 있으며, 용량이 큰 네트워크(Teacher network)일 수 있다. 그리고, 제2 인공 지능 모델은 제1 학습 데이터를 통해 학습될 수 있으며, 용량이 작은 네트워크(Student network)일 수 있다. 즉, 제1 인공 지능 모델 및 제2 인공 지능 모델은 동일한 제1 학습 데이터를 이용하여 학습될 수 있다.
제2 인공 지능 모델은 제1 인공 지능 모델에서 필터의 크기가 축소된 인공 지능 모델일 수 있다. 예를 들어, 제1 인공 지능 모델에 포함된 복수의 제1 레이어의 개수는 제2 인공 지능 모델에 포함된 복수의 제2 레이어의 개수와 동일할 수 있다. 그리고, 복수의 제1 레이어 각각은 복수의 2차원 필터를 포함하고, 복수의 제2 레이어 각각은 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 복수의 필터를 포함할 수 있다. 여기서, 복수의 제1 레이어 각각에 포함된 복수의 2차원 필터의 개수는, 대응되는 제2 레이어에 포함된 복수의 필터의 개수와 동일할 수 있다.
만약, 제1 인공 지능 모델에 포함된 모든 필터가 N × N 형태이고, 제2 인공 지능 모델에 포함된 모든 필터가 n × N 형태이면(여기서, n < N), 제2 인공 지능 모델은 제1 인공 지능 모델의 n/N의 용량으로 구현될 수 있다. 다만, 상대적으로 적은 용량으로 구현되었고 동일한 학습 방법으로 학습(training)되었기 때문에, 제2 인공 지능 모델의 출력은 제1 인공 지능 모델의 출력보다 품질이 낮을 수 있다. 이후, 제2 인공 지능 모델의 출력이 제1 인공 지능 모델의 출력과 유사해지도록 제2 인공 지능 모델의 재학습이 수행되며, 이에 대하여는 프로세서(120)를 동작에서 설명한다.
한편, 메모리(110)는 제1 학습 데이터를 통해 학습된 제1 인공 지능 모델 및 제2 인공 지능 모델을 저장하는 것으로 설명하였으나, 이에 한정되는 것은 아니다. 예를 들어, 메모리(110)는 제1 학습 데이터, 웨이트 값이 결정되지 않은 제1 인공 지능 모델 및 웨이트 값이 결정되지 않은 제2 인공 지능 모델만을 저장할 수도 있다. 가령, 웨이트 값이 결정되지 않은 제1 인공 지능 모델은 학습이 수행되기 전의 모델로서, 제1 인공 지능 모델과 형태가 동일하나 모든 웨이트 값이 0일 수 있다. 웨이트 값이 결정되지 않은 제2 인공 지능 모델은 학습이 수행되기 전의 모델로서, 제2 인공 지능 모델과 형태가 동일하나 모든 웨이트 값이 0일 수 있다. 이 경우, 프로세서(120)는 제1 학습 데이터를 이용하여 웨이트 값이 결정되지 않은 제1 인공 지능 모델 및 웨이트 값이 결정되지 않은 제2 인공 지능 모델 각각을 학습하여 제1 인공 지능 모델 및 제2 인공 지능 모델을 획득하고, 획득된 제1 인공 지능 모델 및 제2 인공 지능 모델을 메모리(110)에 저장할 수도 있다.
메모리(110)는 복수의 제1 레이어 각각의 출력 및 복수의 제2 레이어 각각의 출력을 구별하도록 학습된 제3 인공 지능 모델에 대한 정보를 더 저장할 수 있다. 제3 인공 지능 모델은 discriminator의 일종으로, 데이터가 입력되면 해당 데이터가 제1 인공 지능 모델의 출력인지 또는 제2 인공 지능 모델의 출력인지를 식별하도록 학습된 모델일 수 있다.
다만, 이에 한정되는 것은 아니면, 메모리(110)는 웨이트 값이 결정되지 않은 제3 인공 지능 모델을 저장할 수도 있다. 가령, 웨이트 값이 결정되지 않은 제3 인공 지능 모델은 학습이 수행되기 전의 모델로서, 제3 인공 지능 모델과 형태가 동일하나 모든 웨이트 값이 0일 수 있다. 이 경우, 프로세서(120)는 복수의 제1 레이어 각각의 출력 및 복수의 제2 레이어 각각의 출력을 구별하도록 웨이트 값이 결정되지 않은 제3 인공 지능 모델을 학습시키고, 학습이 완료된 제3 인공 지능 모델을 메모리(110)에 저장할 수도 있다.
메모리(110)는 제2 학습 데이터를 더 저장할 수 있다. 제2 학습 데이터는 제2 인공 지능 모델의 재학습을 수행하는 경우에 이용되는 데이터일 수 있다.
메모리(110)는 입력 데이터를 더 저장할 수 있다. 입력 데이터는 재학습된 제2 인공 지능 모델을 통해 처리되는 대상일 수 있다.
프로세서(120)는 전자 장치(100)의 동작을 전반적으로 제어한다. 구체적으로, 프로세서(120)는 전자 장치(100)의 각 구성과 연결되어 전자 장치(100)의 동작을 전반적으로 제어할 수 있다. 예를 들어, 프로세서(120)는 메모리(110), 통신 인터페이스(미도시) 등과 같은 구성과 연결되어 전자 장치(100)의 동작을 제어할 수 있다.
일 실시 예에 따라 프로세서(120)는 디지털 시그널 프로세서(digital signal processor(DSP), 마이크로 프로세서(microprocessor), TCON(Time controller)으로 구현될 수 있다. 다만, 이에 한정되는 것은 아니며, 중앙처리장치(central processing unit(CPU)), MCU(Micro Controller Unit), MPU(micro processing unit), 컨트롤러(controller), 어플리케이션 프로세서(application processor(AP)), 또는 커뮤니케이션 프로세서(communication processor(CP)), ARM 프로세서 중 하나 또는 그 이상을 포함하거나, 해당 용어로 정의될 수 있다. 또한, 프로세서(120)는 프로세싱 알고리즘이 내장된 SoC(System on Chip), LSI(large scale integration)로 구현될 수도 있고, FPGA(Field Programmable gate array) 형태로 구현될 수도 있다.
프로세서(120)는 제2 학습 데이터를 제1 인공 지능 모델 및 제2 인공 지능 모델 각각에 입력하고, 제1 인공 지능 모델에 포함된 복수의 제1 레이어 각각의 출력 및 제2 인공 지능 모델에 포함된 복수의 제2 레이어 각각의 출력에 기초하여 제2 인공 지능 모델을 재학습할 수 있다. 여기서, 제1 인공 지능 모델에 포함된 복수의 제1 레이어 각각의 출력 및 제2 인공 지능 모델에 포함된 복수의 제2 레이어 각각의 출력은 피쳐 맵(feature map) 데이터 및 최종 출력 데이터를 포함할 수 있다. 즉, 제1 인공 지능 모델에 포함된 복수의 제1 레이어 각각의 출력 및 제2 인공 지능 모델에 포함된 복수의 제2 레이어 각각의 출력은 컨볼루션 레이어 출력(convolution layer output)(feature map) 및 FC 레이어 출력(fully connected layer output)(Logits)을 포함할 수 있다.
프로세서(120)는 복수의 제1 레이어 각각의 출력을 대응되는 제2 레이어의 출력과 비교하여 복수의 비교 결과를 획득하고, 복수의 비교 결과에 기초하여 제2 인공 지능 모델을 재학습할 수 있다. 예를 들어, 프로세서(120)는 복수의 제1 레이어 각각의 출력과 대응되는 제2 레이어의 출력 간의 유클리디안 거리(euclidean distance)를 사용한 norm 값을 줄이도록 제2 인공 지능 모델을 재학습할 수 있다. 이러한 학습을 통해 복수의 제2 레이어 각각의 출력이 대응되는 제1 레이어의 출력과 유사해질 수 있다.
여기서, 복수의 제1 레이어 각각의 출력의 크기는 대응되는 제2 레이어의 출력의 크기와 동일할 수 있다. 이는, 제2 인공 지능 모델이 제1 인공 지능 모델에서 필터의 크기만이 축소된 인공 지능 모델이기 때문이다.
또는, 프로세서(120)는 복수의 제2 레이어 각각의 출력을 제3 인공 지능 모델 각각에 입력하고, 제3 인공 지능 모델로부터 출력되는 복수의 제2 레이어의 출력에 대한 복수의 구별 결과를 획득하며, 복수의 비교 결과 및 복수의 구별 결과에 기초하여 제2 인공 지능 모델을 재학습할 수도 있다. 즉, 프로세서(120)는 복수의 제2 레이어 각각의 출력이 제3 인공 지능 모델에 의해 제1 인공 지능 모델의 출력으로서 식별되도록, 제2 인공 지능 모델을 재학습할 수 있다.
프로세서(120)는 복수의 비교 결과 및 복수의 구별 결과를 가중합하여 제2 인공 지능 모델을 재학습할 수 있다. 예를 들어, 프로세서(120)는 복수의 제1 레이어 중 마지막 레이어에 대응되는 비교 결과의 가중치를 나머지 레이어에 대응되는 복수의 비교 결과의 가중치 이상으로 부여하여 제2 인공 지능 모델을 재학습할 수도 있다.
다만, 이에 한정되는 것은 아니며, 프로세서(120)는 얼마든지 다양한 방식으로 가중치를 부여할 수도 있다.
이상과 같은 방법을 통해 제2 인공 지능 모델을 재학습함으로써, 제2 인공 지능 모델의 출력이 좀더 제1 인공 지능 모델의 출력과 유사해질 수 있다.
한편, 프로세서(120)는 제2 학습 데이터를 재학습된 제2 인공 지능 모델 각각에 입력하고, 복수의 제1 레이어 각각의 출력 및 재학습된 제2 인공 지능 모델에 포함된 복수의 제3 레이어 각각의 출력을 구별하도록 제3 인공 지능 모델을 재학습할 수도 있다.
그리고, 프로세서(120)는 제3 학습 데이터를 제1 인공 지능 모델 및 재학습된 제2 인공 지능 모델 각각에 입력하고, 제1 인공 지능 모델에 포함된 복수의 제1 레이어 각각의 출력 및 재학습된 제2 인공 지능 모델에 포함된 복수의 제3 레이어 각각의 출력에 기초하여 재학습된 제2 인공 지능 모델을 2차 재학습할 수도 있다. 가령, 프로세서(120)는 복수의 제1 레이어 각각의 출력을 대응되는 제3 레이어의 출력과 비교하여 복수의 비교 결과를 획득하고, 복수의 비교 결과에 기초하여 재학습된 제2 인공 지능 모델을 2차 재학습할 수도 있다.
이때, 프로세서(120)는 복수의 제3 레이어 각각의 출력을 재학습된 제3 인공 지능 모델 각각에 입력하고, 재학습된 제3 인공 지능 모델로부터 출력되는 복수의 제3 레이어의 출력에 대한 복수의 구별 결과를 획득하며, 복수의 비교 결과 및 복수의 구별 결과에 기초하여 재학습된 제2 인공 지능 모델을 2차 재학습할 수도 있다.
즉, 프로세서(120)는 제2 인공 지능 모델 및 제3 인공 지능 모델을 반복적으로 재학습하여 제2 인공 지능 모델의 성능을 개선할 수도 있다.
한편, 복수의 제2 레이어 각각에 포함된 복수의 필터는 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 형태일 수 있다. 예를 들어, 복수의 2차원 필터 각각의 크기가 N × N 형태인 경우, 복수의 필터는 n × N 형태 또는 N × n 형태일 수 있다. 여기서, n은 N보다 작다.
특히, 복수의 제2 레이어 각각에 포함된 복수의 필터는 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 1차원 형태일 수도 있다. 이 경우, 복수의 1차원 필터 각각은 1 × N 형태 또는 N × 1 형태이고, 프로세서(120)는 메모리(110)로부터 입력 데이터를 행(row) 단위 또는 컬럼(column) 단위로 독출하고, 독출된 입력 데이터를 재학습된 제2 인공 지능 모델에 입력하여 입력 데이터를 처리할 수 있다.
즉, 이러한 필터의 형태 상의 특징으로 인해, 재학습된 제2 인공 지능 모델을 이용하는 경우, on the fly 방식으로 입력 데이터를 처리할 수 있다.
한편, 이상에서는 제1 인공 지능 모델을 압축시켜 제2 인공 지능 모델을 획득하는 것으로 설명하였으나, 이러한 방법은 단계적 또는 병렬적으로 수행될 수도 있다.
예를 들어, 메모리(110)는 제1 학습 데이터를 통해 학습된 보조 인공 지능 모델에 대한 정보를 더 저장할 수 있다. 프로세서(120)는 제2 학습 데이터를 보조 인공 지능 모델에 입력하고, 복수의 제1 레이어 각각의 출력 및 보조 인공 지능 모델에 포함된 복수의 보조 레이어 각각의 출력에 기초하여 보조 인공 지능 모델을 재학습하며, 제2 학습 데이터를 재학습된 보조 인공 지능 모델에 입력하고, 재학습된 보조 인공 지능 모델에 포함된 복수의 보조 레이어 각각의 출력 및 복수의 제2 레이어 각각의 출력에 기초하여 제2 인공 지능 모델을 재학습할 수 있다. 여기서, 복수의 보조 레이어 각각은 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 복수의 필터를 포함할 수 있다.
즉, 보조 인공 지능 모델 역시 제1 인공 지능 모델 및 제2 인공 지능 모델과 그 형태가 거의 동일하다. 다만, 보조 인공 지능 모델은 제1 인공 지능 모델에서 필터의 크기가 축소된 인공 지능 모델일 수 있다. 또한, 단계적인 재학습의 이점을 살리기 위해서, 보조 인공 지능 모델은 제2 인공 지능 모델의 필터보다 크기가 클 수 있다.
또는, 메모리(110)는 제1 학습 데이터를 통해 학습된 제1 보조 인공 지능 모델에 대한 정보 및 제1 학습 데이터를 통해 학습된 제2 보조 인공 지능 모델에 대한 정보를 더 저장할 수도 있다. 프로세서(120)는 제2 학습 데이터를 제1 보조 인공 지능 모델 및 제2 보조 인공 지능 모델에 입력하고, 복수의 제1 레이어 각각의 출력 및 제1 보조 인공 지능 모델에 포함된 복수의 제1 보조 레이어 각각의 출력에 기초하여 제1 보조 인공 지능 모델을 재학습하고, 복수의 제1 레이어 각각의 출력 및 제2 보조 인공 지능 모델에 포함된 복수의 제2 보조 레이어 각각의 출력에 기초하여 제2 보조 인공 지능 모델을 재학습하며, 제2 학습 데이터를 재학습된 제1 보조 인공 지능 모델 및 재학습된 제2 보조 인공 지능 모델에 입력하고, 재학습된 제1 보조 인공 지능 모델에 포함된 복수의 제1 보조 레이어 각각의 출력, 재학습된 제2 보조 인공 지능 모델에 포함된 복수의 제2 보조 레이어 각각의 출력 및 복수의 제2 레이어 각각의 출력에 기초하여 제2 인공 지능 모델을 재학습할 수 있다. 여기서, 복수의 제1 보조 레이어 각각은 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 복수의 필터를 포함하고, 복수의 제2 보조 레이어 각각은 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 복수의 필터를 포함하고, 복수의 제1 보조 레이어 각각에 포함된 복수의 필터 각각은 대응되는 제2 보조 레이어 각각에 포함된 필터와 형태가 상이할 수 있다.
예를 들어, 프로세서(120)는 재학습된 제1 보조 인공 지능 모델에 포함된 복수의 제1 보조 레이어 각각의 출력 및 재학습된 제2 보조 인공 지능 모델에 포함된 복수의 제2 보조 레이어 각각의 출력을 가중합하고, 가중합된 결과 및 복수의 제2 레이어 각각의 출력에 기초하여 제2 인공 지능 모델을 재학습할 수 있다.
즉, 프로세서(120)는 두 개의 보조 인공 지능 모델을 병렬적으로 재학습하고, 두 개의 재학습된 보조 인공 지능 모델에 기초하여 제2 인공 지능 모델을 재학습할 수도 있다.
한편, 본 개시에 따른 인공 지능과 관련된 기능은 프로세서(120)와 메모리(110)를 통해 동작된다.
프로세서(120)는 하나 또는 복수의 프로세서로 구성될 수 있다. 이때, 하나 또는 복수의 프로세서는 CPU, AP, DSP 등과 같은 범용 프로세서, GPU, VPU(Vision Processing Unit)와 같은 그래픽 전용 프로세서 또는 NPU와 같은 인공 지능 전용 프로세서일 수 있다.
하나 또는 복수의 프로세서는, 메모리(110)에 저장된 기 정의된 동작 규칙 또는 인공 지능 모델에 따라, 입력 데이터를 처리하도록 제어한다. 또는, 하나 또는 복수의 프로세서가 인공 지능 전용 프로세서인 경우, 인공 지능 전용 프로세서는 특정 인공 지능 모델의 처리에 특화된 하드웨어 구조로 설계될 수 있다. 기 정의된 동작 규칙 또는 인공 지능 모델은 학습을 통해 만들어진 것을 특징으로 한다.
여기서, 학습을 통해 만들어진다는 것은, 기본 인공 지능 모델이 학습 알고리즘에 의하여 다수의 학습 데이터들을 이용하여 학습됨으로써, 원하는 특성(또는, 목적)을 수행하도록 설정된 기 정의된 동작 규칙 또는 인공 지능 모델이 만들어짐을 의미한다. 이러한 학습은 본 개시에 따른 인공 지능이 수행되는 기기 자체에서 이루어질 수도 있고, 별도의 서버 및/또는 시스템을 통해 이루어 질 수도 있다. 학습 알고리즘의 예로는, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)이 있으나, 전술한 예에 한정되지 않는다.
인공 지능 모델은 복수의 신경망 레이어들로 구성될 수 있다. 복수의 신경망 레이어들 각각은 복수의 가중치들(weight values)을 갖고 있으며, 이전(previous) 레이어의 연산 결과와 복수의 가중치들 간의 연산을 통해 신경망 연산을 수행한다. 복수의 신경망 레이어들이 갖고 있는 복수의 가중치들은 인공 지능 모델의 학습 결과에 의해 최적화될 수 있다. 예를 들어, 학습 과정 동안 인공 지능 모델에서 획득한 로스(loss) 값 또는 코스트(cost) 값이 감소 또는 최소화되도록 복수의 가중치들이 갱신될 수 있다.
인공 신경망은 심층 신경망(DNN:Deep Neural Network)를 포함할 수 있으며, 예를 들어, CNN(Convolutional Neural Network), DNN(Deep Neural Network), RNN(Recurrent Neural Network), RBM(Restricted Boltzmann Machine), DBN(Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network), GAN(Generative Adversarial Network) 또는 심층 Q-네트워크(Deep Q-Networks) 등이 있으나, 이에 한정되는 것은 아니다.
한편, 전자 장치(100)는 통신 인터페이스를 더 포함할 수도 있다.
통신 인터페이스는 다양한 유형의 통신방식에 따라 다양한 유형의 외부 장치와 통신을 수행하는 구성이다. 통신 인터페이스는 와이파이 모듈, 블루투스 모듈, 적외선 통신 모듈 및 무선 통신 모듈 등을 포함한다. 여기서, 각 통신 모듈은 적어도 하나의 하드웨어 칩 형태로 구현될 수 있다.
프로세서(120)는 통신 인터페이스를 이용하여 각종 외부 장치와 통신을 수행할 수 있다. 예를 들어, 프로세서(120)는 통신 인터페이스를 통해 제1 외부 장치로부터 제1 학습 데이터, 제2 학습 데이터, 제1 인공 지능 모델, 제2 인공 지능 모델 및 제3 인공 지능 모델을 수신하고, 수신된 데이터를 메모리(110)에 저장할 수 있다. 그리고, 프로세서(120)는 재학습된 제2 인공 지능 모델을 제2 외부 장치로 전송하도록 통신 인터페이스를 제어할 수도 있다. 여기서, 외부 장치는 서버, 블루투스 이어폰, 디스플레이 장치 등을 포함할 수 있다.
와이파이 모듈, 블루투스 모듈은 각각 WiFi 방식, 블루투스 방식으로 통신을 수행한다. 와이파이 모듈이나 블루투스 모듈을 이용하는 경우에는 SSID 및 세션 키 등과 같은 각종 연결 정보를 먼저 송수신하여, 이를 이용하여 통신 연결한 후 각종 정보들을 송수신할 수 있다.
적외선 통신 모듈은 시 광선과 밀리미터파 사이에 있는 적외선을 이용하여 근거리에 무선으로 데이터를 전송하는 적외선 통신(IrDA, infrared Data Association)기술에 따라 통신을 수행한다.
무선 통신 모듈은 상술한 통신 방식 이외에 지그비(zigbee), 3G(3rd Generation), 3GPP(3rd Generation Partnership Project), LTE(Long Term Evolution), LTE-A(LTE Advanced), 4G(4th Generation), 5G(5th Generation)등과 같은 다양한 무선 통신 규격에 따라 통신을 수행하는 적어도 하나의 통신 칩을 포함할 수 있다.
그 밖에 통신 인터페이스는 LAN(Local Area Network) 모듈, 이더넷 모듈, 또는 페어 케이블, 동축 케이블 또는 광섬유 케이블 등을 이용하여 통신을 수행하는 유선 통신 모듈 중 적어도 하나를 포함할 수 있다.
통신 인터페이스는 입출력 인터페이스를 더 포함할 수 있다. 입출력 인터페이스는 HDMI(High Definition Multimedia Interface), MHL (Mobile High-Definition Link), USB (Universal Serial Bus), DP(Display Port), 썬더볼트(Thunderbolt), VGA(Video Graphics Array)포트, RGB 포트, D-SUB(D-subminiature), DVI(Digital Visual Interface) 중 어느 하나의 인터페이스일 수 있다.
입출력 인터페이스는 오디오 및 비디오 신호 중 적어도 하나를 입출력 할 수 있다.
구현 예에 따라, 입출력 인터페이스는 오디오 신호만을 입출력하는 포트와 비디오 신호만을 입출력하는 포트를 별개의 포트로 포함하거나, 오디오 신호 및 비디오 신호를 모두 입출력하는 하나의 포트로 구현될 수 있다.
이상과 같은 본 개시의 다양한 실시 예에 따르면, 제2 인공 지능 모델이 재학습됨에 따라 성능을 좀더 개선하면서도 제1 인공 지능 모델의 경량화가 가능하고, 제2 인공 지능 모델에 포함된 필터의 형태 상의 특징으로 인해 on the fly 방식으로 입력 데이터를 처리할 수 있다.
이하에서는 다양한 도면을 통해 프로세서(120)의 동작을 좀더 구체적으로 설명한다.
도 3은 본 개시의 일 실시 예에 따른 제1 인공 지능 모델과 제2 인공 지능 모델을 비교하기 위한 도면이다.
제1 인공 지능 모델(Teacher Configuration) 및 제2 인공 지능 모델(Student Configuration)은 그 형태가 거의 동일하다. 다만, 제2 인공 지능 모델은 제1 인공 지능 모델에서 필터의 크기가 축소된 인공 지능 모델일 수 있다. 예를 들어, 도 3에 도시된 바와 같이, 제1 인공 지능 모델에 포함된 복수의 제1 레이어의 개수 및 제2 인공 지능 모델에 포함된 복수의 제2 레이어의 개수는 총 5개로 동일할 수 있다. 그리고, 대응되는 레이어의 채널의 개수, 즉 대응되는 레이어에 포함된 필터의 개수도 동일할 수 있다. 가령, 제1 인공 지능 모델의 첫 번째 레이어 및 제2 인공 지능 모델의 첫 번째 레이어는 총 64 채널을 포함할 수 있다.
그리고, 복수의 제1 레이어 각각은 복수의 2차원 필터를 포함하고, 복수의 제2 레이어 각각은 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 복수의 필터를 포함할 수 있다. 도 3에서는 설명의 편의를 위해 복수의 제1 레이어 각각이 복수의 3 × 3 형태의 필터를 포함하고, 복수의 제2 레이어 각각이 복수의 1 × 3 형태의 필터를 포함하는 것으로 도시하였다. 따라서, 제2 인공 지능 모델은 제1 인공 지능 모델과 비교하여 1/3의 용량으로 구현될 수 있다.
또한, 제1 인공 지능 모델에 포함된 복수의 제1 레이어의 개수 및 제2 인공 지능 모델에 포함된 복수의 제2 레이어의 개수가 동일하여, 1:1로 feature map의 비교가 가능하다.
그리고, 필터의 형태에 차이가 있으나, 컨볼루션 연산 결과는 동일한 형태로 출력될 수 있다. 즉, 복수의 제1 레이어 각각의 출력의 크기는 대응되는 제2 레이어의 출력의 크기와 동일할 수 있으며, 그에 따라 대응되는 출력간 직접적인 비교가 가능하며, 별도로 크기 변경 등의 동작을 수행할 필요가 없다.
도 4는 본 개시의 일 실시 예에 따른 제1 인공 지능 모델과 제2 인공 지능 모델의 각 레이어의 출력을 비교하는 도면이다.
프로세서(120)는 제1 인공 지능 모델에 포함된 복수의 제1 레이어 각각의 출력을 대응되는 제2 인공 지능 모델에 포함된 제2 레이어의 출력과 비교하여 복수의 비교 결과를 획득하고, 복수의 제2 레이어 각각의 출력을 제3 인공 지능 모델 각각에 입력하여 제3 인공 지능 모델로부터 출력되는 복수의 제2 레이어의 출력에 대한 복수의 구별 결과를 획득할 수 있다.
즉, 프로세서(120)는 복수의 제1 레이어 중 첫 번째 레이어의 출력과 복수의 제2 레이어 중 첫 번째 레이어의 출력을 비교하여 첫 번째 레이어 간의 비교 결과를 획득하고, 복수의 제2 레이어 중 첫 번째 레이어의 출력에 대한 제3 인공 지능 모델의 구별 결과를 획득할 수 있다. 도 4에서는 각 레이어에서의 비교 결과(L2 loss, Softmax) 및 구별 결과(Discriminator loss)를 Guide Loss로서 표시하였으며, 프로세서(120)는 첫 번째 레이어 이후의 레이어에 대하여도 동일한 Guide Loss를 획득할 수 있다.
프로세서(120)는 각 레이어의 Guide Loss를 반영하여 제2 인공 지능 모델을 재학습함에 따라 로우-레벨의 특징을 좀더 부각시킬 수 있다. 즉, 마지막 softmax 정보만을 비교하는 종래와 비교하여, 본 개시에 의하면 네트워크의 중간 결과가 가이드되어 제2 인공 지능 모델의 성능이 개선될 수 있다.
도 5는 본 개시의 일 실시 예에 따른 제2 인공 지능 모델의 재학습 단계를 설명하기 위한 도면이다.
먼저, 제1 인공 지능 모델(Teacher) 및 제2 인공 지능 모델(Student)은 제1 학습 데이터를 통해 초기 학습이 수행된 상태일 수 있다. 그리고, 제3 인공 지능 모델(Discriminator)은 제1 인공 지능 모델의 피쳐 맵 데이터 및 제2 인공 지능 모델의 피쳐 맵 데이터를 구별하도록 학습된 상태일 수 있다.
프로세서(120)는 제2 학습 데이터(Xi)를 제1 인공 지능 모델 및 제2 인공 지능 모델 각각에 입력하고, 복수의 제1 레이어 각각의 출력을 대응되는 제2 레이어의 출력과 비교하여 복수의 비교 결과(L2 loss, Softmax)를 획득할 수 있다.
그리고, 프로세서(120)는 복수의 제2 레이어 각각의 출력을 제3 인공 지능 모델 각각에 입력하여 복수의 제2 레이어의 출력에 대한 복수의 구별 결과(Discriminator loss)를 획득할 수 있다.
프로세서(120)는 복수의 비교 결과 및 복수의 구별 결과에 기초하여 제2 인공 지능 모델을 재학습할 수 있다.
또한, 프로세서(120)는 제2 학습 데이터를 재학습된 제2 인공 지능 모델 각각에 입력하고, 복수의 제1 레이어 각각의 출력 및 재학습된 제2 인공 지능 모델에 포함된 복수의 제3 레이어 각각의 출력을 구별하도록 제3 인공 지능 모델을 재학습할 수 있다.
이상의 과정을 반복함에 따라, 제2 인공 지능 모델의 성능이 개선되고, 제3 인공 지능 모델의 구별 성능이 개선될 수 있다.
도 6a 및 도 6b는 본 개시의 일 실시 예에 따른 on the fly 방식을 설명하기 위한 도면들이다.
도 6a는 종래의 2차원 필터를 이용하는 경우를 설명하기 위한 도면으로, 3 × 3의 2차원 필터를 가정하였다. 2차원 필터는 입력 데이터의 제1 영역(610)부터 우측으로 시프트되며, 컨볼루션 연산이 수행될 수 있다. 이 경우, 프로세서는 메모리로부터 제1 영역(610)을 독출하여 연산을 수행한 후, 제1 영역(610)으로부터 한 칸 우측으로 시프트된 영역을 연산하게 된다. 이때, 프로세서는 추가되는 영역만을 메모리로부터 독출하고, 제1 영역(610) 중 중첩되지 않는 영역을 삭제할 수 있다. 이러한 과정이 반복되어 행이 변경된 후, 프로세서는 제2 영역(620)을 독출하게 된다. 즉, 제1 영역(610) 중 일부가 메모리로부터 다시 독출될 수 있다. 이 경우, 제3 영역(630)은 총 3회 독출될 수 있다.
이에 대해, 도 6b는 1차원 필터를 이용하는 경우를 설명하기 위한 도면으로, 1 × 3의 1차원 필터를 가정하였다. 1차원 필터는 입력 데이터의 제4 영역(640)부터 우측으로 시프트되며, 컨볼루션 연산이 수행될 수 있다. 이 경우, 프로세서는 메모리(110)로부터 제4 영역(640)을 독출하여 연산을 수행한 후, 제4 영역(640)으로부터 한 칸 우측으로 시프트된 영역을 연산하게 된다. 이후, 행이 변경된 후, 프로세서(120)는 제5 영역(650)을 독출하게 되나 제4 영역(640)과 중첩되는 부분이 없기 때문에 동일한 영역을 반복 독출하는 문제가 해결되며, on the fly 방식에 좀더 유리한 연산이 가능하다.
도 7a 내지 도 8b는 본 개시의 다양한 실시 예에 따른 재학습된 제2 인공 지능 모델의 성능을 설명하기 위한 도면들이다.
도 7a 내지 도 8b는 도 3과 같은 형태의 제1 인공 지능 모델 및 제2 인공 지능 모델을 이용한 실험 결과로서, 제1 인공 지능 모델 및 제2 인공 지능 모델은 각각 8개의 컨볼루션 레이어(Convolution layer), 1개의 FC 레이어(Fully connected layer)를 포함하는 것으로 가정하였다. 그리고, 제1 인공 지능 모델의 복수의 제1 레이어 각각은 복수의 3 × 3 형태의 필터를 포함하는 것으로 가정하였다. 다만, 제2 인공 지능 모델은 도 7a 및 도 7b의 x축에 도시된 바와 같이, 복수의 제2 레이어 중 일부 레이어만을 1 × 3 형태의 필터로 변경하였다. 도 8a 및 도 8b는 제2 인공 지능 모델의 모든 레이어를 1 × 3 형태의 필터로 변경하였다.
도 7a 내지 도 8b에서 Teacher는 제1 인공 지능 모델의 Classification Accuracy 성능을 나타내고, Student는 재학습된 제2 인공 지능 모델의 Classification Accuracy 성능을 나타내며, Baseline은 단순히 1 × 3 형태만을 이용한 모델의 Classification Accuracy 성능을 나타낸다.
도 7a 및 도 7b는 컨볼루션 레이어의 출력과 FC 레이어의 출력만을 고려하여 재학습된 제2 인공 지능 모델의 Classification Accuracy 성능을 나타내며, Student가 Baseline보다 개선된 성능을 나타낸다.
다만, 첫 번째 컨볼루션 레이어는 분류나 객체 검출에 중요하다고 여겨지는 Edge, Curve 등과 같은 로우-레벨(low-level)의 특징을 추출하는데 매우 중요한 역할을 수행하고, input 사이즈도 가장 크다. 따라서, 첫 번째 컨볼루션 레이어까지 1 × 3 형태의 필터로 바꾸는 경우 급격한 성능 저하가 발생할 수 있다.
이러한 문제는 제3 인공 지능 모델을 이용하여 해결이 가능하다. 도 8a 및 도 8b는 컨볼루션 레이어의 출력과 FC 레이어의 출력 및 제3 인공 지능 모델의 구별 결과를 고려하여 재학습된 제2 인공 지능 모델의 Classification Accuracy 성능을 나타낸다. 다만, 도 8a 및 도 8b의 x축에 도시된 바와 같이, 제3 인공 지능 모델은 일부 레이어에만 적용되었다. 이 경우, Student가 Baseline보다 개선된 성능을 나타냄을 알 수 있다.
도 9는 본 개시의 일 실시 예에 따른 종래 기술과 재학습된 제2 인공 지능 모델의 성능을 비교하기 위한 도면이다.
Baseline은 1 × 3 형태만을 이용한 모델의 성능을 나타내며, L HT는 종래 기술의 성능을 나타낸다. L HT + L L2는 종래 기술과 본 개시의 각 레이어의 비교 결과를 이용한 경우의 성능을 나타내고, L HT + L Gen은 종래 기술과 본 개시의 각 레이어의 구별 결과를 이용한 경우의 성능을 나태내며, L HT + L L2 + L Gen은 종래 기술과 본 개시의 각 레이어의 비교 결과 및 구별 결과를 이용한 경우의 성능을 나태내며, 비교 결과 및 구별 결과를 모두 이용한 경우의 성능이 가장 개선되었음을 알 수 있다.
도 10은 본 개시의 확장 실시 예에 따른 단계적 재학습 방법을 설명하기 위한 도면이다.
프로세서(120)는 도 10에 도시된 바와 같이, 복수의 보조 인공 지능 모델(TA)를 더 이용하여 최종적으로 제2 인공 지능 모델을 재학습할 수도 있다. 여기서, 보조 인공 지능 모델을 재학습하는 방법은 이상에서 제2 인공 지능 모델을 재학습하는 방법과 동일하므로 중복되는 설명은 생략한다.
다만, 보조 인공 지능 모델에 포함된 필터는 제1 인공 지능 모델에 포함된 필터보다 크기가 축소될 수 있다. 반면, 보조 인공 지능 모델에 포함된 필터는 제2 인공 지능 모델에 포함된 필터보다 크기가 클 수 있다.
즉, 제1 인공 지능 모델을 제2 인공 지능 모델로 한번에 크기를 축소시키는 경우, 중요 인자의 손실이 있을 수 있으나, 제1 인공 지능 모델을 적어도 하나의 보조 인공 지능 모델을 이용하여 단계적으로 크기를 축소시킴에 따라 중요 인자의 보존이 가능하다. 즉, 단계적으로 재학습된 제2 인공 지능 모델은 보조 인공 지능 모델을 이용하지 않고 재학습된 제2 인공 지능 모델보다 제 1 인공 지능 모델의 특성을 구비할 수 있다.
도 11a 및 도 11b는 본 개시의 확장 실시 예에 따른 병렬적 재학습 방법을 설명하기 위한 도면들이다.
프로세서(120)는 도 11a에 도시된 바와 같이, 복수의 보조 인공 지능 모델(TA)를 병렬적으로 이용할 수도 있다. 특히, 프로세서(120)는 필터의 형태가 상이한 복수의 보조 인공 지능 모델을 이용함에 따라 제1 인공 지능 모델의 특성을 좀더 반영한 제2 인공 지능 모델을 획득할 수도 있다.
예를 들어, 프로세서(120)는 도 11b에 도시된 바와 같이, 1 × 1 형태의 필터를 포함하는 제1 보조 인공 지능 모델, 1 × 3 형태의 필터를 포함하는 제2 보조 인공 지능 모델, 3 × 1 형태의 필터를 포함하는 제3 보조 인공 지능 모델 및 2 × 2 형태의 필터를 포함하는 제4 보조 인공 지능 모델을 각각 재학습할 수 있다. 제1 내지 제4 보조 인공 지능 모델을 재학습하는 방법은 이상에서 제2 인공 지능 모델을 재학습하는 방법을 병렬적으로 적용한 것에 불과하여 중복되는 설명은 생략한다.
이 경우, 제1 인공 지능 모델의 특성에 적합한 필터의 형태를 갖는 보조 인공 지능 모델의 웨이트 값은 다른 보조 인공 지능 모델의 웨이트 값보다 클 수 있다. 가령, 제1 인공 지능 모델의 특성을 제4 보조 인공 지능 모델의 2 × 2 형태의 필터가 가장 잘 반영할 수 있다면, 제4 보조 인공 지능 모델의 웨이트 값은 나머지 보조 인공 지능 모델의 웨이트 값보다 클 수 있다.
반면, 보조 인공 지능 모델을 이용하지 않는다면, 제2 인공 지능 모델의 1 × 3 형태의 필터는 제1 인공 지능 모델의 특성을 상대적으로 덜 반영하게 된다. 따라서, 복수의 보조 인공 지능 모델을 이용하게 되면, 도 10과 같은 단계적 재학습의 효과도 동일하게 유지하면서 제1 인공 지능 모델의 특성을 좀더 잘 반영할 수 있다.
도 11b에서는 재학습된 제1 내지 제4 보조 인공 지능 모델을 평균하여 제2 인공 지능 모델을 재학습하는 것으로 도시하였으나, 이에 한정되는 것은 아니다. 예를 들어, 프로세서(120)는 재학습된 제1 내지 제4 보조 인공 지능 모델을 가중합하여 제2 인공 지능 모델을 재학습할 수도 있다.
또한, 프로세서(120)는 얼마든지 다양한 개수 또는 다양한 형태의 보조 인공 지능 모델을 이용할 수도 있다.
도 12는 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법을 설명하기 위한 흐름도이다.
먼저, 제1 학습 데이터를 통해 학습된 제1 인공 지능 모델 및 제1 학습 데이터를 통해 학습된 제2 인공 지능 모델 각각에 제2 학습 데이터를 입력한다(S1210). 그리고, 제1 인공 지능 모델에 포함된 복수의 제1 레이어 각각의 출력 및 제2 인공 지능 모델에 포함된 복수의 제2 레이어 각각의 출력에 기초하여 제2 인공 지능 모델을 재학습한다(S1220). 여기서, 복수의 제1 레이어 각각은 복수의 2차원 필터를 포함하고, 복수의 제2 레이어 각각은 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 복수의 필터를 포함할 수 있다.
또한, 복수의 제1 레이어의 개수는 복수의 제2 레이어의 개수와 동일하고, 재학습하는 단계(S1220)는 복수의 제1 레이어 각각의 출력을 대응되는 제2 레이어의 출력과 비교하여 복수의 비교 결과를 획득하고, 복수의 비교 결과에 기초하여 제2 인공 지능 모델을 재학습할 수 있다.
여기서, 복수의 제1 레이어 각각에 포함된 복수의 2차원 필터의 개수는 대응되는 제2 레이어에 포함된 복수의 필터의 개수와 동일하며, 복수의 제1 레이어 각각의 출력의 크기는 대응되는 제2 레이어의 출력의 크기와 동일할 수 있다.
그리고, 재학습하는 단계(S1220)는 복수의 제2 레이어 각각의 출력을 제3 인공 지능 모델 각각에 입력하고, 제3 인공 지능 모델로부터 출력되는 복수의 제2 레이어의 출력에 대한 복수의 구별 결과를 획득하며, 복수의 비교 결과 및 복수의 구별 결과에 기초하여 제2 인공 지능 모델을 재학습하고, 제3 인공 지능 모델은 복수의 제1 레이어 각각의 출력 및 복수의 제2 레이어 각각의 출력을 구별하도록 학습된 인공 지능 모델일 수 있다.
여기서, 제2 학습 데이터를 재학습된 제2 인공 지능 모델 각각에 입력하는 단계 및 복수의 제1 레이어 각각의 출력 및 재학습된 제2 인공 지능 모델에 포함된 복수의 제3 레이어 각각의 출력을 구별하도록 제3 인공 지능 모델을 재학습하는 단계를 더 포함할 수 있다.
또한, 재학습하는 단계(S1220)는 복수의 비교 결과 및 복수의 구별 결과를 가중합하여 제2 인공 지능 모델을 재학습할 수 있다.
여기서, 재학습하는 단계(S1220)는 복수의 제1 레이어 중 마지막 레이어에 대응되는 비교 결과의 가중치를 나머지 레이어에 대응되는 복수의 비교 결과의 가중치 이상으로 부여하여 제2 인공 지능 모델을 재학습할 수 있다.
한편, 복수의 필터 각각은 1 × N 형태 또는 N × 1 형태이고, 입력 데이터를 행(row) 단위 또는 컬럼(column) 단위로 독출하는 단계 및 독출된 입력 데이터를 재학습된 제2 인공 지능 모델에 입력하여 입력 데이터를 처리하는 단계를 더 포함할 수 있다.
그리고, 제1 인공 지능 모델 및 제2 인공 지능 모델은 컨볼루션 신경망(Convolutional Neural Network, CNN) 형태로 구현될 수 있다.
이상과 같은 본 개시의 다양한 실시 예에 따르면, 전자 장치는 Teacher network 및 Student network의 각 레이어의 출력을 비교하여 Student network를 재학습함에 따라 로우-레벨(low-level)의 특징이 부각된 인공 지능 모델을 획득할 수 있다.
또한, 전자 장치는 Teacher network 및 Student network의 각 레이어의 출력을 구분하도록 학습된 discriminator를 더 이용하여 로우-레벨의 특징이 좀더 부각된 인공 지능 모델을 획득할 수도 있다.
그리고, 전자 장치는 Teacher network의 2차원 형태의 필터의 크기를 축소한 Student network를 이용함에 따라 인공 지능 모델의 용량을 경량화하고 on the fly 방식으로 입력 데이터를 처리할 수 있다.
한편, 본 개시의 일 실시 예에 따르면, 이상에서 설명된 다양한 실시 예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media)에 저장된 명령어를 포함하는 소프트웨어로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시 예들에 따른 전자 장치(예: 전자 장치(A))를 포함할 수 있다. 명령이 프로세서에 의해 실행될 경우, 프로세서가 직접, 또는 프로세서의 제어 하에 다른 구성요소들을 이용하여 명령에 해당하는 기능을 수행할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.
또한, 본 개시의 일 실시 예에 따르면, 이상에서 설명된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
또한, 본 개시의 일 실시 예에 따르면, 이상에서 설명된 다양한 실시 예들은 소프트웨어(software), 하드웨어(hardware) 또는 이들의 조합을 이용하여 컴퓨터(computer) 또는 이와 유사한 장치로 읽을 수 있는 기록 매체 내에서 구현될 수 있다. 일부 경우에 있어 본 명세서에서 설명되는 실시 예들이 프로세서 자체로 구현될 수 있다. 소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능과 같은 실시 예들은 별도의 소프트웨어 모듈들로 구현될 수 있다. 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 동작을 수행할 수 있다.
한편, 상술한 다양한 실시 예들에 따른 기기의 프로세싱 동작을 수행하기 위한 컴퓨터 명령어(computer instructions)는 비일시적 컴퓨터 판독 가능 매체(non-transitory computer-readable medium)에 저장될 수 있다. 이러한 비일시적 컴퓨터 판독 가능 매체에 저장된 컴퓨터 명령어는 특정 기기의 프로세서에 의해 실행되었을 때 상술한 다양한 실시 예에 따른 기기에서의 처리 동작을 특정 기기가 수행하도록 한다. 비일시적 컴퓨터 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 비일시적 컴퓨터 판독 가능 매체의 구체적인 예로는, CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등이 있을 수 있다.
또한, 상술한 다양한 실시 예들에 따른 구성 요소(예: 모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소가 다양한 실시 예에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따른, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
이상에서는 본 개시의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 개시는 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 개시의 요지를 벗어남이 없이 당해 개시에 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 개시의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.

Claims (15)

  1. 전자 장치에 있어서,
    제1 학습 데이터를 통해 학습된 제1 인공 지능 모델에 대한 정보 및 상기 제1 학습 데이터를 통해 학습된 제2 인공 지능 모델에 대한 정보가 저장된 메모리; 및
    상기 메모리와 연결되어 상기 전자 장치를 제어하는 프로세서;를 포함하며,
    상기 프로세서는,
    제2 학습 데이터를 상기 제1 인공 지능 모델 및 상기 제2 인공 지능 모델 각각에 입력하고,
    상기 제1 인공 지능 모델에 포함된 복수의 제1 레이어 각각의 출력 및 상기 제2 인공 지능 모델에 포함된 복수의 제2 레이어 각각의 출력에 기초하여 상기 제2 인공 지능 모델을 재학습하며,
    상기 복수의 제1 레이어 각각은, 복수의 2차원 필터를 포함하고,
    상기 복수의 제2 레이어 각각은, 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 복수의 필터를 포함하는, 전자 장치.
  2. 제1항에 있어서,
    상기 복수의 제1 레이어의 개수는, 상기 복수의 제2 레이어의 개수와 동일하고,
    상기 프로세서는,
    상기 복수의 제1 레이어 각각의 출력을 대응되는 제2 레이어의 출력과 비교하여 복수의 비교 결과를 획득하고,
    상기 복수의 비교 결과에 기초하여 상기 제2 인공 지능 모델을 재학습하는, 전자 장치.
  3. 제2항에 있어서,
    상기 복수의 제1 레이어 각각에 포함된 상기 복수의 2차원 필터의 개수는, 대응되는 제2 레이어에 포함된 상기 복수의 필터의 개수와 동일하며,
    상기 복수의 제1 레이어 각각의 출력의 크기는, 대응되는 제2 레이어의 출력의 크기와 동일한, 전자 장치.
  4. 제3항에 있어서,
    상기 메모리는,
    상기 복수의 제1 레이어 각각의 출력 및 상기 복수의 제2 레이어 각각의 출력을 구별하도록 학습된 제3 인공 지능 모델에 대한 정보를 저장하며,
    상기 프로세서는,
    상기 복수의 제2 레이어 각각의 출력을 상기 제3 인공 지능 모델 각각에 입력하고,
    상기 제3 인공 지능 모델로부터 출력되는 상기 복수의 제2 레이어의 출력에 대한 복수의 구별 결과를 획득하며,
    상기 복수의 비교 결과 및 상기 복수의 구별 결과에 기초하여 상기 제2 인공 지능 모델을 재학습하는, 전자 장치.
  5. 제4항에 있어서,
    상기 프로세서는,
    상기 제2 학습 데이터를 상기 재학습된 제2 인공 지능 모델 각각에 입력하고,
    상기 복수의 제1 레이어 각각의 출력 및 상기 재학습된 제2 인공 지능 모델에 포함된 복수의 제3 레이어 각각의 출력을 구별하도록 상기 제3 인공 지능 모델을 재학습하는, 전자 장치.
  6. 제4항에 있어서,
    상기 프로세서는,
    상기 복수의 비교 결과 및 상기 복수의 구별 결과를 가중합하여 상기 제2 인공 지능 모델을 재학습하는, 전자 장치.
  7. 제6항에 있어서,
    상기 프로세서는,
    상기 복수의 제1 레이어 중 마지막 레이어에 대응되는 비교 결과의 가중치를 나머지 레이어에 대응되는 복수의 비교 결과의 가중치 이상으로 부여하여 상기 제2 인공 지능 모델을 재학습하는, 전자 장치.
  8. 제1항에 있어서,
    상기 복수의 필터 각각은,
    1 × N 형태 또는 N × 1 형태이고,
    상기 프로세서는,
    상기 메모리로부터 입력 데이터를 행(row) 단위 또는 컬럼(column) 단위로 독출하고,
    상기 독출된 입력 데이터를 상기 재학습된 제2 인공 지능 모델에 입력하여 상기 입력 데이터를 처리하는, 전자 장치.
  9. 제1항에 있어서,
    상기 제1 인공 지능 모델 및 상기 제2 인공 지능 모델은,
    컨볼루션 신경망(Convolutional Neural Network, CNN) 형태로 구현된, 전자 장치.
  10. 제1항에 있어서,
    상기 메모리는, 상기 제1 학습 데이터를 통해 학습된 보조 인공 지능 모델에 대한 정보를 더 저장하고,
    상기 프로세서는,
    상기 제2 학습 데이터를 상기 보조 인공 지능 모델에 입력하고,
    상기 복수의 제1 레이어 각각의 출력 및 상기 보조 인공 지능 모델에 포함된 복수의 보조 레이어 각각의 출력에 기초하여 상기 보조 인공 지능 모델을 재학습하며,
    상기 제2 학습 데이터를 상기 재학습된 보조 인공 지능 모델에 입력하고,
    상기 재학습된 보조 인공 지능 모델에 포함된 복수의 보조 레이어 각각의 출력 및 상기 복수의 제2 레이어 각각의 출력에 기초하여 상기 제2 인공 지능 모델을 재학습하며,
    상기 복수의 보조 레이어 각각은, 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 복수의 필터를 포함하는, 전자 장치.
  11. 제10항에 있어서,
    상기 메모리는, 상기 제1 학습 데이터를 통해 학습된 제1 보조 인공 지능 모델에 대한 정보 및 상기 제1 학습 데이터를 통해 학습된 제2 보조 인공 지능 모델에 대한 정보를 더 저장하고,
    상기 프로세서는,
    상기 제2 학습 데이터를 상기 제1 보조 인공 지능 모델 및 상기 제2 보조 인공 지능 모델에 입력하고,
    상기 복수의 제1 레이어 각각의 출력 및 상기 제1 보조 인공 지능 모델에 포함된 복수의 제1 보조 레이어 각각의 출력에 기초하여 상기 제1 보조 인공 지능 모델을 재학습하고, 상기 복수의 제1 레이어 각각의 출력 및 상기 제2 보조 인공 지능 모델에 포함된 복수의 제2 보조 레이어 각각의 출력에 기초하여 상기 제2 보조 인공 지능 모델을 재학습하며,
    상기 제2 학습 데이터를 상기 재학습된 제1 보조 인공 지능 모델 및 상기 재학습된 제2 보조 인공 지능 모델에 입력하고,
    상기 재학습된 제1 보조 인공 지능 모델에 포함된 복수의 제1 보조 레이어 각각의 출력, 상기 재학습된 제2 보조 인공 지능 모델에 포함된 복수의 제2 보조 레이어 각각의 출력 및 상기 복수의 제2 레이어 각각의 출력에 기초하여 상기 제2 인공 지능 모델을 재학습하며,
    상기 복수의 제1 보조 레이어 각각은, 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 복수의 필터를 포함하고,
    상기 복수의 제2 보조 레이어 각각은, 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 복수의 필터를 포함하고,
    상기 복수의 제1 보조 레이어 각각에 포함된 복수의 필터 각각은, 대응되는 제2 보조 레이어 각각에 포함된 필터와 형태가 상이한, 전자 장치.
  12. 전자 장치의 제어 방법에 있어서,
    제1 학습 데이터를 통해 학습된 제1 인공 지능 모델 및 상기 제1 학습 데이터를 통해 학습된 제2 인공 지능 모델 각각에 제2 학습 데이터를 입력하는 단계; 및
    상기 제1 인공 지능 모델에 포함된 복수의 제1 레이어 각각의 출력 및 상기 제2 인공 지능 모델에 포함된 복수의 제2 레이어 각각의 출력에 기초하여 상기 제2 인공 지능 모델을 재학습하는 단계;를 포함하며,
    상기 복수의 제1 레이어 각각은, 복수의 2차원 필터를 포함하고,
    상기 복수의 제2 레이어 각각은, 대응되는 제1 레이어의 복수의 2차원 필터 각각의 크기가 축소된 복수의 필터를 포함하는, 제어 방법.
  13. 제12항에 있어서,
    상기 복수의 제1 레이어의 개수는, 상기 복수의 제2 레이어의 개수와 동일하고,
    상기 재학습하는 단계는,
    상기 복수의 제1 레이어 각각의 출력을 대응되는 제2 레이어의 출력과 비교하여 복수의 비교 결과를 획득하고,
    상기 복수의 비교 결과에 기초하여 상기 제2 인공 지능 모델을 재학습하는, 제어 방법.
  14. 제13항에 있어서,
    상기 복수의 제1 레이어 각각에 포함된 상기 복수의 2차원 필터의 개수는, 대응되는 제2 레이어에 포함된 상기 복수의 필터의 개수와 동일하며,
    상기 복수의 제1 레이어 각각의 출력의 크기는, 대응되는 제2 레이어의 출력의 크기와 동일한, 제어 방법.
  15. 제14항에 있어서,
    상기 재학습하는 단계는,
    상기 복수의 제2 레이어 각각의 출력을 제3 인공 지능 모델 각각에 입력하고,
    상기 제3 인공 지능 모델로부터 출력되는 상기 복수의 제2 레이어의 출력에 대한 복수의 구별 결과를 획득하며,
    상기 복수의 비교 결과 및 상기 복수의 구별 결과에 기초하여 상기 제2 인공 지능 모델을 재학습하고,
    상기 제3 인공 지능 모델은,
    상기 복수의 제1 레이어 각각의 출력 및 상기 복수의 제2 레이어 각각의 출력을 구별하도록 학습된 인공 지능 모델인, 제어 방법.
PCT/KR2021/000891 2020-03-10 2021-01-22 전자 장치 및 그 제어 방법 Ceased WO2021182748A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/497,193 US12488281B2 (en) 2020-03-10 2021-10-08 Electronic device and control method thereof

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20200029849 2020-03-10
KR10-2020-0029849 2020-03-10
KR10-2020-0114122 2020-09-07
KR1020200114122A KR20210114315A (ko) 2020-03-10 2020-09-07 전자 장치 및 그 제어 방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/497,193 Continuation US12488281B2 (en) 2020-03-10 2021-10-08 Electronic device and control method thereof

Publications (1)

Publication Number Publication Date
WO2021182748A1 true WO2021182748A1 (ko) 2021-09-16

Family

ID=77670740

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2021/000891 Ceased WO2021182748A1 (ko) 2020-03-10 2021-01-22 전자 장치 및 그 제어 방법

Country Status (2)

Country Link
US (1) US12488281B2 (ko)
WO (1) WO2021182748A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12423088B1 (en) * 2024-07-01 2025-09-23 Piamond Corp. Method and system for managing artificial intelligence model installed and operating in terminal environment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170034258A (ko) * 2015-09-18 2017-03-28 삼성전자주식회사 모델 학습 방법 및 장치, 및 데이터 인식 방법
US20180365564A1 (en) * 2017-06-15 2018-12-20 TuSimple Method and device for training neural network
JP2019067078A (ja) * 2017-09-29 2019-04-25 国立大学法人 筑波大学 画像処理方法、及び画像処理プログラム
KR20190068255A (ko) * 2017-12-08 2019-06-18 삼성전자주식회사 고정 소수점 뉴럴 네트워크를 생성하는 방법 및 장치

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11024009B2 (en) 2016-09-15 2021-06-01 Twitter, Inc. Super resolution using a generative adversarial network
US20180268292A1 (en) 2017-03-17 2018-09-20 Nec Laboratories America, Inc. Learning efficient object detection models with knowledge distillation
US11195093B2 (en) * 2017-05-18 2021-12-07 Samsung Electronics Co., Ltd Apparatus and method for student-teacher transfer learning network using knowledge bridge
CN108334934B (zh) 2017-06-07 2021-04-13 赛灵思公司 基于剪枝和蒸馏的卷积神经网络压缩方法
US10885900B2 (en) * 2017-08-11 2021-01-05 Microsoft Technology Licensing, Llc Domain adaptation in speech recognition via teacher-student learning
CN108830288A (zh) 2018-04-25 2018-11-16 北京市商汤科技开发有限公司 图像处理方法、神经网络的训练方法、装置、设备及介质
KR102190303B1 (ko) 2018-11-30 2020-12-14 서울대학교 산학협력단 Cnn기반의 딥러닝 모델 학습장치 및 그 방법
US20200272905A1 (en) * 2019-02-26 2020-08-27 GE Precision Healthcare LLC Artificial neural network compression via iterative hybrid reinforcement learning approach
KR102905033B1 (ko) 2019-05-08 2025-12-26 삼성전자 주식회사 학습을 수행하는 뉴럴 네트워크 시스템, 그것의 학습 방법 및 뉴럴 네트워크 프로세서의 전이 학습 방법
WO2021064787A1 (ja) * 2019-09-30 2021-04-08 日本電気株式会社 学習システム、学習装置、および学習方法
US20210182660A1 (en) * 2019-12-16 2021-06-17 Soundhound, Inc. Distributed training of neural network models
US11551083B2 (en) * 2019-12-17 2023-01-10 Soundhound, Inc. Neural network training from private data
KR20210106217A (ko) 2020-02-20 2021-08-30 삼성전자주식회사 인공 신경망의 재구성을 수행하는 프로세서, 이를 포함하는 전자 장치 및 프로세서의 동작 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170034258A (ko) * 2015-09-18 2017-03-28 삼성전자주식회사 모델 학습 방법 및 장치, 및 데이터 인식 방법
US20180365564A1 (en) * 2017-06-15 2018-12-20 TuSimple Method and device for training neural network
JP2019067078A (ja) * 2017-09-29 2019-04-25 国立大学法人 筑波大学 画像処理方法、及び画像処理プログラム
KR20190068255A (ko) * 2017-12-08 2019-06-18 삼성전자주식회사 고정 소수점 뉴럴 네트워크를 생성하는 방법 및 장치

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JUNHO YIM, DONGGYU JOO, JIHOON BAE, JUNMO KIM: "A Gift From Knowledge Distillation: Fast Optimization, Network Minimization and Transfer Learning", 2017 IEEE CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION (CVPR), 26 July 2017 (2017-07-26), pages 7130 - 7138, XP033250080, ISSN: 1063-6919, DOI: 10.1109/CVPR.2017.754 *

Also Published As

Publication number Publication date
US20220027791A1 (en) 2022-01-27
US12488281B2 (en) 2025-12-02

Similar Documents

Publication Publication Date Title
WO2021101087A1 (en) Electronic apparatus and controlling method thereof
WO2019172546A1 (en) Electronic apparatus and control method thereof
WO2021054706A1 (en) Teaching gan (generative adversarial networks) to generate per-pixel annotation
WO2020017875A1 (en) Electronic apparatus, method for processing image and computer-readable recording medium
WO2020226317A1 (en) Image processing apparatus and image processing method thereof
WO2021101134A1 (en) Electronic apparatus and control method thereof
WO2021107291A1 (en) Electronic apparatus and control method thereof
WO2021071155A1 (en) Electronic apparatus and control method thereof
WO2022108008A1 (en) Electronic apparatus and controlling method thereof
WO2022059920A1 (ko) 전자 장치, 그 제어 방법 및 전자 시스템
WO2020045794A1 (ko) 전자 장치 및 그 제어 방법
WO2023153726A1 (ko) 디스플레이 장치 및 그 제어 방법
WO2021162260A1 (en) Electronic apparatus and control method thereof
WO2021182748A1 (ko) 전자 장치 및 그 제어 방법
WO2024014706A1 (ko) 화질 개선을 수행하는 신경망 모델을 학습시키는 전자 장치 및 그 제어 방법
WO2019198900A1 (en) Electronic apparatus and control method thereof
WO2020166796A1 (ko) 전자 장치 및 그 제어 방법
KR20210114315A (ko) 전자 장치 및 그 제어 방법
WO2022086045A1 (ko) 전자 장치 및 이의 제어 방법
WO2020060071A1 (en) Electronic apparatus and control method thereof
WO2018080204A1 (ko) 영상처리장치, 영상처리방법 및 컴퓨터 판독가능 기록 매체
WO2019231254A1 (en) Processor, electronics apparatus and control method thereof
EP3746951A1 (en) Processor, electronics apparatus and control method thereof
WO2024019279A1 (ko) 영상 기반 질문에 대한 답변을 제공하는 디스플레이 장치 및 그 제어 방법
WO2019151841A1 (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: 21769028

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21769028

Country of ref document: EP

Kind code of ref document: A1