Algorithm model management method and device

By obtaining and analyzing the algorithm model training information of multiple user equipment, selecting the best parameter group and updating the algorithm model on the user equipment, the problems of high management costs and inconvenient model update in the prior art are solved, and the unified management and accuracy improvement of the algorithm models of multiple user equipment are achieved.

CN113988212BActive Publication Date: 2025-03-25SHENZHEN IDEAMAKE SOFTWARE TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111331431.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-11-10
Publication Date
2025-03-25
Estimated Expiration
2041-11-10

AI Technical Summary

Technical Problem

In the prior art, when managing algorithm models, it is difficult to achieve unified management of multiple user equipment, resulting in high management costs and inconvenient model updates.

Method used

By obtaining information about the training target algorithm model of multiple user equipment, selecting the best training parameter group, and sending update instructions to the user equipment to achieve unified management and update of the algorithm model.

Benefits of technology

It reduces management costs, improves the accuracy of the algorithm model, and realizes unified management of algorithm models of multiple user equipment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113988212B_ABST
    Figure CN113988212B_ABST
Patent Text Reader

Abstract

The embodiment of the present application discloses a method and device for managing an algorithm model, the method comprising: obtaining first information of a target algorithm model for training multiple user devices, obtaining multiple first information, a first training result indicator group including multiple training result indicators of the target algorithm model; selecting a target training parameter group from multiple first training parameter groups according to the multiple first training result indicator groups; sending the target training parameter group to multiple user devices to instruct the multiple user devices to update the target algorithm model respectively. The present application updates the target algorithm model of each user device according to the training parameters and training result indicators of the target algorithm model trained by different user devices, realizes unified management of the algorithm models of multiple user devices, and can improve the accuracy of the algorithm model while reducing management costs.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a method and device for managing an algorithm model. Background Art

[0002] With the rapid development of computer technology, technologies such as cloud computing, big data and artificial intelligence are increasingly being used in our daily lives. These technologies are usually implemented based on various algorithm models, which are steps to solve a class of problems, such as prediction models, error correction models, word segmentation models, image recognition models, etc.

[0003] In projects related to algorithm models, there are two main modes: local mode and cloud server mode. In the local mode, the results of model training and optimization, and model files are all saved locally, and the model deployment is also stored in a specified file for saving. This situation is easy to cause confusion and is inconvenient for model updates and process automation. The cloud server mode runs all processes on the server side, which is convenient for unified management, but the cost of long-term use is relatively high. Therefore, how to effectively manage algorithm models is an urgent problem to be solved. Summary of the invention

[0004] The embodiments of the present application provide a method and device for managing an algorithm model, which can manage the algorithm models running on multiple user devices, thereby reducing management costs and improving the accuracy of the algorithm model.

[0005] In a first aspect, an embodiment of the present application provides a method for managing an algorithm model, the method comprising:

[0006] Acquire first information of a target algorithm model for training multiple user devices to obtain multiple first information, each of which includes a first training parameter group and a first training result indicator group, the first training parameter group includes multiple training parameters of the target algorithm model, and the first training result indicator group includes multiple training result indicators of the target algorithm model;

[0007] Selecting a target training parameter group from a plurality of the first training parameter groups according to the plurality of the first training result indicator groups;

[0008] The target training parameter group is sent to the multiple user equipments to instruct the multiple user equipments to update the target algorithm model respectively.

[0009] In a second aspect, an embodiment of the present application provides a management device for an algorithm model, the device comprising a processing unit and a transceiver unit, wherein:

[0010] A processing unit, configured to obtain first information of a target algorithm model for training multiple user devices, and obtain multiple first information, each of which includes a first training parameter group and a first training result indicator group, wherein the first training parameter group includes multiple training parameters of the target algorithm model, and the first training result indicator group includes multiple training result indicators of the target algorithm model;

[0011] The processing unit is further configured to select a target training parameter group from a plurality of the first training parameter groups according to the plurality of the first training result indicator groups;

[0012] The transceiver unit is used to send the target training parameter group to the multiple user equipments to instruct the multiple user equipments to update the target algorithm model respectively.

[0013] In a third aspect, an embodiment of the present application provides an electronic device, comprising a processor, a memory, a communication interface, and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the processor, and the program comprises instructions for executing some or all of the steps described in the method described in the first aspect above.

[0014] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, which stores a computer program for electronic data exchange, wherein the computer program enables a computer to execute some or all of the steps described in the method described in the first aspect above.

[0015] In a fifth aspect, an embodiment of the present application provides a computer program product, wherein the computer program product includes a non-transitory computer-readable storage medium storing a computer program, and the computer program is operable to cause a computer to execute some or all of the steps described in the method described in the first aspect of the embodiment of the present application. The computer program product may be a software installation package.

