KR20190028890A - Binary Tree based High-Speed Multi-Class Circuit Device - Google Patents

Binary Tree based High-Speed Multi-Class Circuit Device Download PDF

Info

Publication number
KR20190028890A
KR20190028890A KR1020170115737A KR20170115737A KR20190028890A KR 20190028890 A KR20190028890 A KR 20190028890A KR 1020170115737 A KR1020170115737 A KR 1020170115737A KR 20170115737 A KR20170115737 A KR 20170115737A KR 20190028890 A KR20190028890 A KR 20190028890A
Authority
KR
South Korea
Prior art keywords
binary tree
buffer
data
group
parameter
Prior art date
Application number
KR1020170115737A
Other languages
Korean (ko)
Other versions
KR102320310B1 (en
Inventor
이선영
민경원
손행선
Original Assignee
전자부품연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 전자부품연구원 filed Critical 전자부품연구원
Priority to KR1020170115737A priority Critical patent/KR102320310B1/en
Publication of KR20190028890A publication Critical patent/KR20190028890A/en
Application granted granted Critical
Publication of KR102320310B1 publication Critical patent/KR102320310B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/22Arrangements for sorting or merging computer data on continuous record carriers, e.g. tape, drum, disc
    • G06F7/24Sorting, i.e. extracting data from one or more carriers, rearranging the data in numerical or other ordered sequence, and rerecording the sorted data on the original carrier or on a different carrier or set of carriers sorting methods in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

Provided is a high-speed multi-type classification circuit device based on a binary tree. According to an embodiment of the present invention, the multi-type classification circuit device comprises: a first buffer storing binary tree parameter data inputted from an external memory; a second buffer storing feature data of an object inputted from the outside; an operation unit performing a binary tree operation with the feature data stored in the second buffer as an input using the parameter data stored in the first buffer; and a discriminator classifying objects using an operation result of the operation unit. Accordingly, since an internal memory may be used and data access from the external memory may be minimized, the multi-type classification circuit device may support high-speed classification.

Description

이진트리 기반 고속 다종 분류 회로 장치{Binary Tree based High-Speed Multi-Class Circuit Device}[0001] The present invention relates to a binary tree-based high-speed multi-class circuit device,

본 발명은 다종 분류 회로 장치에 관한 것으로, 더욱 상세하게는 복잡하고 분류가 어려운 문제에서 우수한 성능을 발휘하는 이진트리 기반 고속 멀티 분류기의 고성능 회로 장치에 관한 것이다.More particularly, the present invention relates to a high-performance circuit device of a high-speed multi-classifier based on a binary tree that exhibits excellent performance in complex and difficult-to-classify problems.

일반적인 이진트리는 주어진 학습 패턴으로부터 패턴 분류에 가장 영향이 큰 속성을 선택하여 노드를 만들고 그 속성이 가질 수 있는 값에 따라 트리의 줄기를 확장한 후 다시 속성을 선택하여 노드를 추가하는 방식으로 트리를 구성한다. 입력 패턴이 주어지면 루트 노드로부터 시작하여 매칭되는 속성 값에 따라 트리를 검색 후 말단 노드에 도착시 지정되어 있는 클래스로 분류하게 된다.A common binary tree is a node that creates a node by selecting an attribute that has the greatest effect on pattern classification from a given learning pattern, extends the tree by the value that the attribute can have, . If an input pattern is given, the tree is searched according to the matching attribute value starting from the root node, and classified into the designated class at the end node.

이러한 개별 트리는 하나의 weak classifier에 해당하므로 strong classifier를 구성하기 위해 도 1에 도시된 바와 같이 여러 개의 이진트리를 조합하여 구성한다. 영상을 이용한 객체 분류에서는 2,000개의 이진트리를 사용하기도 한다. 미리 학습된 경로를 따라 각 이진트리의 노드에서 참을 만족하는 조건을 따라 이동하면서 False 조건이 나올 때까지 계산이 이루어지고 이때 까지의 각 노드들의 결과들을 누적하여 판별 기준과 비교하여 최종 결과를 얻게 된다.Since such an individual tree corresponds to one weak classifier, a plurality of binary trees are constructed as shown in FIG. 1 in order to construct a strong classifier. 2,000 binary trees are used in object classification using images. The nodes of each binary tree along the previously learned path travel along the condition satisfying the truth, and the calculation is performed until the false condition is reached. The results of each node up to this time are accumulated and compared with the discrimination criterion to obtain the final result .

이진트리는 규칙들의 집합을 트리 형태로 묶어서 나타내므로 사람이 이해하기 쉽고 구현이 용이하다. 그러나 영상의 객체 분류처럼 트리의 조합의 개수가 방대할 경우 연산량이 많아지고 그에 따른 분류 속도가 느려지므로 회로의 구조적인 측면에서 개선이 필요하다.A binary tree represents a set of rules in a tree form, so it is easy for people to understand and easy to implement. However, if the number of combinations of the tree is large like the object classification of the image, the amount of computation becomes large and the classification speed becomes slow. Therefore, it is necessary to improve the structure of the circuit.

종래의 기술들은 이진트리 기반으로 처리 속도를 높이기 위해 회로의 구조적인 측면에서 개선 및 보완을 하지 않고 있다.Conventional techniques have not improved or supplemented the circuit structure in order to increase processing speed based on a binary tree.

본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은, 고속 분류를 위해 외부 메모리 접근을 최소화하는 구조의 이진트리 기반 고속 다종 분류 회로 장치를 제공함에 있다.SUMMARY OF THE INVENTION It is an object of the present invention to provide a binary tree-based high-speed multi-type classification circuit device having a structure for minimizing external memory access for high-speed classification.

또한, 본 발명의 다른 목적은, 많은 연산량으로 인한 속도 지연을 방지하기 위해 파이프라인 구조를 포함한 병렬 회로 구조를 적용한 이진트리 기반 고속 다종 분류 회로 장치를 제공함에 있다.Another object of the present invention is to provide a binary tree-based high-speed sorting circuit device employing a parallel circuit structure including a pipeline structure to prevent a speed delay due to a large amount of computation.

그리고, 본 발명의 또 다른 목적은, 여러 종류의 분류를 수행할 때, 내부 메모리를 효율적으로 사용하기 위해 분류에 사용되는 파라미터 데이터를 블록 단위로 사용하는 이진트리 기반 고속 다종 분류 회로 장치를 제공함에 있다.It is still another object of the present invention to provide a binary tree-based high-speed multi-type classification circuit device that uses parameter data used for classification in units of blocks to efficiently use internal memory when performing various kinds of classification have.

상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른, 분류 회로 장치는, 외부 메모리로부터 입력되는 이진트리 파라미터 데이터를 저장하는 제1 버퍼; 외부로부터 입력되는 객체의 특징 데이터를 저장하는 제2 버퍼; 제1 버퍼에 저장된 파라미터 데이터를 이용하여. 제2 버퍼에 저장된 특징 데이터를 입력으로 이진트리 연산을 수행하는 연산기; 및 연산기의 연산 결과를 이용하여 객체를 분류하는 판별기;를 포함한다.According to an aspect of the present invention, there is provided a classification circuit device comprising: a first buffer for storing binary tree parameter data input from an external memory; A second buffer for storing characteristic data of an object input from the outside; Using the parameter data stored in the first buffer. An arithmetic unit for performing a binary tree operation by inputting the feature data stored in the second buffer; And a discriminator for classifying the object using the operation result of the operator.

그리고, 본 발명의 실시예에 따른 분류 회로 장치는, 제1 종류의 객체에 대한 전체 이진트리 파라미터 데이터 중 일부만 순차적으로 제1 버퍼에 저장하는 제어기;를 더 포함할 수 있다.The classification circuit device according to the embodiment of the present invention may further include a controller for sequentially storing only a part of the entire binary tree parameter data for the object of the first type in the first buffer.

또한, 제어기는, 전체 이진트리 파라미터 데이터 중 제1 그룹의 데이터를 제1 버퍼의 제1 영역에 저장하고, 전체 이진트리 파라미터 데이터 중 제2 그룹의 데이터를 제1 버퍼의 제2 영역에 저장할 수 있다.The controller may also store the first group of data of the entire binary tree parameter data in the first area of the first buffer and the second group of data of the entire binary tree parameter data in the second area of the first buffer have.

그리고, 제어기는, 연산기가 제1 그룹의 데이터를 이용하여 이진트리 연산한 후, 제2 그룹의 데이터를 이용하여 이진트리 연산하는 중에 제1 버퍼의 제1 영역에 제3 그룹의 데이터를 저장할 수 있다.The controller may store the third group of data in the first area of the first buffer during the binary tree operation using the second group of data after the operator performs the binary tree operation using the first group of data have.

또한, 연산기는, 제1 그룹의 데이터를 이용하여 이진트리 연산한 후에 제2 그룹의 데이터를 이용하여 이진트리 연산하는 것이 필요하다고 판단되면, 제2 그룹의 데이터를 이용하여 이진트리 연산할 수 있다.Further, when it is determined that it is necessary to perform a binary tree operation using the second group of data after performing the binary tree operation using the first group of data, the operator can perform the binary tree operation using the second group of data .

그리고, 제어기는, 제2 종류의 객체에 대한 전체 이진트리 파라미터 데이터 중 제1 그룹의 데이터를 제1 버퍼의 제3 영역에 저장하고, 전체 이진트리 파라미터 데이터 중 제2 그룹의 데이터를 제1 버퍼의 제4 영역에 저장할 수 있다.The controller stores the first group of data of the entire binary tree parameter data for the second kind of object in the third area of the first buffer and the second group of data of the entire binary tree parameter data to the first buffer In a fourth area of the second memory.

또한, 연산기는, 제1 종류의 객체와 제2 종류의 객체에 대한 이진트리 연산을 병렬적으로 수행할 수 있다.In addition, the arithmetic unit can perform a binary tree operation on objects of the first kind and objects of the second kind in parallel.

한편, 본 발명의 다른 실시예에 따른, 분류 방법은, 외부 메모리로부터 입력되는 이진트리 파라미터 데이터를 제1 버퍼에 저장하는 단계; 외부로부터 입력되는 객체의 특징 데이터를 제2 버퍼에 저장하는 단계; 제1 버퍼에 저장된 파라미터 데이터를 이용하여. 제2 버퍼에 저장된 특징 데이터를 입력으로 이진트리 연산을 수행하는 단계; 및 연산 결과를 이용하여 객체를 분류하는 단계;를 포함한다.According to another embodiment of the present invention, there is provided a classification method comprising: storing binary tree parameter data input from an external memory into a first buffer; Storing feature data of an object input from the outside in a second buffer; Using the parameter data stored in the first buffer. Performing a binary tree operation by inputting feature data stored in a second buffer; And classifying the object using the calculation result.

이상 설명한 바와 같이, 본 발명의 실시예들에 따르면, 내부 메모리를 사용하고 외부 메모리에서의 데이터 접근을 최소화할 수 있어, 고속 분류를 지원할 수 있게 된다.As described above, according to the embodiments of the present invention, it is possible to use the internal memory and minimize the access of data in the external memory, thereby supporting the high-speed classification.

또한, 본 발명의 실시예들에 따르면, 파라미터 데이터를 블록 단위로 사용하여 내부 메모리 재사용 효율을 높여서 외부 메모리 접근을 최소화할 수 있고, 여러 종류의 분류를 동시에 수행할 때 필요한 파라미터를 내부 메모리에 저장하여 사용 방법의 효율을 극대화할 수 있다.In addition, according to the embodiments of the present invention, it is possible to minimize the access to the external memory by increasing the efficiency of reuse of the internal memory by using the parameter data on a block-by-block basis, and to store parameters required for simultaneously performing various types of classification Thereby maximizing the efficiency of the method of use.

도 1은 일반적인 이진트리의 예,
도 2는 본 발명의 일 실시예에 따른 이진트리 기반 고속 다종 분류 회로 장치의 블럭도,
도 3은 이진트리 파라미터 버퍼의 구조를 도시한 도면, 그리고,
도 4 내지 도 6은, 본 발명의 다른 실시예에 따른 이진트리 기반 고속 다종 분류 방법의 설명에 제공되는 흐름도이다.
1 shows an example of a general binary tree,
FIG. 2 is a block diagram of a binary tree-based high-speed multi-type classification circuit device according to an embodiment of the present invention;
3 is a diagram illustrating a structure of a binary tree parameter buffer,
4 to 6 are flowcharts provided for explanation of a binary tree-based fast multiple classification method according to another embodiment of the present invention.

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

본 발명의 실시예에서는, 복잡하고 분류가 어려운 문제에서 우수한 성능을 발휘하는 이진트리 기반 고속 다종 분류 회로 장치를 제시한다.In the embodiment of the present invention, a binary tree-based high-speed multi-type classification circuit device exhibiting excellent performance in a complicated and difficult classification problem is presented.

본 발명의 실시예에 따른 고속 다종 분류 회로 장치는, 고속 분류를 위해 외부 메모리 접근을 최소화하는 구조를 채택하였고, 많은 연산량으로 인한 속도 지연을 방지하기 위해 파이프라인 구조를 포함한 병렬 회로 구조를 채택하였으며, 여러 종류의 분류를 수행할 때 내부 메모리를 효율적으로 사용하기 위해 분류에 사용되는 파라미터 데이터를 블록 단위로 사용한다.The high-speed multi-type classification circuit device according to an embodiment of the present invention employs a structure for minimizing external memory access for high-speed classification and adopts a parallel circuit structure including a pipeline structure to prevent a speed delay due to a large amount of computation In order to efficiently use internal memory when performing various kinds of classification, parameter data used for classification is used in block units.

도 2는 본 발명의 일 실시예에 따른 이진트리 기반 고속 다종 분류 회로 장치의 블럭도이다.FIG. 2 is a block diagram of a binary tree-based fast multiple classification circuit device according to an embodiment of the present invention.

본 발명의 실시예에 따른 고속 다종 분류 회로 장치는, 도 2에 도시된 바와 같이, 이진트리 파라미터 제어기(110), 데이터 인터페이스 관리기(120), 이진트리 파라미터 버퍼(130), 특징 데이터 버퍼(140), 이진트리 연산기(150), 이진트리 판별기(160) 및 이진트리 제어기(170)를 포함한다.2, the high-speed multiple classification circuit apparatus according to the embodiment of the present invention includes a binary tree parameter controller 110, a data interface manager 120, a binary tree parameter buffer 130, a feature data buffer 140 ), A binary tree operator 150, a binary tree determiner 160, and a binary tree controller 170.

