Electronic device and control method thereof

The electronic device optimizes large-scale AI model data management by identifying and managing file types as new, duplicate, or deleted, reducing redundant storage and enhancing processing speeds through cache management, addressing inefficiencies in existing systems.

WO2025164888A1PCT designated stage Publication Date: 2025-08-07SAMSUNG ELECTRONICS CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/KR2024/017569
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-02-01
Filing Date
2024-11-08
Publication Date
2025-08-07

AI Technical Summary

Technical Problem

Existing data management systems for large-scale artificial intelligence models face inefficiencies due to complex relationships between data files, leading to slow processing speeds and excessive storage requirements, particularly when managing duplicate and deleted files.

Method used

An electronic device and control method that utilize a processor to manage learning data by generating and comparing key values based on hash information, identifying file types as new, duplicate, or deleted, and optimizing storage through cache management to minimize duplicate file storage.

Benefits of technology

Enhances data management efficiency by reducing redundant storage, improving processing speeds, and optimizing storage utilization for large-scale AI model training data, allowing real-time parallel loading of requested files without decompressing packages.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2024017569_07082025_PF_FP_ABST
    Figure KR2024017569_07082025_PF_FP_ABST
Patent Text Reader

Abstract

This electronic device comprises: a memory configured to map and store first version information including first identification information of a first artificial intelligence model and a key value indicating the storage location of a file included in a first training data set used for training the first artificial intelligence model; and a processor connected to the memory to control the electronic device, wherein the processor uses second version information different from the first version information in providing a second training data set of a second artificial intelligence model updated from the first artificial intelligence model.
Need to check novelty before this filing date? Find Prior Art

Description

Electronic device and method of controlling the same

[0001] The present disclosure relates to an electronic device and a control method thereof. More particularly, the present disclosure relates to an electronic device for managing learning data of an artificial intelligence model and a control method thereof.

[0002] Large-scale data can be used to train and utilize artificial intelligence models. Generative AI models, in particular, utilize larger datasets than general AI models. To manage large amounts of data, packaging (or grouping) methods are used. Packaging methods can be used to store data by dividing it into predefined units (packages). To manage large amounts of data, data can be loaded (or retrieved) in parallel.

[0003] In large-scale data management, the relationship between data lists and files stored in packaging formats becomes increasingly complex. Existing data management systems, which manage data on a file-by-file basis, are increasingly prone to slow processing speeds or unusable.

[0004] For example, a file system that backs up each version of training data separately can offer the advantage of enabling rollbacks even if the original data is modified or deleted. However, this file system suffers from extremely slow processing speeds, making it unsuitable for large-scale data processing.

[0005] For example, a file system that independently stores only the file keys, rather than backing up the files themselves, may offer the advantage of reduced storage space for small-scale data management. However, this file system also presents a problem in large-scale data management, where the physical relationships between training data files become more complex, requiring significant processing capacity and slowing down processing speeds.

[0006] The above information is provided solely as background information to assist in understanding the disclosure. No judgment has been made, and no assertion is made, regarding whether any of the above information constitutes prior art in connection with the disclosure.

[0007] The present disclosure is designed to improve the above-described problem, and the purpose of the present disclosure is to provide an electronic device and a control method thereof that manages the usage history of learning data to minimize the number of times duplicate files are stored.

[0008] Additional aspects will be presented in part in the description that follows, and some will become apparent from the description or can be learned through the implementation presented.

[0009] According to one embodiment, an electronic device includes a memory that maps and stores first identification information of a first artificial intelligence model and first version information including a key value indicating a storage location of a file included in a first learning data set used for learning the first artificial intelligence model, and a processor connected to the memory and controlling the electronic device, wherein the processor obtains second identification information of a second artificial intelligence model updated from the first artificial intelligence model and hash information of a second learning data set used for learning the second artificial intelligence model, generates a key value indicating a storage location of a file included in the second learning data set based on the hash information, and identifies the generated key value as a first type indicating a new file or a second type indicating a duplicate file by comparing the key value included in the first version information with the generated key value, or identifies the key value included in the first version information as a third type indicating a deleted file, and generates second version information including at least one type among the first type, the second type, or the third type and a key value corresponding to the at least one type, and compares the second version information and the second identification information of the second artificial intelligence model with the second identification information of the second artificial intelligence model. Information is mapped and stored in the memory, and when a control command requesting a learning data set of the second artificial intelligence model is received, the processor identifies a location where the second learning data set is stored based on at least one of the first version information or the second version information and provides address information of a file included in the second learning data set.

[0010] The processor may store the generated key value in an additional cache if the generated key value is not included in the recent cache, and may delete the generated key value from the recent cache and store the generated key value in a duplicate cache if the generated key value is included in the recent cache.

[0011] The processor can identify the key value included in the additional cache as the first type when the key value is included in the additional cache.

[0012] The processor may obtain a first number of key values ​​included in the duplicate cache, obtain a second number of key values ​​not deleted from the recent cache, compare the first number and the second number to identify the second type or the third type, and generate the second version information including the key values ​​corresponding to the second type or the third type.

[0013] An electronic device wherein the first number represents the number of files included in both the first learning data set and the second learning data set, and the second number represents the number of files included in the first learning data set and not included in the second learning data set.

[0014] If the second number is not less than the first number, the processor can identify the key value included in the duplicate cache as the second type and generate the second version information including the second type and the key value corresponding to the second type.

[0015] If the second number is less than the first number, the processor can identify the key value not recently deleted from the cache as the third type, and generate the second version information including the third type and the key value corresponding to the third type.

[0016] When the second version information is generated, the processor can delete the key value included in the recent cache and store the key value included in at least one of the additional cache or the duplicate cache in the recent cache.

[0017] The hash information includes at least one of a name of the file included in the second learning data set or a hash value of the file included in the second learning data set, and the processor can generate a key value of the file included in the second learning data set based on at least one of the name or the hash value.

[0018] The at least one processor may obtain identification information of a data package including the file included in the second learning data set and physical location information of the file included in the second learning data set stored in the data package based on at least one of the name or the hash value, and may combine the identification information of the data package and the physical location information to generate a key value of the file included in the second learning data set.

[0019] According to one embodiment, a method for controlling an electronic device includes the steps of: mapping and storing first identification information of a first artificial intelligence model and first version information including a key value indicating a storage location of a file included in a first learning data set used for learning the first artificial intelligence model; obtaining second identification information of a second artificial intelligence model updated in the first artificial intelligence model and hash information of a second learning data set used for learning the second artificial intelligence model; generating a key value indicating a storage location of a file included in the second learning data set based on the hash information; comparing the key value included in the first version information with the generated key value to identify the generated key value as a first type indicating a new file or a second type indicating a duplicate file, or identifying the key value included in the first version information as a third type indicating a deleted file; generating second version information including at least one type among the first type, the second type, or the third type and a key value corresponding to the at least one type; and mapping and storing the second version information and the second identification information of the second artificial intelligence model in the electronic device. When a control command requesting a learning data set of the second artificial intelligence model is received, the control method identifies a location where the second learning data set is stored based on at least one of the first version information and the second version information, and provides address information of a file included in the second learning data set.

[0020] The above control method may include a step of storing the generated key value in an additional cache if the generated key value is not included in the recent cache, and a step of deleting the generated key value from the recent cache and storing the generated key value in a duplicate cache if the generated key value is included in the recent cache.

[0021] The above control method may include a step of identifying the key value included in the additional cache as the first type when the key value is included in the additional cache.

[0022] The control method includes a step of obtaining a first number of key values ​​included in the duplicate cache, a step of obtaining a second number of key values ​​not deleted from the recent cache, and a step of comparing the first number and the second number to identify the second type or the third type, and the step of generating the second version information may generate the second version information including a key value corresponding to the second type or the third type.

[0023] A control method wherein the first number represents the number of files included in both the first learning data set and the second learning data set, and the second number represents the number of files included in the first learning data set and not included in the second learning data set.

[0024] The above control method includes a step of identifying a key value included in the duplicate cache as the second type if the second number is not less than the first number, and the step of generating the second version information may generate the second version information including the second type and a key value corresponding to the second type.

[0025] The above control method includes a step of identifying a key value not recently deleted from the cache as the third type if the second number is less than the first number, and the step of generating the second version information may generate the second version information including the third type and a key value corresponding to the third type.

[0026] The above control method may include, when the second version information is generated, a step of deleting a key value included in the recent cache and a step of storing a key value included in at least one of the additional cache or the duplicate cache in the recent cache.

[0027] The hash information includes at least one of a name of the file included in the second learning data set or a hash value of the file included in the second learning data set, and the step of generating the key value may generate a key value of the file included in the second learning data set based on at least one of the name or the hash value.

[0028] The step of generating the key value may include obtaining identification information of a data package including the file included in the second learning data set and physical location information of the file included in the second learning data set stored in the data package based on at least one of the name or the hash value, and combining the identification information of the data package and the physical location information to generate a key value of the file included in the second learning data set.

[0029] Other aspects, advantages, and key features of this disclosure will become apparent to those skilled in the art from the following detailed description, taken in conjunction with the accompanying drawings. This description illustrates various implementation examples of the disclosure.

[0030] The above and other aspects, features and advantages of specific embodiments of the present invention will become more apparent from the following description taken in conjunction with the accompanying drawings.

[0031] FIG. 1 is a diagram for explaining an artificial intelligence model and a learning process of the artificial intelligence model, according to one embodiment.

[0032] FIG. 2 is a block diagram illustrating an electronic device according to one embodiment.

[0033] FIG. 3 is a block diagram illustrating an operation of updating version information of learning data according to one embodiment.

[0034] FIG. 4 is a diagram for explaining an operation of storing a key value in a cache in an operation of updating learning data, according to one embodiment.

[0035] FIG. 5 is a diagram for explaining an operation of updating version information of learning data based on key values ​​stored in a cache, according to one embodiment.

[0036] FIG. 6 is a diagram for explaining an operation of providing address information of a file included in a learning data set, according to one embodiment.

[0037] FIG. 7 is a diagram illustrating the relationship between an artificial intelligence server and a data server according to one embodiment.

[0038] FIG. 8 is a diagram for explaining a data set, hash information, key values, etc., according to one embodiment.

[0039] FIG. 9 is a diagram for explaining a key value generation operation according to one embodiment.

[0040] FIG. 10 is a diagram for explaining an operation of generating version information according to a learning process, according to one embodiment.

[0041] FIG. 11 is a diagram for explaining an operation of generating version information according to a learning process, according to one embodiment.

[0042] FIG. 12 is a diagram for explaining an operation of generating version information according to a learning process, according to one embodiment.

[0043] FIG. 13 is a diagram for explaining an operation of generating version information according to a learning process, according to one embodiment.

[0044] FIG. 14 is a diagram for explaining an operation of generating version information according to a learning process, according to one embodiment.

[0045] FIG. 15 is a diagram for explaining multiple learning processes according to one embodiment.

[0046] FIG. 16 is a diagram for explaining a key value generation operation according to one embodiment.

[0047] FIG. 17 is a diagram for explaining an operation of controlling a cache according to one embodiment.

[0048] FIG. 18 is a diagram for explaining an operation of generating version information according to one embodiment.

[0049] FIG. 19 is a diagram illustrating an operation of identifying a file included in learning data, according to one embodiment.

[0050] FIG. 20 is a diagram for explaining a key value comparison operation according to one embodiment.

[0051] FIG. 21 is a diagram for explaining an operation of managing learning data according to one embodiment.

[0052] FIG. 22 is a diagram for explaining an operation of identifying a key value of a file used in a learning process based on stored version information, according to one embodiment.

[0053] FIG. 23 is a diagram for explaining the learning process of an artificial intelligence model according to one embodiment.

[0054] FIG. 24 is a drawing for explaining a control method of an electronic device (100) according to one embodiment.

[0055] It should be noted that the same reference numbers are used throughout the drawings to indicate identical or similar elements, features and structures.

[0056] The following description, with reference to the attached drawings, is intended to assist in a comprehensive understanding of the various embodiments of this disclosure defined by the claims and their equivalents. While it includes numerous specific details to aid in such understanding, these details should be considered merely exemplary. Accordingly, those skilled in the art will recognize that numerous modifications and variations of the various embodiments described herein may be made without departing from the scope of this disclosure. Furthermore, descriptions of well-known functions and configurations may be omitted for clarity and conciseness.

[0057] The terms and words used in the following description and claims are not intended to be limited by their bibliographic meanings, but are used solely to enable the inventor to understand this disclosure clearly and consistently. Therefore, it should be apparent to those skilled in the art that the following description is provided for the purpose of explaining various embodiments of this disclosure and is not intended to limit this disclosure, which is defined by the claims and their equivalents.