[0016] The technical solution provided by the present application obtains first information of a target algorithm model for training of multiple user devices, and obtains multiple first information, each of which includes a first training parameter group and a first training result indicator group, the first training parameter group includes multiple training parameters of the target algorithm model, and the first training result indicator group includes multiple training result indicators of the target algorithm model; selects a target training parameter group from multiple first training parameter groups according to the multiple first training result indicator groups; sends the target training parameter group to multiple user devices to instruct the multiple user devices to update the target algorithm model respectively. The present application updates the target algorithm model of each user device according to the training parameters and training result indicators of the target algorithm model trained by different user devices, realizes unified management of the algorithm models of multiple user devices, and can improve the accuracy of the algorithm model while reducing management costs. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the embodiments will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0018] Figure 1 is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application;

[0019] Figure 2 It is a schematic diagram of a management system of an algorithm model provided in an embodiment of the present application;

[0020] Figure 3 This is a data flow diagram for algorithm model training provided in an embodiment of the present application;

[0021] Figure 4 It is a flowchart of a management method of an algorithm model provided in an embodiment of the present application;

[0022] Figure 5a It is a schematic diagram of a user interface for managing multiple algorithm models provided in an embodiment of the present application;

[0023] Figure 5b It is a user interface diagram of an algorithm model file provided in an embodiment of the present application;

[0024] Figure 6 It is a flowchart of another algorithm model management method provided in an embodiment of the present application;

[0025] Figure 7 It is a block diagram of the functional units of a management device for an algorithm model provided in an embodiment of the present application;

[0026] Figure 8 It is a schematic diagram of the structure of another electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0027] In order to help those skilled in the art better understand the technical solutions of the present application, the following is a clear and complete description of the technical solutions in the embodiments of the present application in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only some embodiments of the present application, not all embodiments. Based on the description of the embodiments of the present application, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present application.

[0028] The terms "first", "second", etc. in the specification and claims of this application and the above-mentioned drawings are used to distinguish different objects, rather than to describe a specific order. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, software, product, or device that includes a series of steps or units is not limited to the listed steps or units, but also includes steps or units that are not listed, or also includes other steps or units inherent to these processes, methods, products, or devices.

[0029] Reference to "embodiments" herein means that a particular feature, structure, or characteristic described in conjunction with the embodiments may be included in at least one embodiment of the present application. The appearance of the phrase in various locations in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein may be combined with other embodiments.

[0030] See also Figure 1 , Figure 1 1 is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application. The electronic device 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, an antenna 1, an antenna 2, a mobile communication module 140, a wireless communication module 150, and a display screen 160.

[0031] It is to be understood that the structure illustrated in the embodiment of the present application does not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 may include more or fewer components than shown in the figure, or combine some components, or split some components, or arrange the components differently. The components shown in the figure may be implemented in hardware, software, or a combination of software and hardware.

[0032] The processor 110 may include one or more processing units, for example, the processor 110 may include an application processor (AP), a modem processor, a graphics processor (GPU), an image signal processor (ISP), a controller, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU), etc. Among them, different processing units may be independent components or integrated into one or more processors. In some embodiments, the electronic device 100 may also include one or more processors 110.

[0033] The USB interface 130 is an interface that complies with the USB standard specification, and specifically can be a Mini USB interface, a MicroUSB interface, a USB Type C interface, etc. The USB interface 130 can be used to connect a charger to charge the electronic device 100, and can also be used to transfer data between the electronic device 100 and a peripheral device. The USB interface 130 can also be used to connect headphones to play audio through the headphones.

[0034] Each antenna in the electronic device 100 can be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve the utilization of the antennas. For example, antenna 1 can be reused as a diversity antenna for a wireless local area network. In some other embodiments, the antenna can be used in combination with a tuning switch.

[0035] The mobile communication module 140 can provide solutions for wireless communications including 2G / 3G / 4G / 5G, etc., applied to the electronic device 100. The mobile communication module 140 may include at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), etc. The mobile communication module 140 can receive electromagnetic waves from the antenna 1, and filter, amplify, and process the received electromagnetic waves, and transmit them to the modulation and demodulation processor for demodulation. The mobile communication module 140 can also amplify the signal modulated by the modulation and demodulation processor, and convert it into electromagnetic waves for radiation through the antenna 1. In some embodiments, at least some of the functional modules of the mobile communication module 140 can be set in the processor 110. In some embodiments, at least some of the functional modules of the mobile communication module 140 can be set in the same device as at least some of the modules of the processor 110.

[0036] The wireless communication module 150 can provide wireless communication solutions including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR), UWB, etc., which are applied to the electronic device 100. The wireless communication module 150 can be one or more devices integrating at least one communication processing module. The wireless communication module 150 receives electromagnetic waves via the antenna 2, modulates the frequency of the electromagnetic wave signal and filters it, and sends the processed signal to the processor 110. The wireless communication module 150 can also receive the signal to be sent from the processor 110, modulate the frequency of it, amplify it, and convert it into electromagnetic waves for radiation through the antenna 2.

