CN111882059A - Data processing method and device, electronic equipment and storage medium - Google Patents

Data processing method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN111882059A
CN111882059A CN202010698834.XA CN202010698834A CN111882059A CN 111882059 A CN111882059 A CN 111882059A CN 202010698834 A CN202010698834 A CN 202010698834A CN 111882059 A CN111882059 A CN 111882059A
Authority
CN
China
Prior art keywords
neural network
training
data
model
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010698834.XA
Other languages
Chinese (zh)
Inventor
林成龙
崔磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Sensetime Technology Development Co Ltd
Original Assignee
Beijing Sensetime Technology Development Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Sensetime Technology Development Co Ltd filed Critical Beijing Sensetime Technology Development Co Ltd
Priority to CN202010698834.XA priority Critical patent/CN111882059A/en
Publication of CN111882059A publication Critical patent/CN111882059A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology

Abstract

The embodiment of the disclosure provides a data processing method and device, an electronic device and a computer storage medium, wherein the data processing method comprises the following steps: selecting a workflow template based on a first selection instruction, and selecting a training set of a neural network from a data set based on a second selection instruction of a user; determining a training framework of the neural network according to the workflow template, wherein the training framework has a network structure of the neural network corresponding to the instance; and training a neural network according to the training set and the network structure of the neural network to obtain a trained neural network model. Therefore, automatic training of the neural network model can be achieved according to user requirements, an algorithm researcher does not need to customize different neural network models according to different user requirements, and time cost and labor cost are reduced.

Description