[0058] Singular forms such as "a," "an," and "the" should be understood to include plural meanings unless the context clearly requires otherwise. For example, reference to "a component surface" includes reference to one or more of those surfaces.

[0059] The terms used in the embodiments of this disclosure have been selected from widely used, current terms, taking into account the functions of this disclosure. However, these terms may vary depending on the intentions of those skilled in the art, precedents, the emergence of new technologies, etc. Furthermore, in certain cases, the applicant may arbitrarily select terms, in which case their meanings will be described in the description of the relevant disclosure. Therefore, the terms used in this disclosure should not be defined simply as names of terms, but rather based on the meanings of the terms and the overall content of this disclosure.

[0060] In this specification, expressions such as “has,” “can have,” “includes,” or “may include” indicate the presence of a feature (e.g., a number, function, operation, or component such as a part), and do not exclude the presence of additional features.

[0061] The expression "at least one of A and / or B" should be understood to mean either "A" or "B" or "A and B".

[0062] As used herein, the expressions “first,” “second,” “first,” or “second,” etc., may describe various components, regardless of order and / or importance, and are only used to distinguish one component from another, but do not limit the components.

[0063] When it is said that a component (e.g., a first component) is “(operatively or communicatively) coupled with / to” or “connected to” another component (e.g., a second component), it should be understood that the component may be directly coupled to the other component, or may be connected through another component (e.g., a third component).

[0064] Singular expressions include plural expressions unless the context clearly dictates otherwise. In this application, terms such as "comprise" or "consist of" are intended to indicate the presence of a feature, number, step, operation, component, part, or combination thereof described in the specification, but should be understood not to preclude the presence or addition of one or more other features, numbers, steps, operations, components, parts, or combinations thereof.

[0065] In the present disclosure, a "module" or "part" performs at least one function or operation and may be implemented in hardware or software, or a combination of hardware and software. Furthermore, multiple "modules" or multiple "parts" may be integrated into at least one module and implemented as at least one processor (not shown), excluding any "modules" or "parts" that need to be implemented as specific hardware.

[0066] In this specification, the term user may refer to a person using an electronic device or a device using an electronic device (e.g., an artificial intelligence electronic device).

[0067] It should be understood that each block of the flowchart and the combination of flowcharts can be performed by one or more computer programs containing computer-executable instructions. The entirety of one or more computer programs may be stored in a single memory device, or the one or more computer programs may be divided into different parts stored in different memory devices.

[0068] The functions or tasks described herein may be performed by a single processor or a combination of processors. A single processor or a combination of processors is a circuit that performs processing and includes circuits such as an application processor (AP, e.g., a central processing unit (CPU)), a communication processor (CP, e.g., a modem), a graphics processing unit (GPU), a neural processing unit (NPU) (e.g., an artificial intelligence (AI) chip), a Wi-Fi chip, a Bluetooth™ chip, a global positioning system (GPS) chip, a near-field communication (NFC) chip, a connection chip, a sensor controller, a touch controller, a fingerprint sensor controller, a display driver integrated circuit (IC), an audio CODEC chip, a universal serial bus (USB) controller, a camera controller, an image processing IC, a microprocessor unit (MPU), a system on a chip (SoC), an integrated circuit (IC), and the like.

[0069] An embodiment of the present disclosure is described in detail with reference to the attached drawings below.

[0070] FIG. 1 is a diagram for explaining an artificial intelligence model and a learning process of the artificial intelligence model, according to one embodiment.

[0071] Referring to Figure 1, an artificial intelligence model may be a model that generates (or provides or obtains) output data in response to input data. The artificial intelligence model may be updated through a learning process. The update may include a generation process and a modification process. The artificial intelligence model may be trained based on training data. The training data may be information used to train the artificial intelligence model to generate output data corresponding to the input data. The training data may be described as a training data set because it includes multiple pieces of information.

[0072] Referring to Example (1) of Fig. 1, the artificial intelligence model may be a generative artificial intelligence model. A generative artificial intelligence model may refer to an artificial intelligence technology capable of generating new data in response to input data.

[0073] Input data can be text, images, or audio. Output data can be new text, new images, or new audio. New data can refer to data with similar characteristics to the input data. New data can refer to data newly created by an artificial intelligence model, rather than data retrieved from existing data.

[0074] For example, input data could be text or audio such as "Draw me a dog." The output data generated by the AI ​​model could be a generated image of a dog. The generated image may not be the searched image, but rather new data generated based on the phrase "Draw me a dog."

[0075] Referring to Example (2) of Fig. 1, the artificial intelligence model can be updated through multiple learning processes. The learning data set can be changed each time the learning process is performed.

[0076] The first artificial intelligence model (v1) may be a model acquired through the first learning process. The first artificial intelligence model (v1) may be a model trained using the first learning data set. The first learning data set may include at least one file (f1, f2, f3, f4).

[0077] The second artificial intelligence model (v2) may be a model acquired through the second learning process. The second artificial intelligence model (v2) may be a model trained using a second learning data set. The second learning data set may include at least one file (f2, f3, f4). Unlike the first learning process, some files (f1) may not be used in the second learning process.

[0078] The third AI model (v3) may be a model acquired through the third learning process. The third AI model (v3) may be a model trained using the third learning data set. The third learning data set may include at least one file (f3). Unlike the second learning process, some files (f2, f4) may not be used in the third learning process.

[0079] The fourth artificial intelligence model (v4) may be a model acquired through the fourth learning process. The fourth artificial intelligence model (v4) may be a model trained using the fourth learning data set. The fourth learning data set may include at least one file (f1, f2, f3, f4, f5). Unlike the third learning process, some files (f1, f2, f4, f5) may be additionally utilized in the fourth learning process.

[0080] The fifth artificial intelligence model (v5) may be a model acquired through the fifth learning process. The fifth artificial intelligence model (v5) may be a model trained using the fifth learning data set. The fifth learning data set may include at least one file (f6). Unlike the fourth learning process, the fifth learning process may not utilize all of the existing files (f1, f2, f3, f4, f5) but instead utilize a new file (f6).

[0081] As the files used in each learning process change, the behavior for storing and managing the training data set may change. Despite the changes in the files used in the learning process, some duplicate files may still exist. Data management efficiency can vary depending on how duplicate files are managed.

[0082] An embodiment of providing training data for a learned artificial intelligence model is described in FIG. 2.

[0083] FIG. 2 is a block diagram illustrating an electronic device (100) according to one embodiment.

[0084] Referring to FIG. 2, the electronic device (100) may include at least one of a memory (110), a processor (120), or a communication interface (130).

[0085] The electronic device (100) may be a device that provides information related to an artificial intelligence model. The electronic device (100) may be a device that utilizes a learned artificial intelligence model or a device that provides learning data for a learned artificial intelligence model.

[0086] The memory (110) may be implemented as an internal memory such as a ROM (e.g., an electrically erasable programmable read-only memory (EEPROM)) or RAM included in at least one processor (120), or may be implemented as a separate memory from at least one processor (120). The memory (110) may be implemented as a memory embedded in the electronic device (100) or as a memory detachable from the electronic device (100) depending on the purpose of data storage. For example, data for driving the electronic device (100) may be stored in a memory embedded in the electronic device (100), and data for expanding functions of the electronic device (100) may be stored in a memory detachable from the electronic device (100).

[0087] The memory (110) can store at least one instruction. Based on the instruction stored in the memory (110), at least one processor (120) can perform various operations.

[0088] At least one processor (120) may be implemented as a digital signal processor (DSP), a microprocessor, or a time controller (TCON) that processes digital signals. However, the present invention is not limited thereto, and may include one or more of a central processing unit (CPU), a micro controller unit (MCU), a micro processing unit (MPU), a controller, an application processor (AP), a graphics-processing unit (GPU), a communication processor (CP), or an advanced reduced instruction set computer (RISC) machines (ARM) processor, or may be defined by the relevant terminology. At least one processor (120) may be implemented as a system on chip (SoC) having a built-in processing algorithm, a large scale integration (LSI), or may be implemented in the form of a field programmable gate array (FPGA). At least one processor (120) may perform various functions by executing computer executable instructions stored in a memory.

[0089] The communication interface (130) is a configuration that performs communication with various types of external devices according to various types of communication methods. The communication interface (130) may include a wireless communication module or a wired communication module. Each communication module may be implemented in the form of at least one hardware chip.

[0090] The electronic device (100) may include a memory (110) that maps and stores first identification information of a first artificial intelligence model and first version information including a key value indicating a storage location of a file included in a first learning data set used for learning the first artificial intelligence model, and a processor (120) that is connected to the memory (110) and controls the electronic device (100).

[0091] The first artificial intelligence model (v1) may be the model obtained through the first learning process.

[0092] The first identification information may be information for specifying the first artificial intelligence model. The first identification information of the first artificial intelligence model may include at least one of the name, number, service name, and trademark of the first artificial intelligence model.

[0093] The first learning data set may represent a group of data including at least one piece of information used for learning the first artificial intelligence model.

[0094] A key value can represent a value indicating the location (or address) where a specific file is stored. The key value can be used to retrieve (or retrieve) a specific file. The key value can be generated based on a preset format. The key value can be described in singular or plural form.

[0095] The first version information may be information indicating whether a specific file was used in the training process of the first artificial intelligence model.

[0096] A detailed description of the first artificial intelligence model, first identification information, first learning data set, key value, first version information, etc. is described in Fig. 3.

[0097] The processor (120) may obtain second identification information of the updated second artificial intelligence model from the first artificial intelligence model and hash information of the second learning data set used for training the second artificial intelligence model. Based on the hash information, the processor (120) may generate a key value indicating the storage location of a file included in the second learning data set.

[0098] The second AI model may be a model that has performed additional learning operations on the first AI model. The second AI model may be an updated first AI model.

[0099] The second identification information may be information for specifying the second artificial intelligence model. The second identification information of the second artificial intelligence model may include at least one of the name, number, service name, and trademark of the second artificial intelligence model.

[0100] The second learning data set may represent a group of data including at least one piece of information used for learning the second artificial intelligence model.

[0101] Hash information may include information indicating the storage location of at least one file included in the training data set. The hash information may include a value converted using a hash function or the like to represent specific data.

[0102] A detailed description of the second artificial intelligence model, second identification information, second learning data set, hash information, etc. is provided in Fig. 3. The specific calculation process for generating key values ​​is provided in Fig. 9.

[0103] The processor (120) can identify the type of a key value. The target key value for identifying the type may include a newly created key value and a key value used in a previous learning process. The processor (120) can identify the type (or type information) corresponding to the key value using a preset method.

[0104] The processor (120) can identify the generated key value as a first type indicating a new file or a second type indicating a duplicate file by comparing the key value included in the first version information with the generated key value, or can identify the key value included in the first version information as a third type indicating a deleted file.

[0105] The first type can represent an added key value. The first type can represent a specific key value (a specific file) that has not been used in a previous learning operation. The first type can be described as the add type.

[0106] The second type can represent duplicate key values. The second type can indicate that a specific key value (a specific file) is a key value (file) used in a previous learning operation. The second type can be described as the dup (duplicate) type.

[0107] The third type can represent a deleted key value. The third type can represent a key value (a specific file) that was used in a previous learning operation but is not used in the current (next) learning operation. The third type can be described as the del (delete) type.

[0108] The operation of identifying the type is further described in the key value type analysis module (62) of Fig. 3, steps S515, S535, and S545 of Fig. 5, etc.

[0109] The processor (120) can generate second version information including at least one type among the first type, the second type, or the third type and a key value corresponding to the at least one type, and map the second version information and the second identification information of the second artificial intelligence model and store the same in the memory (110).

[0110] The second version information may be information indicating whether a specific file was used in the learning process of the second artificial intelligence model. The operation of generating the second version information is further explained through the version information generation module (70) of FIG. 3. The operation of mapping the second version information and the second identification information of the second artificial intelligence model and storing them in the memory (110) is further explained through the operation of the key value management module (10) storing the second version information (v2) and the second identification information (AI-02) of the second artificial intelligence model.

[0111] When a control command requesting a learning data set of a second artificial intelligence model (the third control command of FIG. 3) is received, the processor (120) can identify a location where the second learning data set is stored based on at least one of the first version information and the second version information and provide address information of a file included in the second learning data set.

[0112] Address information may be information indicating the location where a specific file (at least one file) is stored. The operation of providing address information is further explained through step S16 of FIG. 3.

[0113] If the generated key value is not included in the recent cache, the processor (120) can store the generated key value in an additional cache.

[0114] If the generated key value is included in the recent cache, the processor (120) can delete the generated key value from the recent cache and store the generated key value in the duplicate cache.