[0037] The electronic device 100 implements the display function through a GPU, a display screen 160, and an application processor. The GPU is a microprocessor for image processing, which connects the display screen 160 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. The processor 110 may include one or more GPUs, which execute program instructions to generate or change display information. In some embodiments, the electronic device 100 may include one or more display screens 160.

[0038] For example, Figure 2 As shown, Figure 2 A schematic diagram of a management system for an algorithm model provided in an embodiment of the present application. As shown in the figure, the system can provide task scheduling services and tracking services for the training and inference operation of algorithm models of multiple users.

[0039] The task scheduling service is a service for arranging task flows and timing tasks. It is an intermediate service between the algorithm model training environment and the tracking service, and plays a role in connecting, scheduling, and coordinating different services or tasks. At the same time, it can connect to the algorithm model data source and undertake the data pipeline processing flow. For example, the DolphinScheduler task scheduling tool can be used to provide the task scheduling service.

[0040] The tracking service is used to record parameters, code versions, evaluation indicators, other output file application programming interfaces (APIs) and user interfaces (UIs) during algorithm model training. For example, the MLFLOW tool can be used to monitor and track algorithm models. When team collaboration is required, team members can continuously save the results of local operations on the server. Furthermore, different experiments or projects can be established for each team to better differentiate and manage them.

[0041] The file repository can provide file storage services for storing algorithm model files and files such as pictures and final results that need to be saved. The service supports database users to store data required for tracking services, which may include table structures such as experiment record table, experiment label table, algorithm model indicator table, algorithm model version table, and algorithm model registry. It can use MYSQL database.

[0042] Furthermore, the local training environment refers to any machine that runs algorithm model training and inference, which may include self-built servers, cloud environments and other environments. It is not limited to one user, but can be any number of users in the team that need to be managed uniformly.

[0043] See also Figure 3 , Figure 3 Schematic diagram of data flow for algorithm model training provided in the embodiment of the present application. Figure 3As shown in the figure, first start a task in the task scheduling service, pull data from the model data source (and file repository), and execute the data processing process. After pushing the processed data to the local training environment, start the algorithm model training in the local environment, connect to the tracking service, start an experiment, associate the logs, indicators and experiments of the algorithm model training process, and record the parameters, code version, evaluation indicators and other data in the tracking service process to the service support database. The files and experiments generated during the algorithm model training process are associated and saved to the file repository through task scheduling. Then the saved file address is recorded in the service support database. After the algorithm model training is completed, the model file is also saved to the file repository in the same way, registered as an algorithm model, and the algorithm model version is automatically set and recorded in the service support database. At the same time, the indicators, historical indicators and target indicators of the algorithm model can be compared to determine whether to start the next round of model iteration. The tracking service can also start the web UI to display all the above key processes and provide further operation functions, such as indicator comparison, model deployment, and experiment editing. Furthermore, the task scheduling service can start scheduled tasks to regularly delete the content in the service support database and file repository that was manually deleted in the Web UI. In any inference environment, you only need to connect to the tracking service and specify the registered model name and version to pull the saved model directly for inference.

[0044] In combination with the above description, the present application is described below from the perspective of method examples.

[0045] See also Figure 4 , Figure 4 A schematic diagram of a management method flow of an algorithm model provided in an embodiment of the present application, which is applied to Figure 1 The electronic equipment shown. Figure 4 As shown, the method includes the following steps.

[0046] S410. Obtain first information of a target algorithm model for training multiple user devices to obtain multiple first information, each of which includes a first training parameter group and a first training result indicator group, the first training parameter group includes multiple training parameters of the target algorithm model, and the first training result indicator group includes multiple training result indicators of the target algorithm model.

[0047] In this application, the algorithm model trained by the user device can be tracked, and the parameters, indicators and other data of the algorithm model trained by multiple user devices can be recorded. After the user device has trained the algorithm model, the electronic device can compare the algorithm models trained on multiple user devices according to the data recorded by the tracking service, and select the best algorithm model, so that the algorithm model on each user device can be updated to the best version, realizing the synchronous update and unified management of the algorithm model.

[0048] Optionally, the method also includes: receiving the target algorithm models uploaded by the multiple user devices, and the first information and the second information of each target algorithm model; generating the algorithm model list according to the upload time of each target algorithm model; storing the algorithm model list and sending it to the display for display.

[0049] Specifically, when the user device starts algorithm model training and connects to the tracking service, the user device will upload the training parameters, training result indicators and other data of this training, and the tracking service will start model monitoring, tracking and interface display, and generate an algorithm model list based on the training parameters, training result indicators and upload time of the algorithm model uploaded by each user device. Each row in the algorithm model list may include the name of the target algorithm model, upload time, uploading user device, model training parameters, model training result indicators, data type, etc.

