Neural network-based method and system for generating optimal execution plans of ai workloads in hybrid and multi-cloud environments
The neural network-based method optimizes AI workload deployment in hybrid and multi-cloud environments by predicting optimal execution plans, addressing inefficiencies in existing methods and enhancing resource and cost management.
Patent Information
- Application Number
- PCT/KR2024/012902
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-07-08
- Filing Date
- 2024-08-28
- Publication Date
- 2026-01-15
AI Technical Summary
Existing methods fail to efficiently deploy AI workloads in hybrid and multi-cloud environments, leading to resource and cost waste due to suboptimal deployment, lacking consideration of workload characteristics, network path information, and user requirements.
A neural network-based method and system that receives user AI workload definition and optimization requirement information, samples cloud environments and network paths, and uses a neural network to predict optimal execution plans, considering factors like time, cost, and resource usage to recommend suitable cloud environments.
Optimizes AI workload execution by selecting cost-effective and timely cloud environments, reducing waste and enhancing resource efficiency in hybrid and multi-cloud setups.
Smart Images

Figure KR2024012902_15012026_PF_FP_ABST
Abstract
Description
A neural network-based method and system for generating optimal execution plans for AI workloads in hybrid and multi-cloud environments.
[0001] The present invention relates to a neural network-based method and system for generating an optimal execution plan for AI workloads in hybrid and multi-cloud environments.
[0002] As the amount of computing resources required by AI workloads continues to increase, efficiently scaling cloud infrastructure is crucial.
[0003] Accordingly, cases of deploying AI workloads in hybrid cloud and multi-cloud environments are increasing.
[0004] A hybrid cloud is a cloud environment formed by mixing multiple workloads or a single workload in a public cloud and a private cloud, while a multi-cloud is a cloud environment formed by using cloud computing services from two or more public cloud service providers.
[0005] Hybrid clouds and multi-clouds are more advantageous for infrastructure expansion, and they have the advantage of allowing a cloud environment to be configured by taking advantage of only the cloud servers provided by each cloud service provider.
[0006] However, if AI workloads are not deployed in optimal cloud locations, resource and cost waste can occur. "Optimal" locations, in this context, mean those that minimize idle resources, costs, and execution time.
[0007] However, because it's difficult for users to directly find and deploy optimal locations, cloud resource waste often occurs. Furthermore, for optimal workload placement, it's crucial to identify and deploy a suitable cloud environment, taking into account the workload's characteristics, costs, and processing speed. However, currently, no satisfactory functionality is available in this area.
[0008] Furthermore, there are limitations in the past that do not sufficiently reflect information that affects the actual workload execution cost, such as the characteristics of the user AI workload itself and network transmission path information.
[0009] The present invention provides a neural network-based method and system for generating an optimal execution plan for AI workloads in hybrid and multi-cloud environments.
[0010] More specifically, the present invention provides a neural network-based method and system for generating an optimal execution plan for an AI workload in a hybrid and multi-cloud environment, which can calculate an optimal execution plan for an AI workload in a hybrid and multi-cloud environment by receiving as input not only cloud environment information but also user AI workload definition information and network path information.
[0011] In addition, the present invention provides a neural network-based method and system for generating an optimal execution plan for AI workloads in hybrid and multi-cloud environments, which can systematically manage heterogeneous cloud environments based on unified information values.
[0012] Furthermore, the present invention provides a neural network-based method and system for generating an optimal execution plan for AI workloads in hybrid and multi-cloud environments, which can recommend an optimal cloud environment that satisfies user requirements.
[0013] In order to solve the problem discussed above, a neural network-based method for generating an optimal execution plan for an AI workload in a hybrid and multi-cloud environment according to the present invention may include a step of receiving user AI workload definition information and user optimization requirement specification information from a user terminal, a step of sampling information on different cloud environments and different network paths to generate a plurality of sample group data including the different cloud environments and the different network paths, a step of inputting each of the plurality of sample group data into a neural network to receive a plurality of prediction values for the plurality of sample group data from the neural network, and a step of specifying an optimal prediction value that satisfies the user AI workload definition information and the user optimization requirement specification information using an optimal prediction calculation.
[0014] Furthermore, the user AI workload definition information may include information related to AI workload type, artificial intelligence model type, and data set characteristics, the different cloud environment information may include information related to cloud service provider, cloud service location, cloud service pricing policy, and cloud service type, and the different network path information may include information related to network performance and network transmission path.
[0015] Furthermore, the plurality of sample group data further includes the user AI workload definition information, and in the step of generating the plurality of sample group data, each of the sampled different cloud environment information and the different network path information may be combined with the user AI workload definition information based on the user AI workload definition information to generate the plurality of sample group data.
[0016] Furthermore, the method may further include a step of converting each of the plurality of sample group data into a plurality of intermediate expression data based on a preset format, and a step of inputting each of the plurality of intermediate expression data into the neural network.
[0017] Furthermore, the neural network performs a prediction for each of the plurality of intermediate expression data, and outputs the plurality of prediction values for each of the plurality of intermediate expression data, and the plurality of prediction values may include the time and price required to execute the user AI workload definition information in the different cloud environment information and the different network path information.
[0018] Furthermore, the plurality of predicted values further include resource usage rates used to execute the user AI workload definition information, and the neural network can perform the predictions for each of the plurality of intermediate representation data in parallel to simultaneously output the plurality of predicted values for each of the plurality of intermediate representation data.
[0019] Furthermore, the user optimization requirement specification information includes elements having different characteristics, and the elements having different characteristics further include the time and price required to execute the user AI workload definition information and the resource usage rate used to execute the user AI workload definition information, and the step of receiving the user optimization requirement specification information may further include a step of setting weights of the elements having different characteristics from the user terminal.
[0020] Furthermore, the optimal prediction calculation may define a score function based on the plurality of predicted values and the weights of elements having different characteristics, calculate the score function to sort the plurality of optimal predicted values by the calculated scores, and specify the optimal predicted value that satisfies the user AI workload definition information and the user optimization requirement specification information among the sorted plurality of optimal predicted values.
[0021] Furthermore, a step of generating optimal execution data based on the optimal prediction value may be further included.
[0022] Furthermore, based on the optimal prediction value, the method may further include a step of specifying at least one piece of cloud environment setting information that satisfies the user AI workload definition information and the user optimization requirement specification information, a step of generating recommendation information for the specified cloud environment setting information, and a step of providing the generated recommendation information to the user terminal.
[0023] Furthermore, the recommendation information may include an expected time and an expected price required to execute the user AI workload definition information in the cloud environment setting information.
[0024] Furthermore, the recommendation information may further include, in the cloud environment setting information, an expected resource usage rate used to execute the user AI workload definition information.
[0025] Furthermore, the recommendation information may include a first type of recommendation information specified based on the user optimization requirement specification information and a second type of recommendation information specified based on preset conditions.
[0026] Furthermore, when either of the first type of recommendation information or the second type of recommendation information is selected from the user terminal, the method may further include a step of generating the optimal execution data corresponding to the selected recommendation information and a step of registering the optimal execution data in a user account.
[0027] Meanwhile, a neural network-based system for generating an optimal execution plan for an AI workload in a hybrid and multi-cloud environment according to the present invention includes a communication unit for receiving user AI workload definition information and user optimization requirement specification information from a user terminal, and a control unit for sampling information on different cloud environments and different network paths to generate a plurality of sample group data including the different cloud environments and the different network paths, wherein the control unit inputs each of the plurality of sample group data into a neural network, receives a plurality of prediction values for the plurality of sample group data from the neural network, and can specify an optimal prediction value that satisfies the user AI workload definition information and the user optimization requirement specification information using an optimal prediction calculation.
[0028] Furthermore, the control unit can specify at least one piece of cloud environment setting information that satisfies the user AI workload definition information and the user optimization requirement specification information based on the optimal prediction value, generate recommendation information for the specified cloud environment setting information, and provide the generated recommendation information to the user terminal.
[0029] Meanwhile, a program according to the present invention is a program that is executed by one or more processes in an electronic device and can be stored in a computer-readable recording medium, wherein the program may include a step of receiving user AI workload definition information and user optimization requirement specification information from a user terminal, a step of sampling information on different cloud environments and different network paths to generate a plurality of sample group data including the different cloud environments and the different network paths, a step of inputting each of the plurality of sample group data into a neural network to receive a plurality of prediction values for the plurality of sample group data from the neural network, and a step of specifying an optimal prediction value that satisfies the user AI workload definition information and the user optimization requirement specification information using an optimal prediction calculation.
[0030] As described above, the neural network-based method and system for generating an optimal execution plan for AI workloads in hybrid and multi-cloud environments according to the present invention can achieve a better optimal execution point for AI workloads in hybrid and multi-cloud environments and maximize the efficiency of AI workload execution by comprehensively considering factors affecting optimal execution of AI workloads (e.g., user AI workload definition information, cloud environment information, network path information, etc.) and user requirements.
[0031] In addition, the neural network-based method and system for generating an optimal execution plan for AI workloads in hybrid and multi-cloud environments according to the present invention selects an optimal cloud environment and network path that are suitable for the characteristics of the AI workload and user requirements and provides the same to the user, thereby enabling the user to maximize the time and cost required to execute the AI workload and the efficient use of resources.
[0032] More specifically, the neural network-based method and system for generating optimal execution plans for AI workloads in hybrid and multi-cloud environments according to the present invention can compare and analyze the prices and performance of various cloud service providers to recommend optimal cloud environment configuration information to users. This allows users to reduce the cost burden and further optimize the time required to execute AI workloads.
[0033] That is, the neural network-based method and system for generating an optimal execution plan for AI workloads in a hybrid and multi-cloud environment according to the present invention can provide users with convenience in building a hybrid and multi-cloud environment, thereby enabling users to stably operate the hybrid and multi-cloud environment.
[0034] Furthermore, the neural network-based method and system for generating optimal execution plans for AI workloads in hybrid and multi-cloud environments according to the present invention can provide recommendations for optimal cloud environment configuration information that satisfies user AI workload definition information and user optimization requirement specifications. This allows users to select the optimal cloud environment and network path that simultaneously optimizes the time and cost required to execute AI workloads from various perspectives.
[0035] FIG. 1 and FIG. 2 are conceptual diagrams illustrating a neural network-based system for generating an optimal execution plan for AI workloads in a hybrid and multi-cloud environment according to the present invention.
[0036] FIG. 3 is a flowchart illustrating a neural network-based method for generating an optimal execution plan for AI workloads in a hybrid and multi-cloud environment according to the present invention.
[0037] FIGS. 4a, 4b, 4c, 5, 6, 7, 8, 9a, 9b, and 10 are conceptual diagrams illustrating a neural network-based method for generating an optimal execution plan for AI workloads in a hybrid and multi-cloud environment according to the present invention.
[0038] Figures 11, 12 and 13 are conceptual diagrams for explaining a method of recommending cloud environment setting information to a user in the present invention.
[0039] Hereinafter, embodiments disclosed in this specification will be described in detail with reference to the attached drawings. Regardless of the drawing numbers, identical or similar components will be given the same reference numbers, and redundant descriptions thereof will be omitted. The suffixes "module" and "part" used for components in the following description are assigned or used interchangeably only for the convenience of writing the specification, and do not in themselves have distinct meanings or roles. In addition, when describing the embodiments disclosed in this specification, if it is determined that a specific description of a related known technology may obscure the gist of the embodiments disclosed in this specification, a detailed description thereof will be omitted. In addition, the attached drawings are only intended to facilitate easy understanding of the embodiments disclosed in this specification, and the technical ideas disclosed in this specification are not limited by the attached drawings, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and technical scope of the present invention.
[0040] Terms that include ordinal numbers, such as first, second, etc., may be used to describe various components, but the components are not limited by these terms. These terms are used solely to distinguish one component from another.
[0041] 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 intervening. Conversely, when a component is referred to as being "directly connected" or "connected" to another component, it should be understood that there are no other components intervening.
[0042] Singular expressions include plural expressions unless the context clearly indicates otherwise.
[0043] In this application, terms such as “include” or “have” are intended to specify the presence of a feature, number, step, operation, component, part or combination thereof described in the specification, but should be understood not to exclude in advance the possibility of the presence or addition of one or more other features, numbers, steps, operations, components, parts or combinations thereof.
[0044] The present invention relates to a neural network-based method and system for generating an optimal execution plan for AI workloads in hybrid and multi-cloud environments, which receives as input not only cloud environment information but also user AI workload definition information and network path information, calculates optimal execution data for AI workloads in hybrid and multi-cloud environments, and systematically manages heterogeneous cloud environments based on a unified (or consistent) intermediate representation.
[0045] Cloud environment information may include various elements related to the cloud computing infrastructure provided by the cloud service provider. For example, cloud environment information includes cloud service provider (e.g., AWS, Azure, Google Cloud, etc.), cloud service location (or region), cloud service pricing (or cost) policy (e.g., cost information based on resources used, pricing elements, rate plans, discounts and benefits, etc.), cloud service type (e.g., Infrastructure as a Service (IaaS), Platform as a Service (PaaS), Software as a Service (SaaS), etc.), resource configuration (e.g., computing resources (virtual machines, containers, serverless computing, etc.), storage resources (block storage, file storage, object storage, etc.), network resources (virtual networks, load balancers, VPNs, CDNs, etc.), resource status (e.g., status and usage of virtual machines, storage, networks, databases, etc.), resource deployment (e.g., location where virtual machines, containers, storage, etc. are deployed), security and regulations (e.g., firewalls, Identity and Access Management (IAM), Multi-Factor Authentication (MFA), encryption methods, security certification, regulatory compliance (GDPR, HIPAA, SOC 2, etc.), operations and It may include at least one of the following management (e.g., monitoring, automation, orchestration, etc.).
[0046] Additionally, network path information may include various factors related to network performance and network transmission paths required to transmit and receive data in a cloud environment. For example, network path information may include at least one of network location (or region), network topology (e.g., network diagram, subnet, routing table), routing information (e.g., routing protocol (BGP, OSPF), static routing, etc.), network devices (e.g., routers, switches, firewalls, etc.), IP address ranges (e.g., public IP, private IP, CIDR block, etc.), DNS settings (e.g., domain name, DNS server, record type, etc.), network security (e.g., firewall rules, security groups, ACLs (Access Control Lists), etc.), traffic management (e.g., QoS (Quality of Service), traffic shaping, CDN, etc.), latency (e.g., network latency for each segment), bandwidth (e.g., maximum and average bandwidth usage of a network path), packet loss rate (e.g., data packet loss rate for each segment), and path optimization information (e.g., information necessary for path optimization such as load balancing of network traffic, congestion prevention, and bypass routes, etc.).
[0047] Furthermore, user AI workload definition information may include various elements required to perform a specific AI task. For example, user AI workload definition information may include workload type (e.g., training, inference, etc.), AI model type (e.g., CNN, RNN, Transformer, etc.), AI model architecture (e.g., structure of AI model (number of layers, number of nodes per layer, number of parameters, etc.), AI algorithm, etc.), data set characteristics (e.g., size (capacity) of dataset, format (CSV, image, text, etc.), data source (data lake, database, API), etc.), data pipeline (e.g., data preprocessing and postprocessing steps, data augmentation method, etc.), execution environment (e.g., required software, frameworks such as TensorFlow, PyTorch, Scikit-learn), learning parameters (e.g., batch size, learning rate, number of epochs, etc.), computing resources (e.g., resource requirements such as required CPU, GPU, memory, storage, etc.), AI model performance goals (e.g., accuracy, precision, recall, etc.), inference requirements (e.g., real-time inference, batch inference, response time goals, etc.), deployment method (e.g., real-time It may include at least one of the following: a strategy for deploying the model (e.g., deployment to a prediction service, deployment to a batch job, etc.), monitoring and logging (e.g., model performance monitoring, error logs, training process records, etc.).
[0048] However, the elements included in the cloud environment information, network path information, and user AI workload definition information in the present invention are not limited thereto, and may further include various elements in addition to those mentioned above.
[0049] Meanwhile, a heterogeneous cloud can refer to a cloud computing approach that integrates and utilizes different types of cloud environments and infrastructure. This heterogeneous cloud can operate in a mixed environment that includes various types of cloud infrastructure, such as public clouds, private clouds, and on-premises environments. In other words, a heterogeneous cloud ensures interoperability between various platforms and provides the ability to move or integrate data and applications across different environments.
[0050] Additionally, a hybrid cloud can refer to a cloud environment where multiple or a single workload is mixed across public and private clouds (or on-premises infrastructure). A hybrid cloud connects on-premises and public cloud infrastructure, storing sensitive data in a private cloud or on-premises, while utilizing the public cloud for general data processing or workloads requiring expansion. In other words, a hybrid cloud can simultaneously achieve flexible resource scalability, cost efficiency, and security.
[0051] Furthermore, multi-cloud can refer to a cloud environment comprised of cloud computing services from two or more public cloud service providers. This refers to a method of combining and utilizing cloud services from various cloud service providers without being dependent on a single provider. Each cloud service provider offers diverse features and cost structures, and users can select and combine various cloud services to meet their specific needs.
[0052] Meanwhile, neural network-based methods and systems for generating optimal execution plans for AI workloads in hybrid and multi-cloud environments can be implemented in various platform forms such as applications, software, and websites.
[0053] Below, a neural network-based system for generating an optimal execution plan for AI workloads in a hybrid and multi-cloud environment according to the present invention will be described in more detail with reference to the attached drawings.
[0054] FIG. 1 and FIG. 2 are conceptual diagrams for explaining a neural network-based system for generating an AI workload optimal execution plan in a hybrid and multi-cloud environment according to the present invention (hereinafter referred to as “AI workload optimal execution plan generation system”).
[0055] Referring to FIG. 1, the AI workload optimal execution plan generation system (100) according to the present invention may include at least one configuration among an input unit (110), a display unit (120), a communication unit (130), a storage unit (140), and a control unit (150).
[0056] The input unit (110) can receive user input through an input unit configuration (e.g., a touch screen, a virtual key, a physical key (or hardware button), an input sensor, a microphone, etc.) provided in the user terminal (10).
[0057] Specifically, the input unit (110) may be configured to receive (or select) a user's response to user AI workload definition information and user optimization requirement specification information by using the input unit configuration provided in the user terminal (10). Here, “receiving input” may mean receiving an input signal (or selection signal or user input) corresponding to the user's input when the user's input is made through the input unit configuration provided in the user terminal (10). For example, as illustrated in FIGS. 4A and 4B , the input unit (110) may receive user AI workload definition information (410) and user optimization requirement specification information (420) input from a user through the user terminal (10).
[0058] Furthermore, the display unit (120) can output information through a display unit configuration (e.g., output unit, touch screen, speaker, etc.) provided in the user terminal (10). In this case, the display unit (120) can perform both the role of outputting information and the role of receiving information. For example, as illustrated in FIGS. 4A and 4B , the display unit (120) can output a page (or screen) for receiving input from a user regarding user AI workload definition information (410) and user optimization requirement specification information (420).
[0059] At this time, the input unit and the display unit of the user terminal (10) may exist independently of each other, but may exist as an integrated unit, such as a touch screen. In the case where the input unit and the display unit exist as an integrated unit, such as a touch screen, the input unit may be understood as a sensing unit that detects input (e.g., touch input or scroll input) through the display unit, and as a component of the display unit.
[0060] Hereinafter, without distinguishing whether the input unit and the display unit of the user terminal (10) exist independently or as one unit, the configuration that performs the function of inputting information is called the input unit, and the configuration that performs the function of outputting information is called the display unit.
[0061] The communication unit (130) may be connected to a user terminal (10), a cloud service provider (or a cloud service providing server, 21, 22, 23), an external server, and one or more networks via a wireless or wired network, and may be configured to receive or transmit overall data and information necessary for the operation of the AI workload optimal execution plan generation system (100).
[0062] Here, the user terminal (10) may include at least one of a mobile phone, a smart phone, a notebook computer, a laptop computer, a slate PC, a tablet PC, an ultrabook, a desktop computer, a digital broadcasting terminal, a personal digital assistant (PDA), a portable multimedia player (PMP), a navigation device, and a wearable device (e.g., a smartwatch, a smart glass, a head mounted display (HMD)).
[0063] In this regard, the communication unit (130) can receive user response (or response data) to user AI workload definition information (410) and user optimization requirement specification information (420) through the user terminal (10).
[0064] In addition, the communication unit (130) is communicatively connected to each of a plurality of cloud service providers (21, 22, 23) that provide different cloud (e.g., heterogeneous cloud) environments, thereby being able to receive different cloud environment information related to the cloud computing infrastructure provided by each of the plurality of cloud service providers (21, 22, 23).
[0065] Furthermore, the communication unit (130) can support various communication methods according to the communication standards of the communicating device.
[0066] For example, the communication unit (130) may be configured to communicate with a communication target using at least one of WLAN (Wireless LAN), Wi-Fi (Wireless-Fidelity), Wi-Fi (Wireless Fidelity) Direct, DLNA (Digital Living Network Alliance), WiBro (Wireless Broadband), WiMAX (World Interoperability for Microwave Access), HSDPA (High Speed Downlink Packet Access), HSUPA (High Speed Uplink Packet Access), LTE (Long Term Evolution), LTE-A (Long Term Evolution-Advanced), 5G (5th Generation Mobile Telecommunication), Bluetooth (Bluetooth™ Frequency Identification), Infrared Data Association (IrDA), UWB (Ultra-Wideband), ZigBee, NFC (Near Field Communication), Wi-Fi Direct, and Wireless USB (Wireless Universal Serial Bus) technologies.
[0067] Meanwhile, the storage unit (140) may also be referred to as a “database (DB)” or a “memory” and may be configured to store various information related to the present invention. In the present invention, the storage unit (140) may be provided in the AI workload optimal execution plan generation system (100) itself. In addition, at least a portion of the storage unit (140) may be configured as a cloud server (or cloud storage). That is, the storage unit (140) may be sufficient as long as it is a space where information necessary for the operation of the AI workload optimal execution plan generation system (100) according to the present invention is stored, and it can be understood that there are no restrictions on the physical space.
[0068] The user discussed above may have an account pre-registered in the AI workload optimal execution plan generation system (100) according to the present invention. In this case, the account may be created through a page (or screen) linked to the AI workload optimal execution plan generation system (100). Alternatively, the account may also be created in at least one other system linked to the AI workload optimal execution plan generation system (100). However, in this specification, the system (100) to which the user account is issued is not separately distinguished, and all accounts that can use various services provided by the AI workload optimal execution plan generation system (100) according to the present invention are referred to as “accounts pre-registered in the AI workload optimal execution plan generation system.”
[0069] Accordingly, various information related to a user account can be stored in the storage unit (140). Here, the information related to the user account can include the user's history information.
[0070] More specifically, user history information may include information related to various events occurring in a user account. For example, events occurring in a user account may include at least one of the following: i) entering AI workload definition information, ii) entering optimization requirement specification information, and iii) setting weights for optimization requirement specification information, which are required to execute a specific AI workload.
[0071] Accordingly, the user's history information may include, for example, at least one of: i) a record of inputting AI workload definition information (or history or details) inputted by the user; ii) a record of inputting optimization requirement specification information inputted by the user; iii) a record of setting weights for the user's optimization requirement specification information; iv) a record of executing the user's AI workload; v) a record of cloud environment setting information recommended (or suggested) to the user; and vi) the user's cloud environment setting information (or information on the cloud environment being used by the user).
[0072] The users discussed above may include specific businesses (or companies or firms), and users (non-members) who do not have an account in the present invention may also use the various services provided in the present invention.
[0073] In addition, the storage unit (140) may store data and commands required for the operation of the AI workload optimal execution plan generation system (100) according to the present invention. For example, the storage unit (140) may store a learning data set required for learning an artificial neural network (or artificial intelligence model, 152), and data, software, firmware, program code (Source Code), and commands processed or scheduled to be processed by the control unit (150) may be stored.
[0074] Furthermore, the storage unit (140) may store different cloud environment information related to the cloud computing infrastructure provided by each of the multiple cloud service providers (21, 22, 23). As another example, the storage unit (140) may store different network path information related to the network performance and network transmission path required to transmit and receive data in different cloud environments.
[0075] Meanwhile, the control unit (150) may also be referred to as a “processor” and may play a role in controlling the overall operation of the AI workload optimal execution plan generation system (100) related to the present invention. The control unit (150) may process signals, data, information, etc. input or output through the components discussed above, or perform a series of data processing to provide or process appropriate information and functions to the user.
[0076] As illustrated in FIG. 2, the control unit (150) can generate (or produce) input data used for recommending a cloud service to a user in order to recommend (or propose) a cloud service that satisfies the user's requirements.
[0077] First, the control unit (150) can receive input for user AI workload definition information (210) and user optimization requirement specification definition information (240) from the user terminal (10).
[0078] Here, the user AI workload definition information (210) may include elements having different characteristics (or meanings) with respect to the AI workload type (or kind), artificial intelligence model type, and data characteristics.
[0079] In addition, the user optimization requirements specification definition information (240) may include elements having different characteristics in relation to the time, price, and resource utilization required (or used) to execute the user AI workload definition information. For example, the user optimization requirements specification definition information (240) may include at least one of Response Time, Latency, Mean Time to Detection, Mean Time to Resolution, Mean Time Between Failures, Price, Utilization, Compliance, and Scalability. However, the elements included in the user optimization requirements specification information in the present invention are not limited thereto, and may further include various elements in addition to those mentioned above.
[0080] In addition, the control unit (150) can extract necessary information (e.g., workload type, data set characteristics, artificial intelligence model type, hyper parameters, etc.) from the user AI workload definition information (210).
[0081] Next, the control unit (150) can sample the cloud environment information (220) and network path information (230) stored in the storage unit (140) to collect N data pairs (or data sets or sample group data) in which the cloud environment information (220) and the network path information (230) form a pair.
[0082] Furthermore, the control unit (150) can combine N data pairs in which cloud environment information (220) and network path information (230) form a pair with information extracted from the user AI workload definition information to generate N sample group data corresponding to the N data pairs and including the extracted user AI workload definition information. More specifically, for one user AI workload definition information (210), there are N data pairs in which cloud environment information (220) and network path information (230) form a pair, and N sample group data (input data) can be generated through the combination of these.
[0083] The control unit (150) can perform a verification and preprocessing process on N sample group data and produce input data (N sample group data) for which preprocessing has been completed.
[0084] Meanwhile, the control unit (150) can convert different environmental information (e.g., parameter names, resource types and combinations, etc.) collected from on-premises and heterogeneous clouds into a unified expression. More specifically, the control unit (150) can convert N sample group data that have undergone preprocessing into N intermediate expressions (or intermediate representations) using the intermediate expression data converter (151).
[0085] In addition, the control unit (150) can remove noise and perform normalization on the N intermediate expressions that have been converted. This can be understood as a preprocessing process that prevents overfitting, which reduces the generalization performance of the artificial neural network (152), and adjusts all properties (or features) of the input data (N intermediate expressions) to the same scale.
[0086] Next, the control unit (150) can input N intermediate expressions, for which noise removal and normalization have been completed, into the artificial neural network (152). In this case, the artificial neural network (152) is executed in each environment for the N intermediate expressions, and parallel calculations can be performed N times, which is the number of times corresponding to the N number. Accordingly, the artificial neural network (152) can output N predicted values for user optimization requirement specification information elements (time, price, etc.) expected to be required to execute the user AI workload definition information (210) in each of different environments (e.g., cloud environment, network environment).
[0087] Next, the control unit (150) can specify an optimal prediction value using an optimal prediction calculator (or optimal prediction calculator, 153). The optimal prediction calculator (153) receives N prediction values, which are output data of an artificial neural network (152), as input, and calculates a final score for the N optimal prediction values based on the input N prediction values and user optimization requirement specification definition information (240), and can sort the N optimal prediction values based on the final score. The user can select any one of the N optimal prediction values. Alternatively, the AI workload optimal execution plan generation system (100) itself can specify an optimal prediction value (Top-1) with the highest score and provide it to the user so that the user does not have to make a separate selection.
[0088] Once the optimal prediction value is determined, the control unit (150) can identify an intermediate expression corresponding to the determined optimal prediction value using the optimal execution data generator (154), identify cloud environment information and network path information corresponding to the identified intermediate expression, and then generate final optimal execution data using the identified cloud environment and network path information.
[0089] Furthermore, the control unit (150) can specify at least one piece of cloud environment setting information that satisfies the user's requirements (user AI workload definition information and user optimization requirement specification information) based on the optimal prediction value, and recommend the specified cloud environment setting information to the user. For example, as illustrated in FIG. 2, the control unit (150) can provide recommendation information (ex: “Both the price and the response time are good!”, “If you select the old cloud, the cost of executing the AI workload can be reduced by $100, and the response time is expected to be shortened by about 50 ms.”, 200) including cloud environment setting information that satisfies the user's requirements to the user terminal (10).
[0090] However, the intermediate expression data converter (151), artificial neural network (152), optimal prediction calculator (153), and optimal execution data generator (154) are components of the control unit (150), and may be unified and explained as the control unit (150) for convenience of explanation below.
[0091] Hereinafter, based on the configuration of the AI workload optimal execution plan generation system (100) discussed above, a neural network-based method for generating an AI workload optimal execution plan in a hybrid and multi-cloud environment according to the present invention will be described in more detail. FIG. 3 is a flowchart for explaining a neural network-based method for generating an AI workload optimal execution plan in a hybrid and multi-cloud environment, and FIGS. 4a, 4b, 4c, 5, 6, 7, 8, 9a, 9b, and 10 are conceptual diagrams for explaining a neural network-based method for generating an AI workload optimal execution plan in a hybrid and multi-cloud environment according to the present invention, and FIGS. 11, 12, and 13 are conceptual diagrams for explaining a method for recommending cloud environment setting information to a user in the present invention.
[0092] In the present invention, a process of receiving user AI workload definition information and user optimization requirement specification information from a user terminal may be performed (S310, see FIG. 3).
[0093] The control unit (150) may provide a user environment that allows a user to input AI workload definition information and optimization requirement specification information. For example, as illustrated in FIGS. 4A and 4B , the control unit (150) may provide a page (or screen) on a user terminal (10) configured to allow a user to input user AI workload definition information (410) and user optimization requirement specification information (420).
[0094] As discussed above, the user AI workload definition information (410) may include elements having different meanings in relation to the AI workload type, the AI model type, and the data set characteristics. For example, as illustrated in FIG. 4A, the user AI workload definition information (410) may include at least one of the workload type (e.g., “task type,” “detailed task,” “use case,” 411), the AI model type (412), the AI model architecture (e.g., “number of layers,” “number of nodes per layer,” “number of parameters,” 413), and the data set information (e.g., “data size,” “data format,” 414).
[0095] The control unit (150) can receive user AI workload definition information (410) from the user terminal (10). For example, the control unit (150) selects a graphic object (ex: “Confirmation”, 410a) linked to the receiving function of the user AI workload definition information (410) from the user terminal (10), and, based on this, selects elements (ex: “Task type: Deep learning model training”, “Detailed task: Sentiment Analysis”, “Use case: Customer Review Analysis”, “Model type (type): Recurrent Neural Networks (RNNs)”, “Number of layers: 5”, “Number of nodes per layer: [128, 64, 32, 16, 8]”, “Number of parameters: 1.2 million parameters”, “Data size: 90 GB”, “Data format: CSV (Comma-Separated Values)”, 411, 412, 413, 414) having different characteristics included in the user AI workload definition information (410). It can receive input.
[0096] In addition, as discussed above, the user optimization requirements specification definition information (420) may include elements having different characteristics with respect to the time, price, and resource utilization required (or used) to execute the user AI workload definition information (410). For example, as illustrated in FIG. 4b, the user optimization requirements specification definition information (420) may include at least one of Response Time (421), Latency (422), Mean Time to Detection (423), Mean Time to Resolution (424), Mean Time Between Failures (425), Price (426), Utilization (427), Compliance (428), and Scalability (429).
[0097] Furthermore, the control unit (150) can receive user optimization requirement specification definition information (420) from the user terminal (10). For example, the control unit (150) selects, from the user terminal (10), a graphic object (ex: “Confirm”, 420a) linked to the reception function of the user optimization requirement specification definition information (420), elements having different characteristics included in the user optimization requirement specification definition information (420) (ex: “Response Time: 200ms or less”, “Latency: 50ms or less”, “Mean Time to Detection: 2 minutes or less”, “Mean Time to Resolution: within 30 minutes”, “Mean Time Between Failures: 1000 hours or more”, “Price: $500 or less per month”, “Utilization: 80% or less”, “Compliance: GDPR compliant”, “Scalability: Automatically expands when traffic increases”, User input can be received for (421, 422, 423, 424, 425, 426, 427, 428, 429).
[0098] Meanwhile, the control unit (150) can receive weights of elements (421, 422, 423, 424, 425, 426, 427, 428, 429) having different characteristics included in the user optimization requirement specification definition information (420) from the user terminal (10).
[0099] To this end, the control unit (150) may provide a user environment in which the user can set weights for elements (421, 422, 423, 424, 425, 426, 427, 428, 429) having different characteristics. For example, as illustrated in FIG. 4C, the control unit (150) may provide graphic objects (e.g., sliders) linked to a function that can set weights for each of the different elements (421, 422, 423, 424, 425, 426, 427, 428, 429). The user can increase or decrease the weights for each element by adjusting the slider to the left or right. At this time, the sum of the weights may be set to always be fixed to a preset value (e.g., “1”).
[0100] However, the method of setting the user's weight in the present invention is not limited to this, and a user environment can be provided in which the user can set the weight through various methods (e.g., check boxes, text boxes for direct numerical input, voice, drop-down menus, etc.) in addition to those mentioned.
[0101] Furthermore, the control unit (150) can receive, from the user terminal (10), weight setting information (or user input related to weight setting) of elements (421, 422, 423, 424, 425, 426, 427, 428, 429) having different characteristics. For example, the control unit (150) can receive, from the user terminal (10), user weight setting information including “1. Response time: 0.3” and “6. Price: 0.7” based on the selection of a graphic object (ex: “Confirm”, 430) associated with weight reception.
[0102] In contrast, the weights of elements (421, 422, 423, 424, 425, 426, 427, 428, 429) having different characteristics may also be set by the AI workload optimal execution plan generation system (100) itself. As an example, the control unit (150) may set the weights of elements (421, 422, 423, 424, 425, 426, 427, 428, 429) having different characteristics based on information (e.g., history information) of a user account logged into the user terminal (10). More specific details will be described later.
[0103] Meanwhile, in the present invention, a process of sampling information about different cloud environments and different network paths to generate multiple sample group data including different cloud environments and different network paths can be performed (S320, see FIG. 3).
[0104] As discussed above, information about different cloud environments (e.g., heterogeneous clouds) may include elements having different characteristics related to the cloud computing infrastructure provided by different cloud service providers. For example, as illustrated in (a) and (b) of FIG. 5, elements having different characteristics included in the different cloud environment information may include at least one of cloud service providers, regions and availability zones, computing resources, storage resources, network resources, security and compliance, cost management, resource management and auto-scaling, service and application management, and data movement and integration between clouds. In this case, among the different cloud environment information (510, 520), the first cloud environment information (510) may include elements related to the cloud computing infrastructure provided by the first cloud service provider (e.g., “Amazon Web Services (AWS)”), and the second cloud environment information (520) may include elements related to the cloud computing infrastructure provided by the second cloud service provider (e.g., “Google Cloud (GCP)”).
[0105] In addition, as discussed above, network path information may include elements having different characteristics related to network performance and network transmission paths required to transmit and receive data in a cloud environment (or different cloud environments or different network environments). For example, as illustrated in FIG. 6, different network path information (610, 620) may include at least one of network location (or region), network bandwidth, latency, packet loss rate, jitter, availability, reliability, congestion state, path length, security level, cost, and ISP information.
[0106] However, the elements included in the different cloud environment information and the different network path information in the present invention are not limited thereto, and may further include various elements in addition to those mentioned above.
[0107] Meanwhile, the control unit (150) can sample different cloud environment information (510, 520) and different network path information (610, 620) previously stored in the AI workload optimal execution plan generation system (100) to collect (or generate) N (plural) sample group data in which different cloud environment information (510, 520) and different network path information (610, 620) form pairs. As another example, the control unit (150) can sample cloud environment information (510, 520) and different network path information (610, 620) received (or collected) from a server (e.g., a cloud service provider) linked with the AI workload optimal execution plan generation system (100) to generate N sample group data in which different cloud environment information (510, 520) and different network path information (610, 620) form pairs.
[0108] The control unit (150) can generate multiple sample group data by combining each of the sampled different cloud environment information (510, 520) and different network path information (610, 620) with the user AI workload definition information (410) based on the user AI workload definition information (410).
[0109] More specifically, when there are N pieces of sample group data in which different cloud environment information (510, 520) and different network path information (610, 620) are paired, the control unit (150) can duplicate one user AI workload definition information (410) to correspond to the N pieces, thereby generating N pieces of sample group data including the user AI workload definition information (410), different cloud environment information (510, 520), and different network path information (610, 620). For example, as illustrated in FIG. 7, the control unit (150) can generate multiple pieces of sample group data (701, 702, 703) including the user AI workload definition information (410), different cloud environment information (510, 520), and different network path information (610, 620).
[0110] Here, “c” may mean user AI workload definition information, “s” may mean cloud environment information, and “t” may mean network path information. This can be understood as one user AI workload definition information (c), N 2-tuples (pairs of cloud environment information (s) and network path information (t)) to be matched with it, and c is replicated N times to create a 3-tuples (user AI workload definition information (c), cloud environment information (s), network path information (t)).
[0111] That is, the control unit (150) can combine each of a plurality (N) of sample group data paired with different cloud environment information (510, 520) and different network path information (610, 620) with a user AI workload (410) to generate a plurality of sample group data (701, 702, 703) that further includes not only different cloud environment information and different network path information, but also user AI workload definition information.
[0112] Furthermore, the control unit (150) can perform a test on the generated plurality of sample group data (701, 702, 703). As an example, the test on the plurality of sample group data can be understood as a test on whether or not a NULL value exists in the plurality of sample group data.
[0113] However, in the present invention, the verification process may also be performed during the process of receiving user AI workload definition information and user optimization requirement specification information. As an example, the control unit (150) may perform verification on whether appropriate user responses corresponding to each element included in the user AI workload definition information and user optimization requirement specification information have been input (e.g., whether information about the model has been input in the model type field, and whether a data format suitable for the workload type and model type has been input in the data format field, etc.).
[0114] Meanwhile, in the present invention, a process of inputting each of a plurality of sample group data into a neural network and receiving a plurality of prediction values for the plurality of sample group data from the neural network can be performed (S330, see FIG. 3).
[0115] The control unit (150) can input each of a plurality of sample group data (701, 702, 703) that has undergone preprocessing (e.g., black) into the artificial neural network (152).
[0116] At this time, the control unit (150) can convert a plurality of sample group data (701, 702, 703) for which preprocessing has been completed into a plurality of intermediate expression data using the intermediate expression data converter (151).
[0117] In this case, the number of intermediate expression data to be converted may be a number corresponding to the number (N) of multiple sample group data (701, 702, 703). For example, if it is assumed that the number of multiple sample group data is “10,” the number of intermediate expression data to be converted may be 10.
[0118] The control unit (150) can convert each of the plurality of sample group data (701, 702, 703) into a plurality of intermediate expression data based on a preset format. For example, as illustrated in FIG. 7, the control unit (150) can convert the first sample group data (ex: “(c, s_1, t_1)”, 701) into the first intermediate expression data (ex: , 711) and convert the second sample group data (ex: “(c, s_2, t_2)", 702) to the second intermediate representation data (ex: , 712) and convert the Nth sample group data (ex: “(c, s_N, t_N)”, 703) to the Nth intermediate representation data (ex: , 713) can be converted to.
[0119] That is, as examined above, the present invention can secure generality that can sufficiently express information of heterogeneous systems (hybrid and multi-cloud) through an intermediate representation data conversion process, and can secure data representation efficiency that drives learning and inference of an effective neural network model.
[0120] Furthermore, the control unit (150) can remove noise and perform normalization on the converted multiple intermediate expression data (711, 712, 713). This can be understood as a preprocessing process that prevents overfitting, which reduces the generalization performance of the artificial neural network (152), and adjusts all properties (or features) of input data (e.g., multiple intermediate expression data) to the same scale.
[0121] For example, as illustrated in FIG. 8, since all input data of the artificial neural network (152) must be defined as real values, the control unit (150) may perform a type conversion process to convert data having a Boolean value into a real value if such data exists. However, if no input data having a Boolean value exists, the type conversion process may not be performed.
[0122] In addition, the control unit (150) can perform normalization and outlier sensitivity removal (robustness) processes for a plurality of intermediate expression data (711, 712, 713). For example, the range and variability of values may be different for each piece of input data information. If the range of the latency (LA) value is “[0.0, 1.0]”, the range of the price (PR) value may be “[0.0, 20,000,000]”. In addition, outliers present in the input data may affect the performance of the artificial neural network (152).
[0123] The technique (or method) used in the present invention for normalization and outlier sensitivity removal can be confirmed by referring to the table and mathematical formula regarding the normalization method described in the figure below.
[0124]
[0125] Meanwhile, the control unit (150) can input each of a plurality of intermediate expression data that have undergone preprocessing into the artificial neural network (152). For example, as illustrated in FIG. 8, the control unit (150) can input each of the first intermediate expression data (801), the second intermediate expression data (802), and the Nth intermediate expression data (803) that have undergone preprocessing into the artificial neural network (152).
[0126] At this time, the architecture of the artificial neural network (152) in the present invention can be confirmed by referring to the table and mathematical formula described in the figure below.
[0127]
[0128] In this regard, the artificial neural network (152) may perform prediction on each of the plurality of intermediate expression data (801, 802, 803) and output multiple prediction values for each of the plurality of intermediate expression data. In this case, the artificial neural network (152) may perform prediction on each of the plurality of intermediate expression data (801, 802, 803) in parallel and output multiple prediction values for each of the plurality of intermediate expression data (801, 802, 803) simultaneously. For example, the artificial neural network (152) may perform prediction on each of the first intermediate expression data (801), the second intermediate expression data (802), and the Nth intermediate expression data (803) in parallel and output a first prediction value (ex:) for the first intermediate expression data (801). , 811), the second prediction value for the second intermediate expression data (802) (ex: , 812), the Nth intermediate representation data (803) and the Nth predicted value (ex: , 813) can be output simultaneously.
[0129] Here, silver For the th input It may be a prediction (or inference) value of an artificial neural network (152) for the th user optimization requirement. All output values ( ) are the result of applying the same activation function and have the same range. In the present invention, the sigmoid function was applied among the types of activation functions, and all have the range of (0, 1).
[0130] This is the weight (ex:) in the optimal prediction calculation process described later. ) is a measure to avoid diluting the intent of the user optimization requirement specification information (420) defined as, for example, , and if other input / output patterns are similar, the first optimization factor may dominate the score calculation (see Figure 9a).
[0131] Furthermore, the plurality of predicted values (811, 812, 813) output from the artificial neural network (152) may include the time and price required to execute the user AI workload definition information (410) in different cloud environment information (510, 520) and different network path information (610, 620). However, the information included in the plurality of predicted values (811, 812, 813) is not limited thereto, and may further include the resource usage rate used to execute the user AI workload definition information.
[0132] That is, since there are a total of N intermediate expression data (801, 802, 803) for the user AI workload definition information (410), the control unit (150) can apply the neural network a total of N times to one user AI workload and receive (or obtain) N (plural) predicted values including time and price through the results.
[0133] Meanwhile, in the present invention, a process of specifying an optimal prediction value that satisfies user AI workload definition information and user optimization requirement specification information can be performed using optimal prediction calculation (S340, see FIG. 3).
[0134] The control unit (150) receives as input a plurality of predicted values (811, 812, 813) output by an artificial neural network (152) for user AI workload definition information (410) and user optimization requirement specification information (420), and can produce (or specify) at least one predicted value that satisfies user-specified requirements (e.g., AI workload definition information and optimization requirement specification information).
[0135] As discussed above, the user optimization requirement specification information (420) may include elements having different characteristics, and the control unit (150) may receive weights for elements (421, 422, 423, 424, 425, 426, 427, 428, 429) having different characteristics from the user terminal (10).
[0136] Referring to Fig. 9a, silver For the th intermediate representation data (input data) The inference result for the second requirement (ex: ) can mean.
[0137] The control unit (150) can use an optimal prediction calculation (or optimal prediction calculator) to specify an optimal prediction value that satisfies the user AI workload definition information (410) and the user optimization requirement specification information (420).
[0138] Specifically, as shown in 9b, the control unit (150) outputs multiple predicted values (901, 902, 903) from the artificial neural network (152) and weights (ex:) for elements with different characteristics received from the user terminal (10). , 911) can be input into the optimal prediction calculator (153).
[0139] First, the optimal prediction calculator (153) can define a score function based on multiple prediction values (901, 902, 903) and weights (911) for elements with different characteristics. At this time, for the convenience of explanation, the present invention will explain by assuming only multiple elements (e.g., 7) (and therefore, 7 weights) among the elements described as an example of user optimization requirement specification information. Artificial neural network (152) The score function for the th output can be expressed as [Mathematical Formula 1] below.
[0140] [Mathematical Formula 1]
[0141]
[0142] Next, the optimal prediction calculator (153) can calculate a score function and sort multiple optimal prediction values based on the calculated scores. For example, multiple optimal prediction (or inference) values can be produced through the calculation of the score function, and the multiple optimal prediction values can be sorted in descending order.
[0143] Furthermore, the control unit (150) selects an optimal prediction value (ex:) that satisfies the user AI workload definition information (410) and the user optimization requirement specification information (420) among the aligned multiple optimal prediction values. , 920) can be specified.
[0144] In this case, the specified optimal prediction value (920) may correspond to either the optimal prediction value specified by the AI workload optimal execution plan generation system (100) or the optimal prediction value specified based on the user's selection.
[0145] In this regard, since the user's primary goal is to identify the optimal prediction value (i.e., (r_{k,1}, …r_{k,9} for a specified k that produces the maximum score) at the optimal prediction value specific step discussed above, and then to finally identify the corresponding input data at the optimal execution data generation step, the control unit (150) can specify the optimal prediction value (Top-1) having the maximum score (Top-1 automatic return).
[0146] However, if the user has multiple optimal prediction values ( ), one optimal prediction value can be randomly selected (user selection) regardless of the weight (w) of the user optimization requirement specification information (420).
[0147] More specific details regarding these "Top-1 automatic return" and "user selection" can be found by referring to the table and mathematical formulas illustrated in the figure below. However, the present invention does not limit the method by which the optimal prediction value is determined to any one specific method.
[0148]
[0149] In this way, the control unit (150) can use multiple predicted values (901, 902, 903) and the weights (911) of the user optimization requirement specification information to produce an optimal predicted value (920) that satisfies the user AI workload definition information (410) and the user optimization requirement specification information (420).
[0150] The optimal prediction calculation discussed above can be designed to reflect user optimization requirement specification information, have a “weight” mechanism, and at the same time, allow the user to check the inference results and manually select them regardless of the specified weights.
[0151] Meanwhile, in the present invention, optimal execution data can be generated based on the optimal prediction value (920).
[0152] More specifically, in the present invention, by using optimal execution data generation, cloud environment setting information that produces an optimal prediction value (920) can be identified (specified) in reverse, and optimal execution data can be generated using the identified cloud environment setting information.
[0153] Cloud environment configuration information includes cloud environment and network path information (information related to cloud environment configuration) required to execute a specific AI workload (e.g., a user AI workload), and may include values set for optimal execution of the workload.
[0154] As illustrated in FIG. 10, first, the control unit (150) can confirm a specific optimal prediction value (1001) using optimal prediction calculation. This means obtaining the expected optimal time and price information required for executing the user's AI workload (user AI workload definition information), and using this as a starting point, the intermediate expression data that produced the optimal prediction value (1001) can be identified in reverse, and then specific cloud environment information and specific network path information included in the sample group data corresponding to the identified intermediate expression data can be identified in reverse.
[0155] Next, the control unit (150) can reversely identify (or specify) the intermediate expression data that produced the optimal prediction value based on the calculation result of the optimal prediction value (1001). For example, the control unit (150) can identify the intermediate expression data (1010) in the optimal execution data based on the optimal prediction value (1001). However, as an example, in the case of the intermediate expression data, not necessarily one, but multiple intermediate expression data (1010, 1020) can be identified.
[0156] Furthermore, the control unit (150) can convert the identified intermediate representation data (1010) into final optimal execution data. More specifically, the control unit (150) can generate optimal execution data (or execution commands) by combining each of the cloud environment information and network path information (1010a) included in the intermediate representation data (1010). As an example, the optimal execution data can be generated in the form of program code (or source code). However, the form of the optimal execution data in the present invention is not limited thereto, and can be implemented in various forms other than those mentioned.
[0157] Meanwhile, in the present invention, based on the process of the AI workload optimal execution plan generation system (100) discussed above, a user environment can be provided that recommends an optimal cloud environment that satisfies user requirements (e.g., user AI workload, user optimization requirement specification, etc.).
[0158] To this end, first, the control unit (150) can specify at least one piece of cloud environment setting information that satisfies the user AI workload definition information (410) and the user optimization requirement specification information (420) based on the optimal prediction value (1001). For example, the control unit (150) can calculate the expected time and the expected price by analyzing various cloud environments and network paths related to the user AI workload definition information (410) through the calculation of the optimal prediction value (1001), and can specify the cloud environment setting information that satisfies the user AI workload definition information (410) and the user optimization requirement specification information (420) based on the calculation result.
[0159] As an example, cloud environment configuration information may include at least one of a cloud service provider, instance type and configuration (e.g., CPU, GPU, and memory specifications), storage options (e.g., SSD, HDD), network settings (e.g., network bandwidth and latency), operating system and software environment (e.g., Windows, Linux, Python, TensorFlow, etc.), cost management information (expected cost, spot instance, reserved instance, etc.), and performance information (expected execution time, expected resource utilization). However, the elements included in the cloud environment configuration information are not limited thereto, and may further include elements with different characteristics in addition to those mentioned.
[0160] Next, the control unit (150) can generate recommendation information for specific cloud environment setting information.
[0161] The "recommended information" described in the present invention may include the expected time and price required to execute a user-defined AI workload (user AI workload definition information) within a specific cloud environment configuration. In this case, in addition to the expected time and price, the recommended information may further include information regarding the expected resource utilization rate used to execute the user-defined AI workload.
[0162] Furthermore, the control unit (150) can provide the generated recommendation information to the user terminal (10). For example, as illustrated in FIG. 11, the control unit (150) can provide recommendation information (ex: “Both the price and the response time are good!”, “If you select the Ku* cloud, the cost required to execute the AI workload can be reduced by $100, and the response time is expected to be shortened by about 50 ms.”, 1101) regarding cloud environment setting information on the user terminal (or service page, 10) to which the user account (U) is logged in.
[0163] Meanwhile, in the present invention, the recommendation information provided to the user terminal (10) may be provided as multiple recommendation information having different types (or characteristics).
[0164] Specifically, the plurality of recommendation information having different types may include a first type of recommendation information specified based on user optimization requirement specification information (420) and a second type of recommendation information specified based on conditions preset in the AI workload optimal execution plan generation system (100). However, in the present invention, the types are not necessarily limited to the first type and the second type.
[0165] Here, the first type of recommendation information may be recommendation information provided based on weights set for elements (421, 422, 423, 424, 425, 426, 427, 428, 429) with different characteristics included in the user optimization requirement specification information (420). As an example, let us assume that weights for “Response Time” and “Price” are set from the user terminal (10). The control unit (150) may provide recommendation information (1101) that satisfies the user AI workload definition information (410) and the weights for response time and price.
[0166] Additionally, the second type of recommendation information may be recommendation information that is specified by the AI workload optimal execution plan generation system (100) and provided to the user (or user account (U)).
[0167] In this regard, the AI workload optimal execution plan generation system (100) may have preset conditions set and exist for providing the second type of recommendation information. For example, the AI workload optimal execution plan generation system (100) may have preset conditions set and exist based on at least one of: i) information matched to a user account (U) (e.g., user history information), ii) specific cloud environment setting information that has been selected the most during a specific period (or a preset period), and iii) cloud environment setting information of multiple users registered in the AI workload optimal execution plan generation system (100). However, the setting criteria of the preset conditions are not limited thereto, and various criteria may be further included in addition to the mentioned criteria.
[0168] The control unit (150) can provide a second type of recommended information, specified based on preset conditions, to a user terminal (10) provided with a first type of recommended information (1101). For example, as illustrated in FIGS. 11 and 12 , the control unit (150) can provide the second type of recommended information (1201, 1202, 1203) to the user terminal (10) based on the selection of a graphic object (ex: “See more other recommendations”, 1110) linked to a second type of recommended information provision function from the user terminal (10).
[0169] As an example, among the second type of recommendation information (1201, 1202, 1203), the first recommendation information (ex: “Good in terms of price!”, “If you choose the cloud, you can save $150 on the cost of running the AI workload, but the response time is expected to take about 100ms longer.”, 1201) may be recommendation information provided based on the history information of the user account (U). This may be provided based on the weights set by the user in the past or the preferred elements among the weights for the elements included in the user optimization requirement specification information.
[0170] As another example, among the second type of recommendation information (1201, 1202, 1203), the second recommendation information (ex: “The hottest these days!”, “If you select N* cloud, the cost of running AI workload will be increased by $50, but the response time is expected to be shortened by about 100ms.”, 1202) may be provided based on the specific cloud environment setting information that was selected the most during a specific period.
[0171] As another example, among the second type of recommendation information (1201, 1202, 1203), the third type of recommendation information (ex: “Pick users of a similar type to user 1!”, “If you select AW* cloud, you can save $100 on the cost of running the AI workload, but the response time is expected to take about 200 ms longer.”, 1203) may be provided based on the cloud environment setting information of multiple users registered in the AI workload optimal execution plan generation system (100).
[0172] Furthermore, the control unit (150) can sequentially sort a plurality of specified recommendation information and provide them to the user terminal (10).
[0173] Here, “providing sequentially sorted information” can be understood as providing multiple pieces of recommended information sorted in order of priority based on user optimization requirement specification information.
[0174] For example, as illustrated in FIGS. 12 and 13, the control unit (150) may sequentially list a plurality of pieces of recommended information (1301, 1302, 1303) in order of priority and provide them to the user terminal (10) based on the selection of a graphic object (ex: “Compare all suggestions”, 1210) linked to a plurality of recommended information sorting functions from the user terminal (10).
[0175] Meanwhile, the control unit (150) can select at least one of a plurality of pieces of recommended information from the user terminal (10).
[0176] Specifically, the control unit (150) may receive a user's selection of either the first type of recommendation information or the second type of recommendation information from the user terminal (10). For example, as illustrated in FIG. 13, the control unit (150) may receive a user's selection of the first recommendation information (1301) among a plurality of recommendation information (1301, 1302, 1303) from the user terminal (10).
[0177] Furthermore, the control unit (150) can generate optimal execution data corresponding to the recommended information recommended by the user. More specifically, the control unit (150) can generate optimal execution data corresponding to the recommended information selected from the user terminal (10) and register the generated optimal execution data in the user account (U). For example, as illustrated in FIG. 13, assume that first recommended information (1301), corresponding to the first type of recommended information, is selected from the user terminal (10). The control unit (150) can generate optimal execution data corresponding to the first recommended information (1301) and register the same in the user account (U) logged into the user terminal (10).
[0178] In this way, the present invention can provide a user environment in which a user can select an optimal cloud environment from various perspectives by simultaneously providing first type recommendation information and second type recommendation information having different types.
[0179] In other words, users can select the optimal cloud environment (cloud environment setting information) that simultaneously satisfies the time and cost required to run AI workloads and performance optimization by receiving not only customized recommendation information that satisfies their requirements but also recommendation information from various perspectives.
[0180] As described above, the neural network-based method and system for generating an optimal execution plan for AI workloads in hybrid and multi-cloud environments according to the present invention can achieve a better optimal execution point for AI workloads in hybrid and multi-cloud environments and maximize the efficiency of AI workload execution by comprehensively considering factors affecting optimal execution of AI workloads (e.g., user AI workload definition information, cloud environment information, network path information, etc.) and user requirements.
[0181] In addition, the neural network-based method and system for generating an optimal execution plan for AI workloads in hybrid and multi-cloud environments according to the present invention selects and provides an optimal cloud environment that suits the characteristics of the AI workload and user requirements to the user, thereby enabling the user to maximize the time and cost required to execute the AI workload, as well as the efficient use of resources.
[0182] More specifically, the neural network-based method and system for generating optimal execution plans for AI workloads in hybrid and multi-cloud environments according to the present invention can compare and analyze the prices and performance of various cloud service providers to recommend optimal cloud environment configuration information to users. This allows users to reduce the cost burden and further optimize the time required to execute AI workloads.
[0183] That is, the neural network-based method and system for generating an optimal execution plan for AI workloads in a hybrid and multi-cloud environment according to the present invention can provide users with convenience in building a hybrid and multi-cloud environment, thereby enabling users to stably operate the hybrid and multi-cloud environment.
[0184] Furthermore, the neural network-based method and system for generating optimal execution plans for AI workloads in hybrid and multi-cloud environments according to the present invention can provide recommendations for optimal cloud environment configurations that satisfy user AI workload definition information and user optimization requirement specifications. This allows users to select the optimal cloud environment that simultaneously optimizes the time and cost required to execute AI workloads from various perspectives.
[0185] Meanwhile, the present invention discussed above can be implemented as a program that is executed by one or more processes on a computer and can be stored on a medium (or recording medium) that can be read by the computer.
[0186] Furthermore, the present invention discussed above can be implemented as computer-readable code or instructions on a program-recorded medium. In other words, the present invention can be provided in the form of a program.
[0187] Meanwhile, computer-readable media include all types of recording devices that store data that can be read by a computer system. Examples of computer-readable media include hard disk drives (HDDs), solid-state disk drives (SSDs), silicon disk drives (SDDs), ROMs, RAMs, CD-ROMs, magnetic tapes, floppy disks, and optical data storage devices.
[0188] Furthermore, the computer-readable medium may include a storage device and may be a server or cloud storage device accessible via communication. In this case, the computer may download the program according to the present invention from the server or cloud storage device via wired or wireless communication.
[0189] Furthermore, in the present invention, the computer described above is an electronic device equipped with a processor, i.e., a CPU (Central Processing Unit), and there is no particular limitation on its type.
[0190] Meanwhile, the above detailed description should not be construed as limiting in any respect and should be considered illustrative. The scope of the present invention should be determined by a reasonable interpretation of the appended claims, and all modifications within the equivalent scope of the present invention are intended to be included within the scope of the present invention.
Claims
1. A step of receiving user AI workload definition information and user optimization requirement specification information from a user terminal; A step of sampling information about different cloud environments and different network paths to generate multiple sample group data including the different cloud environments and the different network paths; A step of inputting each of the plurality of sample group data into a neural network and receiving a plurality of prediction values for the plurality of sample group data from the neural network; and A neural network-based method for generating an optimal execution plan for an AI workload in a hybrid and multi-cloud environment, characterized in that it comprises a step of specifying an optimal prediction value that satisfies the user AI workload definition information and the user optimization requirement specification information using an optimal prediction calculation.
2. In paragraph 1, The above user AI workload definition information is: Contains information related to AI workload types, AI model types, and data set characteristics. The above different cloud environment information is: Includes information related to cloud service providers, cloud service locations, cloud service pricing policies, and cloud service types. The above different network path information is, A neural network-based method for generating optimal execution plans for AI workloads in hybrid and multi-cloud environments, characterized by including information related to network performance and network transmission paths.
3. In paragraph 1, The above multiple sample group data further includes the user AI workload definition information, In the step of generating the above multiple sample group data, A neural network-based method for generating an optimal execution plan for an AI workload in a hybrid and multi-cloud environment, characterized in that, based on the user AI workload definition information, each of the sampled different cloud environment information and the different network path information is combined with the user AI workload definition information to generate the plurality of sample group data.
4. In paragraph 3, A step of converting each of the plurality of sample group data into a plurality of intermediate expression data based on a preset format; and A neural network-based method for generating an optimal execution plan for an AI workload in a hybrid and multi-cloud environment, characterized in that it further comprises a step of inputting each of the plurality of intermediate expression data into the neural network.
5. In paragraph 4, The above neural network, By performing a prediction for each of the plurality of intermediate expression data, the plurality of predicted values for each of the plurality of intermediate expression data are output, The above multiple predicted values are, A neural network-based method for generating an optimal execution plan for an AI workload in a hybrid and multi-cloud environment, characterized in that it includes the time and price required to execute the user AI workload definition information in the different cloud environment information and the different network path information.
6. In paragraph 5, The above plurality of predicted values further include resource utilization used to execute the user AI workload definition information, The above neural network, A neural network-based method for generating an optimal execution plan for an AI workload in a hybrid and multi-cloud environment, characterized in that the predictions for each of the plurality of intermediate expression data are performed in parallel, and the plurality of prediction values for each of the plurality of intermediate expression data are simultaneously output.
7. In paragraph 1, The above user optimization requirements specification information includes elements with different characteristics, The elements with the above different characteristics are, Further including the time and price required to execute the user AI workload definition information, and the resource utilization rate used to execute the user AI workload definition information, The steps for receiving user optimization requirement specification information are: A neural network-based method for generating an optimal execution plan for AI workloads in a hybrid and multi-cloud environment, characterized in that it further includes a step of setting weights of elements having different characteristics from the user terminal.
8. In paragraph 6, The above optimal prediction calculation is, Define a score function based on the multiple predicted values and the weights of the elements having different characteristics, By calculating the above score function, multiple optimal prediction values are sorted by the calculated score, A neural network-based method for generating an optimal execution plan for an AI workload in a hybrid and multi-cloud environment, characterized in that the optimal prediction value that satisfies the user AI workload definition information and the user optimization requirement specification information is specified among the plurality of optimal prediction values sorted above.
9. In paragraph 8, A neural network-based method for generating an optimal execution plan for AI workloads in a hybrid and multi-cloud environment, characterized in that it further comprises a step of generating optimal execution data based on the above optimal prediction value.
10. In paragraph 1, A step of specifying at least one piece of cloud environment setting information that satisfies the user AI workload definition information and the user optimization requirement specification information based on the above optimal prediction value; A step of generating recommendation information for the above-mentioned specific cloud environment setting information; and A neural network-based method for generating an optimal execution plan for an AI workload in a hybrid and multi-cloud environment, characterized in that it further comprises a step of providing the generated recommendation information to the user terminal.
11. In paragraph 10, The above recommended information is, A neural network-based method for generating an optimal execution plan for an AI workload in a hybrid and multi-cloud environment, characterized in that the cloud environment setting information includes an expected time and an expected price required to execute the user AI workload definition information.
12. In paragraph 11, The above recommended information is, A neural network-based method for generating an optimal execution plan for an AI workload in a hybrid and multi-cloud environment, characterized in that the cloud environment setting information further includes an expected resource utilization rate used to execute the user AI workload definition information.
13. In paragraph 10, The above recommended information is, A neural network-based method for generating an optimal execution plan for an AI workload in a hybrid and multi-cloud environment, characterized in that it includes a first type of recommendation information specified based on the above user optimization requirement specification information and a second type of recommendation information specified based on preset conditions.
14. In paragraph 13, A step of generating the optimal execution data corresponding to the selected recommendation information when either the first type of recommendation information or the second type of recommendation information is selected from the user terminal; and A neural network-based method for generating an optimal execution plan for an AI workload in a hybrid and multi-cloud environment, characterized in that it further comprises a step of registering the above optimal execution data to a user account.
15. A communication unit that receives user AI workload definition information and user optimization requirement specification information from the user terminal; and A control unit for sampling information about different cloud environments and different network paths and generating a plurality of sample group data including the different cloud environments and the different network paths, The above control unit, By inputting each of the plurality of sample group data into a neural network, a plurality of prediction values for the plurality of sample group data are received from the neural network, A neural network-based system for generating an optimal execution plan for an AI workload in a hybrid and multi-cloud environment, characterized in that it uses optimal prediction calculation to specify an optimal prediction value that satisfies the user AI workload definition information and the user optimization requirement specification information.
16. In paragraph 15, The above control unit, Based on the above optimal prediction value, specify at least one cloud environment setting information that satisfies the user AI workload definition information and the user optimization requirement specification information, Generates recommendation information for the above specified cloud environment setting information, A neural network-based system for generating an optimal execution plan for AI workloads in a hybrid and multi-cloud environment, characterized in that the generated recommendation information is provided to the user terminal.
17. A program that is executed by one or more processes in an electronic device and stored in a computer-readable recording medium, The above program is, A step of receiving user AI workload definition information and user optimization requirement specification information from a user terminal; A step of sampling information about different cloud environments and different network paths to generate multiple sample group data including the different cloud environments and the different network paths; A step of inputting each of a plurality of intermediate expression data for the plurality of sample group data into a neural network, and receiving a plurality of prediction values for the plurality of sample group data from the neural network; and A program stored on a computer-readable recording medium, characterized in that it includes commands for performing a step of specifying an optimal prediction value that satisfies the user AI workload definition information and the user optimization requirement specification information using an optimal prediction calculation.
Citation Information
Patent Citations
Composition for preventing, improving, and / or treating geriatric encephalopathy comprising a hepcidin inhibitor
KR1020220165520A
Electronic device and operating method for lightweighting cnn (convolution neural network) model through knowledge distillation-based fine tuning
KR1020250114732A
Polythiophene film and sensor for sensing gas including the same
KR1020250166659A
Safety parapet manufacturing method for construction work
KR102061876B1
KR20230087309A