WO2023090499A1 - 심층신경망을 위한 희소성 학습 기반 필터 프루닝 기법 - Google Patents

심층신경망을 위한 희소성 학습 기반 필터 프루닝 기법 Download PDF

Info

Publication number
WO2023090499A1
WO2023090499A1 PCT/KR2021/017227 KR2021017227W WO2023090499A1 WO 2023090499 A1 WO2023090499 A1 WO 2023090499A1 KR 2021017227 W KR2021017227 W KR 2021017227W WO 2023090499 A1 WO2023090499 A1 WO 2023090499A1
Authority
WO
WIPO (PCT)
Prior art keywords
pruning
trunk
layer
learning
kernels
Prior art date
Application number
PCT/KR2021/017227
Other languages
English (en)
French (fr)
Inventor
김현
김남준
Original Assignee
서울과학기술대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 서울과학기술대학교 산학협력단 filed Critical 서울과학기술대학교 산학협력단
Publication of WO2023090499A1 publication Critical patent/WO2023090499A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning

Definitions

  • the present invention relates to a filter pruning technique based on sparsity learning applied to a deep learning network.
  • Deep learning is a widely used technique in the fields of artificial intelligence (AI) and computer vision.
  • Various deep-learning architectures such as convolution neural networks (CNNs), deep-belief networks (DBNs), and autoencoders are used for visual object recognition, automatic dialog recognition , natural language processing, and music/acoustic signal processing have been shown to produce state-of-the-art results.
  • Major efforts in deep learning have focused on software implementation for various network architectures, learning algorithms, and applications.
  • CNNs are used in various computer vision technologies including object classification, object detection, and segmentation.
  • object classification object detection
  • segmentation it is widely used for the purpose of image processing in mobile devices, self-driving cars, and drones equipped with deep learning models.
  • CNN performance improvement of CNN is usually achieved through the expansion of the size of the network, which is accompanied by huge parameters, computations, and memory space. This network structure eventually causes serious power consumption, so CNNs can be efficiently used on resource-constrained mobile devices or self-driving cars. It is very difficult to use as
  • filter-pruning or channel-pruning is an approach that can reduce the amount of computation, memory access, and power consumption by reducing the model size of a neural network by removing unnecessary filters in each layer. way.
  • filter pruning removes the filters of the convolution layer, it significantly reduces the amount of computation and at the same time accelerates the actual inference speed and learning speed in the GPU environment without adding special software or hardware. It has advantages that differentiate it from running.
  • the conventional filter pruning has a problem of not considering the effect of the batch normalization beta parameter (Shift Parameter) after performing the sparsity learning process. That is, in the conventional filter pruning process, a thing having a small value of a batch normalization gamma parameter (scaling factor) is set as a pruning target regardless of the value of the beta parameter.
  • scaling factor scaling factor
  • a technical problem of the present invention is to provide a pruning technique capable of minimizing distortion of a convolution operation without ignoring a constant channel in order to solve the above problems.
  • an object of the present invention is to provide a new pruning technique for updating a specific kernel so that the output of an un-pruned artificial neural network can be reproduced by a pruned artificial neural network.
  • the present invention is a plurality of kernels included in the first layer based on the batch normalized gamma parameter value in the first layer of the first layer and the second layer, which are a plurality of continuous convolution layers. Selecting at least one pruning target, setting any one kernel among the selected pruning targets as a trunk, updating any one kernel set as a trunk based on a predetermined equation, and and removing remaining kernels not configured as trunks among the selected pruning targets and kernels corresponding to the remaining kernels from the second layer.
  • the model size can be reduced while minimizing performance loss, an effect that can more smoothly use a CNN-based application in a device with limited performance is derived. Accordingly, there is also an advantage of maximizing the utilization potential of applications using deep learning.
  • 1 shows a trunk pruning process for two consecutive convolutional layers according to an embodiment of the present invention.
  • Figure 2 shows the distribution of constant channels for ResNet-56, 164.
  • the present invention proposes a new pruning method that is very simple but has excellent compatibility and scalability in terms of trade-off between performance and computation.
  • the pruning technique according to the present invention is defined as “trunk pruning”.
  • the output before pruning uses a new filter called trunk to accumulate all the beta parameters of the filter to be removed and pass them to the next layer, so that the output related to the beta parameter after pruning This makes it perfectly reproducible. Trunk pruning is performed at the pruning stage, which actually removes filters, channels, and kernels after sparsity learning, and has negligible time overhead because it does not perform additional learning.
  • 1 shows a trunk pruning process for two consecutive convolutional layers.
  • Conv-BN-Act shown in FIG. 1 means a convolutional regularization-activation function.
  • the i-th batch normalization gamma parameters in the i-th layer 500 are close to 0 and are subject to pruning, according to trunk pruning according to the present invention, the i-th batch normalization gamma parameters are close to 0.
  • the 7th filter/channel of the layer and the (i+1)th layer kernel may be configured as a trunk.
  • the 4th, 5th, and 8th kernels can be absorbed into the 7th kernel. Accordingly, except for the filter/channel/kernel corresponding to the trunk, the rest (that is, the 4th, 5th, and 8th filters and corresponding (i+1)th layer kernels) can be removed.
  • trunk pruning according to the present invention will be described in more detail.
  • Weight pruning is a method of lightening a CNN by removing unnecessary weights of the CNN through an optimization process. Because weight pruning makes artificial neural networks sparse, it is often used in conjunction with quantization techniques.
  • weight pruning causes unstructured sparsity of artificial neural networks, so it is possible to achieve a very high compression ratio, but it is difficult to utilize the BLAS library in the absence of optimized software or hardware. There is a problem in that it is difficult to improve the reasoning speed.
  • Channel pruning can achieve structured sparsity because it removes the CNN's filter (channel), and it is optimized for the BLAS library, enabling acceleration of learning as well as inference without the support of separate software or hardware.
  • channel pruning can solve the above-mentioned problem of weight pruning and the disadvantage of low flexibility in practical use, so related studies are being actively conducted.
  • sparsity training method among multiple channel pruning is a very efficient and popular approach because it is simple to execute.
  • a pruning error larger than that of the conventional ReLU is propagated to the final layer in an artificial neural network using an activation function having a negative value, resulting in a very large decrease in accuracy.
  • the present invention proposes a trunk pruning method compatible with sparsity learning.
  • the trunk pruning method according to the present invention starts by selecting a sparsity learning method that automatically finds an optimized artificial neural network structure with the best performance. This means that the trunk pruning method according to the present invention is compatible with more advanced sparsity learning techniques in the future.
  • trunk pruning is applied based on a sparsity learning method with good performance, higher accuracy can be achieved at a higher compression ratio.
  • input channels of the next convolution layer become constant channels due to the influence of the remaining shift parameters.
  • CNNs are characterized by difficulty in pruning using activation functions (e.g., Swish, Mish, Leaky) with negative values other than ReLU to achieve higher performance. It has the advantage that it can be applied to any activation function because it does not consider only the activation function and uses the value passed through the activation function.
  • activation functions e.g., Swish, Mish, Leaky
  • i is defined as the layer index of the CNN
  • M ⁇ ((i)) ⁇ R ⁇ (h_i ⁇ w_i ⁇ c_i) is the h_i ⁇ w_i output feature map with the C_i channel of the ith layer
  • M_(:, :,j) ⁇ ((i)) represents the jth channel.
  • K ⁇ ((i)) ⁇ R ⁇ (k ⁇ k ⁇ c_(i-1) ⁇ c_i ) is c_i convolutional layer filters with k ⁇ k kernel size.
  • the BN parameters ⁇ ((i)), ⁇ ((i)), ⁇ ((i)), ⁇ ((i)) ⁇ R ⁇ (c_i) are j after the ith convolution operation, respectively. Indicates the cumulative average, standard deviation, and learnable scaling and shifting parameters for affine transformation of the th feature map.
  • * is a convolution operation
  • M_(:,:,:) ⁇ ((i)), which is an output feature map with a final BN is expressed in Equation 1 below.
  • the conventional pruning method removes the constant channel (i.e., ⁇ _j ⁇ ((i))) while ignoring it. Ignoring the constant channel causes distortion in the next convolution operation, resulting in a large performance loss of the neural network.
  • the present invention proposes a trunk pruning method that does not require fine-tuning by enabling the pruned artificial neural network to reproduce exactly the same output of the unpruned artificial neural network.
  • the present invention proposes a pruning technique that satisfies Equation 2 below.
  • M_unpruned ⁇ ((i+1)) and M_pruned ⁇ ((i+1)) are the unpruned and pruned output feature maps of the (i+1)th layer, respectively.
  • the filter set having a scaling parameter less than the threshold after sparsity learning i.e., the filter set to be pruned
  • P ⁇ ((i)) ⁇ j ⁇ F ⁇ ((i) )
  • U ⁇ ((i) the filter index set of the ith layer
  • one index randomly selected from elements of P ⁇ ((i)) is defined as a "trunk”.
  • the output channels corresponding to P ⁇ ((i)) are w_i ⁇ c_i matrices filled with the constant value ⁇ _j ⁇ ((i)) because the scaling factor part is removed through pruning, and these constant channels form the activation function (Act). After passing through, it still remains a constant channel.
  • Equation 3 Equation 3 above can be converted into Equation 4 below.
  • a kernel corresponding to the trunk is newly updated as shown in Equation 6 below, and the remaining kernels are removed.
  • Equation 5 Since the updated K_(:,:,Trunk,:) ⁇ ((i+1)) contains all the information of the removed kernels, Equation 5 can be changed to Equation 7 below.
  • Equation 8 The output of the artificial neural network pruned before BN is defined by Equation 8 below.
  • Equation 9 which is the output of the pruned artificial neural network performed up to the BN operation, is obtained.
  • the ratio between filters is a fixed value of 1.
  • the ratio between filters may change according to the value of the shifting parameter.
  • the sparsity learning method according to the present invention is different in that it multiplies by k.
  • the flow of the proposed trunk pruning method is described by taking two consecutive convolutional layers in FIG. 1 as an example.
  • F ⁇ ((2)) ⁇ 1,2,3,4,5,6,7,8 ⁇
  • P ⁇ ((i)) ⁇ j ⁇ F ⁇ ((i))
  • the 7-th filter and channel of the i-th layer and the kernel of the (i+1)-th layer are set as a trunk.
  • the 4th, 5th, and 8th kernels are absorbed into the 7th trunk kernel using Equation 6 above.
  • the rest except for the filter, channel, and kernel corresponding to the trunk are removed.
  • Table 1 above shows three sparsity training results for ResNet-56 and 164 on the CIFAR-10 dataset.
  • “Baseline” and “Pruned Acc.” indicate the highest accuracy of the baseline and pruned ResNet.
  • Acc. Drop (%)” and “FLOPs reduction (%)” represent ResNet's accuracy drop and FLOPs reduction compared to the baseline.
  • the CIFAR-10 dataset contains 50,000 training images and 10,000 test images of 32 ⁇ 32 size for 10 classes.
  • the base model is applied as stochastic gradient descent (SGD) for 300 epochs during 2-GPU.
  • the initial learning rate is set to 0.1, and the learning rate scheduling strategy is divided by 10 from the initial learning rate at 50% and 75% of the entire training epoch.
  • the ImageNet ILSVRC-2012 dataset is a large dataset containing 1.28 million training images and 50,000 test images for 1000 classes.
  • All baseline models use a 4-GPU with a batch size of 128 of 80 epochs with stochastic gradient descent (SGD).
  • the initial learning rate is set to 0.1 and the learning rate scheduling strategy divides by 10 from the initial learning rate at 50% and 75% of the total learning period.
  • Table 2 compares the performance of channel pruning methods without additional fine-tuning using ResNet-56, 164 and Vgg-19 on the CIFAR-10 data set.
  • Table 3 compares the performance of channel pruning methods with additional fine-tuning using ResNet-56 on the CIFAR-10 data set.
  • Table 4 compares performance with GBN-based trunk pruning using ResNet-50 and 101 on the ImageNet ILSVRC-12 dataset.
  • GBN-based trunk pruning shows excellent performance in terms of accuracy reduction compared to FLOPs reduction.
  • the proposed method shows a much lower accuracy degradation compared to a similar FLOPs reduction as Taylor-FO without and without fine-tuning, and even 0.22% higher accuracy than the baseline is obtained.
  • Table 5 compares trunk pruning and conventional pruning after GBN-based sparsity learning on ResNet-56 and 110 using three activation functions (Mish, Swish, and LeakyReLU) with negative values in the CIFAR-10 dataset. shows a result.
  • Table 6 compares the results of applying C-SGD and AOFP channel pruning to ResNet-56 using three activation functions (Mish, Swish, and LeakyReLU) with negative values in the CIFAR-10 dataset. “Training Epochs” indicates the number of training epochs run until the results specified in the final table are obtained.
  • the pruned ResNet-50 with 50.59% FLOP reduction is significantly mitigated in accuracy degradation at similar FLOP reductions when compared to SSS, FPGM, and SCP that do not perform fine-tuning this is confirmed Even when compared to methods that performed fine-tuning, excellent results were obtained in both terms of accuracy degradation and FLOP reduction.
  • trunk pruning is proposed to eliminate the time-consuming fine-tuning process in channel pruning based on sparsity learning.
  • the proposed trunk pruning method considers that channels below the threshold become constant channels after BN-based sparsity learning, and randomly selects one kernel (trunk) among the kernels of the next convolution layer corresponding to the constant channel. It absorbs the kernel weights, and as a result, it is possible to eliminate the fine-tuning process because the pruned artificial neural network can perfectly reproduce the output of the unpruned artificial neural network.
  • trunk pruning has excellent compatibility with several existing sparsity learning methods and can be extended to an activation function with a negative value, so it can be optimally combined with various newly proposed sparsity learning techniques and activation functions. It is possible to achieve the performance of

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Filters That Use Time-Delay Elements (AREA)

Abstract

딥러닝 네트워크의 프루닝 방법에 있어서, 복수의 연속적인 컨볼루션 레이어인 제1 레이어 및 제2 레이어 중 상기 제1 레이어에서, 배치 정규화 감마 파라미터 값에 근거하여 상기 제1 레이어에 포함되는 복수의 커널 중 적어도 하나의 프루닝 대상을 선택하는 단계; 상기 선택된 프루닝 대상 중 어느 하나의 커널을 트렁크로 설정하는 단계; 트렁크로 설정된 어느 하나의 커널을 소정의 수학식에 근거하여 업데이트하는 단계; 및 상기 선택된 프루닝 대상 중 트렁크로 설정되지 않은 나머지 커널과, 상기 제2 레이어에서 상기 나머지 커널과 대응되는 커널을 제거하는 단계를 포함한다.

Description

심층신경망을 위한 희소성 학습 기반 필터 프루닝 기법
본 발명은 딥러닝 네트워크에 적용되는 희소성 학습 기반의 필터 프루닝 기법에 관한 것이다.
딥 러닝은 인공 지능(artificial intelligence, AI) 및 컴퓨터 비전(computer vision) 분야에서 널리 사용되는 기술이다. 컨볼루션 뉴럴 네트워크들(convolution neural networks, CNNs), 심층-신뢰 네트워크들(deep-belief networks, DBNs), 및 오토인코더들(autoencoders)과 같은 다양한 딥-러닝 아키텍쳐들은 시각적인 객체 인식, 자동 대화 인식, 자연 언어 처리, 및 음악/음향 신호 처리와 같은 작업들에 대한 최신의 결과들을 생성하는 것으로 보여왔다. 딥 러닝의 주된 노력은 다양한 네트워크 아키텍쳐들, 러닝 알고리즘들, 및 어플리케이션들에 대한 소프트웨어 구현에 포커싱 되어왔다.
최근, CNN은 객체 분류, 객체 검출 및 세그멘테이션(Segmentation)을 포함한 다양한 컴퓨터 비전(Computer vision) 기술에서 사용되고 있다. 예를 들어 딥러닝 모델이 탑재된 모바일 디바이스, 자율주행 자동차, 드론 등에서 영상 처리를 수행하기 위한 목적으로 널리 사용되고 있다.
특히, 모바일 디바이스와 같이 제한된 전력을 제공하는 배터리 기반의 임베디드 환경인 기기들에서, CNN 기반의 어플리케이션을 효율적으로 활용하기 위해서는 네트워크 정확도와 처리속도의 트레이드 오프(trade-off)를 고려한 효율적인 경량화 기술을 통해 연산량과 전력 소모를 감소시키는 것이 필수적이다
CNN의 성능 향상은 일반적으로 거대한 파라미터와 연산량 그리고 메모리 공간을 동반하는 네트워크 크기의 확대를 통해 이뤄진다 이러한 네트워크 구조는 결국 심각한 전력 소모를 야기하기 때문에 리소스가 제약된 모바일 디바이스나 자율주행 자동차 상에서 CNN을 효율적으로 활용하는 것은 매우 어렵다.
이러한 문제점을 해결하기 위해, 네트워크 압축 및 가속화와 관련된 연구가 진행되고 있다. 특히, 필터 프루닝(Filter-pruning) 또는 채널 프루닝(Channel-pruning)은 각 레이어의 불필요한 필터를 제거함으로써, 뉴럴 네트워크의 모델 사이즈를 줄여 연산량과 메모리 접근, 그리고 전력 소모를 감소시킬 수 있는 접근 방법이다.
또한 필터 프루닝은 컨볼루션 레이어의 필터들을 제거하기 때문에 연산량을 대폭 줄임과 동시에 특별한 소프트웨어나 하드웨어의 추가 없이도 GPU 환경에서 실제 추론 속도 및 학습 속도의 가속이 가능하여 또 다른 프루닝 접근 방식인 웨이트 프루닝과 차별화되는 장점을 갖는다.
그러나, 기존의 필터 프루닝 방법들은 극단적으로 모델 사이즈를 줄일 시 성능 하락이 불가피하며, 프루닝 시 발생하는 프루닝 손실로 인해 상당한 시간 리소스를 요구하는 재학습 과정이 추가적으로 요구되는 면에서 문제점이 있다.
또한, 종래의 필터 프루닝은 희소성 학습 과정을 수행한 후 배치 정규화 베타 파라미터(Shift Parameter)의 영향을 고려하지 않는 문제점도 있었다. 즉, 종래의 필터 프루닝 과정에서는, 베타 파라미터의 값과 무관하게 배치 정규화 감마 파라미터(Scaling factor)의 값이 작은 것을 프루닝 대상으로 설정한다. 하지만, 베타 파라미터로 인한 손실 또한 네트워크 성능에 영향을 미치기 때문에 베타 파라미터를 고려하지 않는 기존의 프루닝 방법들은 네트워크 성능 정확도 저하를 회복시키기 위해 추가적인 재학습 과정이 필수적이다.
이러한 재학습 과정은 CPU/GPU를 동반한 플랫폼에서 상당한 연산을 요구하기 때문에 모델 전체의 연산량을 증가시키며, 이에 따라 CPU/GPU에서 배출되는 이산화탄소의 양도 증가되므로 환경 보호 측면에서도 상당한 문제점으로 지적되고 있다.
한편, 계속해서 네트워크의 성능을 향상시키기 위해 새로운 활성화 함수들이 제시되고 있으며 최신 활성화 함수들은 음의 값을 포함하는 경우가 많다.
반면, 기존에 가장 많이 사용되는 ReLU 활성화 함수의 경우, 이러한 음의 값을 0으로 처리하기 때문에 베타 파라미터의 관점에서는 영향이 없었으나 음의 값을 그대로 사용하는 최신 활성화 함수들에서는 음의 값들이 그대로 베타 파라미터에 존재하기 때문에 프루닝 과정에서 굉장히 치명적으로 작용하며 결국 기존의 프루닝 방법들은 음의 값을 포함하는 새로운 활성화 함수들을 잘 대처하지 못한다는 문제를 갖는다.
본 발명의 기술적 과제는 상술한 문제점을 해결하기 위해, 상수 채널을 무시하지 않고, 컨볼루션 연산의 왜곡의 최소화할 수 있는 프루닝 기법을 제공하는 것이다.
특히, 본 발명의 과제는 프루닝되지 않은 인공신경망의 출력을, 프루닝된 인공신경망이 재생산할 수 있도록 특정 커널을 업데이트시키는 새로운 프루닝 기법을 제공하는 것이다.
상기 과제를 해결하기 위해 본 발명은 복수의 연속적인 컨볼루션 레이어인 제1 레이어 및 제2 레이어 중 상기 제1 레이어에서, 배치 정규화 감마 파라미터 값에 근거하여 상기 제1 레이어에 포함되는 복수의 커널 중 적어도 하나의 프루닝 대상을 선택하는 단계와, 상기 선택된 프루닝 대상 중 어느 하나의 커널을 트렁크로 설정하는 단계와, 트렁크로 설정된 어느 하나의 커널을 소정의 수학식에 근거하여 업데이트하는 단계 및 상기 선택된 프루닝 대상 중 트렁크로 설정되지 않은 나머지 커널과, 상기 제2 레이어에서 상기 나머지 커널과 대응되는 커널을 제거하는 단계를 포함한다.
본 발명에서 제안하는 방법에 따르면, 네트워크 크기와 정확도의 트레이드 오프 측면에서 우수한 필터 프루닝 기법을 구현할 수 있는 장점이 있다.
또한, 본 발명에 따르면 성능 손실을 최소화하면서도 모델 사이즈를 감소시킬 수 있으므로, 제한된 성능을 갖는 기기에서 CNN 기반 애플리케이션을 보다 원활하게 사용할 수 있는 효과가 도출된다. 이에 따라, 딥러닝을 사용하는 애플리케이션의 활용 가능성을 극대화할 수 있는 장점도 있다.
도 1은 본 발명의 일 실시예에 따른 2개의 연속된 컨볼루션 레이어에 대한 트렁크 프루닝 과정이 도시된다.
도 2는 ResNet-56, 164에 대한 상수 채널(constant channels)의 분포를 나타낸다.
본 발명의 목적 및 효과는 다음의 상세한 설명을 통하여 보다 분명해질 것이나 하기의 기재만으로 본 발명의 목적 및 효과가 제한되는 것은 아니다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 이하에서 개시되는 실시 예에 한정되지 않는다. 또한 도면에서 본 발명을 명확하게 개시하기 위해서 본 발명과 관계없는 부분은 생략하였으며, 도면에서 동일하거나 유사한 부호들은 동일하거나 유사한 구성요소들을 나타낸다.
이러한 문제를 해결하기 위해 본 발명은 매우 간단하지만 성능과 연산량의 trade-off 측면에서 매우 우수하고 호환성 및 확장성이 뛰어난 새로운 프루닝 방법을 제안한다.
이하에서 본 발명에 따른 프루닝 기법을 “트렁크 프루닝”으로 정의한다.
구체적으로 희소성 학습 후 배치 정규화의 베타 파라미터의 영향을 고려하여 프루닝 전 출력을 트렁크라는 새로운 필터를 하나 사용하여 제거될 필터의 모든 베타 파라미터를 축적하여 다음 레이어로 전달함으로써 프루닝 후 베타 파라미터 관련 출력이 완벽하게 재생산할 수 있도록 한다. 트렁크 프루닝은 희소성 학습 후 실제로 필터, 채널 및 커널을 제거하는 프루닝 단계에서 수행되며 추가적인 학습을 수행하는 것이 아니기 때문에 무시할 수 있는 시간 오버헤드를 갖는다.
또한, 제안된 트렁크 프루닝은 배치 정규화의 베타 파라미터의 영향을 고려하여 프루닝을 하였기 때문에 프루닝 후 네트워크 성능손실이 없으며 그에 따라 시간 소모적인 재 학습과정을 제거하는 것이 가능하다.
도 1에서는 2개의 연속된 컨볼루션 레이어에 대한 트렁크 프루닝 과정이 도시된다.
도 1에 도시된 Conv-BN-Act는 컨볼루션 정규화-활성화 함수를 의미한다.
도 1를 참조하면, i번째 레이어(500)에서 4, 5, 7, 8번째 배치 정규화 감마 파라미터가 0에 가까워 프루닝의 대상이라고 가정할 때, 본 발명에 따른 트렁크 프루닝에 따르면, i번째 레이어의 7번째 필터/채널 및 (i+1)번째 레이어 커널이 트렁크로 설정될 수 있다.
또한, 도 1의 7번째 커널 아래에 도시된 식에 따라, 7번째 커널에 4, 5, 8번째 커널을 흡수시킬 수 있다. 이에 따라, 트렁크에 해당하는 필터/채널/커널을 제외한 나머지(즉 4, 5, 8번째 필터와 그에 상응하는 (i+1)번째의 레이어 커널들)는 제거될 수 있다.
이를 통해 4, 5, 7, 8번째의 베타 파라미터를 재생산할 수 있으며, 그 결과 프루닝 후 네트워크 성능 손실을 최소화할 수 있는 효과가 도출되며, 시간 소모적인 재학습 과정을 제거할 수 있는 장점도 있다.
이하에서 본 발명에 따른 트렁크 프루닝에 대해 더욱 상세히 설명한다.
먼저, 종래 기술로서 웨이트 프루닝에 대해 설명한다.
웨이트 프루닝은 최적화과정을 통해 CNN의 불필요한 웨이트들(weights)을 제거하여 CNN을 경량화는 방법이다. 웨이트 프루닝은 인공 신경망을 희소(sparse)하게 만들기 때문에 양자화 기법과 같이 사용되는 경우가 많다.
그러나, 양자화 기법에도 불구하고, 웨이트 프루닝은 인공 신경망의 비구조적 희소성(unstructured sparsity)을 유발하므로, 매우 높은 압축률을 달성할 수 있지만 최적화된 소프트웨어 또는 하드웨어가 없는 경우, BLAS 라이브러리의 활용이 어려우므로 추론 속도의 향상이 어려운 문제점이 있다.
다른 종래 기술로서 채널 프루닝에 대해 설명한다.
채널 프루닝은 CNN의 필터(채널)를 제거하기 때문에 구조적 희소성(structured sparsity)을 성취할 수 있으며 BLAS 라이브러리에 최적화되어, 별도의 소프트웨어나 하드웨어의 지원 없이도, 추론뿐 아니라 학습의 가속이 가능하다.
이러한 장점을 바탕으로 채널 프루닝은 웨이트 프루닝의 상술한 문제실용적 사용의 낮은 flexibility라는 단점을 해결할 수 있기 때문에 이와 관련된 연구들이 활발히 이뤄지고 있다. 또한 여러 채널 프루닝 중 희소성 학습(Sparsity Training) 방법은 실행이 간단하여 매우 효율적이며 인기있는 접근이다.
그러나 이러한 채널 프루닝 방법들은 시프트 파라미터(shift parameter)를 무시한 채 프루닝을 진행하는 문제점을 유발한다.
이와 같이 시프트 파라미터를 무시한 프루닝은 순전파(forward propagation)에서 완전히 왜곡된 출력을 전파하기 때문에 인공 신경망의 정확도를 심각하게 저하시킨다.
특히, 이러한 종래의 채널 프루닝 방법은 음의 값(negative value)를 갖는 활성화 함수를 사용하는 인공 신경망에서 기존 ReLU보다 더 큰 프루닝 에러가 최종 레이어까지 전파되어 매우 큰 정확도 저하가 발생한다.
본 발명에서는 상술한 문제점을 해결하기 위해, 희소성 학습들과 호환성이 좋은 트렁크 프루닝 방법을 제안한다.
먼저, 본 발명에 따른 트렁크 프루닝 방법은 가장 좋은 성능을 내며 자동적으로 최적화된 인공신경망 구조를 찾아주는 희소성 학습 방법을 선택함으로써 시작한다. 이는 곧 본 발명에 따른 트렁크 프루닝 방법이, 향후 더 발전된 희소성 학습 기법들과 호환이 가능한 것을 의미한다.
다시 말해, 좋은 성능을 갖는 희소성 학습 방법을 기반으로 트렁크 프루닝을 적용하면 높은 압축률 대비 더 높은 정확도를 달성할 수 있다. 일반적으로 희소성 학습 후 BN의 스케일링 파라미터들이 0에 가깝다면 다음 컨볼루션 레이어의 입력 채널들은 남아있는 시프트 파라미터의 영향으로 상수(constant) 채널이 된다.
기존 희소성 학습 기반의 필터 프루닝 방법들은 이러한 상수를 무시하고 진행된 반면에 제안된 트렁크 프루닝은 이러한 상수 채널들을 고려하여 프루닝되지 않은 인공신경망의 출력을 완전히 같게 재현할 수 있도록 다음 컨볼루션 커널들 중 한 개의 kernel에 흡수시킨다. 이러한 과정은 pruning으로 생기는 loss를 완벽하게 보상할 수 있기 때문에 기존 희소성 학습의 과정과 장점을 유지한 채 fine-tuning 과정을 제거할 수 있다.
특히, 최근 나오는 CNN들은 더 높은 성능을 성취하기 위해 ReLU가 아닌 다른 음의 값를 갖는 활성화 함수(예를 들어, Swish, Mish, Leaky)들을 사용하여 pruning이 어렵다는 특징을 갖는데 트렁크 프루닝은 오직 시프트 파라미터만을 고려하지 않고 활성화 함수를 패스(path)한 값을 사용하므로 어떠한 활성화 함수에 적용이 가능하다는 장점을 갖는다.
아래에서 트렁크 프루닝에 대해 설명하기 위해, 몇가지 개념에 대해 정의한다.
이하에서 i는 CNN의 레이어 인덱스로 정의되고, M^((i))∈R^(h_i×w_i×c_i )는 i 번째 레이어의 C_i 채널을 갖는 h_i×w_i 아웃풋 피쳐 맵이며, M_(:,:,j)^((i))는 j 번째 채널을 나타낸다.
i 번째 레이어에서, K^((i))∈R^(k×k×c_(i-1)×c_i )는 k×k 커널 사이즈를 갖는 c_i 개의 컨볼루션 레이어 필터들이다. 또한 BN 파라미터 μ^((i)),σ^((i)),γ^((i)),β^((i))∈R^(c_i )는 각각 i 번째 컨볼루션 연산 후 나온 j 번째 피쳐 맵의 누적 평균, 표준 편차, 아핀 변환(affine transformation)을 위한 학습 가능한 스케일링(learnable scaling)과 시프팅 파라미터(shifting parameter)를 나타낸다. *을 컨볼루션 연산이라 할 때, 최종적으로 BN을 갖는 아웃풋 피쳐 맵인 M_(:,:,:)^((i))은 다음의 수학식 1과 같다.
Figure PCTKR2021017227-appb-img-000001
상술한 바와 같이, 종래 프루닝 방법은 상수 채널 (i.e., β_j^((i)))을 무시한 채 해당 채널을 제거한다. 상수 채널의 무시는 다음 컨볼루션 연산에 왜곡을 만들어 신경망의 큰 성능 손실을 야기한다.
이러한 점을 고려하여, 본 발명에서는 프루닝되지 않은 인공신경망의 출력을 프루닝된 인공신경망이 완전히 같게 재생산할 수 있도록 하여 fine-tuning이 필요 없는 트렁크 프루닝방법을 제안한다.
즉, 본 발명에서는 아래의 수학식 2를 만족시키는 프루닝 기법을 제안한다.
Figure PCTKR2021017227-appb-img-000002
M_unpruned^((i+1))와 M_pruned^((i+1))는 각각 (i+1)번째 레이어의 프루닝 되지 않은 것과, 프루닝된 인공신경망의 아웃풋 피쳐 맵이다.
처음에, i번째 레이어의 필터 인덱스 세트(filter index set)를 F^((i))라 할 때(e.g., 2번째 layer가 4개의 filter를 갖고 있다면 F^((2))={1,2,3,4}), 희소성 학습 후 임계치 미만의 스케일링 파라미터를 갖는 필터 세트(i.e., 프루닝의 대상이 되는 필터 세트)는 P^((i))={j∈F^((i))|γ_j^((i))<임계치}으로 표현할 수 있으며 그 반대는 U^((i))이다.
또한, 본 발명에 따른 트렁크 프루닝 기법에 의하면, P^((i))의 원소 중 임의로 골라진 한 개의 인덱스를 "트렁크"로 정의한다.
P^((i))에 대응되는 output 채널들은 프루닝을 통해 스케일링 팩터 부분이 제거되기 때문에 상수 value β_j^((i)) 로 채워진 w_i×c_i 매트릭스이며 이러한 상수 채널들은 활성화 함수(Act)을 통과 후에도 여전히 상수 채널로 남게 된다.
즉, j 번째 채널이 상수 채널일 때 아웃풋 피쳐 맵은 M_(:,:,j)^((i))=Act(β_j^((i)))·1^(w_i×c_i)로 나타낼 수 있으며 여기서 1^(w_i×c_i)은 1로 채워진 h_i×w_i 매트릭스이다.
기존의 프루닝 방법은 상수 채널 M_(:,:,j)^((i))의 영향을 무시하고 제거하였으며 이것은 학습된 신경망에 왜곡을 만들어 성능하락은 불가피하다. 그러나 이러한 왜곡은 다음과 같은 식으로 제거될 수 있다. BN전 컨볼루션 연산 직 후 (i+1)번째 레이어의 출력을 CO_(:,:,:)^((i+1))이라 할 때, 이하의 수학식 3과 같이 출력을 2개의 구성으로 나눌 수 있다.
Figure PCTKR2021017227-appb-img-000003
∑_(k∈P^((i)))(M_(:,:,k)^((i))*K_(:.:.k,:)^((i+1)))에서 M_(:,:,k)^((i))는 상수 채널이기 때문에 상기 수학식 3은 아래의 수학식 4로 바뀔 수 있다.
Figure PCTKR2021017227-appb-img-000004
채널단위로 봤을 때, Act(β_k^((i)))는 스칼라(scalar) 값이기 때문에 분배법칙의 역을 사용하여 Act(β_Trunk^((i)))를 기준으로 묶으면, 아래의 수학식 5를 얻는다.
Figure PCTKR2021017227-appb-img-000005
또한, 트렁크에 해당하는 커널을 다음의 수학식 6과 같이 새로 업데이트하며 나머지 커널을 제거한다.
Figure PCTKR2021017227-appb-img-000006
업데이트된 K_(:,:,Trunk,:)^((i+1))는 제거된 커널들의 정보를 모두 담고 있기 때문에, 수학식 5는 아래의 수학식 7로 바뀔 수 있다.
Figure PCTKR2021017227-appb-img-000007
BN전 프루닝된 인공신경망의 출력은 아래의 수학식 8로 정의된다.
Figure PCTKR2021017227-appb-img-000008
최종적으로, BN operation까지 수행한 프루닝된 인공신경망의 출력인 아래의 수학식 9를 얻는다.
Figure PCTKR2021017227-appb-img-000009
이러한 프루닝의 과정은 어떠한 근사화나 가정이 없기 때문에 인공신경망에 악영향을 주지 않았다. 즉, 완벽하게 프루닝된 인공신경망이가 프루닝되지 않은 인공신경망의 출력을 재생산하였기 때문에 프루닝시 발생하는 손실이 없으며, 그 결과 fine-tuning 과정을 제거할 수 있다.
본 발명에 따른 트렁크 프루닝과 달리, 종래 기법에 따르면 클러스터 내 필터들이 동일해지기 때문에 필터들 간의 비율이 고정된 값인 1이다.
그러나 본 발명과 같이 희소성 학습을 수행한 후의 트렁크 프루닝은 필터들 간의 비율이 시프팅 파라미터의 값에 의해 변할 수 있다.
즉, 종래 기법이 필터들을 1배가 되게 만드는 학습 방법이라면, 본 발명에 따른 희소성 학습 방법은 k배로 만들어주는 점에서 차이가 있다.
더욱 상세한 설명을 위해, 도 1의 2개의 연속적인 컨볼루션 레이어를 예시로 들어 제안된 트렁크 프루닝방법의 플로우를 설명한다. i번째 레이어에서 4, 5, 7, 8번째의 스케일링 파라미터 γ가 0에 가까울 때, F^((2))={1,2,3,4,5,6,7,8}, P^((i))={j∈F^((i))|γ_j^((i))<임계치}이다.
본 발명에서는, i번째 레이어의 7-th filter, 채널과 (i+1)번째 레이어 커널을 트렁크로 설정한다. 여기에서 상기 수학식 6을 사용하여 7-th 트렁크 커널에 4, 5, 8번재 커널을 흡수시킨다. 최종적으로 트렁크에 해당하는 filter, 채널, 커널을 제외한 나머지는 제거한다.
Figure PCTKR2021017227-appb-img-000010
위의 표 1은 CIFAR-10 데이터셋에서 ResNet-56, 164에 3가지 희소성 훈련 결과를 나타낸다. "Baseline"과 "Pruned Acc."는 기준선과 프루닝된 ResNet의 가장 높은 정확도를 나타낸다. “Acc. Drop(%)”과 “FLOPs reduction(%)”은 기준선 대비 ResNet의 정확도 하락과 FLOPs 감소를 나타낸다.
표 1에 도시된 것과 같이, 프루닝의 성능 비교를 가장 많이 사용하는 CIFAR-10과 ImageNet ILSVRC-2012 데이터 세트를 사용한다.
CIFAR-10 데이터셋은 10개의 클래스에 32×32 50,000개의 훈련 이미지와 10,000개의 테스트 이미지를 포함한다. 기본 모델은 2-GPU 동안 300 epochs 동안 SGD(Stochastic Gradient Decent)로 적용됩니다. 초기 학습률은 0.1로 설정되며 학습률 스케줄링 전략은 전체 학습 에포크의 50%와 75% 지점에서 초기 학습률부터 10으로 나눠진다.
빠른 수렴과 모델의 정규화를 위해 네스테로프 모멘텀 0.9 와 가중치 감쇠 10^-4를 사용한다. ImageNet ILSVRC-2012 데이터 세트는 1000개의 클래스에 128만 개의 훈련 이미지와 50,000개의 테스트 이미지를 포함하는 대규모 데이터 세트이다.
모든 Baseline 모델은 SGD(stochastic gradient Decent)로 80 epochs 128의 배치 크기로 4-GPU를 사용한다. 초기 학습률은 0.1로 설정되며 학습률 스케줄링 전략은 전체 학습 기간의 50%와 75%에서 초기 학습률로부터 10으로 나눠진다.
Figure PCTKR2021017227-appb-img-000011
표 2는 CIFAR-10 데이터 세트에서 ResNet-56, 164 및 Vgg-19를 사용하여 추가적인 미세-튜닝을 수행하지 않은 채널 프루닝 방법들과의 성능을 비교한 것이다.
Figure PCTKR2021017227-appb-img-000012
표 3은 CIFAR-10 데이터 세트에서 ResNet-56를 사용하여 추가적인 미세-튜닝을 수행한 채널 프루닝 방법들과의 성능을 비교한 것이다.
Figure PCTKR2021017227-appb-img-000013
표 4는 ImageNet ILSVRC-12 dataset에서 ResNet-50, 101을 사용하여 GBN기반의 트렁크 프루닝과의 성능을 비교한 것이다.
표 2 내지 4에서 보이는 것처럼, GBN 기반의 트렁크 프루닝은 FLOPs 감소 대비 정확도 감소 측면에서 우수한 성능을 보여준다. ResNet-50에 대한 결과에서, 제안된 방법은 미세-튜닝 없이도 없이도 Taylor-FO과 비슷한 FLOPs 감소 대비 훨씬 더 낮은 정확도 저하를 보이며, 심지어 baseline 보다 0.22% 더 높은 정확도가 도출된다.
Figure PCTKR2021017227-appb-img-000014
표 5는 CIFAR-10 데이터셋에서 음의 값을 갖는 3가지 활성화 함수(Mish, Swish, LeakyReLU)을 사용한 ResNet-56, 110에 GBN기반의 희소성 학습을 한 후 트렁크 프루닝과 종래 프루닝을 비교한 결과를 나타낸다.
Figure PCTKR2021017227-appb-img-000015
표 6은 CIFAR-10 데이터셋에서 음의 값을 갖는 3가지 활성화 함수(Mish, Swish, LeakyReLU)을 사용한 ResNet-56에 C-SGD와 AOFP의 채널 프루닝을 적용한 결과를 비교한 것이다. “Training Epochs”는 최종 테이블에 명시되어 있는 결과가 나올 때까지 돌린 training epoch의 수를 나타낸다.
상기 표 5 및 표 6을 참조하면, 50.59% FLOP 감소를 갖는 프루닝된 ResNet-50은 미세-튜닝을 수행하지 않는 SSS, FPGM, SCP와 비교하였을 때, 유사한 FLOP 감소에서 정확도 저하가 대폭 완화되었음이 확인된다. 미세-튜닝을 수행한 방법들과 비교하더라도 정확도 저하와, FLOP 감소의 양쪽 측면에서 모두 우수한 결과가 도출되었다.
본 발명에서는, 희소성 학습기반의 채널 프루닝에서 time-consuming fine-tuning과정을 제거하기 위한 트렁크 프루닝을 제안했다. 제안하는 트렁크 프루닝 방법은 BN기반의 희소성 학습이 끝난 후 임계치 미만의 채널들은 상수 채널이 됨을 고려하여 상수 채널에 해당하는 다음 컨볼루션 레이어의 커널들 중 한 개의 커널(트렁크)를 임의로 선택하여 나머지 커널 weight를 흡수시키며, 그 결과, 프루닝되지 않은 인공신경망의 출력을 프루닝된 인공신경망이가 완벽하게 재생산할 수 있기 때문에 fine-tuning과정을 제거하는 것이 가능하다. 또한, 트렁크 프루닝은 기존 여러 희소성 학습 방법과 호환성이 매우 우수하고 negative value를 갖는 활성화 함수로도으로도 확장을 하는 것이 가능하여 계속해서 새로 제안되는 다양한 희소성 학습 기법들 및 활성화 함수들과 결합하여 최적의 성능을 성취하는 것이 가능하다.

Claims (5)

  1. 딥러닝 네트워크의 프루닝 방법에 있어서,
    복수의 연속적인 컨볼루션 레이어인 제1 레이어 및 제2 레이어 중 상기 제1 레이어에서, 배치 정규화 감마 파라미터 값에 근거하여 상기 제1 레이어에 포함되는 복수의 커널 중 적어도 하나의 프루닝 대상을 선택하는 단계;
    상기 선택된 프루닝 대상 중 어느 하나의 커널을 트렁크로 설정하는 단계;
    트렁크로 설정된 어느 하나의 커널을 소정의 수학식에 근거하여 업데이트하는 단계; 및
    상기 선택된 프루닝 대상 중 트렁크로 설정되지 않은 나머지 커널과, 상기 제2 레이어에서 상기 나머지 커널과 대응되는 커널을 제거하는 단계를 포함하는 딥러닝 네트워크의 프루닝 방법.
  2. 제1항에 있어서,
    상기 프루닝 대상을 선택하는 단계는,
    상기 복수의 커널 중 각 커널에 대응되는 배치 정규화 감마 파라미터 값과 0(zero)의 차이가 미리 설정된 임계치 이하인 경우, 해당 커널을 프루닝 대상으로 선택하는 과정을 포함하는 것을 특징으로 하는 딥러닝 네트워크의 프루닝 방법.
  3. 제1항에 있어서,
    상기 선택된 프루닝 대상에 대응되는 베타 파라미터를 재생산하는 단계를 더 포함하는 것을 특징으로 하는 딥러닝 네트워크의 프루닝 방법.
  4. 제1항에 있어서,
    상기 트렁크로 설정하는 단계는,
    상기 선택된 프루닝 대상 중 임의의 어느 하나를 상기 트렁크로 설정하는 과정을 포함하는 것을 특징으로 하는 딥러닝 네트워크의 프루닝 방법.
  5. 제1항에 있어서,
    상기 업데이트하는 단계는,
    상기 제거된 커널의 정보를 상기 트렁크에 포함되도록 상기 트렁크로 설정된 커널을 업데이트하는 과정을 포함하는 딥러닝 네트워크의 프루닝 방법.
PCT/KR2021/017227 2021-11-19 2021-11-23 심층신경망을 위한 희소성 학습 기반 필터 프루닝 기법 WO2023090499A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2021-0160472 2021-11-19
KR1020210160472A KR20230073757A (ko) 2021-11-19 2021-11-19 심층신경망을 위한 희소성 학습 기반 필터 프루닝 기법

Publications (1)

Publication Number Publication Date
WO2023090499A1 true WO2023090499A1 (ko) 2023-05-25

Family

ID=86397142

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2021/017227 WO2023090499A1 (ko) 2021-11-19 2021-11-23 심층신경망을 위한 희소성 학습 기반 필터 프루닝 기법

Country Status (2)

Country Link
KR (1) KR20230073757A (ko)
WO (1) WO2023090499A1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190038318A (ko) * 2017-09-29 2019-04-08 인피니온 테크놀로지스 아게 콘볼루션 신경망 계산 처리량의 가속화
KR102165273B1 (ko) * 2019-04-02 2020-10-13 국방과학연구소 소형 뉴럴 네트워크의 채널 프루닝(pruning) 방법 및 시스템
KR20210012882A (ko) * 2019-07-25 2021-02-03 삼성전자주식회사 컨볼루션 뉴럴 네트워크의 성능 향상을 위한 방법 및 시스템
KR102225308B1 (ko) * 2017-11-28 2021-03-09 주식회사 날비컴퍼니 컨볼루션 신경망 내 필터 프루닝 장치 및 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190038318A (ko) * 2017-09-29 2019-04-08 인피니온 테크놀로지스 아게 콘볼루션 신경망 계산 처리량의 가속화
KR102225308B1 (ko) * 2017-11-28 2021-03-09 주식회사 날비컴퍼니 컨볼루션 신경망 내 필터 프루닝 장치 및 방법
KR102165273B1 (ko) * 2019-04-02 2020-10-13 국방과학연구소 소형 뉴럴 네트워크의 채널 프루닝(pruning) 방법 및 시스템
KR20210012882A (ko) * 2019-07-25 2021-02-03 삼성전자주식회사 컨볼루션 뉴럴 네트워크의 성능 향상을 위한 방법 및 시스템

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KIM NAM JUN: "Loss-Aware Channel Pruning for Accelerating Deep Convolutional Neural Networks", ENGINEERING MASTER'S DEGREE THESIS, 1 August 2021 (2021-08-01), XP093067007, Retrieved from the Internet <URL:https://snut.dcollection.net/public_resource/pdf/200000504977_20230725162142.pdf> [retrieved on 20230725] *

Also Published As

Publication number Publication date
KR20230073757A (ko) 2023-05-26

Similar Documents

Publication Publication Date Title
WO2011071282A1 (en) Quantum karnaugh map
WO2020231226A1 (en) Method of performing, by electronic device, convolution operation at certain layer in neural network, and electronic device therefor
WO2020159016A1 (ko) 하드웨어 구현에 적합한 신경망 파라미터 최적화 방법, 신경망 연산방법 및 그 장치
WO2022146080A1 (ko) 딥러닝 네트워크의 동적 양자화 정밀도 가변 알고리즘 및 방법
WO2018212584A2 (ko) 딥 뉴럴 네트워크를 이용하여 문장이 속하는 클래스를 분류하는 방법 및 장치
CN115861646A (zh) 一种基于结构重参数化的轻量级目标检测方法及系统
WO2023090499A1 (ko) 심층신경망을 위한 희소성 학습 기반 필터 프루닝 기법
CN112015473A (zh) 基于数据流架构的稀疏卷积神经网络加速方法及系统
WO2021230463A1 (en) Method for optimizing on-device neural network model by using sub-kernel searching module and device using the same
WO2023277448A1 (ko) 이미지 처리를 위한 인공 신경망 모델 학습 방법 및 시스템
WO2020153597A1 (ko) 다단계 분류모델 생성 방법 및 그 장치
WO2019198900A1 (en) Electronic apparatus and control method thereof
WO2023136417A1 (ko) 비디오 스토리 질의 응답을 위한 트랜스포머 모델을 구축하는 장치 및 방법
WO2022108206A1 (ko) 설명 가능한 지식그래프 완성 방법 및 장치
WO2021020848A2 (ko) 인공 신경망을 위한 행렬 연산기 및 행렬 연산 방법
WO2023033194A1 (ko) 가지치기 기반 심층 신경망 경량화에 특화된 지식 증류 방법 및 시스템
CN113722668A (zh) 处理单元、相关装置和张量运算方法
WO2020138618A1 (ko) 음악 감성 인식 방법 및 장치
WO2022107951A1 (ko) 초경량 딥러닝 네트워크 학습 방법
WO2022145550A1 (ko) 딥러닝 네트워크의 동적 양자화 정밀도 가변 알고리즘 및 방법
WO2023120788A1 (ko) Snn/cnn 동시 구동이 가능한 데이터 처리 시스템 및 방법
WO2023177025A1 (ko) 이력 현상을 이용한 파라미터 양자화 기반 인공 신경망 연산 방법 및 장치
WO2022003657A1 (en) A method and system for processing data efficiently in a model inference phase in a communication device
WO2024135870A1 (ko) 효율적인 객체 감지를 위한 입력 단위 네트워크 양자화 방법을 수행하는 영상인식장치
WO2023063693A1 (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: 21964885

Country of ref document: EP

Kind code of ref document: A1