[0050] For example, Figure 5a As shown, the algorithm model list can display the algorithm models under multiple projects at the same time, and the display interface can be divided into different areas to display different data of the algorithm model. Area A is the management directory of multiple projects, area B is the save path of the algorithm model and model file, area D is the record date, version, and code source of the algorithm model, area E is the file type of the algorithm model, area F is the training parameters of the algorithm model, and area G is the training result indicator of the algorithm model. Furthermore, area C of the display interface also provides users with a search function so that users can quickly find the algorithm model according to their needs, and area H displays additional tags recorded by the user for the algorithm model.

[0051] Furthermore, when all algorithm models are monitored through the tracking service, the updated version and update time of each algorithm model can be displayed, or the version information and update information of the best algorithm model from the algorithm models uploaded by multiple user devices can be displayed to facilitate user acquisition and browsing. Figure 5b As shown, the algorithm model may specifically include the algorithm model name, the last updated version, the last updated time, etc.

[0052] S420: Select a target training parameter group from a plurality of first training parameter groups according to the plurality of first training result indicator groups.

[0053] Among them, when multiple user devices in a project train the same target algorithm model, the tracking service can compare the training result indicators of the target algorithm model uploaded by each user device, and select the training parameter group corresponding to the best training result indicator group as the target training parameter group of the target algorithm model, so that the target algorithm model on each user device can be updated to the best version.

[0054] Optionally, selecting a target training parameter group from multiple first training parameter groups based on multiple first training result indicator groups includes: mapping the training result indicators in each of the first training result indicator groups into a coordinate system, wherein the horizontal axis of the coordinate system is the value of the training result indicator, and the vertical axis is the first training result indicator group; fitting the coordinate points corresponding to the same training result indicator to obtain multiple fitting curves, wherein each training result indicator corresponds to a fitting curve; calculating the deviation of each of the fitting curves from a preset curve to obtain multiple deviations; determining the fitting curve with the smallest deviation as the target fitting curve; and determining the first training parameter group corresponding to the target fitting curve as the target training parameter group.

[0055] Among them, the electronic device can pre-store preset curves that meet the needs of the user. After mapping each training result indicator in each training result indicator group in the multiple training result indicator groups to the coordinate system, the coordinate points of each training result indicator group are connected to obtain a fitting curve corresponding to each training result indicator group. Then, the deviation between each fitting curve and the preset curve is calculated, and the first training group corresponding to the fitting curve with the smallest deviation (i.e., the fitting curve closest to the preset curve) is determined as the training parameter of the optimal target algorithm model.

[0056] For example, the deviation between the calculated fitting curve and the preset curve can be calculated according to a deviation calculation formula, which can be expressed as: Where B is the deviation between each fitting curve and the preset curve, and the a i is the weight of the i-th training result indicator, the S i is the difference between the fitting curve corresponding to the i-th training result indicator and the preset fitting curve.

[0057] S430: Send the target training parameter group to the multiple user equipments to instruct the multiple user equipments to update the target algorithm model respectively.

[0058] In an embodiment of the present application, by tracking the training algorithm models of multiple user devices, the performance indicators of the trained algorithm models can be compared and updated, and the algorithm models running on multiple user devices can be managed, which can improve the accuracy of the algorithm models while reducing management costs.

[0059] See also Figure 6 , Figure 6 A flow chart of another management method of an algorithm model provided in an embodiment of the present application, which is applied to Figure 1 The electronic equipment shown. Figure 6 As shown, the method includes the following steps.

[0060] S610. Obtain first information of a target algorithm model for training multiple user devices to obtain multiple first information, each of which includes a first training parameter group and a first training result indicator group, the first training parameter group includes multiple training parameters of the target algorithm model, and the first training result indicator group includes multiple training result indicators of the target algorithm model.

[0061] S620: Select a target training parameter group from multiple first training parameter groups according to multiple first training result indicator groups.

[0062] S630: Send the target training parameter group to the multiple user equipments to instruct the multiple user equipments to update the target algorithm model respectively.

[0063] The specific implementation of S610-S630 can refer to the above Figure 4 The method described is not described in detail in the embodiments of the present application.

[0064] S640. Receive a first request message from a first user equipment, where the first request message is used to request the target algorithm model, and the multiple user equipments include the first user equipment.

[0065] In actual applications, the user equipment may request the electronic equipment to find a target algorithm model with the best performance indicator, so that the best target algorithm model may be directly obtained for inference.

[0066] S650. According to the first request message, obtain an algorithm model list, wherein the algorithm model list includes the first information and the second information of each of the target algorithm models, and the second information includes the training time of each of the target algorithm models.

[0067] After receiving the first request message, the electronic device can obtain an algorithm model list composed of all target algorithm models from the service support database. For example, the algorithm model list can be as follows: Figure 5ashown.

[0068] S660. Determine the best algorithm model from the multiple target algorithm models based on the first information and / or the second information.

[0069] In an embodiment of the present application, the best algorithm model that meets the needs of the first user can be selected based on the training parameters and training result indicators in the first information, or based on the training time of the target algorithm model.

