Data improvement method for improving quality of data, and computing device and system in which such method is implemented
The system addresses data quality issues by removing unnecessary data elements, generating new data, and optimizing conditions to enhance data quality, thereby improving AI model performance.
Patent Information
- Application Number
- PCT/KR2025/012346
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-12-06
- Filing Date
- 2025-08-14
- Publication Date
- 2026-02-19
AI Technical Summary
Existing data processing techniques focus on assessing data structure or simply removing and enriching data, offering limited solutions to various types of data quality issues, which degrade the performance of AI models.
A system and method for improving data quality by removing unnecessary elements, generating new data, and optimizing data generation conditions, while visualizing data characteristics and measuring performance changes through data removal and generation processes.
Enhances data quality by identifying precise data generation conditions, maximizing performance across various domains, and providing clear improvement directions through data characteristic visualization.
Smart Images

Figure KR2025012346_19022026_PF_FP_ABST
Abstract
Description
Data improvement method for improving data quality and computing device and system implementing such method
[0001] The present disclosure relates to data processing techniques for improving data quality. More specifically, it relates to synthetic data generation techniques for improving data quality by precisely targeting data generation conditions.
[0002] In recent data-driven systems, data quality and reliability have emerged as critical factors influencing the performance of AI models. Poor data quality can degrade the performance of learning and prediction models, making data cleaning and processing essential.
[0003] Existing data processing techniques typically focus on assessing data structure or simply removing and enriching data. These approaches offer solutions limited to specific domains and have limitations in addressing various types of data quality issues.
[0004] Accordingly, the present disclosure aims to provide a high-quality data set by improving quality through data removal and generation, visualizing data characteristics based on performance evaluation of the data set, and optimizing data generation conditions.
[0005] One task of the present disclosure is to improve the quality of a data set by removing unnecessary elements of the data or generating new data.
[0006] In addition, one task of the present disclosure is to measure the performance change of a data set through the data removal and generation process and to generate a data characteristic graph based on the measurement.
[0007] Additionally, one task of the present disclosure is to identify and implement precise data generation conditions to improve data quality.
[0008] According to one embodiment of the present disclosure, there is provided a system comprising a memory and at least one processor electronically connected to the memory and configured to execute at least one instruction stored in the memory, wherein the at least one processor comprises: an operation of embedding a data set in an embedding region of a specific dimension to obtain a vector set corresponding to the data set; an operation of inputting the data set to an evaluator to obtain first result data; an operation of obtaining a plurality of feature values corresponding to each of data included in the data set based on a plurality of vectors included in the vector set; an operation of selecting at least one target data from the data set based on the plurality of feature values and obtaining a first sampling data set excluding the at least one target data from the data set; an operation of inputting the first sampling data set to the evaluator to obtain second result data; and an operation of generating a first feature graph of the data set based on the first result data and the second result data. A computing device may be provided, wherein the computing device is set to perform, and the at least one target data is selected based on a sampling parameter, and the sampling parameter is determined based on at least some of the plurality of characteristic values.
[0009] According to one embodiment of the present disclosure, a computing device may be provided, comprising a memory and at least one processor electronically connected to the memory and configured to execute at least one instruction stored in the memory, wherein the at least one processor is configured to perform the following operations: obtaining a vector set corresponding to the data set by embedding a data set in an embedding region of a specific dimension using a first neural network; determining a targeting metric by defining a target vector based on at least one vector included in the vector set; obtaining at least one transformed data by adding noise to at least one data corresponding to the at least one vector; obtaining synthesized transformed data by applying the targeting metric to the at least one transformed data; and inputting the synthesized transformed data into a second neural network and obtaining synthesized data from the second neural network.
[0010] The solutions to the problems of the present invention are not limited to the solutions described above, and solutions not mentioned can be clearly understood by a person having ordinary skill in the art to which the present invention pertains from this specification and the attached drawings.
[0011] According to one embodiment of the present disclosure, a data processing technique can be provided that effectively improves data quality. Specifically, by visualizing data characteristics in a graph, the quality of the data set can be assessed and improvement directions can be clearly identified. Furthermore, by optimizing data generation conditions, the performance of the data set can be maximized across various domains.
[0012] The effects of the present disclosure are not limited to the effects described above, and effects not mentioned will be clearly understood by those skilled in the art to which the present invention pertains from this specification and the attached drawings.
[0013] FIG. 1 is a diagram illustrating a configuration of a computing device according to various embodiments.
[0014] FIG. 2 is a diagram illustrating various data processing methods included in a data clinic service provided by a computing device according to various embodiments.
[0015] FIG. 3 is a diagram illustrating various systems for providing data clinic services according to various embodiments, and artificial intelligence models and algorithms for constructing the systems.
[0016] FIG. 4 is a diagram illustrating a method for a computing device to provide a data image according to various embodiments.
[0017] FIG. 5 is a diagram illustrating a method for a computing device to obtain characteristics of a data set according to various embodiments.
[0018] FIG. 6 is a diagram illustrating an example of a computing device using at least one data processing model to improve the quality of a data set, according to various embodiments.
[0019] Figure 7 is a diagram illustrating experimental data on the correlation between the volume of learning data and the learning efficiency of an artificial intelligence model.
[0020] FIG. 8 is a diagram illustrating a method for a computing device to remove at least a portion of a data set using a pre-trained artificial intelligence model, according to various embodiments.
[0021] FIG. 9 is a diagram illustrating a method for a computing device to propose a data diet by selecting target data based on sampling parameters according to various embodiments.
[0022] FIG. 10 is a diagram illustrating a method for a computing device to evaluate a data set and generate a feature graph, according to various embodiments.
[0023] FIG. 11 is a diagram illustrating a method for a computing device to generate a characteristic graph according to various embodiments.
[0024] FIG. 12 is a diagram illustrating another method for a computing device to generate a feature graph according to various embodiments.
[0025] FIG. 13 is a diagram illustrating a method for a computing device to generate a comparison characteristic graph according to various embodiments.
[0026] FIG. 14 is a diagram illustrating an example of a comparative characteristic graph according to various embodiments.
[0027] FIG. 15 is a diagram illustrating a method for a computing device to generate synthetic data through precision targeting according to various embodiments.
[0028] FIG. 16 is a flowchart illustrating a method for a computing device to generate synthetic data based on precision targeting, according to various embodiments.
[0029] FIG. 17 is a diagram illustrating a method for a computing device to generate synthetic data based on precision targeting according to various embodiments.
[0030] FIG. 18 is a diagram illustrating a method for a computing device to determine a targeting metric by defining a target vector, according to various embodiments.
[0031] FIG. 19 is a flowchart illustrating a method for a computing device to determine a targeting metric based on a reference region, according to various embodiments.
[0032] FIG. 20 is a diagram illustrating a method for a computing device to determine a targeting metric based on a reference area according to various embodiments.
[0033] FIG. 21 is a flowchart illustrating a method of generating reproduction data performed by a computing device according to various embodiments.
[0034] FIG. 22 is a diagram illustrating a method for a computing device to generate reproduction data based on a data set according to various embodiments.
[0035] FIG. 23 is a diagram illustrating operations that may be involved in a computing device generating reproduction data based on a first data set, according to various embodiments.
[0036] FIG. 24 is a diagram illustrating a method for a computing device to obtain a first vector set according to various embodiments.
[0037] FIG. 25 is a diagram illustrating a method for a computing device to obtain target data according to various embodiments.
[0038] FIG. 26 is a diagram illustrating a method for a computing device to generate a reproducible data set after lightening a data set, according to various embodiments.
[0039] FIG. 27 is a diagram illustrating a method for a computing device to provide information about a data set according to various embodiments.
[0040] FIG. 28 is a diagram illustrating a method for a computing device to generate a composite vector having different threshold distances set according to various embodiments.
[0041] FIG. 29 is an exemplary diagram for explaining a data set and characteristics of the data set according to various embodiments.
[0042] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. In describing the embodiments, descriptions of technical details that are well-known in the technical field to which the present disclosure pertains and are not directly related to the present disclosure will be omitted. This is to avoid obscuring the gist of the present disclosure by omitting unnecessary explanations and to convey the gist more clearly.
[0043] Since the embodiments described in this specification are intended to clearly explain the idea of the present invention to a person having ordinary skill in the art to which the present invention pertains, the present invention is not limited to the embodiments described in this specification, and the scope of the present invention should be interpreted to include modified or altered examples that do not depart from the idea of the present invention.
[0044] The terms used in this specification have been selected from widely used terms, taking into account the functions of the present invention. However, these terms may vary depending on the intentions of those skilled in the art, precedents, or the emergence of new technologies. However, if a specific term is defined and used with an arbitrary meaning, the meaning of that term will be described separately. Therefore, the terms used in this specification should be interpreted based on the actual meaning of the term and the overall content of this specification, rather than simply the name of the term.
[0045] The drawings attached to this specification are intended to facilitate explanation of the present invention, and the shapes depicted in the drawings may be exaggerated as necessary to help understanding of the present invention, and therefore the present invention is not limited by the drawings.
[0046] In this specification, each of the phrases "A or B", "at least one of A and B", "at least one of A or B", "A, B, or C", "at least one of A, B, and C", and "at least one of A, B, or C" may include any one of the items listed together in that phrase, or all possible combinations thereof.
[0047] If a detailed description of the composition or function of a known disclosure related to the present invention in this specification is deemed to obscure the gist of the present invention, a detailed description thereof will be omitted as necessary. Furthermore, the numbers (e.g., "first," "second," etc.) used throughout the description of this specification are merely identifiers used to distinguish one component from another.
[0048] In addition, the suffixes "part" and "part" for components used in the following description are given or used interchangeably only for the convenience of writing the specification, and do not have distinct meanings or roles in themselves.
[0049] That is, the embodiments of the present disclosure are provided to make the present disclosure complete and to inform those skilled in the art of the scope of the present disclosure, and the invention of the present disclosure is defined solely by the scope of the claims. Like reference numerals refer to like elements throughout the specification.
[0050] Terms such as “first” and / or “second” may be used to describe various components, but the components should not be limited by the terms. The terms are only for the purpose of distinguishing one component from another, for example, a first component may be referred to as a second component, and similarly, a second component may also be referred to as a first component, without departing from the scope of the present disclosure.
[0051] When a component is referred to as being "connected" or "connected" to another component, it should be understood that it may be directly connected or connected to that other component, but that there may be other components in between. Conversely, when a component is referred to as being "directly connected" or "directly connected" to another component, it should be understood that there are no other components in between. Other expressions that describe the relationship between components, such as "between" and "directly between" or "adjacent to" and "directly adjacent to", should be interpreted similarly.
[0052] Each block of the flowchart drawings and combinations of flowchart drawings in the drawings can be performed by computer program instructions. These computer program instructions can be installed in a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing equipment, so that the instructions executed by the processor of the computer or other programmable data processing equipment create a means for performing the functions described in the flowchart block(s). These computer program instructions can also be stored in a computer-available or computer-readable memory that can direct a computer or other programmable data processing equipment to implement the functions in a specific manner, so that the instructions stored in the computer-available or computer-readable memory can also produce an article of manufacture that includes an instruction means for performing the functions described in the flowchart block(s). Since the computer program instructions may be installed on a computer or other programmable data processing device, a series of operational steps may be performed on the computer or other programmable data processing device to create a computer-executable process, so that the instructions that cause the computer or other programmable data processing device to perform the steps for performing the functions described in the flowchart block(s) may also be able to provide steps for performing the functions described in the flowchart block(s).
[0053] Additionally, a device-readable storage medium may be provided in the form of a non-transitory storage medium. Here, "non-transitory" simply means that the storage medium is a tangible device and does not contain signals (e.g., electromagnetic waves). This term does not distinguish between cases where data is stored semi-permanently or temporarily on the storage medium.
[0054] Additionally, each block may represent a module, segment, or portion of code that contains one or more executable instructions for performing a specified logical function(s). It should also be noted that in some alternative implementation examples, the functions mentioned in the blocks may occur out of order. For example, two blocks shown in succession may in fact be performed substantially concurrently, or the blocks may sometimes be performed in reverse order, depending on their respective functions. For example, the operations performed by a module, program, or other component may be performed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be performed in a different order, omitted, or one or more additional operations may be added.
[0055] The term 'unit' as used in this disclosure means a software or hardware component such as a Field Programmable Gate Array (FPGA) or an Application Specific Integrated Circuit (ASIC). The 'unit' performs specific roles, but is not limited to software or hardware. The 'unit' may be configured to reside on an addressable storage medium and may be configured to play one or more processors. Accordingly, according to some embodiments, the 'unit' includes components such as software components, object-oriented software components, class components, and task components, processes, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables. The functionality provided within the components and 'units' may be combined into a smaller number of components and 'units' or further separated into additional components and 'units'. Additionally, the components and '~parts' may be implemented to activate one or more CPUs within a device or secure multimedia card. Furthermore, according to various embodiments of the present disclosure, the '~part' may include one or more processors.
[0056] The operating principles of the present disclosure are described in detail below with reference to the attached drawings. In the following description of the present disclosure, detailed descriptions of related known functions or configurations will be omitted if they are deemed to unnecessarily obscure the gist of the present disclosure. Furthermore, the terms described below are defined based on the functions of the present disclosure and may vary depending on the intent or custom of the user or operator. Therefore, their definitions should be based on the overall content of this specification.
[0057] FIG. 1 is a diagram illustrating a configuration of a computing device according to various embodiments.
[0058] Referring to FIG. 1, a computing device (e.g., an electronic device including a computing means such as a server or client device, hereinafter referred to as a “computing device”) (100) according to one embodiment may include a processor (110), a memory (120), a storage device (130), a communication circuit (140), and a bus (not shown). The configuration of the computing device (100) is not limited to the configuration illustrated in FIG. 1 or the configuration described above, and may further include hardware or software configurations included in general computing devices or mobile devices.
[0059] The processor (110) may include at least one processor, at least some of which are implemented to provide different functions. For example, the processor (110) may execute software (e.g., a program) to control at least one other component (e.g., a hardware or software component) of the computing device (100) connected to the processor (110) and perform various data processing or calculations. According to one embodiment, as at least a part of the data processing or calculation, the processor (110) may store instructions or data received from other components in the memory (120) (e.g., a volatile memory), process the instructions or data stored in the volatile memory, and store the resulting data in the non-volatile memory. According to one embodiment, the processor (110) may include a main processor (e.g., a central processing unit or an application processor) or an auxiliary processor (e.g., a graphics processing unit, a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor) that can operate independently or together therewith. For example, if the computing device (100) includes a main processor and a secondary processor, the secondary processor may be configured to use less power than the main processor or to be specialized for a given function. The secondary processor may be implemented separately from the main processor or as a part thereof. The secondary processor may control at least a portion of functions or states associated with at least one component of the computing device (100) (e.g., a display (240) or a communication circuit), for example, on behalf of the main processor while the main processor is in an inactive (e.g., sleep) state, or together with the main processor while the main processor is in an active (e.g., application execution) state.In one embodiment, the auxiliary processor (e.g., an image signal processor or a communication processor) may be implemented as part of another functionally related component (e.g., a communication circuit). In one embodiment, the auxiliary processor (e.g., a neural network processing unit) may include a hardware structure specialized for processing artificial intelligence models. Meanwhile, the operation of the computing device (100) described below may be understood as the operation of the processor (110).
[0060] According to various embodiments, the memory (120) may include at least one memory, at least some of which are implemented to provide different functions. The memory (120) may store various data used by at least one component (e.g., the processor (110)) of the computing device (100). The data may include, for example, software (e.g., a program) and input data or output data for instructions related thereto. The memory (120) may include volatile memory or non-volatile memory. The memory (120) may be implemented to store an operating system, middleware or applications, and / or the artificial intelligence model described above.
[0061] Additionally, the memory (120) may include a plurality of instructions (121) that direct the operations of the processor (110) to implement the functions provided by the service. At this time, the processor (110) may execute at least some of the plurality of instructions stored in the memory (120). The computing device (110) may include a software server including the processor (110) that executes the functions provided by the service based on at least some of the plurality of instructions.
[0062] The storage device (130) can provide a mass storage device to the computing device (100). The storage device (130) can be a computer-readable medium. For example, the storage device (130) can be a floppy disk device, a hard disk device, an optical disk device, a tape device, a flash memory or other similar solid-state memory device, or an array of devices including a storage area network or other configuration device. In addition, a computer program product is explicitly embodied in an information medium. The computer program product includes instructions that, when executed, perform one or more methods as described above. The information medium is a computer-readable medium or a machine-readable medium, such as the memory (120), the storage device (130), or the memory of the processor (110).
[0063] Additionally, the storage device (130) may include a database (DB). The storage device (130) may include a database having a pre-structured data structure. The computing device (110) may store data sets having interrelated relationships in the database.
[0064] A computing device according to the present disclosure can provide services based on various artificial intelligence frameworks performed by at least one processor and a memory electronically connected to at least one processor.
[0065] In this regard, the memory (120) or storage device (130) may store at least one artificial intelligence model implementing various types of artificial intelligence (or machine learning) frameworks that can be trained to perform a given task. For example, support vector machines, decision trees, neural networks, etc. are just a few examples of machine learning frameworks used in various applications such as image processing and natural language processing. Some artificial intelligence frameworks, such as neural networks, may utilize layers of nodes that perform specific operations.
[0066] In a neural network, nodes are connected to each other through one or more edges. A neural network may include an input layer, an output layer, and one or more intermediate layers. Each node may process its inputs according to a predefined function and provide output to subsequent layers, or in some cases, previous layers. The input to a particular node may be multiplied by a weight value corresponding to the edge between the input and the node. Additionally, each node may have a separate bias value used to generate the output. Various learning procedures can be applied to learn the edge weights and / or bias values (parameters).
[0067] A neural network architecture may have multiple layers that perform different specific functions. For example, one or more layers of nodes may collectively perform specific operations, such as pooling, encoding, or convolution operations. As used herein, the term "layer" may refer to a group of nodes that share inputs and outputs, such as communicating with external sources or other layers of the network. The term "calculation" may refer to a function that can be performed by one or more layers of nodes. The term "model structure" may refer to the overall architecture of a layered model, including the number of layers, the connectivity of the layers, and the types of operations performed by individual layers. The term "neural network structure" may refer to the model structure of a neural network. The terms "trained model" and / or "tuned model" may refer to the model structure along with the parameters for the trained or tuned model structure. For example, two trained models may have different values for parameters even though they share the same model structure, such as when they are trained on different training data or when the training process has an underlying probabilistic process.
[0068] "Transfer learning" is a broad approach for training models with limited task-specific training data for a specific task. In transfer learning, a model is first pretrained on another task for which valuable training data is available, and then adapted to a specific task using task-specific training data.
[0069] The term "pre-training," as used herein, refers to training a model on a pre-training dataset to adjust model parameters in a manner that allows subsequent adjustments of those model parameters to tailor the model to one or more specific tasks. In some cases, pre-training may involve a self-supervised learning process on unlabeled training data, where the "self-supervised" learning process involves learning from the structure of pre-training examples in the absence of explicit (e.g., manually provided) labels. Subsequent modification of the model parameters obtained through pre-training is referred to herein as "tuning." Tuning may be performed for one or more tasks using supervised learning on explicitly labeled training data, and in some cases, a task different from pre-training may be used for tuning.
[0070] A communication bus (not shown) may be a configuration for electronically (or communicatively) connecting multiple components included in a computing device. That is, each component may be interconnected using various buses and mounted on a common motherboard or in another suitable manner.
[0071] The input / output interface (not shown) may include an input interface that is connected to an input device and receives an input signal, or an output interface that is connected to an output device and outputs an output signal.
[0072] Additionally, the computing device (100) may further include at least one communication circuit (140) for communicating with an external device.
[0073] The communication circuit (140) may support the establishment of a direct (e.g., wired) communication channel or a wireless communication channel between the computing device (100) and an external computing device, and the performance of communication through the established communication channel. The communication circuit may operate independently from the processor (110) (e.g., a program processor) and may include one or more communication processors (e.g., communication chips) that support direct (e.g., wired) communication or wireless communication. According to one embodiment, the communication circuit (140) may include a wireless communication module (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module (e.g., a local area network (LAN) communication module, or a power line communication module). Among these communication modules, the corresponding communication module can communicate with an external computing device via a first network (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network (e.g., a long-range communication network such as a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., a local area network or a wide area network)). These various types of communication modules can be integrated into a single component (e.g., a single chip) or implemented as multiple separate components (e.g., multiple chips). The wireless communication module can identify or authenticate the computing device (100) within a communication network such as the first network or the second network by using subscriber information stored in the subscriber identification module (e.g., an international mobile subscriber identity (IMSI)). The wireless communication module can support a 5G network subsequent to a 4G network and next-generation communication technologies, such as new radio access technology (NR).NR access technology can support high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimizing terminal power and connecting multiple terminals (mMTC (massive machine type communications)), or high-reliability and low-latency communications (URLLC (ultra-reliable and low-latency communications)). The wireless communication module can support, for example, a high-frequency band (e.g., mmWave band) to achieve a high data transmission rate. The wireless communication module can support various technologies to secure performance in the high-frequency band, such as beamforming, massive multiple-input and multiple-output (MIMO), full dimensional MIMO (FD-MIMO), array antenna, analog beam-forming, or large scale antenna. The wireless communication module can support various requirements specified in a computing device (100), an endoscope device, or a network system. According to one embodiment, the wireless communication module can support a peak data rate (e.g., 20 Gbps or more) for eMBB implementation, a loss coverage (e.g., 164 dB or less) for mMTC implementation, or a U-plane latency (e.g., 0.5 ms or less for downlink (DL) and uplink (UL) each, or 1 ms or less for round trip) for URLLC implementation.
[0074] The computing device (100) may be implemented to include at least some of the above-described components (processor, communication circuitry, memory, display). For example, a user device may be implemented to include a processor, communication circuitry, memory, sensors, and a display. Additionally, for example, a server device may be implemented to include a processor, communication circuitry, and memory.
[0075] FIG. 2 is a diagram illustrating various data processing methods included in a data clinic service provided by a computing device according to various embodiments.
[0076] Referring to FIG. 2, the data clinic service may include various data processing methods. These various data processing methods may be encoded and stored in the memory of the computing device, and at least one processor included in the computing device may be configured to execute at least one encoded instruction. Specifically, at least one processor may process a received input data set based on the various data processing methods and output an output data set.
[0077] For example, a computing device according to various embodiments of the present disclosure may perform, but is not limited to, an operating method for data imaging, an operating method for data enhancement, an operating method for data generation, an operating method for data feature extraction, or an operating method for data evaluation.
[0078] Additionally, each of the above-described operating methods can be performed based on operating algorithms of at least one processor included in the computing device.
[0079] For example, a computing device according to various embodiments of the present disclosure may perform, but is not limited to, a data imaging algorithm, a data enhancement algorithm, a data generation algorithm, a data feature extraction algorithm, or a data evaluation algorithm.
[0080] At this time, the names of each operation method and algorithm are arbitrarily named according to the output results for the convenience of explanation, so each operation method or algorithm is only defined based on the operations performed by the processor, and the name of the operation method or algorithm itself does not limit the invention.
[0081] More specifically, a computing device according to various embodiments of the present disclosure can process an input data set according to a data imaging algorithm to generate an image for the input data set.
[0082] Additionally, a computing device according to various embodiments of the present disclosure can improve data by processing an input data set according to a data improvement algorithm, and can generate a result of the improvement.
[0083] Additionally, a computing device according to various embodiments of the present disclosure can generate synthetic data by processing an input data set according to a data generation algorithm.
[0084] Additionally, a computing device according to various embodiments of the present disclosure can process an input data set according to a data feature extraction algorithm to extract a property of the input data set.
[0085] Additionally, a computing device according to various embodiments of the present disclosure can process an input data set according to a data evaluation algorithm to evaluate the quality of the input data set.
[0086] Details of each of the above algorithms are explained below.
[0087] Furthermore, the computing device according to various embodiments of the present disclosure can perform the various operation methods or algorithms described above in parallel, sequentially, or selectively. Specifically, the computing device can use the same input data as input values for different algorithms in parallel, can use the result values output by a specific algorithm sequentially as input values for another algorithm, or can selectively perform some of the algorithms among a plurality of algorithms according to a predetermined method.
[0088] In addition, the various operation methods or algorithms for the data clinic described above can be performed in a deep learning model included in a computing device according to various embodiments of the present disclosure. Specifically, the computing device according to various embodiments of the present disclosure may include one deep learning model for performing the various operation methods or algorithms described above, but is not limited thereto, and may include multiple deep learning models for performing each of the operation methods or algorithms described above, or may include one or more deep learning models for performing at least some of the various operation methods or algorithms described above.
[0089] Figure 3 is a diagram illustrating various systems for providing data clinic services according to various embodiments, as well as artificial intelligence models and algorithms for constructing such systems. Here, a system may refer to a system that includes at least one software or hardware configuration to perform a specific function.
[0090] Referring to FIG. 3, a computing device according to the present disclosure may include a data clinic system composed of various artificial intelligence (or neural network, machine learning, etc.) models to provide clinic services.
[0091] For example, the computing device may include, but is not limited to, a data imaging system, a data diagnostic system, and a data treatment system.
[0092] Here, the data imaging system may include, but is not limited to, a lens processing model for determining an optimal dimension for representing the characteristics of the data, an imaging model for obtaining a data image reflecting the inherent characteristics of the data, or a visualization model for visually representing the data.
[0093] Additionally, the data diagnosis system may include, but is not limited to, a diagnosis model for diagnosing at least one characteristic of data or a quality assessment model for evaluating the quality of data.
[0094] Additionally, the data treatment system may include, but is not limited to, a synthetic model (or generation model) for generating targeted virtual data (or synthetic data) as needed, a data diet model for removing at least a portion of the data, or a data correction model for adjusting the characteristics of at least a portion of the data.
[0095] Various machine learning models included in a computing device may be comprised of multiple modules stored in memory. In the present disclosure, a module may include multiple hardware components for implementing an artificial intelligence model that performs a specific function. For example, a module may include, but is not limited to, an encoder, a decoder, a generator, a discriminator, an adapter, a natural language processing module, or a large language model (LLM).
[0096] The computing device can store the plurality of modules described above, and can construct an AI framework based on at least some of the modules to obtain an AI model for a data clinic. For example, a data lens included in a data imaging system can be implemented as an AI model including at least one encoder or at least one adapter, but is not limited thereto.
[0097] FIG. 4 is a diagram illustrating a method for a computing device to provide a data image according to various embodiments.
[0098] Referring to FIG. 4, a computing device according to various embodiments of the present disclosure may receive a data set and provide an Image of Data (IOD).
[0099] At this time, the data set may be data of dimension M (M>0). In other words, the data set may be a data set defined on an M-dimensional input space (310).
[0100] Additionally, the data set may be a single-modality data set. For example, the data set may be an image data set. Additionally, the data set may be a text data set. Furthermore, without limitation, the data set may be a collection of data with different modalities. For example, the data set may be an image data set including annotation information. Additionally, the data set may be a mixed data set of images and text.
[0101] A computing device according to various embodiments of the present disclosure can receive and process data of all modalities that can be used for deep learning, such as time series data sets, sensor data sets, as well as the image data and text data described above, as input data sets.
[0102] The data image (IOD) provided by the computing device according to various embodiments of the present disclosure may be an image that processes an input data set and displays it in an imaging space (320). Here, the image does not mean a 2D image, but is a general expression that visually represents data. Specifically, the imaging space (320) is a concept that includes a 2D space, a 3D space, and an N-dimensional virtual space, and means a space in which a data image provided according to an embodiment appears. For example, when the computing device processes the input data set and outputs the data image in PDF format, it may output an output that displays the data image in a 2D or 3D imaging space, but is not limited thereto.
[0103] When a computing device according to various embodiments of the present disclosure includes an output device (not shown), the computing device can provide a data image through the output device. For example, the computing device can provide the data image by outputting the data image through a display. In this case, the imaging space (320) may be a screen of a display. Furthermore, for example, the computing device can provide the data image by outputting the data image through a printing device. In this case, the imaging space (320) may be paper output by the printing device.
[0104] Additionally, when a computing device according to various embodiments of the present disclosure communicates with an external device via a communication unit, the computing device may provide a data image via the external device. In this case, the imaging space (320) may be a display screen of the external device. For example, when the computing device is a server device, the server device may provide the data image by transmitting the data image to at least one external device that communicates with the server device via a network connected to the server device.
[0105] A computing device according to various embodiments of the present disclosure can obtain a data image based on a vector set (or data point set, point data set, etc.) (330) corresponding to an input data set.
[0106] At this time, the computing device can obtain a vector set by mapping the data included in the input data set to an embedding space (or latent space) of a specific dimension. Specifically, the computing device can obtain a vector set by identifying a manifold formed by the data set in an embedding space of a specific dimension. Here, the manifold may refer to a shape that the input data set represents in an embedding space of a specific dimension. In other words, the manifold may refer to an area where a vector set is identified or a shape formed by a vector set when mapping the input data set to a vector set in an embedding space of a specific dimension.
[0107] An IOD (Information Object Descriptor) may be a data set that visualizes each data point within the data set. In this case, the shape or color of the visualized point may vary depending on the embodiment, and therefore the term "point" itself is not intended to limit the invention. Furthermore, a point may be expressed using various terms depending on the embodiment. For example, a point may be expressed using terms such as a vector or feature appearing in an embedding space or latent space, but is not limited thereto.
[0108] In order for a computing device according to various embodiments of the present disclosure to provide a data image, as described above, it is necessary to identify a vector set corresponding to the input data set.
[0109] The computing device can obtain a vector set by mapping the data set to an N-dimensional embedding space based on a predefined condition defined by a mapping function (e.g., a pre-stored matrix for mapping to an embedding space of a specific dimension). For example, the computing device can obtain a vector set by encoding the data set, but is not limited thereto. For example, the computing device can input the data set to a pre-trained encoder and obtain a vector set through the output layer of the encoder, but is not limited thereto.
[0110] Here, embedding refers to the process of converting high-dimensional data into low-dimensional vectors, preserving similarities and structural relationships between data points. This embedding is performed in a way that preserves the core information of the data while increasing computational efficiency. During the embedding process, each data point is represented as a vector, and these vectors can reflect the distribution and characteristics of the entire data set. This provides a foundation for analyzing the statistical characteristics and inherent patterns of the data set.
[0111] A computing device may include a data lens (400) for obtaining a data image (IOD) by embedding and visualizing a data set. At this time, the data lens (400) may include at least one processing configuration for processing data. Specifically, the data lens (400) may include at least one neural network model (e.g., an encoder, etc.) for obtaining a vector set based on the data set and at least one visualization model (e.g., PCA, T-SNE, UMAP, etc.) for visualizing the data set based on the vector set to obtain a data image. Specifically, the data lens (400) may obtain a vector set corresponding to the data set by embedding the data set in an N-dimensional latent space, and may obtain a data image (IOD) corresponding to the data set by representing the vector set in an M-dimensional (e.g., 2-dimensional or 3-dimensional) imaging space (320).
[0112] FIG. 5 is a diagram illustrating a method for a computing device to obtain characteristics of a data set according to various embodiments.
[0113] Referring to FIG. 5, the computing device can process the acquired data set to obtain characteristic information corresponding to the data set.
[0114] The properties of a data set or data may include information related to the distribution (e.g., geometric distribution or statistical distribution) of the data set or data. Specifically, the properties may include the property values of each data included in the data set. For example, a computing device may obtain property information indicating the distribution of the property values of the data included in the data set. Furthermore, the computing device may obtain the property information of the data set based on the statistical distribution, such as the mean, deviation, or variance, of the property values of each data.
[0115] For example, the properties of a data set or data may include intrinsic characteristics related to the distribution of the data set itself. For example, the properties of a data set or data may include, but are not limited to, the density, homogeneity, bias, or distribution of the data set or data.
[0116] As another example, the properties of a data set or data may include task-dependent properties related to the task for which the data set is utilized (e.g., classification). For example, the properties of a data set or data may include, but are not limited to, the labeling error rate or the proportion of data pairs that are geometrically adjacent (hard-negative) but belong to different classes.
[0117] Additionally, the computing device may store computational metrics corresponding to each characteristic of the data set or data in memory. More specifically, the computing device may store, but is not limited to, metrics for computing the density of the data set or data, metrics for computing the homogeneity of the data set or data, metrics for computing the bias of the data set or data, metrics for computing the distribution of the data set or data, etc.
[0118] Additionally, the computing device can acquire data set characteristics based on stored operational metrics, using a data feature extraction algorithm built using an artificial neural network. Specifically, the feature extraction algorithm can be implemented using a feed-forward neural network.
[0119] For example, the computing device may include, but is not limited to, a separate neural network for computing characteristics of a data set, or may include a neural network including layers for computing characteristics of a data set.
[0120] For example, a computing device may include an artificial neural network for feature extraction designed to extract features of a data set when inputted with the data set. The artificial neural network for feature extraction may be an artificial neural network that has undergone transfer learning to compute the features of the data.
[0121] As another example, a computing device can acquire characteristics of a data set by constructing an artificial neural network that adds a layer for extracting data characteristics to a neural network model (e.g., a data lens, an encoder, etc.) for providing data images based on the data set. Specifically, the computing device can identify a vector set based on the data set and acquire characteristics of the data set or data based on the identified vector set.
[0122] At this time, the computing device can obtain the characteristic value of each data included in the data set by processing each vector included in the vector set with a predetermined algorithm. In this case, the computing device can calculate the characteristic value based on the geometric distribution or statistical distribution of each vector included in the vector set, and can assign the calculated characteristic value to the corresponding data. At this time, the characteristic value can be calculated based on the distance between vectors. For example, the characteristic value can be obtained based on the number of vectors existing within a predetermined distance from a specific vector (or data point), but is not limited thereto. In addition, for example, the characteristic value can be obtained based on the average value of the distances from a specific vector to a predetermined number of nearby vectors, but is not limited thereto. For example, the computing device can calculate the average distance value based on the distance values from a specific vector to K nearby vectors, and can obtain the first characteristic value (e.g., density, etc.) of the specific vector based on the calculated average distance value, but is not limited thereto.
[0123] In order to optimize the framework of an artificial intelligence model and produce highly accurate results, the quality of the data used to train the model is very important.
[0124] As mentioned above, data quality is a concept that includes both quantitative and qualitative quality. Therefore, for successful training of an artificial intelligence model, it is necessary to (i) secure a sufficient amount of training data to train the artificial intelligence model, (ii) secure training data with high-quality inherent characteristics (e.g., unbiased distribution), and (iii) secure training data with characteristics (e.g., task-dependent properties) appropriate for the training purpose (e.g., task of the artificial intelligence model).
[0125] A computing device according to one embodiment of the present disclosure can synthesize, modify (or adjust), or remove data in a way that enhances the inherent characteristics and task-dependent characteristics of the data set to obtain high-quality learning data.
[0126] In addition, the computing device according to the present disclosure can improve the overall quality of a data set by removing at least some data from the data set.
[0127] Typically, data downsampling or undersampling techniques are used to address data imbalance. However, existing undersampling methods have the disadvantage of negatively impacting the learning performance of machine learning models, as they remove data without considering the characteristics of the machine learning dataset.
[0128] A computing device according to the present disclosure can improve the learning efficiency of an artificial intelligence model that is learned by appropriately removing at least some data from a data set.
[0129] FIG. 6 is a diagram illustrating an example of a computing device using at least one data processing model to improve the quality of a data set, according to various embodiments.
[0130] Referring to FIG. 6, the computing device can identify a first vector set (6220) based on a data set (6210) using a first model (6200).
[0131] At this time, the computing device can determine at least one characteristic of data included in the data set (6210) based on the first vector set (6220), and can determine a data processing algorithm based on the determined at least one characteristic. Specifically, the computing device can generate (or synthesize) data, remove data, or correct data to improve the quality of the data set by improving the characteristics of the data set.
[0132] For example, the computing device may input the first sub-vector set (6230) included in the first sub-space (6221) of the embedding space in which the first vector set (6220) appears into the first model (6201, e.g., data diet model). In this case, the first sub-space (6221) may be a space in which at least one vector with a relatively high first characteristic (e.g., density) appears. That is, the computing device may identify the first sub-space (6221) by extracting at least one sub-space with a relatively high data density from the first vector set (6220).
[0133] The computing device can obtain a corrected first sub-vector set (6235) based on the first sub-vector set (6230) using the first model (6201). Specifically, the computing device can obtain the corrected first sub-vector set (6235) by removing at least some of the plurality of vectors included in the first sub-vector set (6230).
[0134] Additionally, for example, the computing device may input a second sub-vector set (6240) included in a second sub-space (6222) of the embedding space in which the first vector set (6220) appears into the second model (6202, e.g., data generation model). In this case, the second sub-space (6222) may be a space in which at least one vector with a relatively low first characteristic (e.g., density) appears. That is, the computing device may identify the second sub-space (6222) by extracting at least one sub-space with a relatively low data density from the first vector set (6220).
[0135] The computing device can obtain a corrected second sub-vector set (6245) based on the second sub-vector set (6240) using the second model (6202). Specifically, the computing device can obtain the corrected second sub-vector set (6245) by inputting a latent code corresponding to an arbitrary area on the second sub-space (6222) into the data generation model to generate data.
[0136] Additionally, for example, the computing device may input a third sub-vector set (6250) included in a third sub-space (6223) of the embedding space in which the first vector set (6220) appears into a third model (6203, e.g., data adjustment model). In this case, the third sub-space (6223) may be a space in which vectors located at the boundary between data groups (e.g., labeling data, clusters, etc.) with different second characteristics (e.g., classes) appear. That is, the computing device may identify the third sub-space (6223) by extracting at least one sub-space in which vectors with different classes are located on the first vector set (6220).
[0137] The computing device can obtain a corrected third sub-vector set (6255) based on the third sub-vector set (6250) using the third model (6203). Specifically, the computing device can obtain the corrected third sub-vector set (6255) by adjusting the characteristic value of at least one vector among a plurality of vectors included in the third sub-space (6223).
[0138] Figure 7 is a diagram illustrating experimental data on the correlation between the volume of learning data and the learning efficiency of an artificial intelligence model.
[0139] Referring to Figures 7 (a) and (b), it can be seen that even when the size of the training data set is reduced to a certain level, the accuracy according to training is maintained at a high level, and the time required for training is dramatically reduced. Specifically, even when the amount of data is reduced from 100% to 10%, the classification accuracy (the upper graph of the two graphs shown in Figures 7 (a) and (b)) decreases gradually by about 1%, from 0.9925 to 0.9800, while the training time decreases by more than 500%, from 40 seconds to 5 seconds.
[0140] In this disclosure, we propose a data diet method that improves the quality of a data set by dramatically reducing the time and cost required for learning while maintaining learning efficiency, in addition to solving the problem of imbalance in learning data.
[0141] FIG. 8 is a diagram illustrating a method for a computing device to remove at least a portion of a data set using a pre-trained artificial intelligence model, according to various embodiments.
[0142] Referring to FIG. 8, the computing device can sample and remove at least some of the data included in the data set in a predetermined manner using a pre-learned artificial intelligence model (4500).
[0143] For example, referring to (a) of FIG. 8, a computing device can input first input data (4510) into an artificial intelligence model (4500), and the artificial intelligence model (4500) can obtain first output data (4520) by removing at least some of the data included in the first input data (4510).
[0144] At this time, the first input data (4510) may include a first data set (4511) and / or a first data point set (4512) (or a first data image) corresponding to the first data set (4511). Here, the first data point set (4512) may be data obtained by mapping the first data set (4511) to a specific embedding space.
[0145] Additionally, the first output data (4520) may include a first processed data set (4521) and / or a first processed data point set (4522) (or a first processed data image).
[0146] Specifically, the computing device can obtain the first processed data set (4521) by removing at least some of the data included in the first data set (4511). Alternatively, the computing device can obtain the first processed data point set (4522) by removing at least some of the data points included in the first data point set (4512), and obtain the first processed data set (4521) based on the first processed data point set (4522).
[0147] Similarly, referring to (b) of FIG. 8, the computing device can obtain a second processed data set (4541) by removing at least some of the data included in the second data set (4531). Alternatively, the computing device can obtain a second processed data point set (4542) by removing at least some of the data points included in the second data point set (4532), and obtain the second processed data set (4541) based on the second processed data point set (4542).
[0148] Referring to FIG. 8, the input data sets (4511, 4531) may be data including annotation data or labeling, or may be data not including annotation data or labeling. For example, the first data set (4511) may be data including label data, and the second data set (4531) may be data not including label data.
[0149] FIG. 9 is a diagram illustrating a method for a computing device to propose a data diet by selecting target data based on sampling parameters according to various embodiments.
[0150] Referring to FIG. 9, a computing device or at least one processor included in the computing device may obtain characteristic information of a first data set by determining a plurality of characteristic values corresponding to a plurality of data included in the first data set (S910). In addition, the at least one processor may determine at least one sampling parameter based on the characteristic information of the first data set (S920). Since the characteristic information of the data set and the method for obtaining the characteristic information have been described above, they will be omitted. In addition, the at least one processor may determine at least one target data based on the at least one sampling parameter (S930). In addition, the at least one processor may obtain a second data set excluding at least one target data from the first data set (S940).
[0151] The computing device or at least one processor included in the computing device can determine at least one sampling parameter based on at least one distance characteristic corresponding to data included in the data set.
[0152] At this time, at least one distance characteristic may include a distance value to at least one data adjacent to the specific data. For example, at least one distance characteristic may include multiple distance values from the specific data to N predetermined adjacent data.
[0153] Additionally, at least one distance characteristic may include a first distance characteristic and a second distance characteristic that are distinguished based on a distance measurement target from specific data. Specifically, the at least one distance characteristic may include a first distance characteristic determined based on a distance value between data included in the same cluster, and a second distance characteristic determined based on a distance value between data included in different clusters.
[0154] As a specific example, the first distance feature may include, but is not limited to, at least one distance value (intra-distance) to adjacent data included in the same cluster as the specific data. Furthermore, the second distance feature may include, but is not limited to, at least one distance value (inter-distance) to adjacent data included in a different cluster (e.g., an adjacent cluster) from the specific data.
[0155] At this time, at least one cluster may be distinguished based on a label assigned to the data or by a pre-stored clustering algorithm. In this case, the clustering algorithm may include, but is not limited to, an unsupervised learning-based deep learning algorithm, and may include any clustering algorithm readily apparent to those skilled in the art.
[0156] A computing device may select at least one target data item by considering the distribution of data included in a data set. Specifically, at least one processor may determine at least one sampling parameter associated with the distribution of data based on at least one distance characteristic corresponding to the data included in the data set, and may determine at least one target data item based on the determined at least one sampling parameter.
[0157] At this time, at least one sampling parameter may include a first sampling parameter associated with a density characteristic of data. The density characteristic of data in the present disclosure is a term used to define the density of specific data in a data set, and is not intended to limit the invention by the meaning of the term itself.
[0158] At least one processor may determine a first sampling parameter associated with a density characteristic of the data based on at least one distance characteristic. Specifically, the at least one processor may calculate a density value of the specific data based on at least one distance value from the specific data to adjacent data, and may determine the density characteristic of the specific data based on the calculated density value.
[0159] Additionally, at least one sampling parameter may include a second sampling parameter associated with a boundary characteristic of the data. The boundary characteristic of data in the present disclosure is a term used to define the extent to which specific data in a data set corresponds to a boundary region between clusters, and is not intended to limit the invention by its own meaning.
[0160] At least one processor may determine a second sampling parameter associated with an edge characteristic of the data based on at least one distance characteristic. Specifically, the at least one processor may determine the degree to which the specific data is adjacent to a cluster boundary by inferring a relative position (e.g., a position in a distribution, a position in an embedding region, etc.) of the specific data based on at least one distance value from the specific data to adjacent data. As a specific example, the at least one processor may determine an edge characteristic of the specific data based on a second distance characteristic including at least one distance value from the specific data to data included in a different cluster. More specifically, the at least one processor may determine, based on the second distance characteristic, the specific data as having a closer distance to an adjacent cluster (i.e., a higher probability of being located at the boundary of a cluster) than other data. In this case, the at least one processor may assign a first edge characteristic (e.g., a value determined to be located at the boundary) to a predetermined number of data having a close distance to an adjacent cluster, but is not limited thereto.
[0161] The computing device can select at least one target data based on a first sampling parameter associated with the density of the data and a second sampling parameter associated with the boundary characteristics of the data. Specifically, the at least one processor can determine the at least one target data by determining at least one data having a relatively high density and not located at the boundary of a cluster based on the first sampling parameter and the second sampling parameter. For example, the at least one processor can determine the at least one target data by determining at least one data that is located in a data-dense area and not located at the boundary of a cluster, but is not limited thereto.
[0162] Additionally, in this case, the computing device can determine a third sampling parameter based on a first sampling parameter associated with a density characteristic of the data and a second sampling parameter associated with a boundary characteristic of the data, and can select at least one target data based on the third sampling parameter. At this time, the third sampling parameter may be a parameter indicating the importance of the data. For example, at least one processor can determine at least one target data by selecting N pieces of data having a value corresponding to the third sampling parameter that is smaller or larger.
[0163] For example, at least one processor may be configured to assign a higher priority to data with a lower density. However, at least one processor may determine data as outlier data if the data density falls below a predetermined threshold. The computing device may be configured to provide information about outlier data or include outlier data in the target data.
[0164] Additionally, for example, at least one processor can be configured to assign a higher importance to data closer to the boundary between clusters.
[0165] Additionally, the computing device can determine at least one target data by taking into account at least one additional parameter.
[0166] For example, the computing device may further consider user-specified parameters to determine at least one target data. Specifically, the computing device may be configured to not select data assigned specific parameters by the user (e.g., data set not to be removed by the user) as target data. Alternatively, the computing device may be configured to select data assigned specific parameters by the user (e.g., data set not to be removed by the user) as target data.
[0167] Additionally, for example, the computing device may determine at least one target data item by further considering parameters associated with the task. Specifically, the computing device may determine at least one target data item excluding data corresponding to a case in which an AI model requires learning to perform a specific task.
[0168] Additionally, the computing device can acquire characteristic information of a second data set based on a second data set from which at least one target data item is excluded from the first data set. In this case, the computing device can provide data improvement suggestions based on a data diet by providing the characteristic information of the first data set and the characteristic information of the second data set.
[0169] A computing device according to one embodiment of the present disclosure can evaluate the quality of a data set. Specifically, the computing device can evaluate the quality of the data set based on pre-stored quality assessment metrics.
[0170] A computing device can evaluate the quality of a data set by calculating at least one predetermined quality evaluation indicator based on the data set or data characteristic information. Specifically, the computing device can calculate at least one quality evaluation indicator corresponding to the data set and, by combining the calculated at least one evaluation indicator, produce an output value indicating the quality of the data set.
[0171] For example, a computing device may evaluate the quality of a data set based on its distribution characteristics. Here, the distribution characteristics may include characteristics related to the distribution of data included in the data set. For example, the distribution characteristics may include, but are not limited to, statistical indicators (e.g., variance, standard deviation, or mean) of characteristic values (e.g., density, etc.) of data included in the data set. Specifically, the computing device may calculate density values of a plurality of data included in the data set, calculate distribution characteristics of the data set based on the plurality of density values, and evaluate the quality of the data set based on the calculated distribution characteristics of the data set. For example, the computing device may evaluate that the quality is higher as the density of data included in the data set is more homogeneous, but is not limited thereto. As a specific example, the computing device can produce at least one indicator related to the quality of the data set by measuring consistency between data, missing values in the data set, balance between classes included in the data set, geometric properties (e.g., number of clusters, etc.), or distribution properties (e.g., number of data per cluster, etc.).
[0172] As another example, a computing device can evaluate the quality of a data set based on its performance characteristics. In this case, the performance characteristics of the data set in the present disclosure are terms used to define performance indicators calculated when the data set is actually utilized (e.g., training an artificial intelligence model, etc.), and are not intended to limit the present invention to the meaning of the term itself. For example, the performance characteristics may include, but are not limited to, the performance of a model trained based on the data set (e.g., accuracy, precision, recall, or F1 score, etc.) or the power consumption required during training.
[0173] As another example, a computing device can evaluate the AI suitability of a data set. Specifically, the computing device can evaluate whether the data set satisfies various AI-related suitability indices. At this time, the AI suitability of the data set in the present disclosure is a term used to define suitability indices considered when actually utilizing the data set for AI (e.g., learning, verifying, or evaluating an AI model), and is not intended to limit the present invention to the meaning of the term itself. For example, the computing device can evaluate whether the data set satisfies international regulations related to AI data, governance suitability, and various AI suitability indices (e.g., standards related to AI-ready data), but is not limited thereto.
[0174] FIG. 10 is a diagram illustrating a method for a computing device to evaluate a data set and generate a feature graph, according to various embodiments.
[0175] A computing device can obtain result data by evaluating a data set in a predetermined manner. Specifically, the computing device can obtain performance characteristics of the data set using an evaluator. For example, referring to (a) of FIG. 10, the computing device can input a data set into an evaluator and obtain result data reflecting the performance characteristics of the data set. At this time, the evaluator may include at least one artificial intelligence model. In this case, the result data may include, but is not limited to, a performance value (e.g., accuracy, etc.) of the artificial intelligence model evaluated by the data set. In addition, and not limited thereto, the evaluator may include a code set storing at least one metric function for calculating the performance characteristics of the data set. For example, the evaluator may include, but is not limited to, a code set storing at least one instruction for calculating the variance of the density of the data set or the amount of power generated during artificial intelligence learning using the data set.
[0176] In addition, the computing device can obtain a processed data set by processing the data set in a predetermined manner. Specifically, the computing device can obtain a processed data set by processing the data set using a data processor. For example, referring to (b) of FIG. 10, the computing device can obtain a processed data set by inputting the data set to the processor and processing at least a portion of the data set. As a specific example, the computing device can obtain a processed data set by removing at least a portion of the data set, generating data, or adjusting data using the processor. In this case, the processor may include at least one artificial intelligence model for processing the data. For example, the processor may include at least one generation model for generating data, but is not limited thereto. In addition, the processor may include a code set storing at least one instruction for removing at least a portion of data included in the data set, but is not limited thereto.
[0177] In addition, the computing device can generate a characteristic graph reflecting the performance characteristics of the data set based on the result data produced by evaluating the data set and the processed data set in a predetermined manner. As a specific example, referring to (b) of FIG. 10, the computing device can obtain first result data corresponding to the data set and second result data corresponding to the processed data set using an evaluator, and can generate a characteristic graph using an estimator. At this time, the estimator may include, but is not limited to, a code set storing at least one instruction for generating a characteristic graph based on a change in the result data due to a change in the data set as the data set is processed (e.g., a change in the volume of data due to data removal). That is, the computing device can obtain a characteristic graph corresponding to the data set by estimating a correlation between the volume of data and the result data using the estimator.
[0178] FIG. 11 is a diagram illustrating a method for a computing device to generate a characteristic graph according to various embodiments.
[0179] A computing device can generate a characteristic graph of a data set that reflects changes in performance characteristics according to data volume by removing data through a data diet and measuring the performance characteristics of the remaining sampled data set.
[0180] Specifically, referring to FIG. 11, a computing device or at least one processor included in the computing device performs an operation (S1101) of obtaining a vector set corresponding to the data set by embedding the data set in an embedding area of a specific dimension, an operation (S1103) of inputting the data set to an evaluator to obtain first result data, an operation (S1105) of obtaining a plurality of characteristic values corresponding to each of the data included in the data set based on a plurality of vectors included in the vector set, an operation (S1107) of selecting at least one target data from the data set based on the plurality of characteristic values and obtaining a first sampling data set excluding at least one target data from the data set, an operation (S1109) of inputting the first sampling data set to an evaluator to obtain second result data, an operation (S1111) of estimating a correlation between the result data for the data volume based on the first result data and the second result data, and an operation of generating a characteristic graph of the data set reflecting the estimated correlation. (S1113) can be set to perform.
[0181] At this time, at least one processor can select at least one target data based on at least one sampling parameter reflecting the importance of the data. Furthermore, in this case, at least one processor can repeatedly perform operations S1107 and S1109 by sequentially removing data according to importance, thereby obtaining a large amount of result data, and thus accurately estimating the correlation between result data for the data volume.
[0182] FIG. 12 is a diagram illustrating another method for a computing device to generate a feature graph according to various embodiments.
[0183] A computing device can generate a characteristic graph of a data set that reflects changes in performance characteristics according to data volume by measuring the performance characteristics of a sampled data set to which data has been added through data bulking.
[0184] Specifically, referring to FIG. 12, the computing device or at least one processor included in the computing device performs an operation (S1201) of obtaining a vector set corresponding to the data set by embedding the data set in an embedding area of a specific dimension, an operation (S1203) of inputting the data set to an evaluator to obtain first result data, an operation (S1205) of obtaining a plurality of feature values corresponding to each of the data included in the data set based on a plurality of vectors included in the vector set, an operation (S1207) of generating at least one target vector based on the plurality of feature values and generating at least one synthetic data based on the at least one target vector, an operation (S1209) of inputting a second sampling data set including the data set and at least one synthetic data to the evaluator to obtain third result data, an operation (S1211) of estimating a correlation between the result data for the data volume based on the first result data and the third result data, and an operation of generating a feature graph of the data set reflecting the estimated correlation. (S1213) can be set to perform.
[0185] FIG. 13 is a diagram illustrating a method for a computing device to generate a comparison characteristic graph according to various embodiments.
[0186] Referring to FIG. 13, a computing device or at least one processor included in the computing device may perform an operation (S1301) of obtaining a vector set corresponding to the data set by embedding the data set in an embedding area of a specific dimension, and an operation (S1303) of inputting the data set into an evaluator to obtain first result data.
[0187] At least one processor can generate a comparison feature graph that compares a feature graph obtained by performing a data diet based on the importance of the data and a feature graph obtained by randomly removing data.
[0188] Specifically, at least one processor may be configured to perform an operation (S1305) of selecting a first target data set based on at least one sampling parameter reflecting the importance of data, in order to obtain a characteristic graph according to a data diet reflecting the importance of data, an operation (S1307) of obtaining a first sampling data set excluding the first target data set from the data set, an operation (S1309) of inputting the first sampling data set into an evaluator to obtain second result data, and an operation (S1311) of generating a first characteristic graph by estimating a correlation between result data for a data volume based on the first result data and the second result data.
[0189] In addition, at least one processor may be set to perform an operation (S1313) of randomly sampling a data set to select a second target data set in order to obtain a characteristic graph according to a data diet (desampling) that randomly removes data, an operation (S1315) of obtaining a second sampling data set by excluding the second target data set from the data set, an operation (S1317) of inputting the second sampling data set to an evaluator to obtain third result data, and an operation (S1319) of generating a first characteristic graph by estimating a correlation between result data for a data volume based on the first result data and the third result data.
[0190] In this case, at least one processor may be set to perform an operation (S1321) of generating a comparison characteristic graph including a first characteristic graph and a second characteristic graph.
[0191] FIG. 14 is a diagram illustrating an example of a comparative characteristic graph according to various embodiments.
[0192] Referring to FIG. 14, at least one processor can generate and provide a comparative characteristic graph including a first characteristic graph (1410) according to a data diet reflecting the importance of data and a second characteristic graph (1420) according to a data random sampling-based diet. The comparative characteristic graph reflects the correlation of artificial intelligence performance accuracy according to data volume (or data ratio). In addition, the importance of a data diet considering the importance of data can be confirmed through the comparative characteristic graph. That is, when a data diet considering the importance of data is performed by accurately measuring the distribution characteristics of data (e.g., data density, boundary proximity, etc.), unnecessary data can be removed while maintaining the performance characteristics of the data set. Accordingly, a technical effect of maintaining the performance of the artificial intelligence model while reducing the cost required for learning the artificial intelligence model can be achieved.
[0193] By visually representing indicators (e.g., distribution characteristics, performance characteristics, or artificial intelligence suitability described above) indicating the quality of a data set according to the composition of the data set through a characteristic graph or comparative characteristic graph provided by a computing device according to the present disclosure, a standard for evaluating the quality of a data set can be provided.
[0194] FIG. 15 is a diagram illustrating a method for a computing device to generate synthetic data through precision targeting according to various embodiments.
[0195] A computing device according to the present disclosure can perform an imaging method for identifying an inherent distribution of a data set, a targeting method for identifying conditions for generating data based on the imaged data, and a synthesis method for generating data according to the targeted conditions. In this case, the computing device can perform the imaging method, the targeting method, and the synthesis method by executing a code set storing at least one instruction for processing data.
[0196] Referring to FIG. 15, a computing device or at least one processor included in the computing device may provide a first data set (1501) to an imaging processor (1510) to image the first data set (1501). At this time, the imaging processor (1510) may include at least one artificial intelligence model (or neural network) for imaging the data set. The imaging processor (1510) may obtain a first vector set (1503) corresponding to the first data set (1501) by embedding the first data set (1501) in a latent space (or embedding region) of a specific dimension. At this time, the first vector set (1503) may include a plurality of vectors corresponding to each data included in the first data set (1501). For example, the computing device may provide a first data set (1501) to an input layer of at least one neural network included in an imaging processor (1510), and may obtain a first vector set (1503) from a layer (e.g., an output layer or a hidden layer, etc.) of at least one neural network, but is not limited thereto.
[0197] A computing device may provide a first vector set (1503) to a targeting processor (1520) to target conditions of data to be generated. At this time, the targeting processor (1520) may include at least one microprocessor and a calculator to calculate targeting conditions (or constraints) based on the first vector set (1503). The targeting processor (1520) may determine at least one constraint condition (1504) for generating data on an embedding region based on the first vector set (1503). At this time, the at least one constraint condition (1504) includes a constraint on data generation, and may include, for example, a constraint on a location of data to be generated on the embedding region, or a constraint based on a relationship with adjacent vectors (e.g., an interpolation metric, etc.).
[0198] The computing device may provide at least one constraint (1504) to the synthesis processor (1530) to generate data corresponding to at least one constraint (1504). Specifically, the computing device may determine a latent code based on the at least one constraint (1504) and provide the latent code to the synthesis processor (1530). In addition, without being limited thereto, the computing device may determine noise based on the at least one constraint (1504) and provide the noise to the synthesis processor (1530). In this case, the synthesis processor (1530) may include at least one artificial intelligence model (or neural network) for generating data. For example, the synthesis processor (1540) may include at least one of various generative artificial intelligence models for generating data based on latent code or noise (e.g., VAE, GAN, Vanilla GAN, DCGAN (Deep Convolutional GAN), CGAN (Conditional GAN), WGAN (Wasserstein GAN), LSGAN (Least Squares GAN), StyleGAN (Style-based GAN), StyleGAN2 / StyleGAN3 (Improved versions of StyleGAN), Diffusion model, Transformer, GPT (Generative Pretrained Transformer), BERT (Bidirectional Encoder Representations from Transformers), T5 (Text-to-Text Transfer Transformer), DALL-E (for image generation), Imagen (for image generation), Stable Diffusion (for text-to-image generation), PixelCNN, PixelSNAIL, WaveNet, etc.).The synthesis processor (1530) can generate synthetic data (1505) based on latent code corresponding to at least one constraint (1504). For example, the computing device can provide latent code (or noise) corresponding to at least one constraint (1504) to an input layer of at least one neural network included in the synthesis processor (1530) and obtain synthetic data (1505) from an output layer of at least one neural network, but is not limited thereto.
[0199] FIG. 16 is a flowchart illustrating a method for a computing device to generate synthetic data based on precision targeting, according to various embodiments.
[0200] FIG. 17 is a diagram illustrating a method for a computing device to generate synthetic data based on precision targeting according to various embodiments.
[0201] Referring to FIG. 16, a computing device or at least one processor included in the computing device may perform an operation (S1601) of acquiring a data set and an operation (S1603) of embedding the data set in an embedding region of a specific dimension using a first neural network to acquire a vector set corresponding to the data set. The computing device may image the data set by acquiring a latent vector set reflecting an intrinsic dimension of the data set through operations S1601 and S1603.
[0202] For example, referring to FIG. 17, at least one processor may obtain a vector set corresponding to the data set by providing a data set (DATASET) including first data (Ip) and at least one second data (Iq) to an imaging processor. At this time, the vector set may include a first vector (P) corresponding to the first data (Ip) and at least one second vector (Q1, Q2) corresponding to at least one second data (Iq).
[0203] Referring again to FIG. 16, at least one processor may perform an operation (S1605) of determining a targeting metric for generating synthetic code based on at least one vector included in a vector set. At this time, the synthetic code may include a latent code provided to a synthetic processor (e.g., a generative artificial intelligence model) to generate synthetic data. In addition, the targeting metric may include a function for determining the synthetic code based on a code corresponding to at least one vector. Specifically, at least one processor may determine a targeting metric corresponding to a constraint for generating data based on the latent code corresponding to at least one vector.
[0204] For example, at least one processor can determine a targeting metric by defining a targeted vector based on at least one vector.
[0205] For example, referring to FIG. 17, at least one processor can determine a targeting metric by defining a target vector based on a first vector (P) and at least one second vector (Q1, Q2) adjacent to the first vector (P). At this time, the targeting metric can be determined based on a relationship between the first vector (P) and the at least one second vector (Q1, Q2) and the target vector. That is, at least one processor can determine the targeting metric by defining a function based on a relationship between the first vector (P) and the at least one second vector (Q1, Q2) and the target vector.
[0206] FIG. 18 is a diagram illustrating a method for a computing device to determine a targeting metric by defining a target vector, according to various embodiments.
[0207] For example, at least one processor may determine a targeting metric (Linear targeting) by defining a target vector based on a linear relationship between at least two vectors. Referring to (a) of FIG. 18, at least one processor may define a target vector based on a linear relationship (e.g., a ratio of the internal or external division of the first vector and the second vector) between a first vector (P) and a second vector (Q1) adjacent to the first vector (P). As a specific example, at least one processor may define a target vector by linearly interpolating the first vector (P) and the second vector (Q1) using a specific internal division ratio. At this time, the specific internal division ratio may be set to a value greater than or equal to 0 and less than or equal to 1, and when the specific internal division ratio is 0.5, the target vector may be determined to equally reflect the characteristics of the two vectors.
[0208] As another example, at least one processor can determine a targeting metric (non-linear targeting) by defining a target vector based on a non-linear relationship between at least two vectors. Referring to (b) of FIG. 18, at least one processor can define a target vector based on a non-linear relationship between a first vector (P) and a second vector (Q1) adjacent to the first vector (P) (e.g., a ratio of the individuation or exdividuation of the first vector and the second vector along a surface of a manifold including the first vector and the second vector, or a ratio of the individuation or exdividuation of a curved path between the first vector and the second vector, etc.). For example, when the latent space has a non-linear manifold structure, the at least one processor can define the target vector by interpolating along a geodesic path between the first vector (P) and the second vector (Q1). This utilizes the shortest curve along the manifold surface instead of directly linearly connecting the two vectors.
[0209] As another example, at least one processor can determine a targeting metric (Volumetric targeting) by defining a target vector based on a relationship between at least three vectors. Referring to (c) of FIG. 18, at least one processor can define a target vector based on a relationship between a first vector (P) and two second vectors (Q1, Q2) adjacent to the first vector (P) (e.g., a specific point (e.g., a center of gravity, etc.) within a triangle connecting the first vector (P) and the two second vectors). As a specific example, the at least one processor can define the target vector using weights (w1, w2, w3) within a triangle area including the first vector (P) and the two second vectors (Q1, Q2).
[0210] These specific examples suggest a targeting method that leverages relationships between vectors in the latent space of an artificial intelligence (deep learning) model to generate new data or transform existing data. At least one processor generates a target vector with desired characteristics through linear or nonlinear interpolation, which can be used to enhance the model's diversity and expressiveness.
[0211] Additionally, the computing device can determine a targeting metric by generating constraints for data generation based on data characteristics. Specifically, at least one processor can select at least one vector for determining a targeting metric by considering characteristic values (e.g., density or boundary proximity) of multiple data items included in the data set.
[0212] For example, at least one processor may determine a targeting metric by determining constraints requiring data generation based on the density of the data. Specifically, at least one processor may define a target vector by determining a latent code corresponding to a region with a relatively low data density in the embedding region. For example, at least one processor may determine at least one vector corresponding to a region with a relatively low data density in the embedding region, and may determine the targeting metric by defining the target vector based on a relationship between the at least one vector, but is not limited thereto.
[0213] Computing devices can improve the performance of AI models by generating data corresponding to low-density areas and learning in a balanced manner across different cases.
[0214] As another example, at least one processor may determine a targeting metric by determining constraints that require data generation based on boundaries between clusters. Specifically, at least one processor may define a target vector by determining a latent code corresponding to a boundary region between clusters in the embedding region. For example, at least one processor may determine a targeting metric by defining a target vector based on a relationship between at least one vector corresponding to a boundary region between clusters in the embedding region, but is not limited thereto.
[0215] The computing device can improve the discrimination between classes by generating data corresponding to the boundary areas of the clusters and sufficiently learning the data corresponding to the boundaries between the clusters.
[0216] Additionally, the computing device can determine a targeting metric based on the distribution of the reference region on the embedding region.
[0217] FIG. 19 is a flowchart illustrating a method for a computing device to determine a targeting metric based on a reference region, according to various embodiments.
[0218] FIG. 20 is a diagram illustrating a method for a computing device to determine a targeting metric based on a reference area according to various embodiments.
[0219] Referring to FIG. 19, the computing device or at least one processor included in the computing device may be configured to perform an operation (S1901) of identifying a reference area based on a vector set, an operation (S1903) of determining at least one positional relationship between a plurality of vectors included in the reference area based on the plurality of vectors, and an operation (S1905) of determining a targeting metric based on the determined at least one positional relationship. At this time, the reference area may include an area in which the distribution of data is ideal in an embedding area in which the vector set is defined. Specifically, the at least one processor may identify the reference area by identifying at least some areas that satisfy a predetermined criterion based on the vector set. Alternatively, the at least one processor may identify the reference area based on a user input.
[0220] For example, referring to FIG. 20, at least one processor can identify a reference area (2010) based on a vector set (2000). At this time, at least one processor can determine a targeting metric by deriving a positional relationship between a plurality of vectors included in the reference area (2010). Specifically, a constraint for generating data in the first area (2020) can be determined based on the positional relationship between at least one vector included in the reference area (2010). That is, at least one processor can determine a targeting metric by defining a target vector such that the positional relationship between the vectors included in the first area (2020) is similar to the positional relationship between the vectors included in the reference area.
[0221] Referring again to FIG. 16, at least one processor may perform an operation (S1607) of obtaining at least one transformed data by adding noise to at least one data corresponding to at least one vector. At this time, the at least one transformed data may include data in which noise is synthesized into original data. Specifically, the at least one processor may obtain at least one transformed data blended with noise by gradually synthesizing noise into at least one data corresponding to at least one vector defining a targeting metric.
[0222] For example, referring to FIG. 17, at least one processor can obtain first transformed data (Np) and at least one second transformed data (Nq) by gradually adding noise to first data (Ip) and at least one second data (Iq). Specifically, at least one processor can obtain at least one transformed data (Np, Nq) through forward diffusion, which gradually adds noise to the data.
[0223] Referring again to FIG. 16, at least one processor may be configured to perform an operation (S1609) of obtaining synthetic transformed data by applying a targeting metric to at least one transformed data, and an operation (S1611) of inputting the synthesized transformed data into a second neural network and obtaining synthetic data from the second neural network. In this case, the second neural network may include an artificial intelligence model trained to generate synthetic data by restoring data based on transformed data (e.g., data with added noise).
[0224] Specifically, at least one processor can obtain synthetic transformed data by applying a targeting metric determined based on at least one vector to at least one transformed data. Furthermore, at least one processor can generate synthetic data by providing the synthetic transformed data to a second neural network, thereby restoring the synthetic transformed data into synthetic data.
[0225] For example, referring to FIG. 17, at least one processor may obtain synthesized transformed data (Synthesized N) by applying a targeting metric to at least one transformed data (Np, Nq) based on a targeting process. In addition, at least one processor may generate synthetic data (Synthetic data, I`) based on the synthesized transformed data (Synthesized N). Specifically, at least one processor may generate synthetic data (Synthetic data, I`) through reverse diffusion (or back diffusion) using a second neural network including a diffusion model.
[0226] Referring again to FIG. 16, at least one processor may be configured to perform an operation (S1613) of providing synthetic data to the first neural network to obtain a synthetic vector corresponding to the synthetic data and an operation (S1615) of performing an iteration process so that the synthetic vector corresponds to the target vector. That is, at least one processor may repeatedly perform operations S1605 to S1611 so that the synthetic vector corresponds to the target vector.
[0227] For example, referring to FIG. 17, at least one processor can identify a synthetic vector corresponding to the synthetic data (I`) by providing the synthetic data (I`) to the first neural network. In this case, at least one processor can iteratively perform imaging, targeting, and data generation processes so that the synthetic vector corresponds to the targeted vector.
[0228] Additionally, at least one processor may adaptively apply a targeting metric. Specifically, at least one processor may apply the targeting metric by considering geometric characteristics of a region (e.g., a diffusion region) in which at least one transformed data is defined. Specifically, at least one processor may equally apply the targeting metric defined in the embedding region to the region in which at least one transformed data is defined, but is not limited thereto. The targeting metric may also be applied by considering geometric differences between the embedding region and the region in which at least one transformed data is defined.
[0229] For example, at least one processor can obtain synthesized transformed data by applying a targeting metric that reflects the geometric characteristics of an area (e.g., a diffusion area) in which at least one transformed data is defined based on at least one transformed data. Furthermore, at least one processor can generate synthetic data based on the synthesized transformed data using a second neural network. In this case, at least one processor can identify a synthetic vector corresponding to the synthetic data by inputting the synthetic data into the first neural network, and can determine the degree to which the synthetic vector corresponds to the target vector. In other words, the more accurately the geometric characteristics of the area in which at least one transformed data is defined are reflected, the higher the probability that the synthetic vector corresponds to the target vector.
[0230] At least one processor can infer geometric characteristics of an area in which at least one deformed data is defined based on a predetermined method to generate precisely targeted synthetic data by generating a synthetic vector corresponding to the target vector.
[0231] For example, at least one processor may generate synthetic data based on an iteration process to generate synthetic data that accurately reflects geometric characteristics. Specifically, the at least one processor may input first synthetic data generated based on first synthesized transformed data to which a targeting metric is applied into a first neural network, thereby identifying a first synthetic vector corresponding to the synthetic data. At this time, the at least one processor may determine the extent to which the first synthetic vector deviates from the target vector and adjust the targeting metric based on the determination. The at least one processor may obtain second synthesized transformed data by applying the adjusted targeting metric to the at least one transformed data. The at least one processor may generate second synthetic data based on the second synthesized transformed data and identify the second synthetic vector based on the second synthetic data. The at least one processor may repeatedly perform the above-described process so that the similarity between the synthetic vector and the target vector satisfies a predetermined criterion.
[0232] As another example, at least one processor may generate synthetic data based on a parallel computation process to generate synthetic data that accurately reflects geometric characteristics. Specifically, at least one processor may assume a plurality of geometric characteristics corresponding to a region in which at least one deformed data is defined, and may induce the generation of the most suitable synthetic data by generating synthetic data corresponding to each of the assumed plurality of geometric characteristics in parallel. For example, at least one processor may obtain first synthesized deformation data based on a targeting metric reflecting a first geometric characteristic, and obtain second synthesized deformation data based on a targeting metric reflecting a second geometric characteristic. At this time, the first geometric characteristic and the second geometric characteristic may be different. For example, the first geometric characteristic may include a linear distribution, and the second geometric characteristic may include a non-linear distribution (e.g., a tangent distribution defined by orthogonal vectors, etc.), but is not limited thereto. In this case, the at least one processor may generate the first synthetic data based on the first synthesized deformation data, and generate the second synthetic data based on the second synthesized deformation data. At least one processor can input first synthetic data and second synthetic data into a first neural network to identify a first synthetic vector corresponding to the first synthetic data and a second synthetic vector corresponding to the second synthetic data. At this time, the at least one processor can select a vector similar to a target vector among the first synthetic vector and the second synthetic vector, and determine synthetic data corresponding to the selected synthetic vector. Accordingly, the at least one processor can generate synthetic data corresponding to the target vector.
[0233] Through this, the computing device according to the present disclosure can improve the quality of a data set by precisely targeting the conditions required to generate data.
[0234] A computing device according to one embodiment of the present disclosure may provide an operational method for evaluating the anonymity of a data set and generating reproducible data for anonymizing the data.
[0235] Specifically, the computing device can generate a reproducible data set based on a data set. The computing device can receive the data set from a client device and generate a reproducible data set based on the received data set. At this time, the data set may include a learning data set constructed for the purpose of learning an artificial intelligence model, or big data constructed for use in data analysis and processing. In addition, without being limited thereto, the data set may include a data set newly constructed based on data acquired by the computing device. The data set may include a structured data set (e.g., structured data such as tabular data), unstructured data (e.g., image data, text data, etc.), or semi-structured data. For example, the data set may include, but is not limited to, image data, text data, voice data, or tabular data.
[0236] The computing device according to the present disclosure can assess the anonymity of a data set and, based on this, generate reproducible data that enables meaningful analysis while protecting privacy. As the application of data analysis and artificial intelligence expands, the importance of technical means for maintaining a balance between privacy protection and data utilization is increasing. The present disclosure addresses this need by providing an effective solution that guarantees anonymity while maintaining the structural characteristics of data.
[0237] FIG. 21 is a flowchart illustrating a method of generating reproduction data performed by a computing device according to various embodiments.
[0238] Referring to FIG. 21, a computing device including a server or client device may perform the following operations to obtain a data set and generate reproduction data based on the obtained data set.
[0239] A computing device according to the present disclosure can perform data set embedding and vectorization operations (S2110). Specifically, the computing device can embed a given data set in a vector space. Here, embedding refers to the process of converting high-dimensional data into low-dimensional vectors to maintain similarities and structural relationships between data points. This embedding is performed in a manner that preserves core data information while increasing computational efficiency. During the embedding process, each data point is represented as a vector, and these vectors can reflect the distribution and characteristics of the entire data set. This provides a foundation for analyzing the statistical characteristics and inherent patterns of the data set.
[0240] Additionally, the computing device can perform a dimension determination operation (S2120) based on the discriminability. Specifically, the dimension of the embedded vector can be determined by considering the discriminability between data. In this case, the discriminability can refer to the possibility of specifying data based on at least one feature value defining the data. Specifically, a data set can be defined based on multiple feature values corresponding to multiple features, and the discriminability can be defined based on the possibility of specifying data based on at least one of the multiple features or a combination of the multiple features.
[0241] For example, a computing device can analyze the similarity between data points and, based on this analysis, represent highly discriminative data in a low-dimensional space, while representing highly similar data in a relatively high-dimensional space. Through this dimensionality determination process, the computing device can maintain the diversity of the data set while ensuring data anonymity.
[0242] Additionally, for example, a computing device can reduce computational complexity while preserving core information of the data by dynamically adjusting the embedding dimensions when necessary by assessing the distinguishability between data points.
[0243] In addition, the computing device can perform an operation (S2130) to generate reproducible data based on an embedded space. Specifically, the computing device can analyze the density of data in the embedded vector space to set parameters for generating reproducible data. Specifically, the computing device can determine the similarity of the reproducible data to be generated with the original data based on the density of the data. For example, the computing device can be configured to generate reproducible data having a first similarity to the original data in a high-density area, and to generate reproducible data having a second similarity to the original data in a relatively low-density area. In this case, the first similarity may indicate a higher similarity than the second similarity. This is because data corresponding to a high-density area is relatively anonymized data because there is a relatively large amount of adjacent similar data, so even if the reproducible data is similar to the original data, there is no significant problem in anonymity.
[0244] This process of generating reproducible data is designed to preserve the statistical characteristics of the original data as much as possible while preventing personal identification. Various parameters are used in this process, and data density, distribution, and relationships between data can serve as important criteria for generating reproducible data.
[0245] The method according to the present disclosure can be implemented on a computing device, which may include modules that perform data embedding, discriminability-based dimensionality determination, and density-based representation data generation. The computing device can automate the entire process of collecting, embedding, vectorizing, and then generating representation data based on the data. This provides users with an efficient and secure data anonymization solution and can be utilized in a variety of applications.
[0246] FIG. 22 is a diagram illustrating a method for a computing device to generate reproduction data based on a data set according to various embodiments.
[0247] Referring to FIG. 22, a computing device can obtain a first vector set (2220) corresponding to a data set (2210) by embedding the data set (2210) in an embedding area of a specific dimension. Specifically, the data set (2210) may be an M-dimensional data set that can be defined on an M-dimensional input domain.
[0248] Additionally, the computing device can process the data set (2210) according to predetermined conditions to obtain a first vector set (2220). Specifically, the computing device can obtain the vector set (2220) by mapping the data set (2210) to an N-dimensional first embedding space based on a predetermined condition defined by a mapping function (f) (e.g., a matrix stored in advance for mapping to an embedding space of a specific dimension).
[0249] For example, the computing device may input a data set (2210) into a pre-trained encoder and obtain a first vector set (2220) through an output layer of the encoder, but is not limited thereto.
[0250] In addition, the computing device can obtain a second vector set (2230) based on the first vector set (2220). Specifically, the computing device can generate at least one composite vector based on at least one vector among the plurality of vectors included in the first vector set (2220), and obtain a second vector set (2230) including the at least one composite vector. For example, the computing device can generate a plurality of composite vectors corresponding to each of the plurality of vectors included in the first vector set (2220), and obtain a second vector set (2230) including the plurality of composite vectors. In this case, the second vector set (2230) can be defined on the same N-dimensional embedding space as the first vector set (2220).
[0251] At this time, the computing device can generate a composite vector based on the original vector and at least one vector associated with the original vector. For example, the computing device can generate a first composite vector (2231) based on the first vector (2221) included in the first vector set (2220). Specifically, the computing device can generate the first composite vector (2231) based on the first vector (2221) and at least one vector associated with the first vector (2221). For example, the computing device can generate the first composite vector (2231) based on the second vector (2222) and the third vector (2223) associated with the first vector (2221). Specifically, the computing device can determine at least one characteristic value based on predetermined conditions (e.g., a relative position-based vector definition method such as interpolation or extrapolation) among the characteristic values defining the second vector (2222) and the characteristic values defining the third vector (2223), and can obtain a first composite vector (2231) defined based on the at least one characteristic value.
[0252] In addition, the computing device can obtain a reproduction data set (2250) based on the second vector set (2220). At this time, the reproduction data set (2250) may be an M-dimensional data set that may be defined on the same M-dimensional space as the data set (2210). In addition, the computing device can obtain the reproduction data set (2250) by processing the second vector set (2230) according to a predetermined condition. Specifically, the computing device can obtain the reproduction data set (2250) by restoring the second vector set (2230) to an M-dimensional output domain based on a predetermined condition defined as an inverse function of a mapping function (f) for obtaining the first vector set (2220) (for example, an inverse matrix of a matrix stored in advance for mapping to an embedding space of a specific dimension). At this time, the input domain and the output domain may be included in the same virtual space, but are not limited thereto.
[0253] FIG. 23 is a diagram illustrating operations that may be involved in a computing device generating reproduction data based on a first data set, according to various embodiments.
[0254] FIG. 29 is an exemplary diagram for explaining a data set and characteristics of the data set according to various embodiments.
[0255] Referring to FIG. 23, the computing device or at least one processor included in the computing device may be configured to perform an operation of obtaining a first data set (S2301), an operation of obtaining a first vector set corresponding to the first data set by embedding the first data set in an embedding area of a specific dimension (S2303), an operation of obtaining a density value of at least one vector included in the first vector set based on a distance between at least two vectors among a plurality of vectors included in the first vector set (S2305), an operation of obtaining target data based on the first data set (S2307), an operation of generating a first synthetic vector that is spaced apart from a first vector corresponding to the first target data among a plurality of vectors included in the first vector set by a first threshold distance or more, and an operation of generating reproducible data based on the first synthetic vector (S2311).
[0256] Specifically, at least one processor may acquire a first data set (S2301). At this time, the first data set may be data received from a client device. Additionally, the first data set may include at least one of image data, text data, voice data, or tabular data.
[0257] Also, for example, referring to (a) of FIG. 29, the first data set may include a plurality of records (record #1, record #2, record #n) defined based on a plurality of feature values corresponding to a plurality of features (attribute #1, attribute #2, attribute #m). In this case, the first vector set may include a plurality of vectors corresponding to the plurality of records, and the plurality of vectors may be defined based on at least some of the plurality of features.
[0258] Additionally, at least one processor can obtain a first vector set corresponding to the first data set by embedding the first data set in an embedding region of a specific dimension (S2303).
[0259] FIG. 24 is a diagram illustrating a method for a computing device to obtain a first vector set according to various embodiments.
[0260] Referring to FIG. 24, an operation of obtaining a first vector set performed by a computing device or at least one processor included in the computing device may include an operation (S2401) of identifying a distinguishability of data included in the first data set based on a characteristic distribution of the first data set, an operation (S2403) of determining an embedding dimension based on at least some of a plurality of characteristics of the data set based on the identified distinguishability of the data, and an operation (S2405) of obtaining a first vector set by mapping the first data set to an embedding space defined based on the determined embedding dimensions.
[0261] Specifically, at least one processor may identify the distinguishability of at least one data item based on at least one of a plurality of characteristic values corresponding to at least one data item included in the first data set or a distribution of the plurality of characteristic values. For example, at least one processor may identify the distinguishability of each data record included in the first data set based on a distribution of characteristic values of each data record.
[0262] For example, at least one processor may determine the discriminative power by identifying outliers (edge cases or outliers) based on a plurality of feature values corresponding to the data. Specifically, at least one processor may determine that the discriminative power of the data is high if at least one feature value corresponding to the data has an outlier value relative to the distribution of the corresponding feature. Furthermore, at least one processor may determine that the discriminative power of the data is low if the plurality of feature values corresponding to the data have a standard value (e.g., a value within a range equal to a standard deviation from the mean) relative to the distribution of each of the features.
[0263] As a specific example, referring to (b) of FIG. 29, at least one processor can identify the distinguishability of the first data by determining that the attribute value corresponding to the second attribute among the attribute value corresponding to attribute #1, the attribute value corresponding to attribute #2, the attribute value corresponding to attribute #3, or the attribute value corresponding to attribute #4 of the first data (e.g., Data A) represents an edge case.
[0264] As another example, at least one processor may identify the specificity of the data based on the distribution of multiple feature values corresponding to the data. Specifically, at least one processor may determine the specificity of the data by assessing the rarity of the distribution of the multiple feature values.
[0265] As a specific example, referring to (b) of FIG. 29, the distinguishing power of the second data can be identified by determining that the distribution of a plurality of feature values corresponding to a plurality of features of the second data (e.g., Data B) is rare. In this case, at least one processor can determine that the second data has high distinguishing power because the second data can be specified based on the distribution of the values of the plurality of feature values corresponding to the plurality of features of the second data (e.g., Data B), even if each of the plurality of feature values corresponding to the plurality of features of the second data (e.g., Data B) has a standard value.
[0266] At least one processor may determine an embedding dimension based on at least some of the plurality of features of the data set, based on the discriminative power of the identified data (S2403). Furthermore, the at least one processor may obtain a first vector set by mapping the first data set to an embedding space defined based on the determined embedding dimensions (S2405). Specifically, the at least one processor may determine the embedding dimension by selecting at least some of the plurality of features. Alternatively, the at least one processor may determine the embedding dimension to reflect the correlation between the plurality of features.
[0267] For example, at least one processor may determine the embedding dimension by excluding at least one feature that increases the distinguishability of specific data. For example, referring to (b) of FIG. 29, at least one processor may determine the embedding dimension by excluding a second feature (Attribute #2) that increases the distinguishability of the first data (Data A), but this is not limited thereto.
[0268] The more influential features are removed from data, the higher the anonymity of the data. However, removing highly sensitive features during embedding can lead to the loss of edge cases. Therefore, it is necessary to determine an embedding dimensionality that can represent the distributional specificity of the data while guaranteeing anonymity (the "optimal anonymity dimensionality").
[0269] For example, among multiple features defining a data set, a feature with high sensitivity may be a feature that has a high influence in characterizing the data.
[0270] At least one processor may perform the following operations to identify influential features in a specific data set. The at least one processor may calculate the density of the embedding vector ("dimension-specific density") by reducing the embedding dimension (e.g., the number of columns) of the structured data and calculating the density values of the vectors. At this time, the dimension of the embedding vector may be determined such that a dimension with a low density of the embedding vector is removed by determining the dimension with a high discriminative power.
[0271] A computing device according to the present disclosure can obtain a vector set that ensures anonymity of data by obtaining vectors that exclude characteristics that specify data.
[0272] Referring again to FIG. 23, at least one processor can obtain a density value of at least one vector included in the first vector set based on a distance between at least two vectors among a plurality of vectors included in the first vector set (S2305).
[0273] At this time, at least one processor may calculate distance values between a plurality of vectors included in the first vector set. Specifically, at least one processor may be configured to calculate distance values from a first vector included in the first vector set to N adjacent vectors. Alternatively, at least one processor may be configured to calculate distance values from the first vector included in the first vector set to the remaining vectors.
[0274] Additionally, at least one processor may calculate a density value for each of the plurality of vectors based on the calculated distance values. For example, at least one processor may calculate a density value for the first vector by calculating attributes (e.g., mean, variance, standard deviation, etc.) of the plurality of distance values corresponding to the first vector, but is not limited thereto.
[0275] Additionally, at least one processor may acquire target data based on the first data set (S2307). At this time, the target data may be data set as source data for generating reproducible data. In other words, the target data may refer to data that is the target of an operation for generating reproducible data.
[0276] FIG. 25 is a diagram illustrating a method for a computing device to obtain target data according to various embodiments.
[0277] Referring to FIG. 25, an operation of acquiring target data performed by a computing device or at least one processor included in the computing device may include an operation (S2501) of acquiring an attribute value corresponding to anonymity of data for each piece of data included in the data set based on the data set, and an operation (S2503) of acquiring the target data based on data whose attribute value corresponding to anonymity satisfies a predetermined criterion.
[0278] At this time, at least one processor can obtain an attribute value corresponding to the anonymity of the data based on the distinguishing power identified according to FIG. 24.
[0279] Additionally, and not limited thereto, at least one processor may obtain an attribute value corresponding to the anonymity of the data based on the distance between a plurality of vectors included in a first vector set corresponding to the first data set. Specifically, at least one processor may obtain an attribute value corresponding to the anonymity of the data based on the density of the data included in the first data set. Since the method for calculating the density value of the data has been described above, a detailed description thereof will be omitted.
[0280] At least one processor can acquire target data based on data whose attribute values corresponding to anonymity meet a predetermined criterion (S2503). At this time, the at least one processor can establish the predetermined criterion by setting an attribute threshold for data that enables reproducible data generation based on anonymity. Specifically, the at least one processor can determine data whose attribute values corresponding to anonymity are greater than or equal to the predetermined attribute threshold as target data.
[0281] Referring again to FIG. 23, at least one processor may generate a first composite vector that is spaced apart from a first vector corresponding to the first target data among a plurality of vectors included in the first vector set by a preset first threshold distance or more (S2309). At this time, at least one processor may generate the first composite vector based on at least two vectors associated with the first vector in the embedding region.
[0282] Additionally, at least one processor may generate reproducible data based on the first synthetic vector (S2311). At this time, the at least one processor may generate reproducible data by outputting the first synthetic vector to an output domain. Specifically, the at least one processor may generate reproducible data by restoring the first synthetic vector using a pre-trained decoder or by inputting the first synthetic vector into a pre-trained generation model, but is not limited thereto.
[0283] FIG. 26 is a diagram illustrating a method for a computing device to generate a reproducible data set after lightening a data set, according to various embodiments.
[0284] Referring to FIG. 26, after obtaining a first data set, a computing device or at least one processor included in the computing device may perform an operation (S2601) of obtaining an attribute value corresponding to anonymity of data for each data included in the first data set based on the first data set, and an operation (S2603) of identifying data whose attribute value corresponding to anonymity does not meet a predetermined standard. The specific method by which at least one processor obtains an attribute value corresponding to anonymity of data and identifies whether the predetermined standard is met may be the same as the above-described technical means.
[0285] At this time, at least one processor can reduce the weight of the first data set by removing data identified as not meeting predetermined criteria for attribute values corresponding to anonymity (S2605). Specifically, at least one processor can remove data whose anonymity is not guaranteed even if it generates reproducible data. In other words, the computing device can perform a preprocessing operation for reproducible data generation by removing data whose specificity exceeds a threshold.
[0286] Additionally, at least one processor can generate a reproducible data set corresponding to the volume of the lightweight data (S2607). Specifically, at least one processor can remove outliers (e.g., edge cases) that can identify the data and generate reproducible data corresponding to the removed outliers. In this case, at least one processor can generate reproducible data that resolves the anonymity issue by generating a synthetic vector at a location completely different from the original data.
[0287] For example, at least one processor can generate a reproducible data set with the same distributional characteristics as the first data set. In other words, by generating a reproducible data set with a distribution similar to the original data while ensuring anonymity, the computing device can achieve the same effect as the original data in training an artificial intelligence model, for example.
[0288] FIG. 27 is a diagram illustrating a method for a computing device to provide information about a data set according to various embodiments.
[0289] Referring to FIG. 27, the computing device or at least one processor included in the computing device may be configured to perform an operation (S2701) of obtaining an attribute value corresponding to anonymity of data for each data included in the first data set after obtaining a first data set, and an operation (S2703) of providing information about data whose attribute value corresponding to anonymity does not meet a predetermined standard.
[0290] That is, the computing device can provide information about data whose anonymity is low and thus privacy protection is difficult to protect to the client device through the data processing operation described above.
[0291] FIG. 28 is a diagram illustrating a method for a computing device to generate a composite vector having different threshold distances set according to various embodiments.
[0292] Referring to (a) of FIG. 28, the computing device or at least one processor included in the computing device may be configured to perform an operation (S2801) of generating a second composite vector that is spaced apart from a second vector corresponding to the second target data among a plurality of vectors included in the first vector set by a preset second threshold distance or more after acquiring the target data.
[0293] For example, referring to (b) of FIG. 28, at least one processor may perform an operation to generate a first composite vector corresponding to the first vector (2810) and a second composite vector corresponding to the second vector (2820) based on the first vector (2810) and the second vector (2820).
[0294] At least one processor may set a generation condition of a composite vector based on a threshold distance set from the original vector. At this time, at least one processor may set a threshold distance corresponding to the target data based on the density of the target data. Here, the threshold distance refers to a minimum separation distance from a specific vector from the composite vector to be generated to the original vector, and the composite vector may be set to be generated at a location separated by more than the threshold distance from the original vector. In addition, at least one processor may be set such that the higher the density of the target data, the lower the threshold distance determined. In addition, at least one processor may be set such that the lower the density of the target data (e.g., edge case), the higher the threshold distance determined.
[0295] For example, at least one processor may be configured to generate a first composite vector that is spaced apart from a first vector (2810) by a first threshold distance or more, and to generate a second composite vector that is spaced apart from a second vector (2820) by a second threshold distance or more. In this case, the first threshold distance may be set based on a density value of the first vector (2810), and the second threshold distance may be set based on a density value of the second vector (2820). Additionally, when the density value of the first vector (2810) is greater than the density value of the second vector (2820), the first threshold distance may be set to be less than the second threshold distance.
[0296] Additionally, at least one processor can set a generation condition of a synthetic vector based on a critical area set based on a critical distance.
[0297] For example, at least one processor may be configured to generate a first composite vector based on a first critical region (2815) corresponding to a first critical distance of a first vector (2810), and to generate a second composite vector based on a second critical region (2825) corresponding to a second critical distance of a second vector (2820). In this case, the first composite vector may be generated such that it is not mapped within the first critical region (2815), and the second composite vector may be generated such that it is not mapped within the second critical region (2825).
[0298] Additionally, the computing device may determine whether or not reproducible data can be generated by reflecting a plurality of threshold distances corresponding to a plurality of vectors. Specifically, the computing device or at least one processor included in the computing device may determine whether or not reproducible data can be generated based on a plurality of preset threshold distances for vectors. For example, the at least one processor may determine that reproducible data cannot be generated if all locations within a threshold region (an embedding region within a threshold distance) corresponding to at least one vector are located within threshold regions of other vectors.
[0299] A computing device according to embodiments of the present disclosure can perform an operation to verify the reality of generated representation data to resolve the hallucination problem. The computing device can be configured to evaluate the reality of the generated representation data. Specifically, the computing device or at least one processor included in the computing device can calculate an attribute corresponding to the reality of the representation data.
[0300] Although the embodiments described above have been described by way of limited examples and drawings, those skilled in the art will appreciate that various modifications and variations can be made based on the above teachings. For example, appropriate results can still be achieved even if the described techniques are performed in a different order than described, and / or components of the described systems, structures, devices, circuits, etc. are combined or combined in a different manner than described, or are replaced or substituted with other components or equivalents.
[0301] Therefore, other implementations, other embodiments, and equivalents to the claims also fall within the scope of the claims described below.
Claims
1. In computing devices, memory; and At least one processor electronically connected to the memory and configured to execute at least one instruction stored in the memory; At least one processor, An operation of obtaining a vector set corresponding to a data set by embedding the data set into an embedding region of a specific dimension using a first neural network; An operation of determining a targeting metric by defining a targeted vector based on at least one vector included in the above vector set; An operation of obtaining at least one transformed data by adding noise to at least one data corresponding to at least one vector; An operation of adaptively applying the targeting metric to at least one of the above-described transformed data to obtain synthesized transformed data; and A computing device set to perform an operation of inputting the synthesized transformed data into a second neural network and obtaining synthesized data from the second neural network.
2. In paragraph 1, At least one processor, An operation of providing the above synthetic data to the first neural network to obtain a synthetic vector corresponding to the synthetic data; and A computing device further configured to perform an operation of performing an iteration process so that the above-mentioned synthetic vector corresponds to the above-mentioned target vector.
3. In paragraph 1, wherein said at least one vector comprises a first vector and at least one second vector adjacent to said first vector, A computing device, characterized in that the targeting metric is determined based on a relationship between the first vector, the at least one second vector, and the target vector.
4. In paragraph 1, The action that determines the above targeting metric is A computing device comprising: an operation of determining at least one vector corresponding to an area with a relatively low data density on the embedding area, and determining a targeting metric by defining a target vector based on a relationship between the at least one vector; 5. In paragraph 1, The action that determines the above targeting metric is A computing device comprising: an operation of determining a targeting metric by defining a target vector based on a relationship between at least one vector corresponding to a boundary region between clusters on the embedding region; 6. In paragraph 1, The action that determines the above targeting metric is A computing device comprising: an operation for determining a targeting metric by defining a target vector based on a linear relationship between at least two vectors; 7. In paragraph 1, The action that determines the above targeting metric is A computing device comprising: an operation for determining a targeting metric by defining a target vector based on a nonlinear relationship between at least two vectors; 8. In paragraph 1, The action that determines the above targeting metric is A computing device comprising: an operation for determining a targeting metric by defining a target vector based on a relationship between at least three vectors; 9. In paragraph 1, The action that determines the above targeting metric is An operation of identifying a reference area based on the above vector set; An operation of determining at least one positional relationship between a plurality of vectors based on a plurality of vectors included in the above reference area; and A computing device comprising: an operation for determining the targeting metric based on the determined at least one location relationship; 10. In the data processing method, By at least one processor implemented to execute at least one instruction stored in memory, An operation of obtaining a vector set corresponding to a data set by embedding the data set into an embedding region of a specific dimension using a first neural network; An operation of determining a targeting metric by defining a targeted vector based on at least one vector included in the above vector set; An operation of obtaining at least one transformed data by adding noise to at least one data corresponding to at least one vector; An operation of obtaining synthesized transformed data by applying the targeting metric to the at least one transformed data; and A method comprising: inputting the synthesized transformed data into a second neural network, thereby obtaining synthesized data from the second neural network.
11. In paragraph 10, An operation of providing the synthetic data to the first neural network to obtain a synthetic vector corresponding to the synthetic data; and A method further comprising: performing an iteration process so that the above-mentioned synthetic vector corresponds to the above-mentioned target vector.
12. In paragraph 10, wherein said at least one vector comprises a first vector and at least one second vector adjacent to said first vector, A method characterized in that the targeting metric is determined based on a relationship between the first vector, the at least one second vector, and the target vector.
13. In paragraph 10, The action that determines the above targeting metric is A method comprising: determining at least one vector corresponding to an area with a relatively low data density on the embedding area, and determining a targeting metric by defining a target vector based on a relationship between the at least one vector.
14. In paragraph 10, The action that determines the above targeting metric is An operation of identifying a reference area based on the above vector set; An operation of determining at least one positional relationship between a plurality of vectors based on a plurality of vectors included in the above reference area; and A method comprising: determining the targeting metric based on the determined at least one location relationship; 15. A computer-readable computer program storing a plurality of codes that instruct commands to perform at least one of the methods of claims 10 to 14.
Citation Information
Patent Citations
Stopper for hard hat chin strap
KR1020220114383A
Rotating Underwater Thruster
KR1020250032695A
Electronic control device with debugging module and debugging method using the same
KR102529983B1
A method for providing a user interface to process synthetic data and a computing device on which the method is implemented
KR102665956B1
Identifier Contribution Allocation in Synthetic Data Generation in Computer-Based Reasoning Systems
US20230342640A1