[0115] When a key value is included in the additional cache, the processor (120) can identify the key value included in the additional cache as the first type.

[0116] The processor (120) may obtain a first number of key values ​​included in the duplicate cache. The first number may represent the number of files included in both the first learning data set and the second learning data set.

[0117] The processor (120) may obtain a second number of key values ​​that have not been recently deleted from the cache. The second number may represent the number of files included in the first learning data set and not included in the second learning data set.

[0118] The processor (120) can compare the first number and the second number to identify the second type or the third type, and generate second version information including a key value corresponding to the second type or the third type.

[0119] A recent cache can represent a memory area that stores key values ​​included in the most recently accessed training data set. Since version information was created, the key values ​​included in the recent cache may be key values ​​of files included in the training data set.

[0120] An additional cache may represent a memory area that stores key values ​​that were not used in previous learning operations but are used in the current (next) learning operation. The additional cache is used during the version information generation process, and after the version information is generated, the additional cache may be initialized and not store any values.

[0121] A duplicate cache can represent a memory area that stores key values ​​used in previous learning operations and are also used in the current (next) learning operation. The duplicate cache is used during the version information generation process, and after the version information is generated, the duplicate cache is initialized, thus not storing any values.

[0122] The operation of generating second version information using recent cache, additional cache, duplicate cache, etc. is further described in FIGS. 3 to 6.

[0123] If the second number is not less than the first number, the processor (120) can identify the key value contained in the duplicate cache as a second type. The processor (120) can generate second version information including the second type and the key value corresponding to the second type. Operations related to this are further described in steps S545 and S550 of FIG. 5.

[0124] If the second number is less than the first number, the processor (120) may identify the key values ​​not recently deleted from the cache as a third type. The processor (120) may generate second version information including the third type and the key values ​​corresponding to the third type. Operations related to this are further described in steps S535 and S540 of FIG. 5.

[0125] When the second version information is generated, the processor (120) can delete key values ​​included in the recent cache and store key values ​​included in at least one of the additional cache or duplicate cache in the recent cache. Operations related to this are further described in steps S555, S560, and S565 of FIG. 5.

[0126] The hash information may include at least one of a name of a file included in the second learning data set or a hash value of a file included in the second learning data set. The processor (120) may generate a key value of a file included in the second learning data set based on at least one of the name or hash value.

[0127] At least one processor (120) may obtain identification information of a data package including a file included in a second learning data set and physical location information of a file included in the second learning data set stored in the data package based on at least one of a name or a hash value. The processor (120) may combine the identification information and the physical location information of the data package to generate a key value of a file included in the second learning data set.

[0128] Additional descriptions of the hash information and key value generation operations are described in FIGS. 8 and 9.

[0129] An electronic device (100) can effectively track and manage a large-scale learning data set used for training an artificial intelligence model using a packaging method. The electronic device (100) can effectively manage the usage history of large-scale data used for a generative artificial intelligence model. The electronic device (100) can load data using a real-time parallel stream method. The real-time parallel stream method can be a method of selectively loading large-scale learning files without decompressing the package files in a packaged state. The electronic device (100) can load only target files (files requested by a user) using version information.

[0130] The electronic device (100) can efficiently manage duplicate key values ​​using multiple version information. A large number of duplicate keys may not be stored for each version information. The electronic device (100) can utilize an optimal storage method to store fewer key values ​​by distinguishing between a second type (dup type) or a third type (del type). The electronic device (100) can provide an incremental key storage system to avoid excessive space consumption due to the storage of duplicate key values. Incremental storage can save space.

[0131] The electronic device (100) can obtain a key value included in the address information, and based on the key value, obtain package information and physical location information in which the file is stored. Based on the package information and physical location information, the electronic device (100) can immediately identify a specific package in which the file is stored. The electronic device (100) can easily identify which package a specific file is stored in without decrypting multiple stored packages. The electronic device (100) can easily manage files without modifying the original learning data set. The electronic device (100) can maintain the integrity of the files.

[0132] An embodiment of requesting version information and learning data generated in the process of updating learning data by performing learning on an artificial intelligence model is described in FIG. 3.

[0133] FIG. 3 is a block diagram illustrating an operation of updating version information of learning data according to one embodiment.

[0134] Referring to FIG. 3, the electronic device (100) may include at least one of a key value management module (10), an information reception module (20), a key value generation module (30), a cache control module (40), a key value analysis module (60), and a version information generation module (70).

[0135] An artificial intelligence model can be trained using a training data set. The key value management module (10) can store information related to the artificial intelligence model. The information related to the artificial intelligence model can include at least one of identification information of the artificial intelligence model or information corresponding to the training data set used to train the artificial intelligence model.

[0136] The key value management module (10) may be a module that manages key values ​​indicating the storage location of files used in the learning operation of an artificial intelligence model. The key value management module may map artificial intelligence models and version information corresponding to the artificial intelligence models, and store mapped information (mapping result information). The files used in the learning operation may be included in a learning data set. The key value management module (10) may provide key values ​​indicating the storage location of files used in the learning of an artificial intelligence model. The key value management module (10) may provide address information including the key values ​​of files used in the learning.

[0137] A key value can represent a value indicating the location (or address) where a specific file is stored. The key value can be used in an operation to call (or extract) a specific file. The key value can be generated based on a preset format. The key value can be described as including singular and plural numbers. The method for generating the key value is described in the description of the key value generation module (30).

[0138] Version information may be information indicating whether a file has been used in the training process of an artificial intelligence model. The version information may represent a history indicating whether a specific file has been used in the training process through multiple training processes. The version information may be information indicating whether a file has been used in multiple training processes by comparing it with previous version information. The version information may include information indicating that a file that was not included in the previous training process has been added (e.g., type 1 (add type)), information indicating that a file that overlaps with a previous training process has been used in the same way (e.g., type 2 (dup type)), information indicating that a file has been used in a previous training process but not in a recent training process (e.g., type 3 (del type)), etc.

[0139] Version information may be recorded as history information, usage history information, usage information, usage status information, and usage status comparison information.

[0140] Version information can include key values ​​for each type. Version information can include key values ​​for identifying a file and the type of a specific file (or key value) to indicate whether it has been used.

[0141] The type of a specific file (or key value) can represent a unit for distinguishing the usage history of a specific file during the learning process. The type can represent one of the preset types. The type can be a classification unit that represents the usage history of a file included in the learning data set during the learning process. For example, the type can be one of the first type (add type), the second type (dup type), or the third type (del type).

[0142] A file (or key value) classified as Type 1 may indicate that it was not included in the previous training data set. A file (or key value) classified as Type 2 may indicate that it was included in the previous training data set. A file (or key value) classified as Type 3 may indicate that it was included in the previous training data set but is no longer included in the current training data set. The method for distinguishing types is described in the description of the Key Value Type Analysis Module (61).

[0143] For example, version information may include a type and a key value corresponding to the type. For example, the first version information may include multiple key values ​​(#01, #02, #03, #04) distinguished by the first type (add type).

[0144] Types can be described as groups, etc.

[0145] The key value management module (10) can map and store the identification information of the artificial intelligence model and the version information of the artificial intelligence model. For example, it is assumed that the first learning data set used for training the first artificial intelligence model includes four files (f1, f2, f3, f4). The key value management module (10) can map and store the identification information (AI-01) indicating the first artificial intelligence model and the first version information (v1) of the first learning data set.

[0146] The first learning data set may include at least one file (f1, f2, f3, f4). At least one file (f1, f2, f3, f4) included in the first learning data set may be described as a first file group.

[0147] The identification information of an AI model may be information for identifying the AI ​​model. The identification information of the AI ​​model may include at least one of the AI ​​model's name, number, service name, or trademark. For example, the first identification information of a first AI model may be AI-01.

[0148] The key value management module (10) can generate address information including the key value of a file used for learning an artificial intelligence model using version information.

[0149] Address information may be information indicating the location where a specific file (at least one file) is stored. The address information may include a key value indicating the location where the file is stored. While version information indicates the usage history of a specific file during the learning process, the address information may indicate the location (or address) where the specific file is stored. A specific file can be called (or requested) using the key value included in the address information. The address information may include a key value. The key value management module (10) may generate the address information using the version information.

[0150] The storage location of a file used for training a specific AI model can be determined using address information. The storage location of a file used for training a specific AI model may not be determined based solely on version information. Because version information indicates usage history, a single version information can be identified as a second type (dup type), indicating that a file was used in a previous training process but is no longer used in the current training process. In such cases, the storage location of a file used in the training process can be identified by considering multiple versions of information. The method for generating address information is described in steps S14 and S15.

[0151] The information receiving module (20) may be a module that receives various information related to an artificial intelligence model. The information receiving module (20) may receive an update command (first control command) of a learning data set used in the learning process of the artificial intelligence model. The information receiving module (20) may receive identification information of the artificial intelligence model. The information receiving module (20) may receive hash information of the learning data set. The information receiving module (20) may provide (or transmit) the received identification information of the artificial intelligence model or the hash information of the learning data set to another module. The update command may include at least one of a new addition command for new information or a change command for existing stored information.

[0152] Hash information may include information indicating the storage location of at least one file included in the training data set. The hash information may include a value converted using a hash function or the like to represent specific data. The hash information may include at least one of the package identification information (TID) and physical location information (Position). The hash information may be described as information related to the training data set.

[0153] Both hash information and address information can be used to indicate the storage location of a file. Address information can include a key value generated in a format determined by the key value generation module (30) and a type indicating the usage history during the learning process. Hash information can simply include information indicating the storage location of a file.

[0154] The hash information of the training data set may be described as hash information of files used in the training process. The hash information may include information indicating the storage location of at least one file.

[0155] Hash information can be described as metadata.

[0156] A package can be a unit that groups files. A package can represent a data package. A data package can be a unit that separates files. A package can be described as a silent file or a tar file. Physical location information can indicate a relative storage location within the package. The physical location information can include information that identifies one of multiple areas contained in the package.

[0157] For example, multiple files may be stored, divided into a first package and a second package. The first package may include at least one file (f1, f2, f3, f4), and the second package may include at least one file (f5, f6, f7, f8). Each package may be divided into areas for storing files. Each package may include a first area, a second area, a third area, and a fourth area. Different files may be stored in each area of ​​the first package. Different files may be stored in each area of ​​the second package. Areas may be described by location.

[0158] The information receiving module (20) can receive a first control command while storing information related to a first artificial intelligence model (S1). The information related to the first artificial intelligence model can include identification information (AI-01) and first version information (v1) of the first artificial intelligence model. The first control command can be a command for updating learning data. After the first control command is received, the information receiving module (20) can receive identification information (AI-02) of the second artificial intelligence model and hash information of a second learning data set used for learning the second artificial intelligence model.

[0159] The second learning data set may include at least one file (f2, f3, f4) used for training the second artificial intelligence model. At least one file (f2, f3, f4) included in the second learning data set may be described as a second file group.

[0160] The information receiving module (20) can receive identification information (AI-02) of the second artificial intelligence model and hash information of the second learning data set used for learning the second artificial intelligence model from an external device. The external device can be described as an external server. The external device can be a device that performs an operation to learn the artificial intelligence model. The external device can transmit the identification information (AI-02) of the learned second artificial intelligence model and hash information of the second learning data set used for learning the second artificial intelligence model to the information receiving module (20).

[0161] The information receiving module (20) can transmit identification information (AI-02) of the second artificial intelligence model to the key value management module (10) (S2). The information receiving module (20) can transmit hash information to the key value generation module (30) (S3).

[0162] The key value generation module (30) may be a module that generates a key value based on a preset format. The key value may represent a value indicating the location (or address) where a specific file is stored. The key value generation module (30) may be a module that generates a key value corresponding to a file in a format that combines the package's identification information and physical location information using hash information. By generating the key value in a preset format, it is possible to call (or request) a specific file through the key value.

[0163] The key value generation module (30) can obtain hash information corresponding to the second learning data set. The key value generation module (30) can generate a key value corresponding to the second learning data set.

[0164] A key value can indicate which package a file is stored in. A key value can indicate which of multiple areas within a package it is stored in.

[0165] The key value generation module (30) can generate (or obtain) a key value corresponding to the second learning data set based on the hash information received from the information reception module (20).

[0166] The key value generation module (30) can obtain identification information and physical location information of a package in which at least one file included in the second learning data set included in the hash information is stored.

[0167] The key value generation module (30) can generate key values ​​(#2, #3, #4) of at least one file included in the second learning data set by combining the identification information and physical location information of the package. The key value generation module (30) can generate a key value that includes both the identification information of the package including the file and the physical location information of the file. The physical location information can include information for specifying one of a plurality of storage areas existing in the package.

[0168] The key value generation module (30) can transmit key values ​​(#2, #3, #4) to the cache control module (40) (S4).

[0169] The cache control module (40) may be a module that controls the cache by identifying a type indicating the usage history of a key value and generating a control command corresponding to the identified type. The cache control module (40) may be a module that updates cache information based on a key value generated by the key value generation module (30).

[0170] A cache can refer to an area or unit where specific data is stored. A cache does not necessarily refer to a storage space corresponding to volatile memory; it can refer to a storage space corresponding to non-volatile memory. A cache can include a recent cache (primary cache), an additional cache (secondary cache), and a duplicate cache (tertiary cache). Each cache can be described as a sub-cached cache.

[0171] Cache information may include information about a recent cache (primary cache), an additional cache (secondary cache), and a duplicate cache (tertiary cache). Depending on various embodiments, key values ​​may not be stored in each cache. Cache information may be described as cache data or a cache table. The caches described in the recent cache (primary cache), additional cache (secondary cache), and duplicate cache (tertiary cache) may be described as cache areas.

[0172] The cache control module (40) may include at least one of a key value comparison module (41) or a cache control signal generation module (42).

[0173] The cache control module (40) can transmit a control signal to the cache storage module (50) to call (or request) a key value recently stored in the cache (S5).

[0174] The cache storage module (50) may be a module that stores cache information. When a control command is received from the cache control module (40), the cache storage module (50) may perform an operation corresponding to the control command. The control command may include at least one of a command for providing (or returning) a key value stored in a specific cache, a command for adding a key value to a specific cache, or a command for deleting a key value.

[0175] The cache storage module (50) can transmit key values ​​(#1, #2, #3, #4) recently stored in the cache to the cache control module (40) (S6). The cache storage module (50) can return key values ​​(#1, #2, #3, #4) recently stored in the cache to the cache control module (40) in response to a control signal for calling (or requesting) the key values ​​recently stored in the cache.

[0176] The key value comparison module (41) can compare the key values ​​(#1, #2, #3, #4) stored in the cache storage module (50) with the key values ​​(#2, #3, #4) generated by the key value generation module (30). The comparison operation may include at least one of an operation for checking whether a key value has been added, an operation for checking whether a key value has been duplicated, and an operation for checking whether a key value has been deleted.

[0177] The cache control signal generation module (42) can generate a control signal to be transmitted to the cache storage module (50) based on the comparison result of the key value comparison module (41). The control signal can include at least one of a command to delete at least one key value from a recent cache, a command to add at least one key value to an additional cache, or a command to add at least one key value to a duplicate cache.

[0178] The cache control signal generation module (42) can transmit the generated control signal to the cache storage module (50) (S7).

[0179] For example, the key value comparison module (41) can identify that the key values ​​(#2, #3, #4) are duplicated. The cache control signal generation module (42) can generate a control signal to delete the duplicated key values ​​(#2, #3, #4) from the key values ​​(#1, #2, #3, #4) recently stored in the cache. The cache control signal generation module (42) can generate a control signal to add the duplicated key values ​​(#2, #3, #4) to the duplicate cache. The cache control signal generation module (42) can transmit the generated control signal to the cache storage module (50).

[0180] The cache storage module (50) can update the key value included in the cache based on the control signal generated by the cache control signal generation module (42). The operation of updating the key value included in the cache may include at least one of the following operations: deleting the key value recently included in the cache, adding the key value to an additional cache, or adding the key value to a duplicate cache.

[0181] The key value analysis module (60) may be a module that analyzes the usage history of a key value to determine the type of a key value (or file). The operation of analyzing the usage history of a key value may include an operation of identifying whether the key value generated by the key value generation module (30) was added in a recent learning process, whether it was used in a recent learning process in the same manner as in a previous learning process, or whether it was used in a previous learning process but not in a recent learning process.

[0182] The key value analysis module (60) can receive a second control command for generating version information (S8). When the key value analysis module (60) receives the second control command, the key value analysis module (60) can call (or request) cache information (S9).

[0183] Cache information can indicate key values ​​stored in each of the recent cache, additional cache, and duplicate cache. Cache information can include at least one of the key values ​​included in the recent cache, the key value included in the additional cache, and the key value included in the duplicate cache.

[0184] The cache storage module (50) can transmit cache information to the key value analysis module (60) in response to a cache information call (S10). The key value analysis module (60) can include at least one of a key value count analysis module (61) or a key value type analysis module (62). The cache storage module (50) can transmit cache information to at least one of the key value count analysis module (61) or the key value type analysis module (62).

[0185] The key value count analysis module (61) can identify (or calculate) the number of duplicates and the number of deletions based on cache information. The key value count analysis module (61) can identify the number of key values ​​included in the duplicate cache as the first number based on cache information. The key value count analysis module (61) can identify the number of key values ​​recently included in the cache as the second number based on cache information. After the second control command is received, the key values ​​recently included in the cache are non-duplicated key values, and the non-duplicated key values ​​can represent deleted (or to be deleted) key values.

[0186] For example, since there are three key values ​​(#2, #3, #4) included in the duplicate cache and one key value (#1) included in the recent cache, the key value count analysis module (61) can identify the first number (number of duplicated key values) as three and the second number (number of deleted key values) as one.

[0187] The key value count analysis module (61) can transmit at least one of the first number (number of duplicate key values) or the second number (number of deleted key values) obtained to the key value type analysis module (62) (S11).

[0188] The key value type analysis module (62) can determine whether the additional cache contains a key value from the cache information. If the additional cache contains a key value, the key value type analysis module (62) can identify the key value contained in the additional cache as a first type (add type).

[0189] The key value type analysis module (62) can compare the first number (the number of duplicated key values) and the second number (the number of deleted key values). The key value type analysis module (62) can generate key value information by type based on the comparison result between the second number (the number of deleted key values) and the first number (the number of duplicated key values).

[0190] The key value type analysis module (62) can generate key value information by type based on the cache information and comparison results received from the cache storage module (50).

[0191] If the second number (the number of deleted key values) is less than the first number (the number of duplicated key values), the key value type analysis module (62) can identify the key values ​​(deleted key values) recently included in the cache as the third type (del type).

[0192] If the second number (the number of deleted key values) is not less than the first number (the number of duplicated key values), the key value type analysis module (62) can identify the key values ​​(duplicated key values) included in the duplicate cache as the second type (dup type).

[0193] The key value type analysis module (62) can transmit key value information by type to the version information generation module (70) (S12).

[0194] For example, assuming that the first number (the number of duplicated key values) is 3 and the second number (the number of deleted key values) is 1, the key value type analysis module (62) can identify the key value (deleted key value) recently included in the cache as the third type (del type). The key value type analysis module (62) can transmit key value information by type (del: #1) to the version information generation module (70).

[0195] The version information generation module (70) may be a module that generates version information used to generate address information. The address information generation module (70) may generate version information corresponding to an artificial intelligence model using type-specific key value information (del: #1) received from the key value analysis module (60).

[0196] When the second version information (v2) is generated, the version information generation module (70) can transmit an update command to the cache storage module (50). The update command may be a command for updating the cache stored in the cache storage module. The update command may include a command for deleting the recent cache and storing values ​​stored in the additional cache and duplicate cache in the recent cache. The update command may include a command for deleting the additional cache and duplicate cache when the recent cache is updated. Operations related to the update command may correspond to steps S555, S560, and S565 of FIG. 5.

[0197] The version information generation module (70) can generate second version information (v2) corresponding to the second learning data set based on key value information by type. The second version information (v2) can be used to identify the storage locations of files (f2, f3, f4) included in the second learning data set.

[0198] The version information generation module (70) can transmit the second version information (v2) to the key value management module (10) (S14).

[0199] The key value management module (10) can map and store the identification information (AI-02) of the second artificial intelligence model acquired in step S2-1 and the second version information (v2) acquired in step S13.

[0200] Version information can be stored as a new version whenever an AI model is updated. For example, when a first AI model is updated to a second AI model, the first version information can be updated to the second version information. The key values ​​(#1, #2, #3, #4) stored in the first version information and the key value (#1) stored in the second version information may be partially different. The type of the key value stored in the first version information (the first type, add type) and the type of the key value stored in the second version information (the third type, del type) may be different.

[0201] After the second version information is stored in the key value management module (10), a third control command requesting a file included in the second learning data set can be received (S15).

[0202] The third control command may be a command requesting information about the training data used to train the second artificial intelligence model (the most recently updated artificial intelligence model). The key value management module (10) may, in response to the third control command, provide (or return or transmit) information about the second training data set used to train the second artificial intelligence model. The key value management module (10) may return a key value indicating the location of at least one file (f2, f3, f4) included in the second training data set.

[0203] When the third control command is received, the key value management module (10) can obtain address information indicating a storage location of a file included in the second learning data set based on at least one of the first version information and the second version information indicating a file included in the second learning data set.

[0204] Assume that the address of a file included in the second learning data set is requested. The key value management module (10) can identify a key value indicating the storage location of the file included in the second learning data set and generate address information including the identified key value.

[0205] When the third control command is received, the key value management module (10) can determine whether the second version information includes a key value of the second type (dup type).

[0206] If the second version information does not include a key value of the second type (dup type), the key value management module (10) can additionally use the first version information corresponding to a previous version of the second version information. The key value management module (10) can identify a key value indicating a file included in the second learning data set by using both the first version information and the second version information. The key value management module (10) can generate address information including the identified key values ​​(#2, #3, #4).

[0207] If the second version information includes a key value of the second type (dup type), the key value management module (10) can identify the key value of the first type (add type) and the key value of the second type (dup type) included in the second version information. The key value management module (10) can generate address information including the key value of the first type (add type) and the key value of the second type (dup type). If the key value of the first type (add type) does not exist, the key value management module (10) can generate address information including the key value of the second type (dup type).

[0208] The key value management module (10) can provide the generated address information in response to a third control command (S16).

[0209] In Figure 3, the operation of each module is described in detail. In Figures 4 to 6, the operation according to time sequence is described in detail.

[0210] FIG. 4 is a diagram for explaining an operation of storing a key value in a cache in an operation of updating learning data, according to one embodiment.

[0211] Referring to FIG. 4, the electronic device (100) may obtain a first control command (S405). The first control command may be a start command for updating learning data. The update may include an operation for newly storing learning data or an operation for modifying learning data.

[0212] After receiving the first control command, the electronic device (100) may receive hash information of the second learning data set while storing the first version information of the first learning data set (S410). The hash information of the second learning data set may include information indicating where the files included in the second learning data set are stored.

[0213] The electronic device (100) can generate at least one key value based on hash information (S415). The electronic device (100) can generate a key value representing a file included in the second learning data set based on the received hash information. If there are multiple files, the electronic device (100) can generate multiple key values ​​corresponding to each of the multiple files.

[0214] The electronic device (100) can identify whether at least one generated key value is included in the recent cache (S420). The electronic device (100) can determine whether the key value included in the recent cache is identical to at least one generated key value. The electronic device (100) can compare the key value included in the recent cache with the at least one generated key value to identify added key values, duplicated key values, deleted key values, etc.

[0215] If at least one generated key value is not identical to a key value included in the recent cache (S420-N), the electronic device (100) can identify at least one key value as an added key value and store the added key value in the additional cache (S425).

[0216] If at least one generated key value is identical to a key value included in the recent cache (S420-Y), the electronic device (100) can identify a duplicate key value identical to at least one key value generated in the recent cache and delete the duplicate key value from the recent cache (S430). The electronic device (100) can store the duplicate key value in the duplicate cache (S435).

[0217] Depending on various embodiments, there may be multiple key values ​​generated in step S615. Some of the multiple key values ​​may be identified as added key values, and the rest may be identified as duplicate key values.

[0218] According to various embodiments, instead of step S620, the electronic device (100) may identify whether the generated key value is a newly input key value rather than a key value recently included in the cache. If the generated key value is a newly input key value, the electronic device (100) may identify a duplicate key value identical to a key value recently generated in the cache and delete the duplicate key value from the recent cache. The electronic device (100) may store the duplicate key value in the duplicate cache.

[0219] FIG. 5 is a diagram for explaining an operation of updating version information of learning data based on key values ​​stored in a cache, according to one embodiment.

[0220] Referring to FIG. 5, the electronic device (100) may obtain a second control command (S505). The second control command may be a command for generating version information. The second control command may indicate that an update related to the second learning data set has been completed. Upon receiving the second control command, the electronic device (100) may perform an operation for generating second version information for the second learning data set.

[0221] The electronic device (100) can identify whether the additional cache contains a key value (S510). If the additional cache contains a key value (S510-Y), the electronic device (100) can identify (or distinguish) the key value contained in the additional cache as a first type (add type) (S515).

[0222] The electronic device (100) can obtain the number of key values ​​(first number) included in the duplicate cache (S520). The electronic device (100) can identify the first number as the number of duplicate files in the previous learning data and the current learning data.

[0223] The electronic device (100) can obtain the number of key values ​​(second count) that have not been recently deleted from the cache (S525). The electronic device (100) can identify the second count as the number of files deleted from the previous learning data.

[0224] The electronic device (100) can compare the first number and the second number. The electronic device (100) can identify whether the second number is less than the first number (S530). The electronic device (100) can compare the number of duplicate files (the first number) and the number of deleted files (the second number).

[0225] If the second number is less than the first number (S530-Y), the electronic device (100) can identify the key value (key value of the deleted file) recently included in the cache as the third type (del type) (S535).

[0226] The electronic device (100) can generate second version information including at least one of a key value identified as a first type (add type) or a key value identified as a third type (del type) (S530).

[0227] If there is a key value identified as the first type (add type) in step S515, the electronic device (100) can generate second version information including both the key value identified as the first type (add type) and the key value identified as the third type (del type).

[0228] If there is no key value identified as the first type (add type) in step S515, the electronic device (100) can generate second version information including all key values ​​identified as the third type (del type).

[0229] If the second number is not less than the first number (S530-N), the electronic device (100) can identify the key value (key value of the duplicated file) included in the duplicate cache as the second type (dup type) (S545).

[0230] The electronic device (100) can generate second version information including at least one of a key value identified as a first type (add type) or a key value identified as a second type (dup type) (S550).

[0231] If there is a key value identified as the first type (add type) in step S515, the electronic device (100) can generate second version information including both the key value identified as the first type (add type) and the key value identified as the second type (dup type).

[0232] If there is no key value identified as the first type (add type) in step S515, the electronic device (100) can generate second version information including all key values ​​identified as the second type (dup type).

[0233] After the second version information is generated, the electronic device (100) can delete the key values ​​included in the recent cache (S555). The electronic device (100) can store the key values ​​included in at least one of the additional cache or the duplicate cache in the recent cache (S560).

[0234] The electronic device (100) can delete key values ​​contained in additional caches and duplicate caches (S565). When operation S565 is performed, key values ​​of files used in the current learning process can be included only in the recent cache. The electronic device (100) can obtain (or identify) the storage location of files used in learning the artificial intelligence model using the key values ​​stored in the recent cache.

[0235] FIG. 6 is a diagram for explaining an operation of providing address information of a file included in a learning data set, according to one embodiment.

[0236] Referring to FIG. 6, the electronic device (100) may obtain a third control command (S605). The third control command may be a command requesting the address of a second learning data set. The address of a file included in the second learning data set may be required to obtain a file included in the second learning data set. The third control command may be a command requesting the address of a file included in the second learning data set.

[0237] The electronic device (100) can obtain version information (the most recently stored version information) (S610). The electronic device (100) can identify whether the second version information includes a key value of the second type (dup type) (S615).

[0238] If the second version information includes a key value of the second type (dup type) (S615-Y), the electronic device (100) can identify whether multiple version information has been acquired to generate address information (S620).

[0239] If multiple version information is not obtained (S620-Y), the electronic device (100) can generate address information including a key value included in the first type (add type) and a key value included in the second type (dup type) (S625).

[0240] When multiple version information is acquired (S620-Y), the electronic device (100) can sequentially consider the multiple version information and generate address information (S630). It is assumed that the electronic device (100) has acquired the first version information of the first order and the second version information of the second order. The electronic device (100) can sequentially consider the first version information and the second version information to identify a file included in the second learning data set. The electronic device (100) can generate address information including the key value of the file included in the second learning data set.

[0241] If the second version information does not include a key value of the second type (dup type) (S615-N), the electronic device (100) can identify whether the second version information includes a key value of the third type (del type) (S635).

[0242] If the second version information does not include a key value of the third type (del type) (S635-N), the electronic device (100) can identify whether multiple version information has been acquired to generate address information (S640).

[0243] If multiple version information is not obtained (S640-N), the electronic device (100) can generate address information including a key value included in the first type (add type) (S645).

[0244] When multiple version information is acquired (S640-Y), the electronic device (100) can sequentially consider the multiple version information and generate address information (S630). It is assumed that the electronic device (100) has acquired the first version information of the first order and the second version information of the second order. The electronic device (100) can sequentially consider the first version information and the second version information to identify a file included in the second learning data set. The electronic device (100) can generate address information including the key value of the file included in the second learning data set.

[0245] When address information is generated, the electronic device (100) can provide address information corresponding to the second learning data set (S650).

[0246] In various embodiments, since multiple version information is already stored in memory or the like, the operation of obtaining version information in FIG. 4 may represent an operation of extracting or activating the already stored version information so that it can be used as a separate calculation operation.

[0247] According to various embodiments, the operation of identifying a key value by type is described in FIGS. 10 to 15.

[0248] Figures 4 through 6 illustrate a series of operations performed upon receipt of the first, second, and third control commands, respectively. The entities performing the aforementioned operations may differ. For example, most operations may be performed on a single server. For example, different servers may each share roles and perform their own operations. A related description is provided in Figure 7.

[0249] FIG. 7 is a diagram illustrating the relationship between an artificial intelligence server and a data server according to one embodiment.

[0250] Referring to the embodiment (710) of FIG. 7, the integrated server (711) may include both an AI server and a data server.

[0251] An AI server may be a server that performs various operations related to an artificial intelligence model. The AI ​​server may represent at least one of a server that trains an artificial intelligence model, a server that stores the trained artificial intelligence model, or a server that provides (or transmits) the trained artificial intelligence model.

[0252] A data server may be a server that stores data. A data server may also be a server that manages data. A data server may be described as a data storage server, a data management server, or a data control server.

[0253] Referring to embodiment (720) of FIG. 7, the first server (721) may include an AI server. The second server (722) may include a data server. Unlike embodiment (710), the AI ​​server and the data server may be included in separate servers. The first server (721) may include an AI server for learning an artificial intelligence model. The first server (721) may request learning data from the second server (722) including the data server. The first server (721) may receive learning data from the data server and perform learning operations on the artificial intelligence model based on the received learning data.

[0254] The data server described in Figure 7 can store and manage various data. The data stored in the data server is described in Figure 8.

[0255] FIG. 8 is a diagram for explaining a data set, hash information, key values, etc., according to one embodiment.

[0256] Referring to Figure 8, multiple files may be included in the original data set. The original data set may include multiple file sources. Each of the multiple files may be stored within the original data set, and each of the multiple files may be identified as a package unit within the original data set.

[0257] Files used in the learning process of an artificial intelligence model may be included in the original data set (810). The original data set (810) may be described as a set of original files. The original data set (810) may represent a group of files used or likely to be used in the learning process.

[0258] At least one file (f1, f2, f3, f4, f5, f6, f7, f8) included in the original data set (810) can be divided into preset units (packages). Each package can be divided into a preset number (4) of areas (area a, area b, area c, area d). Each area of ​​the package can be identified by physical location information. The physical location information (a, b, c, d) can be information indicating a specific area among multiple areas included in the package.

[0259] A first file (f1) may be stored in a first area (a) of a first package. A second file (f2) may be stored in a second area (b) of the first package. A third file (f3) may be stored in a third area (c) of the first package. A fourth file (f4) may be stored in a fourth area (d) of the first package.

[0260] A fifth file (f5) may be stored in the first area (a) of the second package. A sixth file (f6) may be stored in the second area (b) of the second package. A seventh file (f7) may be stored in the third area (c) of the second package. An eighth file (f8) may be stored in the fourth area (d) of the second package.

[0261] A package can be a unit that groups files. A package can represent a data package. Physical location information can indicate a relative storage location within the package. Physical location information can include information that identifies one of multiple areas contained within the package.

[0262] For example, the original data set may include a first package and a second package, where the first package may include at least one file (f1, f2, f3, f4), and the second package may include at least one file (f5, f6, f7, f8). Each package may include a first area (area a), a second area (area b), a third area (area c), and a fourth area (area d). Different files may be stored in each area of ​​the package.

[0263] Hash information may be used to identify files used in the learning process. The hash information set (820) may include information indicating the storage location of at least one file included in the original data set. The hash information set (820) may include multiple hash information.

[0264] Hash information may include at least one of package information (tid) and physical location information (position). Hash information may vary for each file, as each file is stored in a different location.

[0265] The hash information set (820) may include hash information for files included in the original data set (810).

[0266] It is assumed that the key value generation module (30) of FIG. 3 generates a key value for a hash information set (820). The key value generation module (30) can obtain a key value set (830). The key value generation module (30) can identify a target file for generating a key value. The key value generation module (30) can generate a key value corresponding to the identified target file.

[0267] An example of calculating hash information and key value information generated using the data described in Fig. 8 is described in Fig. 9.

[0268] FIG. 9 is a diagram for explaining a key value generation operation according to one embodiment.

[0269] Referring to the embodiment (900) of FIG. 9, it is assumed that the second learning data set (910) includes at least one file (f2, f3, f4). The hash information generation module (80) can receive information about at least one file (f2, f3, f4) used in the learning process. The information about at least one file (f2, f3, f4) can indicate identification information of the file. The identification information of the file can include a name, a file number, etc.

[0270] When information about at least one file (f2, f3, f4) is received, the hash information generation module (80) can identify at least one file (f2, f3, f4) stored in the original data set (810) of FIG. 8 based on the information about the at least one file (f2, f3, f4). Package information and physical location information of the file can be identified based on the original data set (810). The hash information generation module (80) can generate hash information (920) about the at least one file (f2, f3, f4). The hash information generation module (80) can transmit the generated hash information (920) to the key value generation module (30).

[0271] For example, a hash information generation module (80) may be included in an electronic device (100). The electronic device (100) may generate (or obtain) hash information on its own.

[0272] For example, the hash information generation module (80) may be included in an external device other than the electronic device (100). The electronic device (100) may receive hash information generated by the external device.

[0273] The key value generation module (30) can receive hash information (920) generated by the hash information generation module (80). The key value generation module (30) can generate (or obtain) key value information (930) based on the hash information (920). The key value information can be described as a key value set. The key value information can include at least one key value.

[0274] FIGS. 10 to 14 sequentially describe the operation of generating version information according to the learning process and the cache control process. FIG. 10 describes the process of generating version information (1513) according to the first embodiment. FIG. 11 describes the process of generating version information (1523) according to the second embodiment after the version information (1513) is generated. FIG. 12 describes the process of generating version information (1533) according to the third embodiment after the version information (1523) is generated. FIG. 13 describes the process of generating version information (1543) according to the fourth embodiment after the version information (1533) is generated. FIG. 14 describes the process of generating version information (1553) according to the fifth embodiment after the version information (1543) is generated.

[0275] FIG. 10 is a diagram for explaining an operation of generating version information according to a learning process, according to one embodiment.

[0276] The embodiment (1000) of FIG. 10 may correspond to the embodiment (1510) of FIG. 15. The electronic device (100) may receive a first control command (e.g., a command to start updating learning data). When the first control command is received, the electronic device (100) may identify at least one file (f1, f2, f3, f4) included in the learning data set (1511) by using information (e.g., hash information) about the learning data set (1511) that learned the artificial intelligence model (1512). The electronic device (100) may generate key values ​​(#1, #2, #3, #4) of at least one file (f1, f2, f3, f4).

[0277] Once the key value is generated, the electronic device (100) can identify (or obtain or call) the first cache information (1010). The first cache information (1010) may be the most recently stored cache information. The electronic device (100) can reflect the generated key values ​​(#1, #2, #3, #4) to the first cache information (1010) to obtain the second cache information (1020).

[0278] The electronic device (100) can receive a second control command (e.g., an update termination command) after obtaining the second cache information (1020).

[0279] When the second control command is received, the electronic device (100) can generate version information (1513). The electronic device (100) can obtain type-specific key values ​​(add: #1, #2, #3, #4) based on the second cache information (1020). The electronic device (100) can generate version information (1513) including type-specific key values ​​(add: #1, #2, #3, #4). The operation of generating the version information (1513) is described in steps S505, S510, S515, S520, S525, S530, S535, S540, S545, and S550 of FIG. 5.

[0280] When version information (1513) is generated, the electronic device (100) can update the recent cache included in the second cache information (1020). The electronic device (100) can obtain third cache information (1030) by updating the second cache information (1020).

[0281] The electronic device (100) can delete key values ​​contained in the recent cache and store key values ​​contained in the additional cache and duplicate cache in the recent cache. When the recent cache is changed, the electronic device (100) can delete key values ​​contained in the additional cache and duplicate cache. Operations related to this are described in steps S555, S560, and S565 of FIG. 5.

[0282] The electronic device (100) can use version information to identify the address location of a file used in the learning process of an artificial intelligence model. The version information can be generated each time the learning process is completed.

[0283] Since one learning process is performed in the embodiment (1000) of FIG. 10, one version information (1513) can be stored in the electronic device (100). The electronic device (100) can generate and provide address information (including a key value) for at least one file used in the learning process of the artificial intelligence model based on the version information (1513).

[0284] FIG. 11 is a diagram for explaining an operation of generating version information according to a learning process, according to one embodiment.

[0285] The embodiment (1100) of FIG. 11 may correspond to the embodiment (1520) of FIG. 15. The electronic device (100) may receive a first control command (e.g., a command to start updating learning data). When the first control command is received, the electronic device (100) may use information (e.g., hash information) about the learning data set (1521) that learned the artificial intelligence model (1522) to identify at least one file (f2, f3, f4) included in the learning data set (1521). The electronic device (100) may generate key values ​​(#2, #3, #4) of at least one file (f2, f3, f4).

[0286] Once the key value is generated, the electronic device (100) can identify (or obtain or call) the first cache information (1110). The first cache information (1110) may be the most recently stored cache information. The electronic device (100) can reflect the generated key values ​​(#2, #3, #4) to the first cache information (1110) to obtain the second cache information (1120).

[0287] The electronic device (100) can receive a second control command (e.g., an update termination command) after obtaining the second cache information (1120).

[0288] When the second control command is received, the electronic device (100) can generate version information (1523). The electronic device (100) can obtain a type-specific key value (del: #1) based on the second cache information (1120). The electronic device (100) can generate version information (1523) including the type-specific key value (del: #1). The operation of generating the version information (1523) is described in steps S505, S510, S515, S520, S525, S530, S535, S540, S545, and S550 of FIG. 5.

[0289] When version information (1523) is generated, the electronic device (100) can update the recent cache included in the second cache information (1120). The electronic device (100) can obtain third cache information (1130) by updating the second cache information (1120).

[0290] The electronic device (100) can delete key values ​​contained in the recent cache and store key values ​​contained in the additional cache and duplicate cache in the recent cache. When the recent cache is changed, the electronic device (100) can delete key values ​​contained in the additional cache and duplicate cache. Operations related to this are described in steps S555, S560, and S565 of FIG. 5.

[0291] Since two learning processes are performed in the embodiment (1100) of FIG. 11, multiple pieces of version information (1513, 1523) can be stored in the electronic device (100). The electronic device (100) can generate and provide address information (including key values) for at least one file used in the learning process of the artificial intelligence model based on the multiple pieces of version information (1513, 1523). The multiple pieces of version information (1513, 1523) can include generation order information (including generation time, etc.). The electronic device (100) can analyze the multiple pieces of version information (1513, 1523) in sequence based on the generation order information of each piece of version information. The electronic device (100) can generate and provide address information (including key values) based on the analysis result.

[0292] FIG. 12 is a diagram for explaining an operation of generating version information according to a learning process, according to one embodiment.

[0293] The embodiment (1200) of FIG. 12 may correspond to the embodiment (1530) of FIG. 15. The electronic device (100) may receive a first control command (e.g., a command to start updating learning data). When the first control command is received, the electronic device (100) may identify at least one file (f3) included in the learning data set (1531) using information (e.g., hash information) about the learning data set (1531) that trained the artificial intelligence model (1532). The electronic device (100) may generate a key value (#3) of at least one file (f3).

[0294] Once the key value is generated, the electronic device (100) can identify (or obtain or call) the first cache information (1210). The first cache information (1210) may be the most recently stored cache information. The electronic device (100) can reflect the generated key value (#3) in the first cache information (1210) to obtain the second cache information (1220).

[0295] The electronic device (100) may receive a second control command (e.g., an update termination command) after obtaining the second cache information (1220).

[0296] When the second control command is received, the electronic device (100) can generate version information (1533). The electronic device (100) can obtain a type-specific key value (dup: #3) based on the second cache information (1220). The electronic device (100) can generate version information (1533) including the type-specific key value (dup: #3). The operation of generating the version information (1533) is described in steps S505, S510, S515, S520, S525, S530, S535, S540, S545, and S550 of FIG. 5.

[0297] When version information (1533) is generated, the electronic device (100) can update the recent cache included in the second cache information (1220). The electronic device (100) can obtain third cache information (1230) by updating the second cache information (1220).

[0298] The electronic device (100) can delete key values ​​contained in the recent cache and store key values ​​contained in the additional cache and duplicate cache in the recent cache. When the recent cache is changed, the electronic device (100) can delete key values ​​contained in the additional cache and duplicate cache. Operations related to this are described in steps S555, S560, and S565 of FIG. 5.

[0299] Since three learning processes are performed in the embodiment (1200) of FIG. 12, multiple pieces of version information (1513, 1523, 1533) can be stored in the electronic device (100). The electronic device (100) can generate and provide address information (including key values) for at least one file used in the learning process of the artificial intelligence model based on the multiple pieces of version information (1513, 1523, 1533). The multiple pieces of version information (1513, 1523, 1533) can include generation order information (including generation time, etc.). The electronic device (100) can analyze the multiple pieces of version information (1513, 1523, 1533) in order based on the generation order information of each piece of version information. The electronic device (100) can generate and provide address information (including key values) based on the analysis result.

[0300] FIG. 13 is a diagram for explaining an operation of generating version information according to a learning process, according to one embodiment.

[0301] The embodiment (1300) of FIG. 13 may correspond to the embodiment (1540) of FIG. 15. The electronic device (100) may receive a first control command (e.g., a command to start updating learning data). When the first control command is received, the electronic device (100) may use information (e.g., hash information) about the learning data set (1541) that learned the artificial intelligence model (1542) to identify at least one file (f1, f2, f3, f4, f5) included in the learning data set (1541). The electronic device (100) may generate key values ​​(#1, #2, #3, #4) of at least one file (f1, f2, f3, f4, f5).

[0302] Once the key value is generated, the electronic device (100) can identify (or obtain or call) the first cache information (1310). The first cache information (1310) may be the most recently stored cache information. The electronic device (100) can reflect the generated key values ​​(#1, #2, #3, #4) in the first cache information (1310) to obtain the second cache information (1320).

[0303] The electronic device (100) may receive a second control command (e.g., an update termination command) after obtaining the second cache information (1320).

[0304] When the second control command is received, the electronic device (100) can generate version information (1543). The electronic device (100) can obtain type-specific key values ​​(add: #1, #2, #4, #5) (del: none) based on the second cache information (1320). The electronic device (100) can generate version information (1543) including type-specific key values ​​(add: #1, #2, #4, #5) (del: none). The operation of generating the version information (1543) is described in steps S505, S510, S515, S520, S525, S530, S535, S540, S545, and S550 of FIG. 5.

[0305] When version information (1543) is generated, the electronic device (100) can update the most recent cache included in the second cache information (1320). The electronic device (100) can obtain third cache information (1330) by updating the second cache information (1320).

[0306] The electronic device (100) can delete key values ​​contained in the recent cache and store key values ​​contained in the additional cache and duplicate cache in the recent cache. When the recent cache is changed, the electronic device (100) can delete key values ​​contained in the additional cache and duplicate cache. Operations related to this are described in steps S555, S560, and S565 of FIG. 5.

[0307] Since four learning processes are performed in the embodiment (1300) of FIG. 13, multiple pieces of version information (1513, 1523, 1533, 1543) can be stored in the electronic device (100). The electronic device (100) can generate and provide address information (including key values) for at least one file used in the learning process of the artificial intelligence model based on the multiple pieces of version information (1513, 1523, 1533, 1543). The multiple pieces of version information (1513, 1523, 1533, 1543) can include generation order information (including generation time, etc.). The electronic device (100) can analyze the multiple pieces of version information (1513, 1523, 1533, 1543) in sequence based on the generation order information of each piece of version information. The electronic device (100) can generate and provide address information (including key values) based on the analysis results.

[0308] FIG. 14 is a diagram for explaining an operation of generating version information according to a learning process, according to one embodiment.

[0309] The embodiment (1400) of FIG. 14 may correspond to the embodiment (1550) of FIG. 15. The electronic device (100) may receive a first control command (e.g., a command to start updating learning data). When the first control command is received, the electronic device (100) may identify at least one file (f6) included in the learning data set (1551) using information (e.g., hash information) about the learning data set (1551) that trained the artificial intelligence model (1552). The electronic device (100) may generate key values ​​(#1, #2, #3, #4) of at least one file (f6).

[0310] Once the key value is generated, the electronic device (100) can identify (or obtain or call) the first cache information (1410). The first cache information (1410) may be the most recently stored cache information. The electronic device (100) can reflect the generated key values ​​(#1, #2, #3, #4) to the first cache information (1410) to obtain the second cache information (1420).

[0311] The electronic device (100) may receive a second control command (e.g., an update termination command) after obtaining the second cache information (1420).

[0312] When the second control command is received, the electronic device (100) can generate version information (1553). The electronic device (100) can obtain a type-specific key value (add: #6) (dup: none) based on the second cache information (1420). The electronic device (100) can generate version information (1553) including the type-specific key value (add: #6) (dup: none). The operation of generating the version information (1553) is described in steps S505, S510, S515, S520, S525, S530, S535, S540, S545, and S550 of FIG. 5.

[0313] When version information (1553) is generated, the electronic device (100) can update the most recent cache included in the second cache information (1420). The electronic device (100) can obtain third cache information (1430) by updating the second cache information (1420).

[0314] The electronic device (100) can delete key values ​​contained in the recent cache and store key values ​​contained in the additional cache and duplicate cache in the recent cache. When the recent cache is changed, the electronic device (100) can delete key values ​​contained in the additional cache and duplicate cache. Operations related to this are described in steps S555, S560, and S565 of FIG. 5.

[0315] Since five learning processes are performed in the embodiment (1500) of FIG. 15, multiple pieces of version information (1513, 1523, 1533, 1543, 1553) can be stored in the electronic device (100). The electronic device (100) can generate and provide address information (including key values) for at least one file used in the learning process of the artificial intelligence model based on the multiple pieces of version information (1513, 1523, 1533, 1543, 1553). The multiple pieces of version information (1513, 1523, 1533, 1543, 1553) can include generation order information (including generation time, etc.). The electronic device (100) can sequentially analyze a plurality of version information (1513, 1523, 1533, 1543, 1553) based on the generation order information of each version information. The electronic device (100) can generate and provide address information (including a key value) based on the analysis result.

[0316] Figures 10 to 14 illustrate version information generated according to a continuous learning process. Each embodiment is illustrated in Figure 15.

[0317] FIG. 15 is a diagram for explaining multiple learning processes according to one embodiment.

[0318] Referring to FIG. 15, the artificial intelligence model can be updated by being trained multiple times. The five embodiments (1510, 1520, 1530, 1540, 1550) of FIG. 15 may correspond to the embodiment (2) of FIG. 1 or the embodiments of FIGS. 10 to 14.

[0319] The electronic device (100) can generate version information for each learning process. The version information may indicate whether a file was used in the learning process of an artificial intelligence model. The version information may include a key value for each type. The key value for each type may be described as type-specific key value information or type-key value mapping information.

[0320] According to an embodiment (1510), the artificial intelligence model (1512) may be a model trained by a learning data set (1511). The learning data set (1511) may include at least one file (f1, f2, f3, f4). The electronic device (100) may generate version information (1513) corresponding to the learning data set (1511). The version information (1513) may include key values ​​for each type (add: #1, #2, #3, #4).

[0321] According to an embodiment (1520), the artificial intelligence model (1522) may be a model trained by a learning data set (1521). The learning data set (1521) may include at least one file (f2, f3, f4). The electronic device (100) may generate version information (1523) corresponding to the learning data set (1521). The version information (1523) may include a key value (del: #1) for each type.

[0322] According to an embodiment (1530), the artificial intelligence model (1532) may be a model trained by a learning data set (1531). The learning data set (1531) may include at least one file (f3). The electronic device (100) may generate version information (1533) corresponding to the learning data set (1531). The version information (1533) may include a key value (dup: #3) for each type.

[0323] According to an embodiment (1540), the artificial intelligence model (1542) may be a model trained by a learning data set (1541). The learning data set (1541) may include at least one file (f1, f2, f3, f4, f5). The electronic device (100) may generate version information (1543) corresponding to the learning data set (1541). The version information (1543) may include key values ​​for each type (add: #1, #2, #4, #5) (del: none).

[0324] According to an embodiment (1550), the artificial intelligence model (1552) may be a model trained by a learning data set (1551). The learning data set (1551) may include at least one file (f6). The electronic device (100) may generate version information (1553) corresponding to the learning data set (1551). The version information (1553) may include a key value (add: #6) (dup: none) for each type.

[0325] A plurality of operations according to an embodiment are described in FIGS. 4 to 6. A plurality of operations according to an embodiment different from the embodiment disclosed in FIGS. 4 to 6 are described in FIGS. 16 to 19.

[0326] FIG. 16 is a diagram for explaining a key value generation operation according to one embodiment.

[0327] Referring to FIG. 16, the electronic device (100) can obtain a first control command (S1605). The first control command may be a start command for updating learning data.

[0328] The electronic device (100) can identify file(s) included in the learning data set. The file(s) can be described as at least one file. The electronic device (100) can obtain identification information of the file(s) included in the learning data set (S1610).

[0329] The electronic device (100) can extract hash information corresponding to the file's identification information from the original hash information set (S1615). The original hash information set may be a data set storing files that may be used in the learning process. A description related to this is provided in FIG. 8.

[0330] The electronic device (100) can extract (or identify) hash information corresponding to the identification information of the files obtained in S1610 among the plurality of hash information (S1615).

[0331] The electronic device (100) can obtain physical location information corresponding to a file based on hash information (S1620). The electronic device (100) can obtain package information corresponding to the file based on hash information (S1625).

[0332] The electronic device (100) can generate a key value corresponding to a file by combining package information and physical location information (S1630).

[0333] The operations S1605 to S1630 disclosed in FIG. 16 can be performed through the key value generation module (30) of FIG. 3.

[0334] FIG. 17 is a diagram for explaining an operation of controlling a cache according to one embodiment.

[0335] Referring to FIG. 17, the electronic device (100) can search for (or acquire or identify) cache information (S1705) after the key value generation operation (S1630) of FIG. 16. The cache information may include at least one of a recent cache, an additional cache, and a duplicate cache.

[0336] The electronic device (100) can obtain the number of key values ​​(third number) recently included in the cache (S1630).

[0337] The electronic device (100) can identify whether the key value generated in step S1630 of FIG. 16 is included in the recent cache (S1715). If the generated key value is not included in the recent cache (S1715-N), the electronic device (100) can store the added key value in the additional cache (S1720).

[0338] If the generated key value is included in the recent cache (S1715-Y), the electronic device (100) can delete the duplicated key value from the recent cache (S1725). The electronic device (100) can add the duplicated key value to the duplicate cache (S1730). The electronic device (100) can obtain the number of key values ​​(first number) included in the duplicate cache (S1735).

[0339] The electronic device (100) can compare the first number and half of the third number (0.5*the third number). If the first number exceeds half of the third number (S1740-Y), the electronic device (100) can delete the duplicate cache (S1745). If the first number does not exceed half of the third number (S1740-N), the electronic device (100) can maintain the duplicate cache (S1750).

[0340] Half of the third number can be rounded up (or down or truncated) to the first decimal place by multiplying the third number by 0.5. For example, if the third number is 3, half of the third number can be 1.5. The electronic device (100) can determine half of the third number as 2 by rounding 1.5 to the first decimal place.

[0341] According to various embodiments, steps S1705 to S1750 of FIG. 17 may be performed by the cache control module (40) of FIG. 3.

[0342] According to various embodiments, step S1740 of FIG. 17 may correspond to step S530. Therefore, the comparison operations of each embodiment may be interchangeable. That is, the embodiment comparing the first and second numbers may correspond to the operation comparing the first and half of the third numbers. A mathematical approach related to this is described in FIG. 20.

[0343] FIG. 18 is a diagram for explaining an operation of generating version information according to one embodiment.

[0344] Referring to FIG. 18, steps S1805, S1810, S1815, S1835, S1840, S1845, S1850, S1855, and S1860 of FIG. 18 may correspond to steps S505, S510, S515, S535, S540, S545, S550, S555, and S560 of FIG. 5. Duplicate explanations are omitted.

[0345] If the additional cache does not contain the key value (S1810-N), the electronic device (100) can identify whether a duplicate cache exists (S1830). The operation of identifying whether a duplicate cache exists may mean an operation of identifying whether the duplicate cache contains the key value.

[0346] If no duplicate cache exists (S1830-N), the electronic device (100) may perform steps S1835 and S1840, S1855, and S1860.

[0347] If a duplicate cache exists (S1830-Y), the electronic device (100) may perform steps S1845, S1850, S1855, and S1860.

[0348] According to various embodiments, steps S1805, S1810, S1815, S1830, S1835, and S1845 may be performed by the key value analysis module (60) of FIG. 3. Steps S1840, S1850, S1855, and S1860 may be performed by the address information generation module (70) of FIG. 3.

[0349] FIG. 19 is a diagram illustrating an operation of identifying a file included in learning data, according to one embodiment.

[0350] Referring to FIG. 19, the electronic device (100) may receive a third control command (S1905). The third control command may be a command requesting the address of the second learning data set.

[0351] The electronic device (100) can obtain a key value corresponding to the third control command based on at least one of the first version information or the second version information (S1910).

[0352] The electronic device (100) can obtain package information and physical location information from the key value (S1915).

[0353] The electronic device (100) can identify a package corresponding to the package information (S1920). The electronic device (100) can identify a file corresponding to the physical location information in the package (S1925).

[0354] According to various embodiments, steps S1905 to S1925 of FIG. 19 may be performed by the key value management module (10).

[0355] According to various embodiments, steps S1905 and S1910 of FIG. 19 may be performed by the version information management module (10-1) of FIG. 21.

[0356] According to various embodiments, steps S1915, S1920, and S1930 of FIG. 19 may be performed by the file management module (10-2) of FIG. 21.

[0357] FIG. 20 is a diagram for explaining a key value comparison operation according to one embodiment.

[0358] Referring to FIG. 20, embodiment (2000) can show that the embodiment of comparing the first number and the second number corresponds to the operation of comparing half of the first number and the third number.

[0359] Step S530 of FIG. 5 or step S1740 of FIG. 17, which compares the number of key values, may be replaced with a different operation.

[0360] For example, step S530 of FIG. 5 compares a first number of key values ​​included in a duplicate cache with a second number of key values ​​not recently deleted from the cache. This comparison operation may be replaced by an operation of comparing the first number of key values ​​included in a duplicate cache with a third number of key values ​​recently included in the cache.

[0361] For example, step S525 of FIG. 5 may be replaced with an operation for obtaining a third number of key values ​​recently included in the cache. Step 530 of FIG. 5 may be replaced with an operation for determining whether the first number exceeds the third number * 0.5.

[0362] For example, step S1740 of FIG. 17 compares a first number of key values ​​included in a duplicate cache with a third number of key values ​​included in a recent cache. This comparison operation may be replaced by an operation of comparing the first number of key values ​​included in a duplicate cache with a second number of key values ​​not recently deleted from the cache.

[0363] For example, step S1710 of FIG. 17 may be replaced with an operation for obtaining a second number of key values ​​that have not been recently deleted from the cache. Step S1740 of FIG. 17 may be replaced with an operation for determining whether the second number is less than the first number.

[0364] The mathematical proof of this alternative operation is as follows.

[0365] Assume that the number of key values ​​recently stored in the cache is n (the third number).

[0366] Assume that the number of key values ​​that overlap with the generated key value among the key values ​​recently stored in the cache is x (the first count).

[0367] Assume that the number of key values ​​(deleted key values) that are not included in the generated key values ​​among the key values ​​recently stored in the cache is y (the second count).

[0368] The number of duplicate key values ​​(x) can be obtained by subtracting the number of deleted key values ​​(y) from the number of key values ​​recently stored in the cache (n). Therefore, Equation (2010) can indicate that n is the sum of x and y.

[0369] Equation (2020) can indicate that the number of duplicate key values ​​(x) is greater than half (n / 2) of the number of recent cache key values ​​(the third number).

[0370] By substituting equation (2010) into n included in equation (2020), equation (2030) can be obtained. By transforming equation (2030), equation (2040) can be obtained.

[0371] Equations (2020) and (2040) may have a corresponding relationship. Therefore, we can obtain Equation (2040) that the number of duplicates (x) is greater than the number of deletions (y).

[0372] Therefore, the embodiment of comparing the first number and the second number and the operation of comparing half of the first number and the third number can correspond.

[0373] The descriptions disclosed in FIGS. 21 to 23 illustrate various embodiments for describing operations related to the artificial intelligence model of the present disclosure.

[0374] FIG. 21 is a diagram for explaining an operation of managing learning data according to one embodiment.

[0375] Referring to FIG. 21, the electronic device (100) may include at least one of a user application (2110), a learning data management module (2120), or a data storage unit (2130).

[0376] The user application (2110) may be a module that requests target learning data (or target files) from among learning data stored in the data storage unit (2130). The user application (2110) may be a module that receives a user's command (or request). The user application (2110) may receive a user input requesting a learning data set using a specific keyword (or key). The user application (2110) may transmit the received user input to the learning data management module (2120).

[0377] The learning data management module (2120) may be a module that performs operations for managing learning data. The learning data management module (2120) may provide address information (or key values) corresponding to user input using information stored in the data storage unit (2130). The learning data management module (2120) may be a module that performs various operations for key values ​​corresponding to at least one file.

[0378] The learning data management module (2120) may include at least one of the key value caching module (90) or the key value management module (10) of FIG. 3.

[0379] The key value caching module (90) may include at least one of the key value generation module (30) or the cache control module (40) of FIG. 3.

[0380] The key value management module (10) may include at least one of a version information management module (10-1) or a file management module (10-2).

[0381] The version information management module (10-1) may be a module that generates version information. The version information management module (10-1) may be a module that generates version information when an update operation is performed on learning data.

[0382] The file management module (10-2) may be a module that generates address information. The file management module (10-2) may be a module that generates address information corresponding to user input based on at least one piece of version information. The file management module (10-2) may selectively load (or search) only the packages corresponding to the key value provided by the learning data management module (2120) among the multiple packages included in the original learning data set (2134). This is because the key value includes package information and physical location information.

[0383] The data storage unit (2130) may be a module that stores various data (or information) used to manage learning data. The data storage unit (2130) may include at least one of package information (2131), physical location information (2132), version information (2133), and original data set information (2134).

[0384] Package information (2131) may be information that maps file identification information (e.g., name) and the identification information of the package in which the file is classified. Package information (2131) may include information representing a bidirectional map. Package information (2131) may be described as index information.

[0385] According to various embodiments, the data storage unit (2130) may additionally store at least one of the original hash information set (820) of FIG. 8, the key value set (830), the hash information (920) of FIG. 9, the key value information (930) of FIG. 9, and the cache information disclosed in FIGS. 10 to 14.

[0386] According to various embodiments, the data storage unit (2130) may be included in the memory (110) of the electronic device (100).

[0387] FIG. 22 is a diagram for explaining an operation of identifying a key value of a file used in a learning process based on stored version information, according to one embodiment.

[0388] Referring to the embodiment (2200) of FIG. 22, the electronic device (100) can load key values ​​of target files used in the learning process through the key value management module (10). The key value management module (10) can have a parallel load component structure based on a queue for parallel streaming loading.

[0389] The key value management module (10) can manage (or calculate) key values ​​included in multiple version information by using a queue. The key value management module (10) can process (or transmit) key values ​​by creating a queue between version information including duplicate types and target version information.

[0390] The key value management module (10) can add (push) the key value of the oldest version information (V3) to the waiting matrix (2210). The key value management module (10) can store the key value included in the previous version information (V3) based on the waiting matrix (2210).

[0391] The key value management module (10) can obtain the key value included in the third type (del type) included in the following version information (V4). The key value management module (10) can remove (or filter) the key value included in the third type (del type) included in the version information (V4) from the key value included in (V3) stored in the queue (2210). Based on the removal result (filtering result), the key value management module (10) can add (push) the remaining key values ​​to a new queue (2220).

[0392] The key value management module (10) can obtain the key value included in the third type (del type) included in the following version information (V5). The key value management module (10) can remove (or filter) the key value included in the third type (del type) included in the version information (V5) from the key value included in (V4) stored in the queue (2220). The key value management module (10) can add (push) the remaining key values ​​to a new queue (2230) based on the removal result (filtering result).

[0393] The key value management module (10) can obtain a key value included in the waiting queue (2230) and generate address information including the obtained key value.

[0394] FIG. 23 is a diagram for explaining the learning process of an artificial intelligence model according to one embodiment.

[0395] The embodiment (2300) of Fig. 23 may represent an operation of excluding some learning results from among multiple learning processes.

[0396] In the first learning process, the artificial intelligence model (MV1) can be trained by the learning data set (DV1).

[0397] In the second learning process, the artificial intelligence model (MV2) can be trained by the training data set (DV2).

[0398] In the third learning process, the artificial intelligence model (MV3) can be trained using the training data set (DV3). It is assumed that a preset event occurs during the third learning process. The preset event may indicate an event that includes data that should not be included in the training data. For example, the preset event may be an NSFW (Not Safe For Work) event.

[0399] In the fourth learning process, the electronic device (100) can learn the artificial intelligence model (MV3-2) with a new learning data set (DV4) by deleting some files used in the third learning process.

[0400] The electronic device (100) can record version information indicating the usage history of learning data during the first to fourth learning processes. Since the version information can indicate the usage history of learning data, it can be helpful in easily understanding the usage flow of learning data.

[0401] FIG. 24 is a drawing for explaining a control method of an electronic device (100) according to one embodiment.

[0402] Referring to FIG. 24, a method for controlling an electronic device for mapping and storing first identification information of a first artificial intelligence model and first version information including a key value indicating a storage location of a file included in a first learning data set used for learning the first artificial intelligence model is provided, comprising: a step (S2405) of acquiring second identification information of a second artificial intelligence model updated in the first artificial intelligence model and hash information of a second learning data set used for learning the second artificial intelligence model; a step (S2410) of generating a key value indicating a storage location of a file included in the second learning data set based on the hash information; a step (S2415) of comparing the key value included in the first version information with the generated key value to identify the generated key value as a first type indicating a new file or a second type indicating a duplicate file, or a step (S2420) of identifying the key value included in the first version information as a third type indicating a deleted file; a step (S2420) of generating second version information including at least one type among the first type, the second type, and the third type and a key value corresponding to the at least one type; and a step (S2421) of mapping the second version information and the second identification information of the second artificial intelligence model to store the electronic device. The control method includes a step of storing in a device (S2425), and when a control command requesting a learning data set of a second artificial intelligence model is received, the control method identifies a location where the second learning data set is stored based on at least one of the first version information and the second version information and provides address information of a file included in the second learning data set (S2430).

[0403] The control method may include a step of storing the generated key value in an additional cache if the generated key value is not included in the recent cache, and a step of deleting the generated key value from the recent cache and storing the generated key value in a duplicate cache if the generated key value is included in the recent cache.

[0404] The control method may include a step of identifying the key value included in the additional cache as a first type when the key value is included in the additional cache.

[0405] The control method includes a step of obtaining a first number of key values ​​included in a duplicate cache, a step of obtaining a second number of key values ​​not recently deleted from the cache, and a step of comparing the first number and the second number to identify a second type or a third type, and the step of generating second version information (S2420) can generate second version information including key values ​​corresponding to the second type or the third type.

[0406] A control method wherein the first number represents the number of files included in both the first learning data set and the second learning data set, and the second number represents the number of files included in the first learning data set and not included in the second learning data set.

[0407] The control method includes a step of identifying a key value included in a duplicate cache as a second type if the second number is not less than the first number, and the step of generating second version information (S2420) can generate second version information including the second type and a key value corresponding to the second type.

[0408] The control method includes a step of identifying a key value that has not been deleted from the cache recently as a third type if the second number is less than the first number, and the step of generating second version information (S2420) can generate second version information including the third type and a key value corresponding to the third type.

[0409] The control method may include, when the second version information is generated, a step of deleting a key value included in a recent cache and a step of storing a key value included in at least one of an additional cache or a duplicate cache in the recent cache.

[0410] The hash information includes at least one of a name of a file included in the second learning data set or a hash value of a file included in the second learning data set, and the step (S2410) of generating a key value can generate a key value of a file included in the second learning data set based on at least one of the name or hash value.

[0411] The step of generating a key value (S2410) may obtain identification information of a data package including a file included in the second learning data set and physical location information of a file included in the second learning data set stored in the data package based on at least one of a name or a hash value, and may generate a key value of a file included in the second learning data set by combining the identification information and the physical location information of the data package.

[0412] The methods according to the various embodiments of the present disclosure described above can be implemented in the form of an application that can be installed on an existing electronic device.

[0413] The methods according to the various embodiments of the present disclosure described above can be implemented only with a software upgrade or a hardware upgrade for an existing electronic device.

[0414] The various embodiments of the present disclosure described above may also be performed through an embedded server provided in an electronic device, or an external server of at least one of the electronic device and the display device.

[0415] According to an example embodiment of the present disclosure, the various embodiments described above may be implemented as software including instructions stored in a machine-readable storage medium that can be read by a machine (e.g., a computer). The device may include an electronic device according to the disclosed embodiments, which is a device that can call instructions stored in the storage medium and operate according to the called instructions. When the instructions are executed by a processor, the processor may directly or under the control of the processor use other components to perform a function corresponding to the instructions. The instructions may include code generated or executed by a compiler or interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory' means that the storage medium does not contain signals and is tangible, but does not distinguish between data being stored semi-permanently or temporarily in the storage medium.

[0416] According to one embodiment of the present disclosure, the method according to the various embodiments described above may be provided as included in a computer program product. The computer program product may be traded as a commodity between a seller and a buyer. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., compact disc read-only memory (CD-ROM)) or online through an application store. In the case of online distribution, at least a portion of the computer program product may be temporarily stored or temporarily generated in a storage medium, such as the memory of a manufacturer's server, an application store's server, or a relay server.

[0417] Each of the components (e.g., modules or programs) according to the various embodiments described above may be composed of a single or multiple entities, and some of the sub-components described above may be omitted, or other sub-components may be further included in various embodiments. Alternatively or additionally, some components (e.g., modules or programs) may be integrated into a single entity, which may perform the same or similar functions as those performed by each of the respective components prior to integration. Operations performed by modules, programs or other components according to various embodiments may be executed sequentially, in parallel, iteratively or heuristically, or at least some operations may be executed in a different order, omitted, or other operations may be added.

[0418] It will be appreciated that various embodiments of the present disclosure may be implemented in the form of hardware, software, or a combination of hardware and software, in accordance with the claims and detailed description.

[0419] Such software may be stored on a non-transitory computer-readable storage medium. The non-transitory computer-readable storage medium stores one or more computer programs (software modules), wherein the one or more computer programs include computer-executable instructions that, when executed by one or more processors of the electronic device, cause the electronic device to perform the disclosed method.

[0420] Such software may be stored in volatile or non-volatile storage forms, for example, in a storage device such as read-only memory (ROM). This storage may or may not be erasable or rewritable, and may be stored in the form of, for example, random access memory (RAM), memory chips, devices, or integrated circuits, or may be stored on an optically or magnetically readable medium such as, for example, a compact disc (CD), a digital versatile disc (DVD), a magnetic disk, or a magnetic tape. It will be appreciated that the storage devices and storage media are various implementations of non-transitory machine-readable storage suitable for storing computer programs or instructions. Accordingly, various embodiments provide a program comprising code for implementing a device or method as claimed in any of the claims of the present disclosure, and a non-transitory machine-readable storage storing such a program.

[0421] While this disclosure has been shown and described with reference to various implementations, those skilled in the art will appreciate that various changes in form and detail may be made therein without departing from the scope of the disclosure as defined by the claims and their equivalents.

Claims

1. In electronic devices, A memory that maps and stores first identification information of a first artificial intelligence model and first version information including a key value indicating a storage location of a file included in a first learning data set used for learning the first artificial intelligence model; a processor connected to the memory and controlling the electronic device; The above processor, Obtain second identification information of the updated second artificial intelligence model from the first artificial intelligence model and hash information of the second learning data set used for learning the second artificial intelligence model, Generate a key value indicating the storage location of a file included in the second learning data set based on the hash information, By comparing the key value included in the first version information with the generated key value, the generated key value is identified as a first type indicating a new file or a second type indicating a duplicate file, or the key value included in the first version information is identified as a third type indicating a deleted file. Generate second version information including at least one type among the first type, the second type, or the third type and a key value corresponding to the at least one type, Mapping the second version information and the second identification information of the second artificial intelligence model and storing them in the memory, The above processor, An electronic device that, when a control command requesting a learning data set of the second artificial intelligence model is received, identifies a location where the second learning data set is stored based on at least one of the first version information and the second version information and provides address information of a file included in the second learning data set.

2. In paragraph 1, The above processor, If the generated key value is not included in the recent cache, the generated key value is stored in an additional cache, An electronic device that deletes the generated key value from the recent cache and stores the generated key value in a duplicate cache when the generated key value is included in the recent cache.

3. In paragraph 2, The above processor, An electronic device that identifies the key value included in the additional cache as the first type when the key value is included in the additional cache.

4. In paragraph 2, The above processor, Obtain the first number of key values included in the above duplicate cache, Obtain the second number of key values that have not been deleted from the recent cache, Compare the first number and the second number to identify the second type or the third type, An electronic device that generates the second version information including a key value corresponding to the second type or the third type. Electronic devices.

5. In paragraph 4, The above first number represents the number of files included in both the first learning data set and the second learning data set, An electronic device wherein the second number represents the number of files included in the first learning data set and not included in the second learning data set.

6. In paragraph 4, The above processor, If the second number is not less than the first number, the key value included in the duplicate cache is identified as the second type, An electronic device that generates the second version information including the second type and a key value corresponding to the second type.

7. In paragraph 4, The above processor, If the second number is less than the first number, the key value that has not been deleted from the recent cache is identified as the third type, An electronic device that generates the second version information including the third type and a key value corresponding to the third type.

8. In paragraph 4, The above processor, When the above second version information is generated, the key value included in the recent cache is deleted, An electronic device that stores a key value included in at least one of the additional cache or the duplicate cache in a recent cache.

9. In paragraph 1, The above hash information is, Contains at least one of the name of the file included in the second learning data set or the hash value of the file included in the second learning data set; The above processor, An electronic device that generates a key value of the file included in the second learning data set based on at least one of the name or the hash value.

10. In paragraph 9, At least one processor, Obtaining identification information of a data package including the file included in the second learning data set and physical location information where the file included in the second learning data set is stored in the data package based on at least one of the name or the hash value; An electronic device that generates a key value of the file included in the second learning data set by combining the identification information and the physical location information of the data package.

11. In a method for controlling an electronic device, A step of mapping and storing first identification information of a first artificial intelligence model and first version information including a key value indicating a storage location of a file included in a first learning data set used for learning the first artificial intelligence model; A step of obtaining second identification information of the updated second artificial intelligence model from the first artificial intelligence model and hash information of the second learning data set used for learning the second artificial intelligence model; A step of generating a key value indicating the storage location of a file included in the second learning data set based on the hash information; A step of comparing the key value included in the first version information with the generated key value to identify the generated key value as a first type indicating a new file or a second type indicating a duplicate file, or identifying the key value included in the first version information as a third type indicating a deleted file; A step of generating second version information including at least one type among the first type, the second type, or the third type and a key value corresponding to the at least one type; and A step of mapping the second version information and the second identification information of the second artificial intelligence model and storing them in the electronic device; The above control method is, A control method, wherein when a control command requesting a learning data set of the second artificial intelligence model is received, the method identifies a location where the second learning data set is stored based on at least one of the first version information and the second version information and provides address information of a file included in the second learning data set.

12. In paragraph 11, The above control method is, If the generated key value is not included in the recent cache, a step of storing the generated key value in an additional cache; and A control method comprising: a step of deleting the generated key value from the recent cache and storing the generated key value in a duplicate cache if the generated key value is included in the recent cache.

13. In paragraph 12, The above control method is, A control method comprising: a step of identifying the key value included in the additional cache as the first type when the key value is included in the additional cache.

14. In paragraph 12, The above control method is, A step of obtaining a first number of key values included in the above duplicate cache; A step of obtaining a second number of key values that have not been deleted from the recent cache; and A step of comparing the first number and the second number to identify the second type or the third type; The step of generating the above second version information is: A control method for generating the second version information including a key value corresponding to the second type or the third type. Control method.

15. In paragraph 14, The above first number represents the number of files included in both the first learning data set and the second learning data set, A control method, wherein the second number represents the number of files included in the first learning data set and not included in the second learning data set.

Citation Information

Patent Citations

  • Display apparatus

    KR1020220131883A

  • Substrate supporting unit and substrate processing apparatus

    KR1020230142237A

  • Method for providing artificial intelligence service

    KR102283523B1

  • Storage System Performing Data Deduplication and Operating Method of Storage System and Data Processing System

    KR102306672B1

  • System and method for processing training data

    KR102588531B1