[0070] In a possible example, the best algorithm model is determined from multiple target algorithm models based on the first information and / or the second information, including: if the first request message includes a first indicator, selecting the first training result indicator group with the best first indicator from the first information, and confirming the target algorithm model corresponding to the first training result indicator group as the best algorithm model; otherwise, selecting a target training time from the second information, the target training time is the training time closest to the current time, and determining the target algorithm model corresponding to the target training time as the best algorithm model.

[0071] Specifically, if the request message carries a first indicator specified by the user, the first training result indicator group including the best first indicator can be selected from the first information, and the target algorithm model corresponding to the first training result indicator group can be determined as the best algorithm model. For example, if the user specifies the target algorithm model with the best request accuracy, the target algorithm model with the highest accuracy is determined as the best algorithm model from multiple target algorithm models. If the user specifies the training result indicator, that is, the first request message does not carry the first indicator, the most recently updated target algorithm model can be determined as the best algorithm model based on the training time of the target algorithm model.

[0072] In another possible example, determining the best algorithm model from multiple target algorithm models based on the first information and / or the second information includes: obtaining at least one first algorithm model, where the first algorithm model is the target algorithm model uploaded by the first user device; comparing the first information of the at least one first algorithm model respectively according to the second information of the at least one first algorithm model to obtain a first indicator; selecting the first training result indicator group with the best first indicator from the first information, and confirming the target algorithm model corresponding to the first training result indicator group as the best algorithm model.

[0073] In an embodiment of the present application, when the user does not specify a training result indicator, the electronic device may also determine the optimal algorithm model required by the user by updating or optimizing the training parameters or training result indicators of the target algorithm model according to the first user device.

[0074] Among them, the first information and the second information of the target algorithm model uploaded by the first user device can be obtained from the service support database according to the requested target algorithm model. Then, according to the time of uploading by the first user device, the differences between the target algorithm models uploaded by the first user device each time are compared in chronological order, and the training parameters or training result indicators updated or optimized by the first user for the target algorithm model are analyzed according to these differences, and then the target algorithm model with the best training parameters or the best training result indicators is selected as the best algorithm model.

[0075] Optionally, comparing the first information of the at least one first algorithm model respectively according to the second information of the at least one first algorithm model to obtain the first indicator includes:

[0076] Sort the at least one first algorithm model in ascending order according to training time, and match the first training result indicator group of the ith first algorithm model with the first training result indicator group of the i+1th first algorithm model to obtain multiple candidate indicators, where the candidate indicators are the training result indicators that match different ones between the ith first algorithm model and the i+1th first algorithm model, and the largest number of candidate indicators among the multiple candidate indicators is determined as the first indicator, where i is a positive integer.

[0077] Specifically, the first algorithm models are sorted by time, and then the training result indicator groups and / or training parameter groups of two adjacent first algorithm models are compared respectively, and the training result indicators with different values ​​in the training result indicator group are used as candidate indicators, and / or the training parameters with different values ​​in the training parameter group are used as candidate parameters. The largest number of candidate indicators among multiple candidate indicators is used as the first indicator, and / or the largest number of candidate parameters among multiple candidate parameters is used as the first indicator. Finally, the target algorithm model with the best first indicator is determined as the best algorithm model.

[0078] S670: Send the storage address of the optimal algorithm model to the first user equipment.

[0079] Specifically, after finding the optimal algorithm model corresponding to the algorithm model requested by the first user device, the storage address of the optimal algorithm model can be sent to the first user device, so that the first user device can obtain the model file, training parameters, training result indicators and other data of the optimal target algorithm from the storage address.

[0080] It can be seen that the present application proposes a method for managing an algorithm model, which obtains first information of a target algorithm model for training of multiple user devices, and obtains multiple first information, each of which includes a first training parameter group and a first training result indicator group, the first training parameter group includes multiple training parameters of the target algorithm model, and the first training result indicator group includes multiple training result indicators of the target algorithm model; selects a target training parameter group from multiple first training parameter groups according to the multiple first training result indicator groups; sends the target training parameter group to multiple user devices to instruct the multiple user devices to update the target algorithm model respectively. The present application updates the target algorithm model of each user device according to the training parameters and training result indicators of the target algorithm model trained by different user devices, realizes unified management of the algorithm models of multiple user devices, and can improve the accuracy of the algorithm model while reducing management costs.

[0081] The above mainly introduces the scheme of the embodiment of the present application from the perspective of the execution process on the method side. It is understandable that in order to realize the above functions, the network device includes a hardware structure and / or software module corresponding to each function. Those skilled in the art should easily realize that, in combination with the units and algorithm steps of each example described in the embodiment provided in this article, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0082] See also Figure 7 , Figure 7 is a functional unit composition block diagram of a management device 700 of an algorithm model provided in an embodiment of the present application, wherein the device 700 comprises: a processing unit 710 and a transceiver unit 720, wherein:

[0083] The processing unit 710 is used to obtain first information of a target algorithm model for training multiple user devices, and obtain multiple first information, each of which includes a first training parameter group and a first training result indicator group, the first training parameter group includes multiple training parameters of the target algorithm model, and the first training result indicator group includes multiple training result indicators of the target algorithm model;

[0084] The processing unit 710 is further configured to select a target training parameter group from a plurality of the first training parameter groups according to the plurality of the first training result indicator groups;

[0085] The transceiver unit 720 is used to send the target training parameter group to the multiple user equipments to instruct the multiple user equipments to update the target algorithm model respectively.

[0086] Optionally, the transceiver unit 720 is further used to receive a first request message from a first user equipment, where the first request message is used to request the target algorithm model, and the multiple user equipments include the first user equipment;

[0087] The processing unit 710 is further configured to obtain an algorithm model list according to the first request message, the algorithm model list including the first information and the second information of each of the target algorithm models, the second information including the training time of each of the target algorithm models; and determine an optimal algorithm model from the multiple target algorithm models according to the first information and / or the second information;

[0088] The transceiver 720 is further used to send the storage address of the optimal algorithm model to the first user equipment.

[0089] Optionally, in terms of determining the best algorithm model from multiple target algorithm models based on the first information and / or the second information, the processing unit 710 is specifically used to: if the first request message includes a first indicator, then select the first training result indicator group with the best first indicator from the first information, and confirm the target algorithm model corresponding to the first training result indicator group as the best algorithm model; otherwise, select the target training time from the second information, the target training time is the training time closest to the current time, and determine the target algorithm model corresponding to the target training time as the best algorithm model.

[0090] Optionally, in terms of determining the best algorithm model from multiple target algorithm models based on the first information and / or the second information, the processing unit 710 is specifically used to: obtain at least one first algorithm model, where the first algorithm model is the target algorithm model uploaded by the first user device; based on the second information of the at least one first algorithm model, compare the first information of the at least one first algorithm model respectively to obtain a first indicator; select the first training result indicator group with the best first indicator from the first information, and confirm the target algorithm model corresponding to the first training result indicator group as the best algorithm model.

[0091] Optionally, according to the second information of the at least one first algorithm model, the first information of the at least one first algorithm model is compared respectively to obtain the first indicator. The processing unit 710 is specifically used to: sort the at least one first algorithm model in ascending order according to the training time, and match the first training result indicator group of the ith first algorithm model with the first training result indicator group of the i+1th first algorithm model respectively to obtain multiple candidate indicators, wherein the candidate indicators are the training result indicators that match different ones between the ith first algorithm model and the i+1th first algorithm model, and determine the candidate indicator with the largest number among the multiple candidate indicators as the first indicator, where i is a positive integer.

[0092] Optionally, in terms of selecting a target training parameter group from multiple first training parameter groups based on multiple first training result indicator groups, the processing unit 710 is specifically used to: map the training result indicators in each of the first training result indicator groups into a coordinate system, the horizontal axis of the coordinate system being the value of the training result indicator, and the vertical axis being the first training result indicator group; fitting the coordinate points corresponding to the same training result indicator to obtain multiple fitting curves, each training result indicator corresponding to a fitting curve; calculating the deviation of each of the fitting curves from a preset curve to obtain multiple deviations; determining the fitting curve with the smallest deviation as the target fitting curve; and determining the first training parameter group corresponding to the target fitting curve as the target training parameter group.

[0093] Optionally, the transceiver unit 720 is further configured to receive the target algorithm model uploaded by the multiple user equipments, and the first information and the second information of each target algorithm model;

[0094] The processing unit 710 is further configured to generate the algorithm model list according to the upload time of each target algorithm model;

[0095] The transceiver unit 720 is further used to store the algorithm model list and send it to the display for display.

[0096] It should be understood that the device 700 here is embodied in the form of a functional unit. The term "unit" here may refer to an application specific integrated circuit (ASIC), an electronic circuit, a processor (such as a shared processor, a proprietary processor or a group processor, etc.) and a memory for executing one or more software or firmware programs, a merged logic circuit and / or other suitable components that support the described functions. In an optional example, those skilled in the art can understand that the device 700 can be specifically the vehicle-mounted device in the above-mentioned embodiment, and the device 700 can be used to execute the various processes and / or steps corresponding to the vehicle-mounted device in the above-mentioned method embodiment. To avoid repetition, it will not be repeated here.

[0097] The apparatus 700 of each of the above schemes has the function of implementing the corresponding steps executed by the vehicle-mounted device in the above method; the function can be implemented by hardware, or by hardware executing the corresponding software. The hardware or software includes one or more modules corresponding to the above functions; for example, the transceiver unit 720 can be replaced by a transmitter, and the processing unit 710 can be replaced by a processor, respectively performing the transceiver operation and related processing operations in each method embodiment.

[0098] In the embodiment of the present application, the device 700 may also be a chip or a chip system, such as a system on chip (SoC). Correspondingly, the transceiver unit may be a transceiver circuit of the chip, which is not limited here.