Data processing method and device, electronic equipment and storage medium
Technical Field
The present disclosure relates to computer vision technologies, and in particular, to a data processing method and apparatus, an electronic device, and a computer storage medium.
Background
With the development of artificial intelligence, more and more industries start to utilize artificial intelligence technology to improve the efficiency of enterprises and organization operation and reduce the operation cost, but the existing artificial intelligence technology aims at different user requirements, different neural network models are customized by an algorithm researcher, the development cycle of the neural network models is longer, and the cost is higher.
Disclosure of Invention
Embodiments of the present disclosure are intended to provide a technical solution for data processing.
The embodiment of the disclosure provides a data processing method, which comprises the following steps:
selecting a workflow template based on a first selection instruction, and selecting a training set of a neural network from a data set based on a second selection instruction; the workflow template represents an instance of a training framework of a neural network;
determining a training framework of the neural network according to the workflow template, wherein the training framework has a network structure of the neural network corresponding to the instance;
and training a neural network according to the training set and the network structure of the neural network to obtain a trained neural network model.
Optionally, the determining a training framework of a neural network according to the workflow template includes:
determining network parameters of a training frame of a neural network according to the workflow template;
based on the network parameters, a training framework for the neural network is determined.
It can be seen that, since the workflow template includes the network parameters of the training frame of the neural network, the network parameters of the training frame of the neural network can be directly determined from the workflow template selected by the user, and then the neural network training frame corresponding to the workflow template can be automatically determined based on the network parameters.
Optionally, the determining a training framework of a neural network based on the network parameters includes:
acquiring an initial model of a neural network;
determining training frames of a plurality of neural networks corresponding to the initial model;
and determining the training frame of the neural network corresponding to the network parameters in the training frames of the plurality of neural networks corresponding to the initial model.
The method for determining the training frame of the neural network according to the network parameters can automatically determine the training frame of the neural network corresponding to the network parameters from a plurality of neural network frames based on the initial model and the network parameters of the neural network, does not need a user to establish the training frame of the neural network, and reduces time cost and labor cost.
Optionally, the obtaining an initial model of the neural network includes: selecting an initial model of the neural network from the models of the plurality of neural networks based on a third selection instruction; alternatively, an initial model of the neural network is established.
It can be seen that the method for obtaining the initial model of the neural network can be used for building the initial model of the neural network from nothing to time or selecting the initial training model from a model warehouse, and thus, the method is convenient to implement.
Optionally, the determining a training framework of a neural network based on the network parameters includes:
acquiring an existing neural network model;
determining a training framework for optimizing a plurality of neural networks of the existing neural network model;
and determining the training frame of the neural network corresponding to the network parameters in the training frames of the plurality of neural networks of the existing neural network model.
Therefore, the method for determining the training frame of the neural network according to the network parameters can automatically determine the training frame of the neural network corresponding to the network parameters from a plurality of neural network frames based on the specific model and the network parameters of the neural network, does not need a user to establish the training frame of the neural network, and reduces the time cost and the labor cost.
Optionally, the determining a network structure of the neural network according to the training frame includes:
acquiring network structures of a plurality of neural networks corresponding to the training frame;
selecting a network structure of a neural network that coincides with the data distribution state of the training set from the network structures of the plurality of neural networks.
It can be seen that, by the method for determining a neural network structure, a suitable network structure can be determined from a plurality of neural network structures, and the determined network structure of the neural network is more consistent with the data distribution state of the training set selected by the user.
Optionally, the obtaining a network structure of a plurality of neural networks corresponding to the training framework includes:
and determining the network structures of a plurality of neural networks corresponding to the training frame in a network warehouse, wherein the network warehouse is used for storing the network structures of the neural networks.
Therefore, the method for acquiring the network structure of the neural network can automatically determine the network structure of the neural network corresponding to the training frame from the network warehouse according to the data distribution state of the training set selected by the user, does not need the user to establish a network architecture of the neural network, and reduces time cost and labor cost.
Optionally, the method further comprises:
operating the data set and/or training the neural network according to at least one type of first data operation authority; the first data operation authority includes an operation authority on the data set and/or an authority to train a neural network.
It can be seen that it is determined whether the data set can be operated on and/or the neural network can be trained on the basis of the first data operation permissions of different users.
Optionally, the method further comprises:
selecting an evaluation set of the neural network from the data set based on the fourth selection instruction;
and evaluating the trained neural network model according to the evaluation set to obtain an evaluation result.
Therefore, the evaluation method of the neural network model can automatically finish the evaluation of the neural network model through the existing model evaluation tool aiming at the evaluation set selected by the user.
Optionally, the method further comprises:
and evaluating the neural network model according to the evaluation authority of at least one class of users on the neural network model.
Therefore, whether the neural network model can be evaluated or not is determined according to different evaluation authorities of different users on the neural network model.
Optionally, the method further comprises:
and when the evaluation result meets the preset condition, issuing the trained neural network model by using a predetermined model issuing tool, wherein the model issuing tool is used for realizing issuing of the neural network model.
Therefore, the method for releasing the neural network model can automatically release the neural network model with the evaluation result meeting the preset condition through the existing model distribution tool.
Optionally, the method further comprises:
and issuing the neural network model according to the issuing authority of at least one type of users to the neural network model.
It can be seen that whether the neural network model can be issued is determined according to the issuing authority of different users on the neural network model.
Optionally, the method further comprises:
acquiring original data according to a predetermined data acquisition mode;
preprocessing the original data according to a predetermined preprocessing tool to obtain a preprocessing result;
and obtaining a data set according to a predetermined data labeling mode, wherein the data set comprises labeling information of the preprocessing result.
It can be seen that, because the data acquisition, data preprocessing and data annotation method is predetermined according to the user requirements, the user requirements can be better met.
Optionally, the method further comprises:
modifying or deleting at least one of the original data, the pre-processing result and the data set.
It can be seen that by modifying or deleting at least one of the preprocessing result and the data set, the management of the original data, the preprocessing result and the data set can be realized, and the data management efficiency is improved.
Optionally, the acquiring the raw data according to a predetermined data acquisition manner includes:
acquiring original data in a local data uploading mode;
or, the original data is collected in a mode of importing data through the production environment.
Therefore, the data acquisition method can meet various requirements of users, and is more flexible and convenient.
Optionally, the obtaining a data set according to a predetermined data labeling manner includes:
and obtaining the data set through a provided manual labeling interface or an automatic labeling platform.
Therefore, through a manual labeling interface or an automatic labeling platform, a corresponding labeling mode can be selected according to requirements for labeling, and the requirements of users can be met.
Optionally, the method further comprises:
according to at least one type of second data operation authority, at least one of the following operations is carried out: data acquisition, data preprocessing and data annotation; the second data operation right comprises at least one of the following items: data acquisition permission, data preprocessing permission and data marking permission.
It can be seen that, according to the data acquisition permission, the data preprocessing permission, and the data tagging permission for different users, it is determined whether at least one of the following operations can be performed: data acquisition, data preprocessing and data annotation.
An embodiment of the present disclosure further provides a data processing apparatus, where the apparatus includes: a selection module and a training module, wherein,
the selection module is used for selecting the workflow template based on a first selection instruction and selecting a training set of the neural network from the data set based on a second selection instruction; the workflow template represents an instance of a training framework of a neural network;
the training module is used for determining a training framework of the neural network according to the workflow template, wherein the training framework has a network structure of the neural network corresponding to the example; and training a neural network according to the training set and the network structure of the neural network to obtain a trained neural network model.
Optionally, the training module is configured to determine a training framework of a neural network according to the workflow template, and includes: determining network parameters of a training frame of a neural network according to the workflow template; based on the network parameters, a training framework for the neural network is determined.
It can be seen that, since the workflow template includes the network parameters of the training frame of the neural network, the network parameters of the training frame of the neural network can be directly determined from the workflow template selected by the user, and then the neural network training frame corresponding to the workflow template can be automatically determined based on the network parameters.
Optionally, the training module is configured to determine a training framework of a neural network based on the network parameters, and includes: acquiring an initial model of a neural network; determining training frames of a plurality of neural networks corresponding to the initial model; and determining the training frame of the neural network corresponding to the network parameters in the training frames of the plurality of neural networks corresponding to the initial model.
The method for determining the training frame of the neural network according to the network parameters can automatically determine the training frame of the neural network corresponding to the network parameters from a plurality of neural network frames based on the initial model and the network parameters of the neural network, does not need a user to establish the training frame of the neural network, and reduces time cost and labor cost.
Optionally, the training module is configured to obtain an initial model of the neural network, and includes: selecting an initial model of the neural network from the models of the plurality of neural networks based on a third selection instruction; alternatively, an initial model of the neural network is established.
It can be seen that the method for obtaining the initial model of the neural network can be used for building the initial model of the neural network from nothing to time or selecting the initial training model from a model warehouse, and thus, the method is convenient to implement.
Optionally, the training model is configured to determine a training framework of a neural network based on the network parameters, and includes: acquiring an existing neural network model; determining a training framework for optimizing a plurality of neural networks of the existing neural network model; and determining the training frame of the neural network corresponding to the network parameters in the training frames of the plurality of neural networks of the existing neural network model.
Therefore, the method for determining the training frame of the neural network according to the network parameters can automatically determine the training frame of the neural network corresponding to the network parameters from a plurality of neural network frames based on the specific model and the network parameters of the neural network, does not need a user to establish the training frame of the neural network, and reduces the time cost and the labor cost.
Optionally, the training model is configured to determine a network structure of a neural network according to the training framework, and includes: acquiring network structures of a plurality of neural networks corresponding to the training frame; selecting a network structure of a neural network that coincides with the data distribution state of the training set from the network structures of the plurality of neural networks.
It can be seen that, by the method for determining a neural network structure, a suitable network structure can be determined from a plurality of neural network structures, and the determined network structure of the neural network is more consistent with the data distribution state of the training set selected by the user.
Optionally, the processing module is configured to obtain a network structure of a plurality of neural networks corresponding to the training framework, and includes: and determining the network structures of a plurality of neural networks corresponding to the training frame in a network warehouse, wherein the network warehouse is used for storing the network structures of the neural networks.
Therefore, the method for acquiring the network structure of the neural network can automatically determine the network structure of the neural network corresponding to the training frame from the network warehouse according to the data distribution state of the training set selected by the user, does not need the user to establish a network architecture of the neural network, and reduces time cost and labor cost.
Optionally, the apparatus further includes a permission management module, configured to determine to operate on the data set and/or train the neural network according to at least one type of first data operation permission; the first data operation authority includes an operation authority on the data set and/or an authority to train a neural network.
It can be seen that it is determined whether the data set can be operated on and/or the neural network can be trained on the basis of the first data operation permissions of different users.
Optionally, the apparatus further includes an evaluation module, configured to select an evaluation set of the neural network from the data set based on the fourth selection instruction; and evaluating the trained neural network model according to the evaluation set to obtain an evaluation result.
Therefore, the evaluation method of the neural network model can automatically finish the evaluation of the neural network model through the existing model evaluation tool aiming at the evaluation set selected by the user.
Optionally, the authority management module is configured to evaluate the neural network model according to evaluation authority of at least one class of users on the neural network model.
Therefore, whether the neural network model can be evaluated or not is determined according to different evaluation authorities of different users on the neural network model.
Optionally, the device further includes a publishing module, configured to publish the trained neural network model by using a predetermined model publishing tool when the evaluation result meets a preset condition, where the model publishing tool is used to implement publishing of the neural network model.
Therefore, the method for releasing the neural network model can automatically release the neural network model with the evaluation result meeting the preset condition through the existing model distribution tool.
Optionally, the authority management module is configured to issue the neural network model according to an issue authority of the neural network model of at least one type of user.
It can be seen that whether the neural network model can be issued is determined according to the issuing authority of different users on the neural network model.
Optionally, the obtaining module is further configured to collect original data according to a predetermined data collection manner; preprocessing the original data according to a predetermined preprocessing tool to obtain a preprocessing result; and obtaining a data set according to a predetermined data labeling mode, wherein the data set comprises labeling information of the preprocessing result.
It can be seen that, because the data acquisition, data preprocessing and data annotation method is predetermined according to the user requirements, the user requirements can be better met.
Optionally, the obtaining module is configured to modify or delete at least one of the original data, the preprocessing result, and the data set.
It can be seen that by modifying or deleting at least one of the preprocessing result and the data set, the management of the original data, the preprocessing result and the data set can be realized, and the data management efficiency is improved.
Optionally, the acquiring module is configured to acquire the original data according to a predetermined data acquisition manner, and includes: acquiring original data in a local data uploading mode; or, the original data is collected in a mode of importing data through the production environment.
Therefore, the data acquisition method can meet various requirements of users, and is more flexible and convenient.
Optionally, the obtaining module is configured to obtain a data set according to a predetermined data tagging manner, and includes: and obtaining the data set through a provided manual labeling interface or an automatic labeling platform.
Therefore, through a manual labeling interface or an automatic labeling platform, a corresponding labeling mode can be selected according to requirements for labeling, and the requirements of users can be met.
Optionally, the authority management module is configured to perform at least one of the following operations according to at least one type of second data operation authority: data acquisition, data preprocessing and data annotation; the second data operation right comprises at least one of the following items: data acquisition permission, data preprocessing permission and data marking permission.
It can be seen that, according to the data acquisition permission, the data preprocessing permission, and the data tagging permission for different users, it is determined whether at least one of the following operations can be performed: data acquisition, data preprocessing and data annotation.
The disclosed embodiments also provide an electronic device comprising a processor and a memory for storing a computer program capable of running on the processor; wherein the content of the first and second substances,
the processor is configured to execute any one of the data processing methods when the computer program is run.
The disclosed embodiments also provide a computer storage medium having a computer program stored thereon, where the computer program is executed by a processor to implement any one of the above-mentioned data processing methods.
It can be seen that the embodiments of the present disclosure provide a data processing method and apparatus, an electronic device, and a computer storage medium, where the data processing method includes: selecting a workflow template based on a first selection instruction, and selecting a training set of a neural network from a data set based on a second selection instruction; determining a training framework of the neural network according to the workflow template, wherein the training framework has a network structure of the neural network corresponding to the instance; according to the data processing method, the workflow template and the training set can be selected according to user requirements, the training frame of the corresponding neural network is automatically determined according to the selected workflow template, and the network structure of the neural network corresponding to the training frame is automatically determined according to the training set selected by the user, so that automatic training of the neural network can be realized according to the selected training set and the determined network structure of the neural network, an algorithm researcher is not required to customize different neural network models according to different user requirements, and time cost and labor cost are reduced.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the disclosure.
FIG. 1 is a flow chart of a data processing method of an embodiment of the present disclosure;
FIG. 2 is a schematic diagram of a component structure of a data processing apparatus according to an embodiment of the disclosure;
FIG. 3 is a schematic diagram of another exemplary embodiment of a data processing apparatus;
fig. 4 is a schematic structural diagram of an electronic device according to an embodiment of the disclosure.
Detailed Description
The present disclosure will be described in further detail below with reference to the accompanying drawings and examples. It is to be understood that the examples provided herein are merely illustrative of the present disclosure and are not intended to limit the present disclosure. In addition, the embodiments provided below are some embodiments for implementing the disclosure, not all embodiments for implementing the disclosure, and the technical solutions described in the embodiments of the disclosure may be implemented in any combination without conflict.
It should be noted that, in the embodiments of the present disclosure, the terms "comprises," "comprising," or any other variation thereof are intended to cover a non-exclusive inclusion, so that a method or apparatus including a series of elements includes not only the explicitly recited elements but also other elements not explicitly listed or inherent to the method or apparatus. Without further limitation, the use of the phrase "including a. -. said." does not exclude the presence of other elements (e.g., steps in a method or elements in a device, such as portions of circuitry, processors, programs, software, etc.) in the method or device in which the element is included.
The term "and/or" herein is merely an association describing an associated object, meaning that three relationships may exist, e.g., a and/or B, may mean: a exists alone, A and B exist simultaneously, and B exists alone. In addition, the term "at least one" herein means any one of a plurality or any combination of at least two of a plurality, for example, including at least one of A, B, C, and may mean including any one or more elements selected from the group consisting of A, B and C.
For example, the data processing method provided by the embodiment of the present disclosure includes a series of steps, but the data processing method provided by the embodiment of the present disclosure is not limited to the described steps, and similarly, the data processing apparatus provided by the embodiment of the present disclosure includes a series of modules, but the data processing apparatus provided by the embodiment of the present disclosure is not limited to include the explicitly described modules, and may also include modules that are required to be configured to acquire related information or perform processing based on the information.
The disclosed embodiments may be implemented in hardware, or in a computer system of hardware, such as terminals and servers, and may operate in conjunction with numerous other general purpose or special purpose computing system environments or configurations, or with processors executing computer executable code to perform the disclosed embodiments. Here, the terminal may be a thin client, a thick client, a hand-held or laptop device, a microprocessor-based system, a set-top box, a programmable consumer electronics, a network personal computer, a small computer system, etc., and the server may be a server computer system, a small computer system, a mainframe computer system, a distributed cloud computing environment including any of the above, etc.
The electronic devices of the terminal, server, etc. may be described in the general context of computer system-executable instructions, such as program modules, being executed by a computer system. Generally, program modules may include routines, programs, objects, components, logic, data structures, etc. that perform particular tasks or implement particular abstract data types. The computer system/server may be practiced in distributed cloud computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed cloud computing environment, program modules may be located in both local and remote computer system storage media including memory storage devices.
Some embodiments of the present disclosure provide a data processing method, and the embodiments of the present disclosure may be applied to any data processing scenario, for example, may be applied to a scenario such as city management of a government, classification and detection of sugarcane in sugar industry, and intelligent quality inspection in the industrial field.
Fig. 1 is a flowchart of a data processing method according to an embodiment of the present disclosure, and as shown in fig. 1, the flowchart may include:
step 101: selecting a workflow template based on a first selection instruction of a user, and selecting a training set of a neural network from a data set based on a second selection instruction of the user; the workflow template represents an instance of a training framework of a neural network.
In one embodiment, the first selecting instruction of the user may be an instruction to select one of the workflow templates from a plurality of workflow templates based on a user requirement, for example, the first selecting instruction of the user may be an instruction to select one of the workflow templates from a workflow warehouse including a plurality of workflow templates, where the workflow warehouse may include: the user can select one workflow template from the object detection workflow template, the image classification workflow template and the face increment identification workflow template according to the requirement, and the workflow template corresponds to a training example of a class of neural network model.
In one embodiment, the workflow template may be simply summarized as a template process of neural network model training, and the workflow template may include a set of general training frames and network parameters corresponding to the set of general training frames, and the network parameters may include hyper-parameters and initial parameters, for example, the workflow template may include a plurality of training frames, and one training frame may correspond to a plurality of sets of network parameters.
As an embodiment, the second selection instruction of the user may be an instruction for selecting a training set which needs to be trained by the neural network from the data set based on the user requirement; for example, the second selection instruction of the user may be an instruction for selecting one of the training sets from a data set including a plurality of training sets according to a user requirement, where the data set may include a training set and an evaluation set, the training set may be a data set selected by the user when the neural network model needs to be trained, and the evaluation set may be a data set selected by the user for use in precision evaluation of the neural network model.
The implementation manner of selecting the workflow template based on the first selection instruction of the user and selecting the training set of the neural network from the data set based on the second selection instruction of the user may be that the user selects the workflow template and the training set of the neural network which are in accordance with requirements from a workflow warehouse and the data set respectively.
Step 102: and determining a training framework of the neural network according to the workflow template, wherein the training framework has a network structure of the neural network corresponding to the instance.
As an embodiment, the determining the training frame of the neural network according to the workflow template may be determining network parameters of the training frame of the neural network according to the workflow template, and determining the training frame of the neural network based on the network parameters.
Here, since the workflow template includes the network parameters of the training frame of the neural network, the network parameters of the training frame of the neural network may be directly determined according to the workflow template selected by the user, and then the neural network training frame corresponding to the workflow template may be automatically determined based on the network parameters.
In an embodiment, the determining the training frame of the neural network based on the network parameters may be obtaining an initial model of the neural network, determining a plurality of training frames corresponding to the initial model, and determining the training frame of the neural network corresponding to the network parameters in the plurality of training frames corresponding to the initial model.
Here, the initial model of the neural network is a general model concept, for example, the initial model of the neural network may be an object detection model or a face recognition model, and the manner of obtaining the initial model of the neural network may be flexibly determined according to the training requirements of the neural network model of the user, for example, for the case that the neural network model needs to be trained from nothing to nothing, the manner of obtaining the initial model of the neural network may be to establish the initial model of the neural network from nothing to nothing, or may be to establish any type of initial model of the neural network, for example, the established initial model may also be any model in a custom model library or a pre-trained model library; in one embodiment, the initial model of the neural network may be obtained by selecting a corresponding initial model library based on a user operation, and selecting the initial model from the initial model library.
For the plurality of training frames corresponding to the initial model, among the plurality of training frames corresponding to the initial model, the implementation manner of determining the training frame of the neural network corresponding to the network parameter may be to determine the training frames of the plurality of neural networks corresponding to the initial model in the pre-stored training frames of the neural networks, and determine one training frame of the neural network corresponding to the network parameter in the training frames of the plurality of neural networks. For example, the pre-stored training frame may include: the method comprises a training frame 1, a training frame 2, a training frame 3, a training frame 4, a training frame 5 and a training frame 6, wherein when the neural network training frame corresponding to the initial model A selected by a user is the training frame 2, the training frame 4 and the training frame 5, when the training frame corresponding to the network parameter 1 is the training frame 4, and when the training frame corresponding to the network parameter 2 is the training frame 5, if the network parameter is the network parameter 1, the neural network frame corresponding to the network parameter 1 can be determined to be the training frame 4.
The method for determining the training frame of the neural network according to the network parameters can automatically determine the training frame of the neural network corresponding to the network parameters from a plurality of neural network frames based on the initial model and the network parameters of the neural network, does not need a user to establish the training frame of the neural network, and reduces time cost and labor cost.
Here, obtaining the initial model of the neural network may include: selecting an initial model of the neural network from the models of the plurality of neural networks based on a third selection instruction of the user; alternatively, an initial model of the neural network is established.
In one embodiment, the third selecting instruction of the user may be an instruction to select one model in one model library from a model warehouse including a plurality of model libraries based on user requirements, where the model warehouse may include: the user can select a neural network model from the pre-training model library or the custom model library as an initial model according to requirements. Here, the pre-training model library may include pre-trained models, and the user may perform incremental training on the models in the pre-training model library based on the selected data set to optimize their effects in a specific scenario; the self-defined model library can comprise models created by the user from scratch, and the models in the self-defined model library can be created and trained by the user.
It can be seen that the method for obtaining the initial model of the neural network can be used for building the initial model of the neural network from nothing to time or selecting the initial training model from a model warehouse, and thus, the method is convenient to implement.
In an embodiment, the training frame of the neural network is determined based on the network parameters, or the training frames of the neural network corresponding to the network parameters are determined in the plurality of training frames of the existing neural network model.
Here, the existing neural network model may be a face recognition neural network model, or may be another neural network model that needs to be further optimized. For the condition that the requirement of the user is to optimize the existing neural network model, the method for acquiring the existing neural network model can be directly uploaded by the user.
For determining the plurality of training frames for optimizing the existing neural network model, among the plurality of training frames of the existing neural network model, the implementation manner of determining the training frame of the neural network corresponding to the network parameter may be to determine the training frames of the plurality of neural networks corresponding to the existing model in a pre-stored neural network training frame, and determine one neural network training frame corresponding to the network parameter in the corresponding plurality of neural network training frames. For example, the pre-stored training frame may include: the method comprises a training frame 1, a training frame 2, a training frame 3, a training frame 4, a training frame 5 and a training frame 6, wherein when a user selects a specific model B and the neural network training frame corresponding to the specific model B is the training frame 1, the training frame 2 and the training frame 6, if the training frame corresponding to the network parameter 1 is the training frame 1 and the training frame corresponding to the network parameter 2 is the training frame 2, the neural network frame corresponding to the network parameter 1 can be determined to be the training frame 1.
The method for determining the training frame of the neural network according to the network parameters can automatically determine the training frame of the neural network corresponding to the network parameters from a plurality of neural network frames based on the existing model and the network parameters of the neural network, does not need a user to establish the training frame of the neural network, and reduces the time cost and the labor cost.
In an example, the network structure of the neural network is determined according to the training frame, which may be to obtain the network structures of a plurality of neural networks corresponding to the training frame; selecting a network structure of a neural network that coincides with the data distribution state of the training set from the network structures of the plurality of neural networks.
Here, the distribution state of the training set may include at least one of: the number of training sets is small, and the data distribution of the training sets is balanced, for example, the distribution state of the training sets may be that the number of training sets is small, for example, the number of training sets is less than 100, or the distribution state of the training sets may be that the data distribution of the training sets is unbalanced, for example, there are 900 cats and 100 dogs in a training set of a cat and dog classification.
In one example, the network structure of the neural network that matches the data distribution state of the training set is selected from the network structures of the plurality of neural networks, and may be a network structure that is suitable for a training set with a smaller number of training sets, or may be a network structure that is suitable for a training set with unbalanced data distribution, from the network structures of the plurality of neural networks.
It can be seen that, by the method for determining a neural network structure, a suitable network structure can be determined from a plurality of neural network structures, and the determined network structure of the neural network is more consistent with the data distribution state of the training set selected by the user.
As an embodiment, the obtaining of the network structures of the plurality of neural networks corresponding to the training frame may be determining the network structures of the plurality of neural networks corresponding to the training frame in a network repository, where the network repository is used to store the network structures of the neural networks.
Here, the network repository may be a neural network that integrates a plurality of industry open sources and is general, and has been specially optimized, including ResNet, MobileNet, ShuffleNet, MNASNet, EfficientNet, and the like, and for the implementation manner of determining the network structures of a plurality of neural networks corresponding to the training frame in the network repository, for example, for the training frame a, the network structure of three neural networks corresponding to the ShuffleNet, MNASNet, and EfficientNet in the network repository may be determined from the network repository.
Therefore, the method for acquiring the network structure of the neural network can automatically determine the network structure of the neural network corresponding to the training frame from the network warehouse according to the data distribution state of the training set selected by the user, does not need the user to establish a network architecture of the neural network, and reduces time cost and labor cost.
Step 103: and training a neural network according to the training set and the network structure of the neural network to obtain a trained neural network model.
In one embodiment, training a neural network according to the training set and the network structure of the neural network, and obtaining a trained neural network model includes: performing neural network training according to the selected training set and the network structure of the neural network, judging whether the neural network model adjusted based on the network parameter values meets the set conditions or not in the training process, if not, adjusting the neural network parameters, and then judging whether the neural network model adjusted based on the network parameter values meets the preset conditions or not; if the preset conditions are met, finishing the training to obtain a trained neural network model; and if the preset condition is not met, continuously adjusting the network parameters for re-judgment.
Here, the setting condition may be that the number of times of adjusting the network parameter of the neural network is equal to the set number of iterations, or that the loss function of the neural network reaches the convergence condition. Here, the set iteration number represents a maximum value of the number of times of adjusting the network parameter of the neural network, and the set iteration number is an integer greater than 1; the convergence condition may be that a value of a loss function for adjusting the neural network is smaller than a set loss, and the set loss may be preset according to a requirement of an actual application. It should be noted that the above description is only an exemplary description of the setting conditions, and the setting conditions of the embodiments of the present disclosure are not limited thereto.
In practical applications, the steps 101 to 103 may be implemented by a Processor in an electronic Device, where the Processor may be at least one of an Application Specific Integrated Circuit (ASIC), a Digital Signal Processor (DSP), a Digital Signal Processing Device (DSPD), a Programmable Logic Device (PLD), a Field Programmable Gate Array (FPGA), a Central Processing Unit (CPU), a controller, a microcontroller, and a microprocessor.
It can be seen that, in the embodiment of the present disclosure, because the workflow template and the training set can be selected according to the user requirements, the training frame of the corresponding neural network can be automatically determined according to the selected workflow template, and the neural network corresponding to the training frame can be automatically determined according to the training set selected by the user, the automatic training of the neural network can be realized according to the network structure of the selected training set and the determined neural network, an algorithm researcher is not required to customize different neural network models according to different user requirements, and the time cost and the labor cost are reduced.
In one embodiment, the data set may be operated and/or the neural network may be trained according to a first data operation authority of at least one type of user; the first data operation authority includes an operation authority on the data set and/or an authority to train a neural network.
In one example, the operation right of the data set can be an operation right of the data set such as creating the data set, deleting the data set, and selecting the data set; the authority to train the neural network may include the authority to select training sets and workflow templates, as well as other operations necessary to perform neural network training.
For the implementation manner of operating and/or training the data set according to the first data operation permission of at least one type of user, the data set may be operated and/or the neural network may be trained for different first data operation permissions of different types of users, or for the same first data operation permission of different types of users. In one example, the operation authority of different users can be set by an administrator, so as to obtain at least one type of first data operation authority.
It can be seen that it is determined whether the data set can be operated and/or the neural network can be trained according to different user first data operation permissions.
In one embodiment, an evaluation set of a neural network may be selected from the data set based on a fourth selection instruction of the user; and evaluating the trained neural network model according to the evaluation set to obtain an evaluation result.
In an example, the fourth selecting instruction of the user may be an instruction for selecting an evaluation set to be evaluated by the neural network model from the data set based on the user requirement; for example, the fourth selection instruction of the user may be an instruction for selecting one of the neural network evaluation sets from a data set containing a plurality of neural network evaluation sets according to the user requirement.
The implementation manner of evaluating the trained neural network model according to the evaluation set to obtain an evaluation result can be that the precision of the neural network model is evaluated by using the evaluation set selected by the user from the data platform through a model evaluation tool to obtain a precision evaluation result. Here, for different types of neural network models, the evaluation tool may select different indexes for evaluation, for example, for a neural network model for object detection, indexes such as a main Average evaluation accuracy (mapp), a false positive example number-missing Rate (FPPI-MR) @0.1 of each picture, and the like may be selected; for the neural network model of image classification, main indexes such as evaluation accuracy, precision and recall rate can be selected; for the neural network model of face recognition, the indexes such as the false recognition rate and the passing rate under the condition of dynamic deployment and evaluation, the hit rate of Top N under the condition of static retrieval and the like can be selected.
Therefore, the evaluation method of the neural network model can automatically finish the evaluation of the neural network model through the existing model evaluation tool aiming at the evaluation set selected by the user.
In one embodiment, the neural network model can be evaluated according to evaluation authority of at least one type of users on the neural network model.
In one example, the neural network model is evaluated according to evaluation permissions of at least one type of users on the neural network model, which may be evaluation permissions of different neural network models for different types of users, or evaluation permissions of the same neural network model for different types of users. For example, for the user a, the evaluation authority for the neural network model 1 and the neural network model 2 may be set, and for the user B, the evaluation authority for the neural network model 3 may be set, and of course, the evaluation authority for the neural network model 1 and the neural network model 2 may also be set for both the user a and the user B. Furthermore, the neural network model 1 and the neural network model 2 can be evaluated according to the operation authority of the user A and the user B on the neural network model.
Therefore, whether the neural network model can be evaluated or not is determined according to the evaluation authority of different users on the neural network model.
In an embodiment, when the evaluation result meets the preset condition, the trained neural network model may be published by using a predetermined model publishing tool, where the model publishing tool is used to implement publishing of the neural network model.
In an example, the preset condition may be that the evaluation result reaches a preset accuracy index, of course, different accuracy indexes may be set for different types of neural network models, and different accuracy indexes may also be set for the same type of neural network model, and specifically, the preset accuracy index may be determined by a user.
In one example, the model publishing tool may be one or more of a model compression tool, a model transformation tool, and a model encryption tool, wherein the model compression tool may be used to compress the volume of the model and optimize the structure of the model so that the model achieves an optimal inference speed; the model conversion tool can support the conversion of a model into a structure matched with different Artificial Intelligence (AI) chips so as to ensure that the model can run smoothly on different AI chips; the model encryption tool may encrypt the model to ensure that the model is secure from disclosure and attack.
For the implementation manner of issuing the trained neural network model by using a predetermined model issuing tool when the evaluation result meets the preset condition, the volume compression and the structure optimization of the neural network model can be realized by using a model compression tool under the condition that the precision of the evaluation result meets the preset precision index, the model can be converted into a structure adaptive to different AI chips by using a model conversion tool, the neural network model can be encrypted by using model encryption, and certainly, the issuing of the neural network model can be realized by simultaneously using a plurality of the model compression tool, the model conversion tool and the model encryption tool. In one example, the neural network model may be converted into a general neural network model framework (e.g., Caffe), and after the neural network model is converted, the neural network model may be released only by replacing the corresponding neural network model in the inference system of the production environment.
Therefore, the method for releasing the neural network model can automatically release the neural network model with the evaluation result meeting the preset condition through the existing model distribution tool.
In one embodiment, the neural network model may be published according to publishing rights of at least one class of users to the neural network model.
Here, the neural network model is published according to the publishing authority of at least one type of user to the neural network model, which may be the publishing authority of the neural network model for different types of users; or issuing the neural network model according to the issuing authority of different neural network models of different types of users or the issuing authority of the same neural network model of different types of users.
It can be seen that whether the neural network model can be issued is determined according to the issuing authority of different users on the neural network model.
In one embodiment, a training environment required for neural network training may be configured, the training environment including at least one of: a deep learning framework and a distributed training tool.
In one example, for the implementation of configuring the training environment required for neural network training, a deep learning framework and a tool for distributed training may be automatically invoked, wherein the deep learning framework may be SenseParrots, TensorFlow, pitorch, or paddlepaddlefold, etc. The distributed training tools may be a stand-alone multi-card training tool and a multi-machine multi-card training tool, wherein the multi-machine multi-card distributed training tool may be an MPI Launcher.
Further, in an example, training task scheduling may also be performed, and machine resources required for performing neural network training are configured, where the training tasks may be scheduled according to user requirements, and the training task scheduling is used to determine the sequence of neural network training and the machine resources for performing neural network training according to the user requirements, for example, it is determined that 3 users need to perform neural network training, and the training task scheduling may determine that the neural network training of the user is performed first and on which machines the neural network training is performed; the machine resources required for configuring the neural network can be a video card, a data disc and the like required for determining the training of the neural network.
It can be seen that, through the configuration of the training environment, necessary resource environment preparation can be provided for the training of the neural network, which is beneficial to further performing the neural network training.
In one embodiment, the raw data may be collected according to a predetermined data collection manner; preprocessing the original data according to a predetermined preprocessing tool to obtain a preprocessing result; and obtaining a data set according to a predetermined data labeling mode, wherein the data set comprises labeling information of the preprocessing result.
In one example, the raw data is collected according to a predetermined data collection manner, which may be a manner of locally uploading data to collect the raw data; or the original data is collected in a mode of importing data through the production environment.
In one example, a user can select a data acquisition mode according to requirements, and if the user selects local uploading, the local pictures can be packaged into a compressed packet, and then the compressed packet is imported through a local uploading function provided in an original data access module of a data platform; if the user selects to import from the production environment, the user needs to configure the data storage address of the production environment, and the data can be imported through the import function from the production environment provided in the original data access module of the data platform.
Therefore, the data acquisition method can meet various requirements of users, and is more flexible and convenient.
In an example, the raw data is preprocessed according to a predetermined preprocessing tool to obtain a preprocessing result, where the preprocessing result may be that the raw data is subjected to Extract-Transform-Load (ETL) processing according to an ETL processing tool, and specifically, the raw data after the ETL processing is converted into a format that is more efficient for neural network model training, and some basic information of the data, such as a timestamp, camera location information, a picture size, a resolution, and the like, is added, which is beneficial for structuring the picture data, and the subsequent screening and retrieval of the picture data may be easier.
In one example, the data set is obtained according to a predetermined data annotation manner, and may be obtained through a provided manual annotation interface or an automatic annotation platform.
In one example, for an implementation manner of obtaining a data set according to a predetermined data tagging manner, the data set may be obtained by tagging data by using manual tagging and unsupervised automatic tagging provided by a data intelligent tagging platform. For data related to the non-face recognition model, a user needs to select manual annotation, and the user finishes the data annotation process to obtain a data set. If the data is related to face recognition, similar faces can be clustered together by an unsupervised clustering method, so that labeling is completed, and a data set is obtained.
Therefore, through a manual labeling interface or an automatic labeling platform, a corresponding labeling mode can be selected according to requirements for labeling, and the requirements of users can be met.
It can be seen that, because the data acquisition, data preprocessing and data annotation method is predetermined according to the user requirements, the user requirements can be better met.
In one embodiment, at least one of the raw data, the pre-processing results, and the data set may be modified or deleted.
For example, the modifying or deleting at least one of the original data, the preprocessing result and the data set may be at least one of deleting, creating, selecting, modifying the original data, the preprocessing result and the data set, and of course, the data set may also include memory data, that is, data related to the model generated in the process of training some specific models, specifically, the memory data may refer to picture data meeting a preset criterion in the training set, and the preset criterion may refer to a sample capable of representing a neural network model, for example, for a neural network model identified by an apple, the memory data may be picture data capable of representing the neural network model in the training set.
It can be seen that by modifying or deleting at least one of the preprocessing result and the data set, the management of the original data, the preprocessing result and the data set can be realized, and the data management efficiency is improved.
In one embodiment, at least one of the following operations may be performed according to at least one type of second data operation authority: data acquisition, data preprocessing and data annotation; the second data operation right comprises at least one of the following items: data acquisition permission, data preprocessing permission and data marking permission.
It can be seen that whether data acquisition, data preprocessing and data annotation can be performed is determined according to data acquisition permission, data preprocessing permission and data annotation permission for different users.
In one embodiment, the authority design based on different types of users can be adopted to perform authority management on each operation of the users, so that the users can only see data with authority and can only perform the operation with the authority. Specifically, an extensible role list can be built in to support different types of users such as a picture annotator, a common user, a group administrator, a user administrator, and the like. Wherein, the picture annotator can only view the data sets with the authority and complete the data annotation work on the data sets; the common user can create a data set and a neural network model besides having all the rights of a picture marker, and can also train, evaluate and issue the neural network model by using the marked data set; the group administrator can manage the group and the members in the group besides having all the rights of the common users; the user administrator has administrative rights for users other than the system administrator.
On the basis of the data processing method provided by the foregoing embodiment, an embodiment of the present disclosure provides a data processing apparatus.
Fig. 2 is a schematic structural diagram of a data processing apparatus according to an embodiment of the disclosure, and as shown in fig. 2, the platform may include: a selection module 201 and a training module 202, wherein,
a selecting module 201, configured to select a workflow template based on a first selecting instruction of a user, and select a training set of a neural network from a data set based on a second selecting instruction of the user; the workflow template represents an instance of a training framework of a neural network;
a training module 202, configured to determine a training frame of the neural network according to the workflow template, where the training frame has a network structure of the neural network corresponding to the instance; and training a neural network according to the training set and the network structure of the neural network to obtain a trained neural network model.
Optionally, the training module 202 is configured to determine a training framework of a neural network according to the workflow template, and includes: determining network parameters of a training frame of a neural network according to the workflow template; based on the network parameters, a training framework for the neural network is determined.
Optionally, the training module 202 is configured to determine a training framework of a neural network based on the network parameters, and includes: acquiring an initial model of a neural network; determining training frames of a plurality of neural networks corresponding to the initial model; and determining the training frame of the neural network corresponding to the network parameters in the training frames of the plurality of neural networks corresponding to the initial model.
Optionally, the training module 202 is configured to obtain an initial model of a neural network, and includes: selecting an initial model of the neural network from the models of the plurality of neural networks based on a third selection instruction of the user; alternatively, an initial model of the neural network is established.
Optionally, the training model 202 is configured to determine a training framework of a neural network based on the network parameters, and includes: acquiring an existing neural network model; determining a training framework for optimizing a plurality of neural networks of the existing neural network model; and determining the training frame of the neural network corresponding to the network parameters in the training frames of the plurality of neural networks of the existing neural network model.
Optionally, the training model 202 is configured to determine a network structure of a neural network according to the training framework, and includes: acquiring network structures of a plurality of neural networks corresponding to the training frame; selecting a network structure of a neural network that coincides with the data distribution state of the training set from the network structures of the plurality of neural networks.
Optionally, the processing module 202 is configured to obtain a network structure of a plurality of neural networks corresponding to the training framework, and includes: and determining the network structures of a plurality of neural networks corresponding to the training frame in a network warehouse, wherein the network warehouse is used for storing the network structures of the neural networks.
Optionally, the apparatus further includes a permission management module 203, configured to operate on the data set and/or train the neural network according to a first data operation permission of at least one type of user; the first data operation authority includes an operation authority on the data set and/or an authority to train a neural network.
Optionally, the apparatus further includes an evaluating module 204, configured to select an evaluating set of the neural network from the data set based on a fourth selecting instruction of the user; and evaluating the trained neural network model according to the evaluation set to obtain an evaluation result.
Optionally, the authority management module 203 is configured to evaluate the neural network model according to an evaluation authority of at least one class of users on the neural network model.
Optionally, the apparatus further includes a publishing module 205, configured to publish the trained neural network model by using a predetermined model publishing tool when the evaluation result meets a preset condition, where the model publishing tool is used to implement publishing of the neural network model.
Optionally, the authority management module 203 is configured to issue the neural network model according to an issue authority of at least one class of users to the neural network model.
Optionally, the obtaining module 201 is further configured to collect original data according to a predetermined data collecting manner; preprocessing the original data according to a predetermined preprocessing tool to obtain a preprocessing result; and obtaining a data set according to a predetermined data labeling mode, wherein the data set comprises labeling information of the preprocessing result.
Optionally, the obtaining module 201 is configured to modify or delete at least one of the original data, the preprocessing result, and the data set.
Optionally, the acquiring module 201 is configured to acquire the original data according to a predetermined data acquisition manner, and includes: acquiring original data in a local data uploading mode; or, the original data is collected in a mode of importing data through the production environment.
Optionally, the obtaining module 201 is configured to obtain a data set according to a predetermined data tagging manner, and includes: and obtaining the data set through a provided manual labeling interface or an automatic labeling platform.
Optionally, the authority management module 203 is configured to perform at least one of the following operations according to the second data operation authority of at least one class of users: data acquisition, data preprocessing and data annotation; the second data operation right comprises at least one of the following items: data acquisition permission, data preprocessing permission and data marking permission.
In practical application, the obtaining module 201, the training module 202, the authority management module 203, the evaluating module 204, and the issuing module 205 may be implemented by a processor in an electronic device, where the processor may be at least one of an ASIC, a DSP, a DSPD, a PLD, an FPGA, a CPU, a controller, a microcontroller, and a microprocessor.
Fig. 3 is another schematic structural diagram of a data processing apparatus according to an embodiment of the disclosure, as shown in fig. 3, the data processing apparatus includes an interaction layer, where the interaction layer includes: a Graphical User Interface (GUI) mainly provides a User-oriented Interface, and a User performs visual operations.
The data processing device also comprises a service layer, wherein the service layer comprises: the system comprises a user center and an authority system, wherein the user center can be mainly responsible for managing users, including addition, deletion, modification, check and the like of the users and groups; the rights system may be primarily responsible for the management of rights and user types.
The data processing apparatus further comprises a platform layer, wherein the platform layer comprises: the system comprises a data platform, an algorithm platform, a model platform and a resource monitoring center, wherein the data platform, the algorithm platform and the model platform are mutually associated, and the data platform is used for processing various data used for training a neural network model; the algorithm platform is responsible for providing various neural network structures used in the neural network model training; the model platform can utilize the processed data of the data platform and the neural network structure provided by the algorithm platform to complete the automatic training and automatic evaluation of the neural network model; the resource monitoring center is mainly responsible for monitoring hardware resources in the operation process of the data processing device, for example, monitoring the usage rate of a CPU (central processing Unit), the usage rate of a Graphics Processing Unit (GPU), and the like.
In an example, the data platform can include a raw data access module, a data pre-processing module, a data warehouse, a data finishing module, and a post-annotation data management module. The original data access module can comprise an original data access part and an original data analysis part and is used for accessing and analyzing original data; the data preprocessing module can comprise an extraction part, a conversion part and a loading part, and is used for performing data extraction, conversion and loading processing on the original data; the data warehouse can comprise a data multi-format storage part and a structured search part, and is used for performing data multi-format storage and structured search on original data, preprocessed data, labeled data, data sets and the like; the data fine processing module can comprise a manual labeling part, an unsupervised automatic labeling part and a data intelligent labeling platform, wherein the manual labeling part is used for performing manual labeling processing on the original data and/or the preprocessed data; the unsupervised automatic labeling part is used for carrying out unsupervised automatic labeling processing on the original data and/or the preprocessed data; the data intelligent labeling platform is used for intelligently labeling the original data and/or the preprocessed data; the post-labeling data management module can comprise a training set management part, an evaluation set management part and a technical data management part and is used for managing a training set, an evaluation set and memory data.
In one example, the algorithm platform may include: the system comprises a deep learning framework module, a distributed training module, a network warehouse, a training framework module and a workflow warehouse. The deep learning framework module can be a SenseParrots model and is used for helping a user to carry out deep learning; the distributed training module can comprise a single-machine multi-card distributed training tool and a multi-machine multi-card distributed training tool, the single-machine multi-card distributed training tool can be a LinkLink tool, and the multi-machine multi-card distributed training tool can be an MPI Launcher tool; the network repository may include neural networks ResNet, MobileNet, ShuffleNet, MNASNet, EfficientNet; the training frame module may include an object detection frame, an image classification frame, and a face increment recognition frame, and the workflow warehouse may include a workflow template 1, a workflow template 2, and a workflow template 3, where the workflow template 1 may be an object detection workflow template, the workflow template 2 may be an image classification workflow template, and the workflow template 3 may be a face increment recognition workflow template.
In one example, the model platform may include: the system comprises a model warehouse, a resource management module, a model training module, an evaluation module and a model publishing module, wherein the model warehouse can comprise a pre-training model library and a custom model library, and the resource management module is used for scheduling tasks of neural network training and realizing application and management of a display card, data disc management and training environment management; the model training module can comprise a 0-1 training system, a pre-training model training system part and a specific model orientation optimization training system part, wherein the 0-1 training system part in the model training module can be called under the condition that a user selects to create a neural network model from nothing to nothing; under the condition that a user selects to carry out incremental training on a pre-trained model based on a pre-trained model and a selected data set, a pre-trained training system part in a model training module of a model platform can be called; under the condition that a user needs to optimize a specific model (such as face recognition), a specific model orientation optimization system part in a model training module of a model platform can be called; after the training system is called, the corresponding training frame, the corresponding workflow template and the corresponding network structure in the network warehouse can be called in the algorithm platform in sequence, and the training set selected by the user from the data platform is utilized to train the neural network model. The evaluation module can comprise a single-model evaluation tool and an evaluation index visualization tool, the single-model evaluation tool can be used for evaluating the neural network model obtained by training, and the evaluation index visualization tool can be used for visually displaying the evaluation index obtained after evaluation; the model issuing module may include a compression tool, a conversion tool, and an encryption tool, where the compression tool is used to compress the neural network model obtained after training, the conversion tool is used to convert the neural network model obtained after training, and the encryption tool is used to encrypt the neural network model obtained after training.
In one embodiment, the data processing apparatus further comprises a scheduling layer, wherein the scheduling layer comprises: kubernetes cluster for managing containerized applications on multiple hosts in a cloud platform, e.g., scheduling and management of various types of infrastructure (e.g., CPU, GPU).
In one embodiment, the data processing apparatus further comprises a hardware layer, wherein the hardware layer may include: the CPU, the GPU and a Network Attached Storage (NAS) are used to provide necessary hardware resources for neural Network training.
In an example, for the authority system, the picture annotator may only have the authority to view the data warehouse in the data platform and the authority to perform manual data annotation in the data finishing module, for example, after the user logs in the authority system, the user can only see the original data or the preprocessed data created by other non-picture annotators in the data warehouse, and when other non-picture annotators create the original data or the preprocessed data, the creator may set the authority to view some picture annotators. For the original data or the preprocessed data with the viewing permission, the picture annotator can perform manual annotation on the original data or the preprocessed data, including operations of drawing frames and labeling pictures in the original data or the preprocessed data. For raw data or pre-processed data sets that do not have viewing rights, the picture annotator may not perceive its presence.
In one example, besides the picture annotator, if the user is a user login authority system of other types, all the operation authorities of the data platform, the algorithm platform and the model platform can be obtained, and the difference is that: for ordinary users and group administrators, the data set and neural network model that can be managed can be only the data set and neural network model created by themselves and the data set and neural network model created by others and allowed to be managed by users. For a user administrator, the user administrator can manage all data sets and neural network models within the system without authorization from the creator of those data sets and models.
In one embodiment, the data platform can be used to realize the whole process of data collection, preprocessing, labeling and management. In the aspect of data acquisition, the data platform supports users to upload data locally and also supports direct data import from the production environment of the users. The data flow engine is used when a user imports data directly from the production environment. Real-time data of real scenes in the production environment can be imported to the data platform through the data flow engine. When the real-time data of the real scene accumulated in the data flow engine exceeds a preset threshold (for example, 1000 sheets), the data flow engine compresses and packs the pictures and leads the packed pictures to the data platform in batches.
In one example, in terms of data preprocessing, the data platform supports ETL processing on data uploaded by a user or imported from a production environment, including adding point location information of a camera for shooting, time information, timing relationship between data, and the like to the data. The preprocessed data has basic structural information and can be used for searching a user data set. For example, a user can input a keyword and directly search for a picture corresponding to the keyword, so that picture multiplexing is realized, and the picture value is maximally mined.
In one example, in the aspect of data annotation, a user can annotate data by using a data annotation tool carried by the user in an extensible data intelligent annotation platform, such as frame pulling, label marking and the like, and can also develop an annotation tool meeting the requirements of the user. In the aspect of data set management, management of original data, preprocessed data, labeled data, obtained training and evaluation sets and memory data determined by a neural network model can be supported.
In one embodiment, the necessary preparation environment for training the neural network can be provided by an algorithm platform including a deep learning framework module, a distributed training framework module, a network warehouse, a workflow warehouse, and the like, for example, when a user needs to train the neural network model, the training environment needs to be prepared first, and the deep learning framework in the deep learning framework module needs to be loaded most importantly in addition to the scheduling of machine resources. At this time, a built-in deep learning framework can be read from the algorithm platform, in order to accelerate the training speed and improve the training efficiency, distributed training is usually required when the neural network model is trained, and at this time, a single-machine multi-card training tool and a multi-machine multi-card training tool built in a distributed training module in an algorithm warehouse need to be loaded and used. After the environment is ready, neural network training may begin.
In one example, when starting neural network training, a user first needs to select a corresponding workflow template in a training frame of an algorithm platform according to requirements, and then determines the corresponding training frame according to the selected workflow template. When the neural network training is carried out on the training set selected by the user according to the neural network training framework, the network structure corresponding to the neural network training framework is loaded from the network warehouse of the algorithm platform to be used as the neural network initial model of the model training, and then, the network parameters corresponding to the neural network training framework are utilized to carry out the neural network training based on the corresponding network structure, so that a neural network model is obtained.
In one embodiment, the neural network can be trained through the model platform, and the trained neural network model can be evaluated and released. In the aspect of neural network training, a training frame of a corresponding neural network can be automatically acquired according to a workflow template selected by a user. Usually, in a neural network training framework, a plurality of network structures in a network warehouse module are built in. The network structure of the optimal neural network may be automatically selected from the network repository module as the network structure of the trained neural network based on the user-selected data set.
In one example, after the neural network training starts, a group of network parameters of the neural network may be randomly generated, for the network parameters of each group of neural networks, based on the selected training set, the neural network training is performed on the network structure of the neural network, the neural network parameters are optimized, whether the neural network model adjusted based on the network parameter values meets the set conditions is judged, if not, the neural network parameters are adjusted, and whether the neural network model adjusted based on the network parameter values meets the preset conditions is judged; and if the preset conditions are met, finishing the training to obtain the trained neural network model.
In one example, for a specific neural network model, such as face recognition, after the neural network training is completed, the valuable data obtained in the training is also sorted and packed, and a piece of memory data corresponding to the new neural network model obtained by the training is output for the subsequent optimization of the neural network model.
In addition, each functional module in this embodiment may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware or a form of a software functional module.
Based on the understanding that the technical solution of the present embodiment essentially or a part contributing to the prior art, or all or part of the technical solution may be embodied in the form of a software product stored in a storage medium, and include several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor (processor) to execute all or part of the steps of the method of the present embodiment. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a Read Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
Specifically, the computer program instructions corresponding to a data processing method in the present embodiment may be stored on a storage medium such as an optical disc, a hard disk, a usb disk, or the like, and when the computer program instructions corresponding to a data processing method in the storage medium are read or executed by an electronic device, any of the data processing methods of the foregoing embodiments is implemented.
Based on the same technical concept of the foregoing embodiment, referring to fig. 4, it illustrates an electronic device 400 provided by an embodiment of the present disclosure, which may include: a memory 401 and a processor 402; wherein the content of the first and second substances,
the memory 401 is used for storing computer programs and data;
the processor 402 is configured to execute the computer program stored in the memory to implement any one of the data processing methods of the foregoing embodiments.
In practical applications, the memory 401 may be a volatile memory (RAM); or a non-volatile memory (non-volatile memory) such as a ROM, a flash memory (flash memory), a Hard Disk (Hard Disk Drive, HDD) or a Solid-State Drive (SSD); or a combination of the above types of memories and provides instructions and data to the processor 402.
The processor 402 may be at least one of an ASIC, a DSP, a DSPD, a PLD, an FPGA, a CPU, a controller, a microcontroller, and a microprocessor. It is to be understood that, for different augmented reality cloud platforms, the electronic devices for implementing the above-described processor functions may be other, and the embodiments of the present disclosure are not particularly limited.
In some embodiments, functions of or modules included in the apparatus provided in the embodiments of the present disclosure may be used to execute the method described in the above method embodiments, and for specific implementation, reference may be made to the description of the above method embodiments, and for brevity, details are not described here again
The foregoing description of the various embodiments is intended to highlight various differences between the embodiments, and the same or similar parts may be referred to each other, which are not repeated herein for brevity
The methods disclosed in the method embodiments provided by the present application can be combined arbitrarily without conflict to obtain new method embodiments.
Features disclosed in various product embodiments provided by the application can be combined arbitrarily to obtain new product embodiments without conflict.
The features disclosed in the various method or apparatus embodiments provided herein may be combined in any combination to arrive at new method or apparatus embodiments without conflict.
Through the above description of the embodiments, those skilled in the art will clearly understand that the method of the above embodiments can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware, but in many cases, the former is a better implementation manner. Based on such understanding, the technical solutions of the present disclosure may be embodied in the form of a software product, which is stored in a storage medium (e.g., ROM/RAM, magnetic disk, optical disk) and includes instructions for enabling a terminal (e.g., a mobile phone, a computer, a server, an air conditioner, or a network device) to execute the method according to the embodiments of the present disclosure.
While the embodiments of the present disclosure have been described in connection with the drawings, the present disclosure is not limited to the specific embodiments described above, which are intended to be illustrative rather than limiting, and it will be apparent to those of ordinary skill in the art in light of the present disclosure that many more modifications can be made without departing from the spirit of the disclosure and the scope of the appended claims.

