KR-20260062636-A - An electronic apparatus and a method of operating the electronic apparatus
Abstract
The disclosed electronic device comprises a memory for storing one or more instructions; and at least one processor, wherein when the one or more instructions are executed individually or collectively by the at least one processor, the electronic device provides a cluster in which a predetermined number of guide point feature vectors are defined among the plurality of feature vectors in a cluster comprising a plurality of feature vectors, and the feature vectors are arranged in order of proximity to each guide point feature vector, obtains a target feature vector corresponding to the input data requested for query, identifies a first guide point feature vector close to the target feature vector, and obtains a result feature vector by searching in the order of feature vectors adjacent to the first guide point feature vector close to the target feature vector.
Inventors
- 김백기
- 반동하
- 강병권
Assignees
- 삼성전자주식회사
Dates
- Publication Date
- 20260507
- Application Date
- 20241029
Claims (9)
- In electronic device 100, Memory 120 for storing one or more instructions; and It includes at least one processor 130, and When the above one or more instructions are executed individually or collectively by the at least one processor 130, the electronic device 100, A cluster comprising a plurality of feature vectors is provided in which a predetermined number of guide point feature vectors are defined among the plurality of feature vectors, and the feature vectors are arranged in order of proximity to each guide point feature vector. Obtain a target feature vector corresponding to the input data requested in the query, and Identify a first guide point feature vector close to the above target feature vector, and An electronic device that obtains a result feature vector by searching in order of feature vectors adjacent to a first guide point feature vector close to the above target feature vector.
- In paragraph 1, When the above one or more instructions are executed individually or collectively by the at least one processor 130, the electronic device 100, A fixed number of feature vectors farthest from the center of each cluster are designated as the guide point vectors, and An electronic device that sorts feature vectors within the cluster in order of distance based on the guide point vector and records them in storage 110.
- In paragraph 1 or 2, When the above one or more instructions are executed individually or collectively by the at least one processor 130, the electronic device 100, Divided into the aforementioned predetermined number of regions based on the center of the feature vector space of each cluster, An electronic device that assigns one guide point feature vector for each of the above-mentioned fixed number of regions.
- In any one of paragraphs 1 through 3, When the above one or more instructions are executed individually or collectively by the at least one processor 130, the electronic device 100, Blocks of feature vectors are loaded from storage 110 to memory 120 in units of a predetermined block size in the order of feature vectors close to the guide point vector, and An electronic device that calculates the similarity with the target feature vector in the order of vectors close to the guide point vector in a loaded block, and obtains one or more vectors close to the target feature vector.
- In a method of operating an electronic device 100, The operation of providing a cluster comprising a plurality of feature vectors, wherein a predetermined number of guide point feature vectors are defined among the plurality of feature vectors, and the feature vectors are arranged in order of proximity to each guide point feature vector. An operation to obtain a target feature vector corresponding to the input data requested in the query, An operation to identify a first guide point feature vector close to the above target feature vector, and A method comprising the operation of obtaining a result feature vector by searching in order of feature vectors adjacent to a first guide point feature vector close to the target feature vector.
- In paragraph 5, The operation of designating a fixed number of feature vectors farthest from the center of each cluster as the guide point vectors, and A method comprising the operation of sorting feature vectors within the cluster in order of distance based on the guide point vector and recording them in storage.
- In paragraph 5 or 6, The operation of dividing into the aforementioned predetermined number of regions based on the center of the feature vector space of each cluster, and A method comprising the operation of assigning one guide point feature vector for each of the above-mentioned fixed number of regions.
- In any one of paragraphs 5 through 7, The operation of loading blocks of feature vectors from storage 110 to memory 120 in units of a predetermined block size in the order of feature vectors adjacent to the above guide point vector, and A method comprising the operation of calculating the similarity with the target feature vector in the order of vectors close to the guide point vector in a loaded block, and obtaining one or more vectors close to the target feature vector.
- In a non-transient computer-readable medium storing one or more instructions executed by at least one processor 130 of an electronic device 100, wherein the electronic device, by the execution of the one or more instructions by at least one processor of the electronic device, A cluster comprising a plurality of feature vectors is provided in which a predetermined number of guide point feature vectors are defined among the plurality of feature vectors, and the feature vectors are arranged in order of proximity to each guide point feature vector. Obtain a target feature vector corresponding to the input data requested in the query, and Identify a first guide point feature vector close to the above target feature vector, and A computer-readable recording medium that obtains a result feature vector by searching in order of feature vectors adjacent to a first guide point feature vector close to the above target feature vector.
Description
An electronic apparatus and a method of operating the electronic apparatus Various embodiments relate to an electronic device and a method of operation thereof, and more specifically, to an electronic device and a method of operation thereof for efficiently performing vector search. Vector search plays a crucial role in modern computing environments, and its importance is becoming increasingly prominent, particularly in on-device AI applications. These applications prefer on-device processing over cloud-based processing due to reasons such as user privacy, the need for real-time processing, and connectivity limitations. Vector search is an essential function in various AI tasks, including natural language processing, image recognition, and personalized recommendation systems. These tasks require the process of rapidly identifying nearest neighbors within massive datasets. Therefore, efficient vector search algorithms hold even greater significance in on-device AI environments. The present invention can be easily understood from the combination of the following detailed description and the accompanying drawings, where reference numerals denote structural elements. FIG. 1 is a reference diagram for explaining the operation of an electronic device according to one embodiment. FIG. 2 is a schematic block diagram of an electronic device according to one embodiment. FIG. 3 is an example of a specific block diagram of an electronic device according to one embodiment. FIG. 4 is a reference diagram for explaining an array of feature vectors stored in storage according to one embodiment. FIG. 5 is a reference diagram for explaining a method of searching using a guide point-based feature vector according to one embodiment. FIG. 6 shows an example of a flowchart of a method for operating an electronic device according to one embodiment. FIG. 7 shows an example of a feature vector space according to one embodiment. FIG. 8 is a reference diagram for explaining a method of specifying guide points in a cluster according to one embodiment. FIG. 9 is a diagram showing feature vectors close to a guide point according to one embodiment. FIG. 10 shows an example of a feature vector file stored in storage according to one embodiment. FIG. 11 shows an example of a feature vector file stored in storage according to one embodiment. FIG. 12 is an example of a flowchart of a method for searching feature vectors based on guide points according to one embodiment. FIG. 13 shows an example of a block loaded into memory from a file according to one embodiment. FIG. 14 shows an example of a block loaded into memory from a file according to one embodiment. The terms used in this specification will be briefly explained, and the invention will be described in detail. The terms used in this invention have been selected based on currently widely used general terms, taking into account their functions within the invention; however, these terms may vary depending on the intent of those skilled in the art, case law, the emergence of new technologies, etc. Additionally, in specific cases, terms have been arbitrarily selected by the applicant, and in such cases, their meanings will be described in detail in the relevant description of the invention. Therefore, the terms used in this invention should be defined not merely by their names, but based on their meanings and the overall content of the invention. When a part of a specification is described as "including" a certain component, this means that, unless specifically stated otherwise, it does not exclude other components but may include additional components. Furthermore, terms such as "...part" or "module" as used in the specification refer to a unit that processes at least one function or operation, and this may be implemented in hardware or software, or as a combination of hardware and software. The following describes embodiments with reference to the attached drawings so that those skilled in the art can easily implement the present invention. However, the present invention may be embodied in various different forms and is not limited to the embodiments described herein. Furthermore, in order to clearly explain the present invention in the drawings, parts unrelated to the explanation have been omitted, and similar parts throughout the specification are denoted by similar reference numerals. In this disclosure, the term "user" refers to a person who controls the function or operation of a computing device or electronic device using a control device, and may include a viewer, an administrator, or an installation technician. FIG. 1 is a reference diagram for explaining the operation of an electronic device 100 according to one embodiment. Referring to FIG. 1, a user application of an electronic device 100 can extract feature vectors 20 corresponding to each object included in an image by extracting features from an image. For example, the user application can extract feature vectors 20 correspo