데이터 인터페이스 관리기(120)는 외부 메모리로부터 이진트리 파라미터 데이터와 객체로부터 추출된 특징 데이터를 입력받는다. 입력되는 특징 데이터는 특징 데이터 버퍼(140)에 저장된다.The data interface manager 120 receives the binary tree parameter data and the feature data extracted from the object from the external memory. The feature data to be inputted is stored in the feature data buffer 140.

이진트리 파라미터 제어기(110)는 데이터 인터페이스 관리기(120)를 통해 입력되는 이진트리 파라미터 데이터를 이진트리 파라미터 버퍼(130)에 저장한다.The binary tree parameter controller 110 stores the binary tree parameter data input through the data interface manager 120 in the binary tree parameter buffer 130. [

이진트리 파라미터 버퍼(130)는 이진트리 고속 다종 분류 회로의 고속 분류 과정을 지원하기 위해 파라미터 데이터를 저장하는 내부 버퍼로, 이를 통해 외부 메모리에서 읽어오는 파라미터 데이터 접근을 최소화한다.The binary tree parameter buffer 130 is an internal buffer for storing parameter data to support a high-speed classification process of the binary tree fast classification tree, thereby minimizing access to parameter data read from the external memory.

이진트리 파라미터 저장공간의 크기는 이진트리의 개수에 비례하므로 많은 이진트리를 사용하는 구조의 경우 버퍼 공간의 크기가 너무 커지고, 다종 분류를 동시에 수행할 경우, 파라미터 데이터를 반복해서 접근해야 하는 문제가 있으므로, 본 발명의 실시예에 따른 고속 다종 분류 회로 장치는, 필요한 파라미터 데이터를 일정 크기로 나누어서 필요할 때마다 해당 연산이 이루어질 때 데이터를 가져올 수 있도록 회로가 구성되어 있다.Since the size of the binary tree parameter storage space is proportional to the number of binary trees, the size of the buffer space becomes too large for a structure using many binary trees, and the problem that the parameter data is repeatedly accessed Therefore, the high-speed multiple classification circuit device according to the embodiment of the present invention is configured such that the required parameter data is divided into a predetermined size, and data is fetched when the corresponding calculation is performed whenever necessary.

이진트리 연산기(150)는 이진트리 파라미터 버퍼(130)에 저장된 파라미터 데이터를 이용하여 특징 데이터 버퍼(140)에 저장된 특징을 입력으로 이진트리 연산을 수행한다.The binary tree operator 150 performs a binary tree operation on the features stored in the feature data buffer 140 using the parameter data stored in the binary tree parameter buffer 130 as input.

이진트리 판별기(160)는 이진트리 연산기(150)에서의 연산 결과를 이용하여 객체를 분류한다.The binary tree discriminator 160 classifies the objects using the operation result of the binary tree operator 150.

이진트리 제어기(170)는 이진트리 파라미터 버퍼(130)에 대한 이진트리 파라미터 저장을 제어하고 관리한다. 이에 대해, 도 3을 참조하여 상세히 설명한다. 도 3은 이진트리 파라미터 버퍼(130)의 구조를 도시한 도면이다.The binary tree controller 170 controls and manages the storage of binary tree parameters for the binary tree parameter buffer 130. This will be described in detail with reference to FIG. 3 is a diagram showing the structure of the binary tree parameter buffer 130. As shown in FIG.

본 발명의 실시예에서 이용하는 이진트리의 구성은 이진트리 개수가 2048개, 뎁스(Depth)가 3, 분류하려는 객체의 종류가 4개인 경우로 상정한다.The configuration of the binary tree used in the embodiment of the present invention assumes that the number of binary trees is 2048, the depth is 3, and the types of objects to be classified are four.

이진트리 파라미터 버퍼(130)의 이진트리 레벨 0, 1, 2에서 왼쪽 4개 공간은 각 분류 종류별 이진트리 파라미터를 저장하는 공간이고, 오른쪽 4개 공간은 예비 버퍼 공간으로 사용한다. In the binary tree level parameter buffer 130, the left four spaces at levels 0, 1, and 2 are spaces for storing binary tree parameters for each classification type, and the right four spaces are used as a spare buffer space.

8개의 각 버퍼 공간의 크기는 사용자가 설정하여 원하는 크기로 사용 가능하다. 여기서 이진트리 버퍼 공간의 각 크기를 256개의 파리미터가 저장 가능한 공간으로 가정하면 2048개 파라미터를 Group0(0~255), Group1(256~511), Group2(512~767), Group3(768~1023), Group4(1024~1279), Group5(1280~1535), Group6(1536~1791), Group7(1792~2047)와 같이 8개 그룹으로 나누어 접근하게 된다.The size of each of the eight buffer spaces can be set by the user and used in a desired size. Assuming that each size of the binary tree buffer space is a space in which 256 parameters can be stored, 2048 parameters can be stored in Group0 (0 to 255), Group1 (256 to 511), Group2 (512 to 767), Group3 (768 to 1023) , Group 4 (1024 to 1279), Group 5 (1280 to 1535), Group 6 (1536 to 1791), and Group 7 (1792 to 2047).

본 발명의 실시예에서 이진트리 파라미터 버퍼를 8번으로 나누어 접근하는 구조를 사용하는 것은, 이진트리의 동작이 모든 경우에 0~2047까지 모두 탐색하지 않기 때문이다. 구체적으로는, Group0의 파라미터를 이용하여 이진트리 연산이 종료되는 경우가 가장 많고, 나머지 7개 Group에 대해서도 순서에 따라 이용하는 빈도가 적어진다.In the embodiment of the present invention, the structure of accessing the binary tree parameter buffer by dividing by 8 is used because the operation of the binary tree does not search all of 0 to 2047 in all cases. More specifically, the binary tree operation is terminated most frequently using the parameters of Group 0, and the frequency of use of the remaining seven Groups is also reduced in order.

즉, Group0의 파라미터만을 이용한 이진트리 연산의 빈도가 가장 높고, Group0 내지 Group1의 파라미터를 이용한 이진트리 연산의 빈도가 다음으로 높으며, Group0 내지 Group2의 파라미터를 이용한 이진트리 연산의 빈도가 그 다음으로 높고, ... , Group0 내지 Group7의 파라미터를 이용한 이진트리 연산의 빈도가 가장 낮다.That is, the frequency of the binary tree operation using only the parameters of Group 0 is the highest, the frequency of the binary tree operation using the parameters of Group 0 to Group 1 is the next highest, the frequency of the binary tree operation using the parameters of Group 0 to Group 2 is the next highest , ..., and the frequencies of the binary tree operations using the parameters of Group 0 to Group 7 are the lowest.

이하에서, 도 3에 도시된 이진트리 기반 고속 다종 분류 회로 장치에 의해 다종 분류가 이루어지는 과정에 대해, 도 4 내지 도 6을 참조하여 상세히 설명한다. 도 4 내지 도 6은, 본 발명의 다른 실시예에 따른 이진트리 기반 고속 다종 분류 방법의 설명에 제공되는 흐름도이다.Hereinafter, the process of sorting by the binary tree-based fast multiple classification circuit device shown in FIG. 3 will be described in detail with reference to FIGS. 4 to 6. FIG. 4 to 6 are flowcharts provided for explanation of a binary tree-based fast multiple classification method according to another embodiment of the present invention.

도 4에 도시된 바와 같이, 먼저, 시스템이 초기화 되면 이진트리 파라미터 제어기(110)가, 이진트리 파라미터 버퍼(130)의 파라미터 버퍼 0에 Group0의 파라미터 데이터를 저장하고(S205), 이진트리 파라미터 버퍼(130)의 예비 버퍼 0에 Group1의 파라미터 데이터 저장을 시작한다(S210).4, when the system is initialized, the binary tree parameter controller 110 stores the parameter data of Group 0 in the parameter buffer 0 of the binary tree parameter buffer 130 (S205) The storage of the parameter data of Group 1 is started in the spare buffer 0 of the buffer 130 (S210).

그리고, 이진트리 연산기(150)는 파라미터 버퍼 0에 저장된 Group0의 파라미터 데이터를 이용하여 이진트리 연산을 수행한다(S215).Then, the binary tree operator 150 performs a binary tree operation using the parameter data of the Group 0 stored in the parameter buffer 0 (S215).

파라미터 버퍼 0에 저장된 Group0의 파라미터 데이터를 이용한 연산이 완료되고, 예비 버퍼 0에 Group1의 파라미터 데이터 저장이 완료되면(S220-Y), 다음 파라미터 데이터를 이용한 연산이 필요한지 판단한다(S225).When the calculation using the parameter data of Group 0 stored in the parameter buffer 0 is completed and the storage of the parameter data of the group 1 in the spare buffer 0 is completed (S220-Y), it is judged whether calculation using the next parameter data is necessary (S225).

다음 파라미터 데이터를 이용한 연산이 필요 없는 경우(S225-N), 이진트리 판별기(160)는 S215단계에서의 연산 결과를 이용하여 객체를 분류한다.If the calculation using the next parameter data is not required (S225-N), the binary tree discriminator 160 classifies the object using the calculation result in step S215.

반면, 다음 파라미터 데이터를 이용한 연산이 필요한 경우(S225-Y), 이진트리 연산기(150)는 예비 버퍼 0에 저장된 Group1의 파라미터 데이터를 이용하여 이진트리 연산을 수행한다(S230).On the other hand, if it is necessary to perform an operation using the next parameter data (S225-Y), the binary tree operator 150 performs a binary tree operation using the parameter data of Group1 stored in the spare buffer 0 (S230).

이와 함께, 이진트리 파라미터 제어기(110)는 이진트리 파라미터 버퍼(130)의 파라미터 버퍼 0에 Group2의 파라미터 데이터 저장을 시작한다(S235).At the same time, the binary tree parameter controller 110 starts storing the parameter data of the group 2 in the parameter buffer 0 of the binary tree parameter buffer 130 (S235).

예비 버퍼 0에 저장된 Group1의 파라미터 데이터를 이용한 연산이 완료되고, 파라미터 버퍼 0에 Group2의 파라미터 데이터 저장이 완료되면(S240-Y), 다음 파라미터 데이터를 이용한 연산이 필요한지 판단한다(S245).When the calculation using the parameter data of the group 1 stored in the spare buffer 0 is completed and the storage of the parameter data of the group 2 is completed in the parameter buffer 0 (S240-Y), it is judged whether calculation using the next parameter data is necessary (S245).

다음 파라미터 데이터를 이용한 연산이 필요 없는 경우(S245-N), 이진트리 판별기(160)는 S230단계에서의 연산 결과를 이용하여 객체를 분류한다.If there is no need to perform computation using the next parameter data (S245-N), the binary tree discriminator 160 classifies objects using the computation result in step S230.

반면, 다음 파라미터 데이터를 이용한 연산이 필요한 경우(S245-Y), 이진트리 파라미터 제어기(110)는 이진트리 파라미터 버퍼(130)의 예비 버퍼 0에 Group3의 파라미터 데이터 저장을 시작한다(S250).On the other hand, if calculation using the next parameter data is required (S245-Y), the binary tree parameter controller 110 starts storing the parameter data of Group3 in the spare buffer 0 of the binary tree parameter buffer 130 (S250).

이와 함께, 이진트리 연산기(150)는 파라미터 버퍼 0에 저장된 Group2의 파라미터 데이터를 이용하여 이진트리 연산을 수행한다(S255).At the same time, the binary tree operator 150 performs a binary tree operation using the parameter data of the group 2 stored in the parameter buffer 0 (S255).

파라미터 버퍼 0에 저장된 Group2의 파라미터 데이터를 이용한 연산이 완료되고, 예비 버퍼 0에 Group3의 파라미터 데이터 저장이 완료되면(S260-Y), 도 5에 도시된 바와 같이, 다음 파라미터 데이터를 이용한 연산이 필요한지 판단한다(S305).When the calculation using the parameter data of Group 2 stored in the parameter buffer 0 is completed and the storage of the parameter data of Group 3 is completed in the spare buffer 0 (S260-Y), as shown in Fig. 5, (S305).

다음 파라미터 데이터를 이용한 연산이 필요 없는 경우(S245-N), 이진트리 판별기(160)는 S255단계에서의 연산 결과를 이용하여 객체를 분류한다.If there is no need to perform computation using the next parameter data (S245-N), the binary tree discriminator 160 classifies the object using the computation result in step S255.

반면, 다음 파라미터 데이터를 이용한 연산이 필요한 경우(S305-Y), 이진트리 연산기(150)는 예비 버퍼 0에 저장된 Group3의 파라미터 데이터를 이용하여 이진트리 연산을 수행한다(S310).On the other hand, if it is necessary to perform an operation using the next parameter data (S305-Y), the binary tree operator 150 performs a binary tree operation using the parameter data of Group3 stored in the spare buffer 0 (S310).

이와 함께, 이진트리 파라미터 제어기(110)는 이진트리 파라미터 버퍼(130)의 파라미터 버퍼 0에 Group4의 파라미터 데이터 저장을 시작한다(S315).At the same time, the binary tree parameter controller 110 starts storing the parameter data of the group 4 in the parameter buffer 0 of the binary tree parameter buffer 130 (S315).

예비 버퍼 0에 저장된 Group3의 파라미터 데이터를 이용한 연산이 완료되고, 파라미터 버퍼 0에 Group4의 파라미터 데이터 저장이 완료되면(S320-Y), 다음 파라미터 데이터를 이용한 연산이 필요한지 판단한다(S325).When the calculation using the parameter data of the Group 3 stored in the spare buffer 0 is completed and the storage of the parameter data of the Group 4 is completed in the parameter buffer 0 (S320-Y), it is judged whether calculation using the next parameter data is necessary (S325).

다음 파라미터 데이터를 이용한 연산이 필요 없는 경우(S325-N), 이진트리 판별기(160)는 S310단계에서의 연산 결과를 이용하여 객체를 분류한다.If the calculation using the next parameter data is not required (S325-N), the binary tree discriminator 160 classifies the object using the calculation result in S310.

반면, 다음 파라미터 데이터를 이용한 연산이 필요한 경우(S325-Y), 이진트리 파라미터 제어기(110)는 이진트리 파라미터 버퍼(130)의 예비 버퍼 0에 Group5의 파라미터 데이터 저장을 시작한다(S330).On the other hand, if calculation using the next parameter data is required (S325-Y), the binary tree parameter controller 110 starts storing the parameter data of the group 5 in the spare buffer 0 of the binary tree parameter buffer 130 (S330).

이와 함께, 이진트리 연산기(150)는 파라미터 버퍼 0에 저장된 Group4의 파라미터 데이터를 이용하여 이진트리 연산을 수행한다(S335).At the same time, the binary tree operator 150 performs a binary tree operation using the parameter data of the Group 4 stored in the parameter buffer 0 (S335).

파라미터 버퍼 0에 저장된 Group4의 파라미터 데이터를 이용한 연산이 완료되고, 예비 버퍼 0에 Group5의 파라미터 데이터 저장이 완료되면(S340-Y), 도 6에 도시된 바와 같이, 다음 파라미터 데이터를 이용한 연산이 필요한지 판단한다(S405).When the calculation using the parameter data of the Group 4 stored in the parameter buffer 0 is completed and the storing of the parameter data of the Group 5 in the spare buffer 0 is completed (S340-Y), as shown in Fig. 6, (S405).

다음 파라미터 데이터를 이용한 연산이 필요 없는 경우(S405-N), 이진트리 판별기(160)는 S335단계에서의 연산 결과를 이용하여 객체를 분류한다.If there is no need to perform computation using the next parameter data (S405-N), the binary tree discriminator 160 classifies objects using the computation result in step S335.

반면, 다음 파라미터 데이터를 이용한 연산이 필요한 경우(S405-Y), 이진트리 연산기(150)는 예비 버퍼 0에 저장된 Group5의 파라미터 데이터를 이용하여 이진트리 연산을 수행한다(S410).On the other hand, if it is necessary to perform an operation using the next parameter data (S405-Y), the binary tree operator 150 performs a binary tree operation using the parameter data of the Group 5 stored in the spare buffer 0 (S410).

이와 함께, 이진트리 파라미터 제어기(110)는 이진트리 파라미터 버퍼(130)의 파라미터 버퍼 0에 Group6의 파라미터 데이터 저장을 시작한다(S415).At the same time, the binary tree parameter controller 110 starts storing the parameter data of the group 6 in the parameter buffer 0 of the binary tree parameter buffer 130 (S415).

예비 버퍼 0에 저장된 Group5의 파라미터 데이터를 이용한 연산이 완료되고, 파라미터 버퍼 0에 Group6의 파라미터 데이터 저장이 완료되면(S420-Y), 다음 파라미터 데이터를 이용한 연산이 필요한지 판단한다(S425).When the calculation using the parameter data of the Group 5 stored in the spare buffer 0 is completed and the storage of the parameter data of the Group 6 is completed in the parameter buffer 0 (S420-Y), it is judged whether calculation using the next parameter data is necessary (S425).

다음 파라미터 데이터를 이용한 연산이 필요 없는 경우(S425-N), 이진트리 판별기(160)는 S410단계에서의 연산 결과를 이용하여 객체를 분류한다.If no calculation using the next parameter data is needed (S425-N), the binary tree discriminator 160 classifies the object using the calculation result in step S410.

반면, 다음 파라미터 데이터를 이용한 연산이 필요한 경우(S425-Y), 이진트리 파라미터 제어기(110)는 이진트리 파라미터 버퍼(130)의 예비 버퍼 0에 Group7의 파라미터 데이터 저장을 시작한다(S430).On the other hand, if calculation using the next parameter data is required (S425-Y), the binary tree parameter controller 110 starts storing the parameter data of the group 7 in the spare buffer 0 of the binary tree parameter buffer 130 (S430).

이와 함께, 이진트리 연산기(150)는 파라미터 버퍼 0에 저장된 Group6의 파라미터 데이터를 이용하여 이진트리 연산을 수행한다(S435).At the same time, the binary tree operator 150 performs a binary tree operation using the parameter data of the group 6 stored in the parameter buffer 0 (S435).

파라미터 버퍼 0에 저장된 Group6의 파라미터 데이터를 이용한 연산이 완료되고, 예비 버퍼 0에 Group7의 파라미터 데이터 저장이 완료되면(S440-Y), 다음 파라미터 데이터를 이용한 연산이 필요한지 판단한다(S445).When the calculation using the parameter data of the Group 6 stored in the parameter buffer 0 is completed and the storage of the parameter data of the Group 7 in the spare buffer 0 is completed (S440-Y), it is judged whether calculation using the next parameter data is necessary (S445).

다음 파라미터 데이터를 이용한 연산이 필요 없는 경우(S445-N), 이진트리 판별기(160)는 S435단계에서의 연산 결과를 이용하여 객체를 분류한다.If it is not necessary to perform the calculation using the next parameter data (S445-N), the binary tree discriminator 160 classifies the object using the calculation result in step S435.

반면, 다음 파라미터 데이터를 이용한 연산이 필요한 경우(S445-Y), 이진트리 연산기(150)는 예비 버퍼 0에 저장된 Group7의 파라미터 데이터를 이용하여 이진트리 연산을 수행하고, 이진트리 판별기(160)는 연산 결과를 이용하여 객체를 분류한다(S450).If it is necessary to perform operation using the next parameter data (S445-Y), the binary tree operator 150 performs a binary tree operation using the parameter data of the Group 7 stored in the spare buffer 0, The object is classified using the operation result (S450).

한편, 이진트리 파라미터 버퍼(130)의 파라미터 버퍼 1과 예비 버퍼 1을 이용하여, 이진트리 연산기(150)와 이진트리 판별기(160)는 다른 종류의 객체에 대해 도 4 내지 도 6에 도시된 이진트리 연산 및 분류 과정을 병렬적으로 처리한다.On the other hand, using the parameter buffer 1 of the binary tree parameter buffer 130 and the spare buffer 1, the binary tree calculator 150 and the binary tree discriminator 160 calculate And processes the binary tree operation and classification in parallel.

그리고, 이진트리 파라미터 버퍼(130)의 파라미터 버퍼 2와 예비 버퍼 2를 이용하여, 이진트리 연산기(150)와 이진트리 판별기(160)는 또 다른 종류의 객체에 대해 도 4 내지 도 6에 도시된 이진트리 연산 및 분류 과정을 병렬적으로 처리한다.Using the parameter buffer 2 and the spare buffer 2 of the binary tree parameter buffer 130, the binary tree calculator 150 and the binary tree discriminator 160 compare And performs a binary tree operation and classification process in parallel.

아울러, 이진트리 파라미터 버퍼(130)의 파라미터 버퍼 3과 예비 버퍼 3을 이용하여, 이진트리 연산기(150)와 이진트리 판별기(160)는 또 다른 종류의 객체에 대해 도 4 내지 도 6에 도시된 이진트리 연산 및 분류 과정을 병렬적으로 처리한다.Using the parameter buffer 3 and the spare buffer 3 of the binary tree parameter buffer 130, the binary tree calculator 150 and the binary tree discriminator 160 are also shown in Figs. 4 to 6 And performs a binary tree operation and classification process in parallel.

지금까지, 이진트리 기반 고속 다종 분류 회로 장치 및 방법에 대해 바람직한 실시예들을 들어 상세히 설명하였다.Up to now, preferred embodiments have been described in detail for binary tree-based high-speed multiple classification circuit devices and methods.

위 실시예에서는, 고속 분류를 지원하기 위해 내부 메모리를 채용하고 외부 메모리에서의 데이터 접근을 최소화하는 구조를 제시하였고, 여러 종류의 분류를 동시에 수행할 때 필요한 파라미터를 내부 메모리에 저장하여 사용하는 방법의 효율을 극대화하기 위해 파라미터 데이터를 블록 단위로 사용하여 내부 메모리 재사용 효율을 높여서 외부 메모리 접근을 최소화하였으며, 여러 종류의 이미지를 실시간으로 인식 및 분류할 수 있도록 하였다.In the above embodiment, an internal memory is employed to support high-speed classification, a structure for minimizing data access in an external memory is proposed, and a method of storing parameters required for simultaneously performing various types of classification in an internal memory In order to maximize the efficiency of the memory, we use the parameter data as a block unit to increase the efficiency of the internal memory reuse, minimize access to the external memory, and recognize various kinds of images in real time.

한편, 본 실시예에 따른 장치와 방법의 기능을 수행하게 하는 컴퓨터 프로그램을 수록한 컴퓨터로 읽을 수 있는 기록매체에도 본 발명의 기술적 사상이 적용될 수 있음은 물론이다. 또한, 본 발명의 다양한 실시예에 따른 기술적 사상은 컴퓨터로 읽을 수 있는 기록매체에 기록된 컴퓨터로 읽을 수 있는 코드 형태로 구현될 수도 있다. 컴퓨터로 읽을 수 있는 기록매체는 컴퓨터에 의해 읽을 수 있고 데이터를 저장할 수 있는 어떤 데이터 저장 장치이더라도 가능하다. 예를 들어, 컴퓨터로 읽을 수 있는 기록매체는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광디스크, 하드 디스크 드라이브, 등이 될 수 있음은 물론이다. 또한, 컴퓨터로 읽을 수 있는 기록매체에 저장된 컴퓨터로 읽을 수 있는 코드 또는 프로그램은 컴퓨터간에 연결된 네트워크를 통해 전송될 수도 있다.It goes without saying that the technical idea of the present invention can also be applied to a computer-readable recording medium having a computer program for performing the functions of the apparatus and method according to the present embodiment. In addition, the technical idea according to various embodiments of the present invention may be embodied in computer-readable code form recorded on a computer-readable recording medium. The computer-readable recording medium is any data storage device that can be read by a computer and can store data. For example, the computer-readable recording medium may be a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical disk, a hard disk drive, or the like. In addition, the computer readable code or program stored in the computer readable recording medium may be transmitted through a network connected between the computers.

또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, It will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the present invention.

110 : 이진트리 파라미터 제어기
120 : 데이터 인터페이스 관리기
130 : 이진트리 파라미터 버퍼
140 : 특징 데이터 버퍼
150 : 이진트리 연산기
160 : 이진트리 판별기
170 : 이진트리 제어기
110: binary tree parameter controller
120: Data interface manager
130: binary tree parameter buffer
140: Feature data buffer
150: Binary tree operator
160: binary tree discriminator
170: binary tree controller

Claims (8)

외부 메모리로부터 입력되는 이진트리 파라미터 데이터를 저장하는 제1 버퍼;
외부로부터 입력되는 객체의 특징 데이터를 저장하는 제2 버퍼;
제1 버퍼에 저장된 파라미터 데이터를 이용하여. 제2 버퍼에 저장된 특징 데이터를 입력으로 이진트리 연산을 수행하는 연산기; 및
연산기의 연산 결과를 이용하여 객체를 분류하는 판별기;를 포함하는 것을 특징으로 하는 분류 회로 장치.
A first buffer for storing binary tree parameter data input from an external memory;
A second buffer for storing characteristic data of an object input from the outside;
Using the parameter data stored in the first buffer. An arithmetic unit for performing a binary tree operation by inputting the feature data stored in the second buffer; And
And a discriminator for classifying the object using the operation result of the operator.
청구항 1에 있어서,
제1 종류의 객체에 대한 전체 이진트리 파라미터 데이터 중 일부만 순차적으로 제1 버퍼에 저장하는 제어기;를 더 포함하는 것을 특징으로 하는 분류 회로 장치.
The method according to claim 1,
And a controller for sequentially storing only a part of the entire binary tree parameter data for the first kind of object in the first buffer.
청구항 2에 있어서,
제어기는,
전체 이진트리 파라미터 데이터 중 제1 그룹의 데이터를 제1 버퍼의 제1 영역에 저장하고, 전체 이진트리 파라미터 데이터 중 제2 그룹의 데이터를 제1 버퍼의 제2 영역에 저장하는 것을 특징으로 하는 분류 회로 장치.
The method of claim 2,
The controller,
Storing the first group of data of the entire binary tree parameter data in the first area of the first buffer and storing the second group of data of the entire binary tree parameter data in the second area of the first buffer. Circuit device.
청구항 3에 있어서,
제어기는,
연산기가 제1 그룹의 데이터를 이용하여 이진트리 연산한 후, 제2 그룹의 데이터를 이용하여 이진트리 연산하는 중에 제1 버퍼의 제1 영역에 제3 그룹의 데이터를 저장하는 것을 특징으로 하는 분류 회로 장치.
The method of claim 3,
The controller,
Wherein the arithmetic and logic unit stores the third group of data in the first area of the first buffer while performing the binary tree operation using the second group of data after performing the binary tree operation using the data of the first group. Circuit device.
청구항 4에 있어서,
연산기는,
제1 그룹의 데이터를 이용하여 이진트리 연산한 후에 제2 그룹의 데이터를 이용하여 이진트리 연산하는 것이 필요하다고 판단되면, 제2 그룹의 데이터를 이용하여 이진트리 연산하는 것을 특징으로 하는 분류 회로 장치.
The method of claim 4,
The computing unit,
Wherein when it is determined that it is necessary to perform a binary tree operation using the second group of data after the binary tree operation using the first group of data, the binary tree operation is performed using the second group of data .
청구항 3에 있어서,
제어기는,
제2 종류의 객체에 대한 전체 이진트리 파라미터 데이터 중 제1 그룹의 데이터를 제1 버퍼의 제3 영역에 저장하고, 전체 이진트리 파라미터 데이터 중 제2 그룹의 데이터를 제1 버퍼의 제4 영역에 저장하는 것을 특징으로 하는 분류 회로 장치.
The method of claim 3,
The controller,
Storing the first group of data of the entire binary tree parameter data for the second kind of object in the third area of the first buffer and storing the second group of data of the entire binary tree parameter data in the fourth area of the first buffer And stores the data.
청구항 6에 있어서,
연산기는,
제1 종류의 객체와 제2 종류의 객체에 대한 이진트리 연산을 병렬적으로 수행하는 것을 특징으로 하는 분류 회로 장치.
The method of claim 6,
The computing unit,
And performs a binary tree operation on the object of the first kind and the object of the second kind in parallel.
외부 메모리로부터 입력되는 이진트리 파라미터 데이터를 제1 버퍼에 저장하는 단계;
외부로부터 입력되는 객체의 특징 데이터를 제2 버퍼에 저장하는 단계;
제1 버퍼에 저장된 파라미터 데이터를 이용하여. 제2 버퍼에 저장된 특징 데이터를 입력으로 이진트리 연산을 수행하는 단계; 및
연산 결과를 이용하여 객체를 분류하는 단계;를 포함하는 것을 특징으로 하는 분류 방법.
Storing binary tree parameter data input from an external memory in a first buffer;
Storing feature data of an object input from the outside in a second buffer;
Using the parameter data stored in the first buffer. Performing a binary tree operation by inputting feature data stored in a second buffer; And
And classifying the object using the calculation result.
KR1020170115737A 2017-09-11 2017-09-11 Binary Tree based High-Speed Multi-Class Circuit Device KR102320310B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170115737A KR102320310B1 (en) 2017-09-11 2017-09-11 Binary Tree based High-Speed Multi-Class Circuit Device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170115737A KR102320310B1 (en) 2017-09-11 2017-09-11 Binary Tree based High-Speed Multi-Class Circuit Device

Publications (2)

Publication Number Publication Date
KR20190028890A true KR20190028890A (en) 2019-03-20
KR102320310B1 KR102320310B1 (en) 2021-11-02

Family

ID=66036011

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170115737A KR102320310B1 (en) 2017-09-11 2017-09-11 Binary Tree based High-Speed Multi-Class Circuit Device

Country Status (1)

Country Link
KR (1) KR102320310B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150133027A (en) * 2014-05-19 2015-11-27 고려대학교 산학협력단 Svm-bta updating apparatus and method for large scale dataset
KR20170063643A (en) * 2014-09-30 2017-06-08 퀄컴 인코포레이티드 Low-power always-on face detection, tracking, recognition and/or analysis using events-based vision sensor

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150133027A (en) * 2014-05-19 2015-11-27 고려대학교 산학협력단 Svm-bta updating apparatus and method for large scale dataset
KR20170063643A (en) * 2014-09-30 2017-06-08 퀄컴 인코포레이티드 Low-power always-on face detection, tracking, recognition and/or analysis using events-based vision sensor

Also Published As

Publication number Publication date
KR102320310B1 (en) 2021-11-02

Similar Documents

Publication Publication Date Title
CN105389349B (en) Dictionary update method and device
WO2021212675A1 (en) Method and apparatus for generating adversarial sample, electronic device and storage medium
JP4516071B2 (en) Multidimensional data object search using bit vector index
US20140229473A1 (en) Determining documents that match a query
JP4556120B2 (en) Information processing apparatus and method, and program
CN108875040A (en) Dictionary update method and computer readable storage medium
JP2018501579A (en) Semantic representation of image content
CN107402960B (en) Reverse index optimization algorithm based on semantic mood weighting
JP2019512127A (en) String distance calculation method and apparatus
JP2017134582A (en) Graphic index search device and operation method for graphic index search device
US20230161811A1 (en) Image search system, method, and apparatus
EP3699779A1 (en) Error correction method and apparatus, and computer readable medium
US8370363B2 (en) Hybrid neighborhood graph search for scalable visual indexing
CN107133335B (en) Repeated record detection method based on word segmentation and indexing technology
CN110490893B (en) Rapid Euclidean distance point cloud segmentation method
CN117557872B (en) Unsupervised anomaly detection method and device for optimizing storage mode
US9858293B2 (en) Image processing apparatus and image processing method
CN114297368A (en) Efficient keyword filtering method realized in FPGA (field programmable Gate array) way
CN111259442B (en) Differential privacy protection method for decision tree under MapReduce framework
CN117539835A (en) Distributed caching method and device for graph data
KR102006283B1 (en) Dataset loading method in m-tree using fastmap
KR20190028890A (en) Binary Tree based High-Speed Multi-Class Circuit Device
CN115757896A (en) Vector retrieval method, device, equipment and readable storage medium
CN114693943A (en) Non-maximum suppression acceleration method, system and equipment for target detection
JP7151515B2 (en) Sorting method, sorting program and sorting device

Legal Events

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