Claims (20)

1. A method of data processing, the method comprising:
selecting a workflow template based on a first selection instruction, and selecting a training set of a neural network from a data set based on a second selection instruction; the workflow template represents an instance of a training framework of a neural network;
determining a training framework of the neural network according to the workflow template, wherein the training framework has a network structure of the neural network corresponding to the instance;
and training a neural network according to the training set and the network structure of the neural network to obtain a trained neural network model.
2. The method of claim 1, wherein determining a training framework for a neural network from the workflow template comprises:
determining network parameters of a training frame of a neural network according to the workflow template;
based on the network parameters, a training framework for the neural network is determined.
3. The method of claim 2, wherein determining a training framework for a neural network based on the network parameters comprises:
acquiring an initial model of a neural network;
determining training frames of a plurality of neural networks corresponding to the initial model;
and determining the training frame of the neural network corresponding to the network parameters in the training frames of the plurality of neural networks corresponding to the initial model.
4. The method of claim 3, wherein obtaining the initial model of the neural network comprises: selecting an initial model of the neural network from the models of the plurality of neural networks based on a third selection instruction; alternatively, an initial model of the neural network is established.
5. The method of claim 2, wherein determining a training framework for a neural network based on the network parameters comprises:
acquiring an existing neural network model;
determining a training framework for optimizing a plurality of neural networks of the existing neural network model;
and determining the training frame of the neural network corresponding to the network parameters in the training frames of the plurality of neural networks of the existing neural network model.
6. The method of claim 1, wherein determining the network structure of the neural network from the training framework comprises:
acquiring network structures of a plurality of neural networks corresponding to the training frame;
selecting a network structure of a neural network that coincides with the data distribution state of the training set from the network structures of the plurality of neural networks.
7. The method of claim 6, wherein obtaining the network structure of the plurality of neural networks corresponding to the training framework comprises:
and determining the network structures of a plurality of neural networks corresponding to the training frame in a network warehouse, wherein the network warehouse is used for storing the network structures of the neural networks.
8. The method of claim 1, further comprising:
operating the data set and/or training the neural network according to at least one type of first data operation authority; the first data operation authority includes an operation authority on the data set and/or an authority to train a neural network.
9. The method of claim 1, further comprising:
selecting an evaluation set of the neural network from the data set based on the fourth selection instruction;
and evaluating the trained neural network model according to the evaluation set to obtain an evaluation result.
10. The method of claim 9, further comprising:
and evaluating the neural network model according to the evaluation authority of the neural network model.
11. The method of claim 9, further comprising:
and when the evaluation result meets the preset condition, issuing the trained neural network model by using a predetermined model issuing tool, wherein the model issuing tool is used for realizing issuing of the neural network model.
12. The method of claim 11, further comprising:
and issuing the neural network model according to the issuing authority of the neural network model.
13. The method of claim 1, further comprising:
acquiring original data according to a predetermined data acquisition mode;
preprocessing the original data according to a predetermined preprocessing tool to obtain a preprocessing result;
and obtaining a data set according to a predetermined data labeling mode, wherein the data set comprises labeling information of the preprocessing result.
14. The method of claim 13, further comprising:
modifying or deleting at least one of the original data, the pre-processing result and the data set.
15. The method of claim 13, wherein collecting raw data according to a predetermined data collection pattern comprises:
acquiring original data in a local data uploading mode;
or, the original data is collected in a mode of importing data through the production environment.
16. The method of claim 13, wherein obtaining a data set according to a predetermined data tagging manner comprises:
and obtaining the data set through a provided manual labeling interface or an automatic labeling platform.
17. The method of claim 14, further comprising:
according to at least one type of second data operation authority, at least one of the following operations is carried out: data acquisition, data preprocessing and data annotation; the second data operation right comprises at least one of the following items: data acquisition permission, data preprocessing permission and data marking permission.
18. A data processing apparatus, characterized in that the apparatus comprises: a selection module and a training module, wherein,
the selection module is used for selecting the workflow template based on a first selection instruction and selecting a training set of the neural network from the data set based on a second selection instruction; the workflow template represents an instance of a training framework of a neural network;
the training module is used for determining a training framework of the neural network according to the workflow template, wherein the training framework has a network structure of the neural network corresponding to the example; and training a neural network according to the training set and the network structure of the neural network to obtain a trained neural network model.
19. An electronic device comprising a processor and a memory for storing a computer program operable on the processor; wherein the content of the first and second substances,
the processor is adapted to perform the data processing method of any of claims 1-17 when running the computer program.
20. A computer storage medium on which a computer program is stored, characterized in that the computer program, when being executed by a processor, carries out the data processing method of any one of claims 1 to 17.
CN202010698834.XA 2020-07-17 2020-07-17 Data processing method and device, electronic equipment and storage medium Pending CN111882059A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010698834.XA CN111882059A (en) 2020-07-17 2020-07-17 Data processing method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010698834.XA CN111882059A (en) 2020-07-17 2020-07-17 Data processing method and device, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN111882059A true CN111882059A (en) 2020-11-03