[0099] See also Figure 8 , Figure 8 It is a structural diagram of an electronic device provided in an embodiment of the present application, and the vehicle-mounted device includes: one or more processors, one or more memories, one or more communication interfaces, and one or more programs; the one or more programs are stored in the memories and are configured to be executed by the one or more processors.

[0100] The above program includes instructions for performing the following steps:

[0101] Acquire first information of a target algorithm model for training multiple user devices to obtain multiple first information, each of which includes a first training parameter group and a first training result indicator group, the first training parameter group includes multiple training parameters of the target algorithm model, and the first training result indicator group includes multiple training result indicators of the target algorithm model;

[0102] Selecting a target training parameter group from a plurality of the first training parameter groups according to the plurality of the first training result indicator groups;

[0103] The target training parameter group is sent to the multiple user equipments to instruct the multiple user equipments to update the target algorithm model respectively.

[0104] Among them, all relevant contents of each scenario involved in the above method embodiment can be referred to the functional description of the corresponding functional module, which will not be repeated here.

[0105] It should be understood that the above-mentioned memory may include a read-only memory and a random access memory, and provide instructions and data to the processor. A portion of the memory may also include a non-volatile random access memory. For example, the memory may also store information about the device type.

[0106] In the embodiment of the present application, the processor of the above-mentioned device may be a central processing unit (CPU), and the processor may also be other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc.

[0107] It should be understood that the "at least one" involved in the embodiments of the present application refers to one or more, and "plurality" refers to two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: the existence of A alone, the existence of A and B at the same time, and the existence of B alone, where A and B can be singular or plural. The character " / " generally indicates that the previous and subsequent associated objects are in an "or" relationship. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b, or c can represent: a, b, c, ab, ac, bc, or abc, where a, b, c can be single or multiple.

[0108] Furthermore, unless otherwise specified, ordinal numbers such as "first" and "second" mentioned in the embodiments of the present application are used to distinguish multiple objects, and are not used to limit the order, timing, priority or importance of multiple objects. For example, the first information and the second information are only used to distinguish different information, and do not indicate the difference in content, priority, sending order or importance of the two types of information.

[0109] In the implementation process, each step of the above method can be completed by an integrated logic circuit of hardware in a processor or an instruction in the form of software. The steps of the method disclosed in conjunction with the embodiment of the present application can be directly embodied as a hardware processor for execution, or a combination of hardware and software units in a processor for execution. The software unit can be located in a storage medium mature in the art such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, etc. The storage medium is located in a memory, and the processor executes the instructions in the memory, and completes the steps of the above method in conjunction with its hardware. To avoid repetition, it is not described in detail here.

[0110] An embodiment of the present application also provides a computer storage medium, wherein the computer storage medium stores a computer program for electronic data exchange, and the computer program enables a computer to execute part or all of the steps of any method recorded in the above method embodiments.

[0111] The present application also provides a computer program product, which includes a non-transitory computer-readable storage medium storing a computer program, and the computer program is operable to cause a computer to execute some or all of the steps of any method described in the above method embodiment. The computer program product may be a software installation package.

[0112] It should be noted that, for the aforementioned method embodiments, for the sake of simplicity, they are all expressed as a series of action combinations, but those skilled in the art should be aware that the present application is not limited by the described order of actions, because according to the present application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the present application.

[0113] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0114] In the several embodiments provided in the present application, it should be understood that the disclosed devices can be implemented in other ways. For example, the device embodiments described above are only schematic, such as the division of the above-mentioned units, which is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, and the indirect coupling or communication connection of devices or units can be electrical or other forms.

[0115] The units described above as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the embodiments of the present application.

[0116] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0117] If the above-mentioned integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable memory. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art or all or part of the technical solution, can be embodied in the form of a software product, which is stored in a memory and includes several instructions for a computer device (which can be a personal computer, server or TRP, etc.) to execute all or part of the steps of the various embodiments of the present application. The aforementioned memory includes: U disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), mobile hard disk, disk or optical disk and other media that can store program codes.

[0118] A person skilled in the art may understand that all or part of the steps in the various methods of the above embodiments may be completed by instructing the relevant hardware through a program, and the program may be stored in a computer-readable memory, which may include a flash drive, ROM, RAM, a magnetic disk or an optical disk, etc.

[0119] The embodiments of the present application are introduced in detail above. Specific examples are used in this article to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method and core idea of ​​the present application. At the same time, for general technical personnel in this field, according to the idea of ​​the present application, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as a limitation on the present application.

Claims

1. A method for managing an algorithm model, characterized in that: The method comprises: Acquire first information of a target algorithm model for training multiple user devices to obtain multiple first information, each of which includes a first training parameter group and a first training result indicator group, the first training parameter group includes multiple training parameters of the target algorithm model, and the first training result indicator group includes multiple training result indicators of the target algorithm model; According to the plurality of the first training result indicator groups, selecting a target training parameter group from the plurality of the first training parameter groups comprises: mapping the training result indicators in each of the first training result indicator groups into a coordinate system, wherein the horizontal axis of the coordinate system is the value of the training result indicator and the vertical axis is the first training result indicator group; fitting the coordinate points corresponding to the same training result indicator to obtain a plurality of fitting curves, wherein each training result indicator corresponds to a fitting curve; calculating the deviation of each of the fitting curves from a preset curve to obtain a plurality of deviations; determining the fitting curve with the smallest deviation as the target fitting curve; and determining the first training parameter group corresponding to the target fitting curve as the target training parameter group; Sending the target training parameter group to the multiple user equipments to instruct the multiple user equipments to update the target algorithm model respectively; receiving a first request message from a first user equipment, where the first request message is used to request the target algorithm model, and the plurality of user equipments include the first user equipment; According to the first request message, an algorithm model list is acquired, where the algorithm model list includes the first information and the second information of each of the target algorithm models, and the second information includes the training time of each of the target algorithm models; Determine an optimal algorithm model from a plurality of target algorithm models according to the first information and the second information; The storage address of the optimal algorithm model is sent to the first user equipment.

2. The method according to claim 1, characterized in that Determining the best algorithm model from a plurality of target algorithm models according to the first information and the second information includes: If the first request message includes a first indicator, the first training result indicator group with the best first indicator is selected from the first information, and the target algorithm model corresponding to the first training result indicator group is confirmed as the best algorithm model; otherwise, the target training time is selected from the second information, the target training time is the training time closest to the current time, and the target algorithm model corresponding to the target training time is determined as the best algorithm model.

3. The method according to claim 1, characterized in that Determining the best algorithm model from a plurality of target algorithm models according to the first information and the second information includes: Acquire at least one first algorithm model, where the first algorithm model is the target algorithm model uploaded by the first user equipment; According to the second information of the at least one first algorithm model, respectively compare the first information of the at least one first algorithm model to obtain a first indicator; The first training result indicator group with the best first indicator is selected from the first information, and the target algorithm model corresponding to the first training result indicator group is confirmed as the best algorithm model.

4. The method according to claim 3, characterized in that The step of comparing the first information of the at least one first algorithm model respectively according to the second information of the at least one first algorithm model to obtain the first indicator includes: Sort the at least one first algorithm model in ascending order according to training time, and match the first training result indicator group of the ith first algorithm model with the first training result indicator group of the i+1th first algorithm model to obtain multiple candidate indicators, where the candidate indicators are the training result indicators that match different ones between the ith first algorithm model and the i+1th first algorithm model, and the largest number of candidate indicators among the multiple candidate indicators is determined as the first indicator, where i is a positive integer.

5. The method according to claim 1, characterized in that The method further comprises: Receiving the target algorithm models uploaded by the multiple user devices, and the first information and the second information of each target algorithm model; Generate the algorithm model list according to the upload time of each target algorithm model; The algorithm model list is stored and sent to a display for display.

6. A management device for an algorithm model, characterized in that: The device comprises: A processing unit, configured to obtain first information of a target algorithm model for training multiple user devices, and obtain multiple first information, each of which includes a first training parameter group and a first training result indicator group, wherein the first training parameter group includes multiple training parameters of the target algorithm model, and the first training result indicator group includes multiple training result indicators of the target algorithm model; The processing unit is further used to select a target training parameter group from a plurality of the first training parameter groups according to the plurality of the first training result indicator groups, including: mapping the training result indicators in each of the first training result indicator groups into a coordinate system, wherein the horizontal axis of the coordinate system is the value of the training result indicator and the vertical axis is the first training result indicator group; fitting the coordinate points corresponding to the same training result indicator to obtain a plurality of fitting curves, wherein each training result indicator corresponds to a fitting curve; calculating the deviation of each of the fitting curves from a preset curve to obtain a plurality of deviations; determining the fitting curve with the smallest deviation as the target fitting curve; and determining the first training parameter group corresponding to the target fitting curve as the target training parameter group; A transceiver unit, used for sending the target training parameter group to the multiple user devices to instruct the multiple user devices to update the target algorithm model respectively; receiving a first request message from a first user device, the first request message is used to request the target algorithm model, and the multiple user devices include the first user device; according to the first request message, obtaining an algorithm model list, the algorithm model list includes the first information and the second information of each of the target algorithm models, the second information includes the training time of each of the target algorithm models; according to the first information and the second information, determining the best algorithm model from the multiple target algorithm models; sending the storage address of the best algorithm model to the first user device.

7. An electronic device, characterized in that: The method comprises a processor, a memory and a communication interface, wherein the memory stores one or more programs, and the one or more programs are executed by the processor, and the one or more programs include instructions for executing the steps in the method according to any one of claims 1 to 5.

8. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program for electronic data exchange, wherein the computer program enables a computer to execute the steps of the method according to any one of claims 1 to 5.

Citation Information

Patent Citations

  • Malicious software detection method and device, server and readable storage medium

    CN110929260A

  • Equipment model upgrading method and device, equipment, server and storage medium

    CN112035137A