Family

ID=73155036

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010698834.XA Pending CN111882059A (en) 2020-07-17 2020-07-17 Data processing method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN111882059A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112862099A (en) * 2021-03-12 2021-05-28 云知声智能科技股份有限公司 Enterprise-level neural network model processing method and device, electronic equipment and storage medium
CN113255879A (en) * 2021-01-13 2021-08-13 深延科技(北京)有限公司 Deep learning labeling method, system, computer equipment and storage medium
CN113469358A (en) * 2021-07-05 2021-10-01 北京市商汤科技开发有限公司 Neural network training method and device, computer equipment and storage medium
CN113590286A (en) * 2021-07-28 2021-11-02 北京市商汤科技开发有限公司 Task processing system and task processing method
CN116070718A (en) * 2023-02-20 2023-05-05 之江实验室 Data processing system based on machine learning

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109376844A (en) * 2018-10-30 2019-02-22 银河水滴科技(北京)有限公司 The automatic training method of neural network and device recommended based on cloud platform and model
CN109635918A (en) * 2018-10-30 2019-04-16 银河水滴科技(北京)有限公司 The automatic training method of neural network and device based on cloud platform and preset model
CN110991658A (en) * 2019-11-28 2020-04-10 重庆紫光华山智安科技有限公司 Model training method and device, electronic equipment and computer readable storage medium
US20200134471A1 (en) * 2018-10-29 2020-04-30 Beijing Horizon Robotics Technology Research And Development Co., Ltd. Method for Generating Neural Network and Electronic Device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200134471A1 (en) * 2018-10-29 2020-04-30 Beijing Horizon Robotics Technology Research And Development Co., Ltd. Method for Generating Neural Network and Electronic Device
CN109376844A (en) * 2018-10-30 2019-02-22 银河水滴科技(北京)有限公司 The automatic training method of neural network and device recommended based on cloud platform and model
CN109635918A (en) * 2018-10-30 2019-04-16 银河水滴科技(北京)有限公司 The automatic training method of neural network and device based on cloud platform and preset model
CN110991658A (en) * 2019-11-28 2020-04-10 重庆紫光华山智安科技有限公司 Model training method and device, electronic equipment and computer readable storage medium

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113255879A (en) * 2021-01-13 2021-08-13 深延科技(北京)有限公司 Deep learning labeling method, system, computer equipment and storage medium
CN112862099A (en) * 2021-03-12 2021-05-28 云知声智能科技股份有限公司 Enterprise-level neural network model processing method and device, electronic equipment and storage medium
CN112862099B (en) * 2021-03-12 2023-11-07 云知声智能科技股份有限公司 Enterprise-level neural network model processing method and device, electronic equipment and storage medium
CN113469358A (en) * 2021-07-05 2021-10-01 北京市商汤科技开发有限公司 Neural network training method and device, computer equipment and storage medium
WO2023279963A1 (en) * 2021-07-05 2023-01-12 上海商汤智能科技有限公司 Neural network training method and apparatus, and computer device, storage medium and program
CN113590286A (en) * 2021-07-28 2021-11-02 北京市商汤科技开发有限公司 Task processing system and task processing method
CN116070718A (en) * 2023-02-20 2023-05-05 之江实验室 Data processing system based on machine learning

Similar Documents

Publication Publication Date Title
CN111882059A (en) Data processing method and device, electronic equipment and storage medium
US11341186B2 (en) Cognitive video and audio search aggregation
US10185894B2 (en) Picture management method and device, picture synchronization method and device
CN112651126A (en) Building engineering construction optimization system, method, terminal and storage medium based on BIM
EP3989158A1 (en) Method, apparatus and device for video similarity detection
Padhy et al. Brown dog: Leveraging everything towards autocuration
CN109977157A (en) A kind of method and electronic equipment importing data to target directory based on data platform
CN114780485A (en) Electronic archive management method, system, readable storage medium and equipment
CN116340260A (en) Building model data rendering method and device, electronic equipment and readable storage medium
CN116975010A (en) Electronic material library sharing method and system
CN113515464B (en) Honeypot testing method and device based on linux system
CN102932421A (en) Cloud back-up method and device
CN114817754B (en) VR learning system
Mattmann et al. Deep facial recognition using tensorflow
CN111368128A (en) Target picture identification method and device and computer readable storage medium
CN114118440A (en) Model iteration method, model iteration device, electronic equipment and computer readable storage medium
CN115866348A (en) Data processing method, device and system based on two-dimensional code
CN115587297A (en) Method, apparatus, device and medium for constructing image recognition model and image recognition
KR20110070767A (en) Remote forensics system based on network
CN116382596B (en) Space-time big data storage method and system based on distributed technology
CN110795500A (en) Method, device and system for putting face data into storage and storage medium
CN104090911A (en) Information processing method and electronic equipment
CN116188821B (en) Copyright detection method, system, electronic device and storage medium
CN112988530B (en) User data processing method and device, storage medium and user terminal
US20230229904A1 (en) Transfer learning through composite model slicing

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination