[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

WO2024139703A1 - 对象识别模型的更新方法、装置、电子设备、存储介质及计算机程序产品 - Google Patents

对象识别模型的更新方法、装置、电子设备、存储介质及计算机程序产品 Download PDF

Info

Publication number
WO2024139703A1
WO2024139703A1 PCT/CN2023/129301 CN2023129301W WO2024139703A1 WO 2024139703 A1 WO2024139703 A1 WO 2024139703A1 CN 2023129301 W CN2023129301 W CN 2023129301W WO 2024139703 A1 WO2024139703 A1 WO 2024139703A1
Authority
WO
WIPO (PCT)
Prior art keywords
object recognition
category
target
task
recognition model
Prior art date
Application number
PCT/CN2023/129301
Other languages
English (en)
French (fr)
Inventor
郭卉
Original Assignee
腾讯科技(深圳)有限公司
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 腾讯科技(深圳)有限公司 filed Critical 腾讯科技(深圳)有限公司
Publication of WO2024139703A1 publication Critical patent/WO2024139703A1/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/762Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/761Proximity, similarity or dissimilarity measures

Definitions

  • the present application relates to the field of artificial intelligence technology, and in particular to a method, device, electronic device, computer-readable storage medium and computer program product for updating an object recognition model.
  • Artificial Intelligence is a comprehensive technology in computer science. By studying the design principles and implementation methods of various intelligent machines, machines can have the functions of perception, reasoning and decision-making. Artificial Intelligence technology is an interdisciplinary subject that covers a wide range of fields, such as natural language processing technology and machine learning/deep learning. With the development of technology, artificial intelligence technology will be applied in more fields and play an increasingly important role.
  • FIG. 11 is a schematic diagram of the structure of an electronic device 500 for implementing a method for updating an object recognition model provided in an embodiment of the present application.
  • a user can trigger a model update instruction for an object recognition model through a client (e.g., a client supporting object recognition processing) set by a terminal, so that the terminal responds to the model update instruction and sends a model update request for the object recognition model to the server.
  • the server receives the model update request sent by the terminal, it responds to the model update request and obtains a pre-trained object recognition model.
  • the object recognition model can be used to identify objects of multiple categories in at least one object recognition task.
  • the object recognition model is trained based on a training sample set of each object recognition task (including image samples of objects of each category in the object recognition task).
  • the object recognition task can be a recognition task for the category to which an object in an image of a target business belongs.
  • the target category center parameter when the category center parameter is composed of the task category center parameters of each object recognition task, wherein the task category center parameter of the target recognition task is used to indicate: the category center of each category in the target recognition task, and other category centers of other recognition tasks, the target category center parameter can also be used to indicate: the category center of each category in the new recognition task, and other category centers of other recognition tasks, that is, the target category center parameter can be understood as the task category center parameter of the new object recognition task.
  • the target category center parameter can be understood as the task category center parameter of the new object recognition task.
  • the category center parameter of the object recognition model is updated to the target category center parameter, that is, the target object recognition model with the recognition ability of the new object recognition task is obtained.
  • the target category center parameter can also be added to the category center parameter as the task category center parameter to update the category center parameter of the object recognition model, so that when the object to be recognized is recognized for the new object recognition task, the updated category center parameter can be adjusted. Identification is performed using the target category center parameters.
  • the target object recognition model can be obtained by updating the category center parameters of the object recognition model to the target category center parameters of the corresponding new object recognition task to realize the object recognition of the new object recognition task.
  • the object recognition model which improves the efficiency of adding the recognition ability of the new object recognition task to the object recognition model; while adding the recognition ability of the new object recognition task to the object recognition model, it will not affect the recognition effect of the original object recognition task of the object recognition model, thus ensuring the recognition effect of the target object recognition model on the original object recognition task and improving the recognition accuracy of the target object recognition model that has added the new object recognition task.
  • the server may determine the object category to which the object to be identified belongs in the following manner: when the number of the second identification tasks is one, determine that the object to be identified belongs to the first category in the second identification task, and the first category corresponds to the maximum first possible degree. When the number of the second identification tasks is multiple, determine the object category to which the object to be identified belongs based on the first possible degree that the object to be identified belongs to each category in the second identification task.
  • the target object recognition model obtained at this time has both the recognition capability of at least one object recognition task and the recognition capability of a new object recognition task.
  • the efficiency of adding the recognition capability of new object recognition tasks to the object recognition model is improved; 2) while adding the recognition capability of new object recognition tasks to the object recognition model, it will not affect the recognition effect of the original object recognition task of the object recognition model, thereby ensuring the recognition effect of the target object recognition model for the original object recognition task and improving the recognition accuracy of the target object recognition model that has added the new object recognition task.
  • the object recognition model is built on the embedded feature extraction model.
  • the structure of the embedded feature extraction model is shown in Table 1 (basic feature extraction layer) and Table 2 (Embedding feature extraction layer), and the structure of the object recognition model is shown in Table 3.
  • the input of the basic feature extraction layer shown in Table 1 is the object image of the object to be recognized
  • the output of the basic feature extraction layer shown in Table 1 is the input of the Embedding feature extraction layer shown in Table 2
  • the output of the Embedding feature extraction layer shown in Table 2 is the input of the object recognition model shown in Table 3
  • the output of the object recognition model shown in Table 3 is the object category of the object to be recognized.
  • the embedded feature extraction model includes the above-mentioned convolutional feature extraction layer (Conv1-Conv5 shown in Table 1), the pooling feature extraction layer (pool layer shown in Table 2) and the embedded feature extraction layer (Embedding layer shown in Table 2).
  • the input of the object recognition model shown in Table 3 is the output of the Embedding feature extraction layer shown in Table 2 above, namely, Embedding.
  • the Embedding features are first nonlinearly mapped through the fully connected layer (FC, i.e., the feature mapping layer mentioned above) to obtain the mapping features; then the mapping features are normalized through the normalization layer (each element in the input vector is divided by the modulus of the vector) to normalize the mapping features to the unit hypersphere; then the first object recognition is performed through the cosine-match layer (i.e., the first object recognition layer) to obtain the predicted probability that the object to be recognized belongs to the center of each category, Nx is the number of centers of the category centers included in the category of the object supported by the object recognition model, and Nc is the number of categories of the object categories supported by the object recognition model.
  • FC fully connected layer
  • Nx is the number of centers of the category centers included in the category of the object supported by the object recognition model
  • Nc is the number of categories of
  • the object recognition model supports the recognition of 81 categories of game objects
  • Nc 81
  • Nx is determined by the number of centers of the category centers of each category of game objects
  • the softmax layer is used to determine the predicted probability that the object to be recognized belongs to each category, and the predicted probability of each category is mapped to between 0 and 1.
  • each category includes at least one category center.
  • the category center can be at least one game object prototype of the game object of the category to which it belongs.
  • the game object prototype is a different form of expression of the game object.
  • the standard styles of the game object when activating 1 game skill, 2 game skills, 3 game skills, standing, and walking can be regarded as the 5 game object prototypes of the game object.
  • the Normalization layer, cosine-match layer, and softmax layer do not need to set model parameters that need to be learned. Since the Fc layer generates the Embedding required for object recognition, the model parameters that need to be learned can be set.
  • the cosine-match layer can set the category center parameter w of an object recognition model.
  • the category center parameter w is based on the training
  • the sample features of the sample are generated without the need for model training. In actual implementation, the above sample features can be the embedding of the training samples generated by the Fc layer. Therefore, in the learning process of the object recognition model, after each model iteration, the category center parameter w of the object recognition model can be updated (as shown in Table 4). When adding a new object recognition task to the object recognition model, it can be achieved by updating the category center parameter w of the object recognition model.
  • training an object recognition model When training an object recognition model, first, before starting training, randomly select an object recognition task from the target number of object recognition tasks as the target recognition task, build a training sample set for the target recognition task while ensuring that it is close to the real data distribution, then train the target recognition task based on the training sample set, and meet the training end standard of the target recognition task (such as training a specified number of times N_project); then randomly select another object recognition task as the target recognition task, build a training sample set and train the target recognition task; and so on; and so on, until all object recognition tasks meet the training end standard.
  • the training end standard of the target recognition task such as training a specified number of times N_project
  • the quantity limit of k1 is to make the sample size of each category balanced (same) to ensure that each category has an equal opportunity to be learned and improve the model training effect when the sample size is insufficient; and it effectively improves the recognition ability of the object recognition model under limited training samples; if the sample size is sufficient, the value of k1 can be set as needed, and it is not limited to the conditions satisfied by the above k1.
  • model parameters in the object recognition model including the convolution template parameter ⁇ and the bias parameter ⁇ , are updated based on the stochastic gradient descent (SGD) method.
  • SGD stochastic gradient descent
  • the error of the prediction result is calculated and back-propagated to the object recognition model, and the gradient is calculated and the model parameters of the object recognition model are updated.
  • the specific process is as follows: all parameters to be learned of the object recognition model are set to a state requiring learning.
  • the object recognition model performs a forward calculation on the input image sample to obtain a prediction result, compares the prediction result with the label of the image sample, calculates the loss value of the object recognition model, transmits the loss value back to the object recognition model, and updates the model parameters through the stochastic gradient descent method, thereby achieving a one-time optimization of the model parameters. After multiple optimizations, a well-performing object recognition model is finally obtained.
  • the category center can be set to multiple ones, so that not every image sample is close to one category center (such as a game object prototype), thereby avoiding the loss of diversity in the object representation due to the object representation being too close to a unique single center, and further avoiding the problem that the object representation cannot simultaneously support object deduplication and other object recognition that requires attention to different object representations, that is, avoiding the overfitting problem of single-center classification for object recognition in multiple recognition tasks.
  • category center such as a game object prototype
  • Generation of category center parameters Generate the sample Embedding output by the Fc layer shown in Table 3 for each image sample of each object; then perform clustering processing of Kn cluster centers on all sample Embeddings of each object, such as clustering processing of 5 cluster centers, to obtain Kn category centers, and record the Kn category centers to the category memory unit, which are used to construct category center parameters.
  • the object recognition model in the current training stage supports the recognition of objects in 81 categories (including 80 target categories in the target recognition task in the target number object recognition task, and the remaining 1 category is the background category).
  • the category center parameters are generated based on the sample features of the training samples and do not require model training.
  • the sample features can be the embedding of the training samples generated by the Fc layer of the object recognition model. Therefore, in the learning process of each object recognition task, the model parameters of the object recognition model change after each iteration, so the category center parameter w of the object recognition model needs to be updated.
  • the update can be implemented according to the above-mentioned method for generating the category center parameters.
  • the object recognition model For each image sample, the object recognition model generates the sample Embedding (denoted as p) output by the Fc layer shown in Table 3, and then calculates the cosine similarity between p and all Nx category centers to obtain the prediction result of the image sample in each category center. Among the Kn category centers with pre-labeled categories, the category center with the largest cosine similarity (denoted as y) is selected as the target of the sample Embedding to be learned for the image sample. At the same time, the cosine similarity between p and other non-category category centers needs to be reduced.
  • the loss of each image sample can be determined by the following formula (1):
  • the yp term represents the cosine similarity; The term indicates that the larger the Euclidean distance between the image sample and the category center of other categories, the better.
  • yj represents the category center of other categories (including background categories, categories in the recognition task corresponding to the image sample that are different from the true category of the image sample).
  • Nc is the total number of categories to be learned in the object recognition task (including background categories)
  • Nc-2) refers to the number of categories remaining after eliminating background categories and true value categories (the true category of the image sample)
  • r*Kn is the number of category centers of background categories.
  • the sample loss of each image sample in the training sample set is calculated based on the above formula (1), and then the average value of the sample loss is calculated to obtain the loss of the object recognition model.
  • the cosine-match layer shown in Table 3 is used to perform object recognition, and the prediction value (i.e., prediction probability) of the center of each category of the object to be recognized is obtained, that is, the prediction value of Nx category centers is output; then, from the prediction values of multiple category centers of each category, the maximum prediction value is taken as the prediction value of the category, thereby obtaining the prediction values of Nc categories, and the prediction values of each category are mapped to between 0 and 1, and the prediction value of the object to be recognized is obtained.
  • the prediction results of the object for Nc categories are used to perform object recognition, and the prediction value (i.e., prediction probability) of the center of each category of the object to be recognized is obtained, that is, the prediction value of Nx category centers is output; then, from the prediction values of multiple category centers of each category, the maximum prediction value is taken as the prediction value of the category, thereby obtaining the prediction values of Nc categories, and the prediction values of each category are mapped to between 0 and 1, and the prediction value of the object to
  • a target training sample set for the new object recognition task is constructed (e.g., a certain number of image samples of objects of each category in the new object recognition task); then, based on the Fc layer of the object recognition model, the Embedding of each image sample in the target training sample set is obtained, and the cosine similarity between the Embedding of each image sample in the target training sample set and the Embedding of each image sample in the basic training sample set is calculated, thereby filtering out 5% of the image samples with the largest cosine similarity from the basic training sample set to obtain the target basic training sample set; finally, based on the target basic training sample set and the target training sample set, the target category center parameter is generated, and the target category center parameter is used to update the original category center parameter
  • the task entropy threshold is determined, including: 1) inputting all test samples into the object recognition model to obtain the prediction values of Nc categories; 2) determining the maximum prediction value (such as 0.7) among the Nc categories, and determining the background category that is different from the category corresponding to the maximum prediction value among the Nc categories, and the maximum background category prediction value among the background categories; 3) for each test sample, calculating the entropy of the maximum prediction value and the maximum background category prediction value as the entropy of the target recognition task to which the test sample belongs to a specific category (i.e., the category corresponding to the maximum prediction value), which is called the task entropy of the test sample.
  • a specific category i.e., the category corresponding to the maximum prediction value
  • a threshold search is performed in the range of "0.10-0.99" with a step size of 0.02 to find the optimal task entropy threshold thr that can be used to distinguish whether the test sample belongs to a certain category in the target recognition task.
  • the object image of the object to be recognized is first input into the object recognition model, the prediction values of each category are output, and the maximum prediction value and the corresponding target category are determined; then the task entropy of the object image is calculated.
  • the task entropy is less than the task entropy threshold thr, and the maximum prediction value is greater than the maximum background category prediction value, the object to be recognized is considered to be the target category, otherwise it is considered to be the background category. Due to the wide range of background categories, an object in the background category may be similar to an object in the target category. If the maximum value of the prediction value is directly taken, the background category object is easily recognized as the target category object. Therefore, it is necessary to use entropy for information judgment. When the target class and the background class cannot be distinguished, the entropy is always too large. In this way, the accuracy of object recognition is improved by jointly judging the information entropy and probability measurement.
  • FIG. 9A is an application diagram of the object recognition model provided in an embodiment of the present application.
  • b) The object to be identified in the object screenshot is identified through the object recognition model provided in an embodiment of the present application to obtain a deduplication Embedding + a recognition result, wherein the deduplication Embedding is the output of the above Table 2, and the recognition result is the output of the above Table 3.
  • the similarity between the stock embeddings of each recalled video and the duplicate embeddings of the query video is calculated, and the number of similar frames between them is counted based on the threshold, and the repetition ratio of the two videos is obtained based on the ratio of the number of similar frames to the total number of frames.
  • the query video is output based on the repetition ratio.
  • the duplicate search results corresponding to the frequency are sorted.
  • the video corresponding to the stock embedding similar to the query object is obtained from the object video inventory as the recalled video, and the object category of the recalled video is compared with the object category of the query video. If the object categories of the two are different, the video will not be recalled. Finally, the recalled videos with the same object category are sorted from large to small according to the heat value, and the recommended video is output to the user based on the sorting result.
  • the object recognition model is upgraded, and new object recognition tasks are added to the object recognition model.
  • the new object recognition task can be used to perform object recognition in combination with the new category center parameters.
  • the new category center parameters of the new object recognition task can be directly used to perform object recognition.
  • FIG. 9B is a schematic diagram of the application of the object recognition model provided by the embodiment of the present application.
  • the front end A receives the image to be recognized (including the object to be recognized), and then uploads it to the back end, and the back end uses the object recognition model provided by the embodiment of the present application to recognize the object to be recognized, outputs the recognition result (i.e., the object category to which the object to be recognized belongs) and returns it to the front end A.
  • FIG. 10 is a schematic diagram of the structure of an updating device for an object recognition model provided by an embodiment of the present application.
  • the updating device for an object recognition model provided by an embodiment of the present application includes:
  • the first acquisition module 1010 is configured to acquire an object recognition model; wherein the object recognition model is used to recognize objects of multiple categories in at least one object recognition task, and the object recognition model is trained based on a training sample set of each object recognition task, and the training sample set of the object recognition task includes image samples of objects of each category in the object recognition task; the second acquisition module 1020 is configured to acquire a category center parameter of the object recognition model, and the category center parameter is determined based on the sample features of each image sample in each training sample set; the third acquisition module 1030 is configured to acquire a target training sample set for a new object recognition task, and the target training sample set includes the new object Image samples of objects of multiple categories in a recognition task; a determination module 1040, configured to determine a target category center parameter based on sample features of each of the image samples in each of the training sample sets and sample features of each of the image samples in the target training sample set; an update module 1050, configured to update the category center parameter of the object recognition model to the target category center parameter to obtain a target object recognition
  • the first acquisition module 1010 is further configured to acquire an initial object recognition model and acquire a training sample set for each object recognition task, wherein each image sample in the training sample set is annotated with a label; acquire sample features of each image sample in each training sample set, and determine the category center parameter of the object recognition model based on the sample features of each image sample in each training sample set; perform object recognition on each image sample in each training sample set based on the category center parameter through the initial object recognition model to obtain a recognition result of each image sample; update the model parameters of the initial object recognition model based on the difference between the recognition result of each image sample and the label to obtain the object recognition model, wherein the model parameters are different from the category center parameter.
  • the first acquisition module 1010 is further configured to perform the following processing for each of the object recognition tasks: acquiring an object video for the object recognition task, the object video including multiple frames of video images; determining multiple frames of target video images in the multiple frames of video images, the target video images including objects of multiple categories in the object recognition task; for objects of each category in the object recognition task, selecting a target number of first video images including objects of the category from the multiple frames of target video images, and using the first video images as image samples of objects of the category; and constructing a training sample set for the object recognition task based on the image samples of objects of each category in the object recognition task.
  • the first acquisition module 1010 is further configured to perform feature extraction on each of the image samples in each of the training sample sets through the feature extraction layer to obtain sample features of each of the image samples; accordingly, The first acquisition module 1010 is further configured to, after updating the model parameters of the initial object recognition model, perform feature extraction on each of the image samples in each of the training sample sets through the feature extraction layer after the model parameters are updated, to obtain new sample features of each of the image samples; determine new category center parameters of the object recognition model based on the new sample features of each of the image samples in each of the training sample sets; and update the category center parameters of the object recognition model to the new category center parameters.
  • the category center parameter includes multiple subcategory center parameters, and the subcategory center parameters correspond one-to-one to the category centers of each category in the at least one object recognition task;
  • the first acquisition module 1010 is also configured to perform feature extraction on each of the image samples in each of the training sample sets, and obtain sample features of each of the image samples; based on each of the subcategory center parameters, perform first object recognition on the sample features of each of the image samples in each of the training sample sets, and obtain the degree of possibility that the object in each of the image samples belongs to each of the category centers; for each of the image samples, based on the degree of possibility that the object in the image sample belongs to each of the category centers, determine the category to which the object in the image sample belongs, and use the category to which the object in the image sample belongs as the recognition result.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)

Abstract

本申请提供了一种对象识别模型的更新方法、装置、电子设备、计算机可读存储介质及计算机程序产品,涉及人工智能技术;方法包括:获取对象识别模型,该对象识别模型基于各对象识别任务的训练样本集训练得到;获取对象识别模型的类别中心参数;获取新对象识别任务的目标训练样本集;基于各训练样本集中各图像样本的样本特征、以及目标训练样本集中各图像样本的样本特征,确定目标类别中心参数;将对象识别模型的类别中心参数更新为目标类别中心参数,得到目标对象识别模型,该目标对象识别模型用于基于目标类别中心参数,识别待识别对象所归属的目标类别。

Description

对象识别模型的更新方法、装置、电子设备、存储介质及计算机程序产品
相关申请的交叉引用
本申请基于申请号为202211678065.2、申请日为2022年12月26日的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此引入本申请作为参考。
技术领域
本申请涉及人工智能技术领域,尤其涉及一种对象识别模型的更新方法、装置、电子设备、计算机可读存储介质及计算机程序产品。
背景技术
人工智能(AI,Artificial Intelligence)是计算机科学的一个综合技术,通过研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术是一门综合学科,涉及领域广泛,例如自然语言处理技术以及机器学习/深度学习等几大方向,随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
对象识别(如游戏图像中游戏人物的识别)也是人工智能的一个重要应用方向。例如,通过对象识别模型实现某个对象识别任务(如某个游戏中各类别的游戏人物的识别)的对象识别。相关技术中,如果想要为对象识别模型增加新对象识别任务的识别能力,需要采用新对象识别任务的训练样本对原有的对象识别模型进行重新训练才可实现,实现效率低;且由于需要新对象识别任务的训练样本进行重新训练,还会导致原有对象识别任务的识别效果受到影响。
发明内容
本申请实施例提供一种对象识别模型的更新方法、装置、电子设备、计算机可读存储介质及计算机程序产品,能够提高为对象识别模型增加新对象识别任务的识别能力的实现效率,保证对象识别模型的识别效果。
本申请实施例的技术方案是这样实现的:
本申请实施例提供一种对象识别模型的更新方法,包括:
获取对象识别模型;其中,所述对象识别模型用于识别至少一个对象识别任务中多个类别的对象,所述对象识别模型基于各所述对象识别任务的训练样本集训练得到,所述对象识别任务的训练样本集包括所述对象识别任务中各类别的对象的图像样本;
获取所述对象识别模型的类别中心参数,所述类别中心参数基于各所述训练样本集中各所述图像样本的样本特征确定;
获取新对象识别任务的目标训练样本集,所述目标训练样本集,包括所述新对象识别任务中多个类别的对象的图像样本;
基于各所述训练样本集中各所述图像样本的样本特征、以及所述目标训练样本集中各所述图像样本的样本特征,确定目标类别中心参数;
将所述对象识别模型的类别中心参数更新为所述目标类别中心参数,得到目标对象识别模型;
其中,所述目标对象识别模型,用于基于所述目标类别中心参数,识别待识别对象所归属的目标类别,所述目标类别为以下类别中之一:所述新对象识别任务中的多个类别、和所述至少一个对象识别任务中的多个类别。
本申请实施例还提供一种对象识别模型的更新装置,包括:
第一获取模块,配置为获取对象识别模型;其中,所述对象识别模型用于识别至少一个对象识别任务中多个类别的对象,所述对象识别模型基于各所述对象识别任务的训练样本集训练 得到,所述对象识别任务的训练样本集包括所述对象识别任务中各类别的对象的图像样本;
第二获取模块,配置为获取所述对象识别模型的类别中心参数,所述类别中心参数基于各所述训练样本集中各所述图像样本的样本特征确定;
第三获取模块,配置为获取新对象识别任务的目标训练样本集,所述目标训练样本集,包括所述新对象识别任务中多个类别的对象的图像样本;
确定模块,配置为基于各所述训练样本集中各所述图像样本的样本特征、以及所述目标训练样本集中各所述图像样本的样本特征,确定目标类别中心参数;
更新模块,配置为将所述对象识别模型的类别中心参数更新为所述目标类别中心参数,得到目标对象识别模型;
其中,所述目标对象识别模型,用于基于所述目标类别中心参数,识别待识别对象所归属的目标类别,所述目标类别为以下类别中之一:所述新对象识别任务中的多个类别、和所述至少一个对象识别任务中的多个类别。
本申请实施例还提供一种电子设备,包括:
存储器,配置为存储计算机可执行指令;
处理器,配置为执行所述存储器中存储的计算机可执行指令时,实现本申请实施例提供的对象识别模型的更新方法。
本申请实施例还提供一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令被处理器执行时,实现本申请实施例提供的对象识别模型的更新方法。
本申请实施例还提供一种计算机程序产品,包括计算机可执行指令,所述计算机可执行指令被处理器执行时,实现本申请实施例提供的对象识别模型的更新方法。
本申请实施例具有以下有益效果:
本申请实施例提供的训练得到的对象识别模型具有类别中心参数,该类别中心参数是基于各训练样本集中各图像样本的样本特征确定的,无需进行模型训练即可得到。当需要为对象识别模型增加新对象识别任务的识别能力时,则可以基于对象识别任务的各训练样本集中各图像样本的样本特征、以及新对象识别任务的目标训练样本集中各图像样本的样本特征,确定目标类别中心参数,并将对象识别模型的类别中心参数更新为目标类别中心参数即可,无需对对象识别模型进行重新训练。此时所得到的目标对象识别模型既具备至少一个对象识别任务的识别能力,还具备新对象识别任务的识别能力。如此,由于无需对对象识别模型进行重新训练,1)提高了为对象识别模型增加新对象识别任务的识别能力的实现效率;2)在为对象识别模型增加新对象识别任务的识别能力的同时,也不会对对象识别模型的原有对象识别任务的识别效果造成影响,保证了目标对象识别模型对于原有对象识别任务的识别效果,提高了已增加新对象识别任务的目标对象识别模型的识别准确性。
附图说明
图1是本申请实施例提供的对象识别模型的更新系统100的架构示意图;
图2是本申请实施例提供的对象识别模型的更新方法的流程示意图;
图3是本申请实施例提供的对象识别模型的更新方法的流程示意图;
图4是本申请实施例提供的对象识别模型的结构示意图;
图5是本申请实施例提供的对象识别模型的更新方法的流程示意图;
图6是本申请实施例提供的对象识别模型的更新示意图;
图7是本申请实施例提供的对象识别模型的更新方法的流程示意图;
图8是本申请实施例提供的对象识别模型的更新方法的流程示意图;
图9A是本申请实施例提供的对象识别模型的应用示意图;
图9B是本申请实施例提供的对象识别模型的应用示意图;
图10是本申请实施例提供的对象识别模型的更新装置的结构示意图;
图11是本申请实施例提供的实施对象识别模型的更新方法的电子设备500的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
1)客户端,终端中运行的用于提供各种服务的应用程序,例如支持对象识别处理的客户端。
2)响应于,用于表示所执行的操作所依赖的条件或状态,当满足所依赖的条件或状态时,所执行的一个或多个操作可以是实时的,也可以具有设定的延迟;在没有特别说明的情况下,所执行的多个操作不存在执行先后顺序的限制。
本申请实施例提供一种对象识别模型的更新方法、装置、电子设备、计算机可读存储介质及计算机程序产品,能够提高为对象识别模型增加新对象识别任务的识别能力的实现效率,保证对象识别模型的识别效果。接下来分别进行说明。
需要说明的是,当本申请实施例运用到具体产品或技术中时,需要获得用户许可或同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
下面说明本申请实施例提供的对象识别模型的更新系统。参见图1,图1是本申请实施例提供的对象识别模型的更新系统100的架构示意图,为实现支撑一个示例性应用,终端(示例性示出了终端400-1)通过网络300连接服务器200,网络300可以是广域网或者局域网,又或者是二者的组合,使用无线或有线链路实现数据传输。
终端(例如400-1),配置为响应于针对对象识别模型的模型更新指令,发送针对对象识别模型的模型更新请求至服务器200;服务器200,配置为接收终端发送的模型更新请求;响应于模型更新请求,获取对象识别模型,其中,该对象识别模型,用于识别至少一个对象识别任务中多个类别的对象;对象识别模型基于各对象识别任务的训练样本集训练得到,对象识别任务的训练样本集包括对象识别任务中各类别的对象的图像样本;获取对象识别模型的类别中心参数,类别中心参数基于各训练样本集中各图像样本的样本特征确定;获取新对象识别任务的目标训练样本集,目标训练样本集,包括新对象识别任务中多个类别的对象的图像样本;基于各训练样本集中各图像样本的样本特征、以及目标训练样本集中各图像样本的样本特征,确定目标类别中心参数;将对象识别模型的类别中心参数更新为目标类别中心参数,得到目标对象识别模型;如此,得到支持至少一个对象识别任务和新对象识别任务的目标对象识别模型。
在一些实施例中,服务器200得到目标对象识别模型之后,可以主动将目标对象识别模型发送至终端,以供终端在进行对象识别处理时使用;当然,终端也可以在进行对象识别处理时,主动从服务器200获取目标对象识别模型,此时服务器200在终端主动获取时将目标对象识别模型发送至终端。
作为示例,终端(例如400-1)可以设置有支持对象识别处理的客户端。当进行对象识别处理时,用户可以通过该客户端在终端(例如400-1)触发动作识别指令;终端响应于动作识别指令,从服务器200获取目标对象识别模型;同时,获取待识别对象的对象图像;通过目标对象识别模型,基于目标类别中心参数,对对象图像进行对象识别,得到待识别对象所归属的目标类别,该目标类别为以下类别中之一:新对象识别任务中的多个类别、和至少一个对象识别任务中的多个类别。
在一些实施例中,本申请实施例提供的对象识别模型的更新方法可以由各种电子设备实施,例如,可以由终端单独实施,也可以由服务器单独实施,也可以由终端和服务器协同实施。本申请实施例提供的对象识别模型的更新方法可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶、游戏、音视频、图像等。
在一些实施例中,本申请实施例提供的实施对象识别模型的更新方法的电子设备可以是各种类型的终端或服务器。其中,服务器(例如服务器200)可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统。终端(例如终端400-1)可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能语音交互设备(例如智能音箱)、智能家电(例如智能电视)、智能手表、车载终端、可穿戴设备、虚拟现实(Virtual Reality,VR)设备等,但并不局限于此。终端和服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例对此不做限制。
在一些实施例中,本申请实施例提供的对象识别模型的更新方法可以借助于云技术(Cloud Technology)实现。云技术是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术是基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、以及应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算资源和存储资源。作为示例,服务器(例如服务器200)还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
在一些实施例中,多个服务器可组成为一区块链,而服务器为区块链上的节点,区块链中的每个节点之间可以存在信息连接,节点之间可以通过信息连接进行信息传输。其中,本申请实施例提供的对象识别模型的更新方法所相关的数据(例如对象识别模型、目标对象识别模型、训练样本集、目标训练样本集等)可保存于区块链上。
在一些实施例中,终端或服务器可以通过运行计算机程序来实现本申请实施例提供的对象识别模型的更新方法,举例来说,计算机程序可以是操作系统中的原生程序或软件模块;可以是本地(Native)应用程序(Application,APP),即需要在操作系统中安装才能运行的程序;也可以是小程序,即只需要下载到浏览器环境中就可以运行的程序;还可以是能够嵌入至任意APP中的小程序。总而言之,上述计算机程序可以是任意形式的应用程序、模块或插件。
下面说明本申请实施例提供的对象识别模型的更新方法。在一些实施例中,本申请实施例提供的对象识别模型的更新方法可以由各种电子设备实施,例如,可由终端单独实施,也可由服务器单独实施,也可由终端和服务器协同实施。以服务器实施为例,参见图2,图2是本申请实施例提供的对象识别模型的更新方法的流程示意图,本申请实施例提供的对象识别模型的更新方法包括:
步骤101:服务器获取对象识别模型。
其中,对象识别模型用于识别至少一个对象识别任务中多个类别的对象;对象识别模型基于各对象识别任务的训练样本集训练得到;对象识别任务的训练样本集包括对象识别任务中各类别的对象的图像样本。
在实际应用中,用户可以通过终端所设置的客户端(例如支持对象识别处理的客户端)触发针对对象识别模型的模型更新指令,从而终端响应于该模型更新指令,发送针对对象识别模型的模型更新请求至服务器。当服务器接收到终端发送的模型更新请求时,响应于模型更新请求,获取预先训练完成的对象识别模型。该对象识别模型可以用于识别至少一个对象识别任务中多个类别的对象。该对象识别模型是基于各对象识别任务的训练样本集(包括对象识别任务中各类别的对象的图像样本)训练得到的。该对象识别任务可以是针对目标业务的图像中对象所属类别的识别任务,示例的,该目标业务可以是游戏业务,该不同的对象识别任务可以是不同游戏(比如游戏1、游戏2)的对象识别任务;该目标业务可以是视频业务,该不同的对象识别任务则可以是不同视频(比如电影1、电影2)的对象识别任务,等等。
在一些实施例中,参见图3,图3是本申请实施例提供的对象识别模型的更新方法的流程 示意图。图3示出了图2中的步骤101可通过步骤1011-步骤1014实现:步骤1011,获取初始对象识别模型,并获取各对象识别任务的训练样本集,该训练样本集中各图像样本标注有标签;步骤1012,获取各训练样本集中各图像样本的样本特征,并基于各训练样本集中各图像样本的样本特征,确定对象识别模型的类别中心参数;步骤1013,通过初始对象识别模型,基于类别中心参数,分别对各训练样本集中各图像样本进行对象识别,得到各图像样本的识别结果;步骤1014,基于各图像样本的识别结果和标签间的差异,更新初始对象识别模型的模型参数,得到对象识别模型,该模型参数不同于类别中心参数。
在步骤1011中,该图像样本为对象识别任务中各类别的对象的对象图像。每个训练样本集中图像样本的样本量可以是相同的,样本量的均衡可以保证每个对象识别任务获得同等的学习机会,从而得到针对各对象识别任务的识别精度均衡的对象识别模型。在步骤1012中,首先对各训练样本集中各图像样本进行提取,得到各图像样本的样本特征,例如,可以对各图像样本进行嵌入特征(即Embedding)的提取,得到样本特征。然后对各训练样本集中各图像样本的样本特征进行目标数量的聚类中心的聚类处理,得到目标数量的特征聚类簇,并将各特征聚类簇的聚类中心所对应的样本特征进行组合,得到对象识别模型的类别中心参数。在步骤1013中,可以将步骤1012中计算得到的类别中心参数作为初始对象识别模型的类别中心参数,然后基于该类别中心参数,调用初始对象识别模型分别对各训练样本集中各图像样本进行对象识别,得到各图像样本的识别结果。在步骤1014中,针对各图像样本,基于该图像样本的识别结果和标签间的差异,确定初始对象识别模型的损失函数的值;当该损失函数的值超出预设阈值时,则基于损失函数确定初始对象识别模型的误差信号;从而可以将误差信号在初始对象识别模型中进行反向传播,并在传播的过程中更新初始对象识别模型中各个层的模型参数,以对初始对象识别模型进行训练,得到该对象识别模型。需要说明的是,步骤1014中所更新的模型参数不包括类别中心参数。
应用上述实施例,通过训练样本集对初始对象识别模型进行训练,得到的对象识别模型,且该对象识别模型具有基于图像样本的样本特征确定的类别中心参数,该类别中心参数是无需模型训练即可得到的。如此,当需要为对象识别模型增加新对象识别任务的识别能力时,则可以通过更新类别中心参数来实现,无需对对象识别模型进行重新训练,从而1)提高为对象识别模型增加新对象识别任务的识别能力的实现效率;2)在为对象识别模型增加新对象识别任务的识别能力的同时,也不会对对象识别模型的原有对象识别任务的识别效果造成影响。
在一些实施例中,服务器可通过如下方式获取各对象识别任务的训练样本集:针对各对象识别任务,分别执行如下处理:获取对象识别任务的对象视频,对象视频中包括多帧视频图像;确定多帧视频图像中的多帧目标视频图像,该目标视频图像包括对象识别任务中多个类别的对象;针对对象识别任务中各类别的对象,从多帧目标视频图像中,选取目标数量的包括对象的第一视频图像,并将第一视频图像作为相应类别的对象的图像样本;基于对象识别任务中各类别的对象的图像样本,构建得到对象识别任务的训练样本集。
需要说明的是,可以获取对象识别任务的对象视频,该对象视频中包括多帧视频图像,从而可以通过对各帧视频图像进行对象检测,以确定多帧视频图像中的多帧目标视频图像,该目标视频图像包括对象识别任务中多个类别的对象。该对象检测的过程可以通过对象检测模型实现,例如,该对象检测模型可以是基于上下文公共对象(Common Objects in Context,COCO)数据集训练的目标检测器(You Only Look Once,YOLO),也可以采用基于业务数据(如游戏视频中各帧视频图像)预先训练好的对象检测器。从而针对对象识别任务中各类别的对象,从多帧目标视频图像中,选取目标数量的包括该对象的第一视频图像,并将第一视频图像作为相应类别的该对象的图像样本。如此,将对象识别任务中各类别的对象的图像样本进行组合,构建得到该对象识别任务的训练样本集。
在一些实施例中,初始对象识别模型包括特征提取层,服务器可通过如下方式获取各训练样本集中各图像样本的样本特征:通过特征提取层,分别对各训练样本集中各图像样本进行特征提取,得到各图像样本的样本特征。相应的,当服务器更新初始对象识别模型的模型参数之后,还可通过如下方式,更新对象识别模型的类别中心参数:通过模型参数更新后的特征提取层,分别对各训练样本集中各图像样本进行特征提取,得到各图像样本的新样本特征;基于各训练样本集中各图像样本的新样本特征,确定对象识别模型的新类别中心参数;将对象识别模 型的类别中心参数更新为新类别中心参数。
需要说明的是,对象识别模型的类别中心参数可以是基于初始对象识别模型的特征提取层所提取的样本特征生成的。当在初始对象识别模型的训练过程中,初始对象识别模型的特征提取层的模型参数会发生更新,因此,对象识别模型的类别中心参数也需要更新。即通过模型参数更新后的特征提取层,分别对各训练样本集中各图像样本进行特征提取,得到各图像样本的新样本特征,然后基于各训练样本集中各图像样本的新样本特征,确定对象识别模型的新类别中心参数,从而将对象识别模型的类别中心参数更新为新类别中心参数。如此,步骤102中获取的类别中心参数即为该新类别中心参数。应用上述实施例,能够在初始对象识别模型训练完成后,基于模型参数更新后的特征提取层来确定新类别中心参数,从而提高基于对象识别模型进行对象识别的准确性。
在一些实施例中,训练样本集中各类别的对象的图像样本的数量为多个,基于各训练样本集中各图像样本的样本特征,服务器可通过如下方式确定对象识别模型的类别中心参数:从各训练样本集中各图像样本的样本特征中,确定各类别的对象对应的多个样本特征;针对各类别的对象对应的多个样本特征,基于目标数量的聚类中心,对多个样本特征进行聚类,得到目标数量的样本特征簇;基于各样本特征簇的聚类中心所对应的目标样本特征,生成对象识别模型的类别中心参数。
这里,训练样本集中包括对象识别任务中各类别的对象的图像样本,因此,可以通过对各类别的对象的图像样本进行特征提取,得到各类别的对象的图像样本的样本特征,该各类别的对象的图像样本的样本特征,即为各类别的对象对应的多个样本特征。然后针对各类别的对象对应的多个样本特征,进行目标数量的聚类中心的聚类处理,得到目标数量的样本特征簇。例如,可以通过k-maens算法实现聚类处理,该目标数量即为k-maens算法中k值,可以是预先设置的,也可以是基于轮廓系数法或者手肘法来确定的。最后将各样本特征簇的聚类中心所对应的目标样本特征进行组合,得到对象识别模型的类别中心参数。例如,将目标数量的目标样本特征进行组合时,可以是将目标数量的目标样本特征进行拼接,以得到类别中心参数。如此,通过对训练样本集中样本的样本特征进行聚类处理,生成了类别中心参数,能够保证类别中心参数的准确性,使类别中心参数更能代表对象识别任务中多个类别,从而提高模型的对象识别精度。
在一些实施例中,类别中心参数包括多个子类别中心参数,子类别中心参数与至少一个对象识别任务中各类别的类别中心一一对应,即一个子类别中心参数对应一个类别中心;需要说明的是,每个类别包括至少一个类别中心,该类别中心用于表征该类别的对象的表现形式,不同的类别中心对应不同的表现形式。比如,在游戏对象识别任务中,类别中心可以为所归属类别的游戏对象的至少一种游戏对象原型,该游戏对象原型为游戏对象的不同表现形式,比如游戏对象在发动1游戏技能、2游戏技能、3游戏技能、站立、行走时的对象标准样式,可以视作该游戏对象的5个游戏对象原型。基于此,服务器可通过如下方式基于类别中心参数,分别对各训练样本集中各图像样本进行对象识别,得到各图像样本的识别结果:分别对各训练样本集中各图像样本进行特征提取,得到各图像样本的样本特征;基于各子类别中心参数,分别对各训练样本集中各图像样本的样本特征进行第一对象识别,得到各图像样本中对象归属于各类别中心的可能程度;针对各图像样本,基于图像样本中对象归属于各类别中心的可能程度,确定图像样本中对象所归属的类别,并将图像样本中对象所归属的类别作为识别结果。
在一些实施例中,服务器可通过如下方式分别对各训练样本集中各图像样本进行特征提取,得到各图像样本的样本特征:分别对各训练样本集中各图像样本进行卷积处理,得到各图像样本的卷积特征;分别对各图像样本的卷积特征进行池化处理,得到各图像样本的池化特征;对各图像样本的池化特征进行嵌入特征提取处理,得到各图像样本的嵌入特征;对各图像样本的嵌入特征进行特征映射处理,得到各图像样本的映射特征;对各图像样本的池化特征进行归一化处理,得到各图像样本的样本特征。这里,卷积处理可以基于预设的卷积处理参数(例如卷积核尺寸、卷积核数量、步长等)实现;池化处理也可以基于预设的池化处理参数(例如池化窗口大小、步长等)实现;嵌入特征提取处理可以通过预训练的嵌入特征提取网络(即Embedding网络)实现。
需要说明的是,由上述实施例可知,每个子类别中心参数实际是样本特征簇的聚类中心所 对应的目标样本特征。因此,在进行第一对象识别时,可以针对各子类别中心参数分别执行如下处理:确定该子类别中心参数所对应的目标样本特征与各个图像样本的样本特征之间的相似度(例如余弦相似度)或距离(例如欧式距离),并将该相似度或距离,作为各图像样本中对象归属于该子类别中心参数所对应类别中心的可能程度。然后再针对各图像样本分别执行如下处理:基于该图像样本中对象归属于各类别中心的可能程度,确定图像样本中对象所归属的类别。例如,可以将对应最大可能程度(也即最大相似度或最大距离)的类别中心所在的类别,确定为该图像样本中对象所归属的类别。如此,通过类别中心参数实现了图像样本中对象所属类别的识别。
作为示例,参见图4,图4是本申请实施例提供的对象识别模型的结构示意图。初始对象识别模型包括特征提取层、第一对象识别层和第二对象识别层;相应的,通过初始对象识别模型,服务器可通过如下方式基于类别中心参数,分别对各训练样本集中各图像样本进行对象识别,得到各图像样本的识别结果:通过特征提取层,分别对各训练样本集中各图像样本进行特征提取,得到各图像样本的样本特征;通过第一对象识别层,基于各子类别中心参数,分别对各训练样本集中各图像样本的样本特征进行第一对象识别,得到各图像样本中对象归属于各类别中心的可能程度;针对各图像样本,通过第二对象识别层,基于图像样本中对象归属于各类别中心的可能程度,确定图像样本中对象所归属的类别,该图像样本中对象所归属的类别为识别结果。
其中,继续参见图4,特征提取层包括:卷积特征提取层、池化处理层、嵌入特征提取层、特征映射层和归一化处理层。基于此,可以通过卷积特征提取层,分别对各训练样本集中各图像样本进行卷积处理,得到各图像样本的卷积特征;通过池化处理层,分别对各图像样本的卷积特征进行池化处理,得到各图像样本的池化特征;通过嵌入特征提取层,对各图像样本的池化特征进行嵌入特征提取处理,得到各图像样本的嵌入特征;通过特征映射层,对各图像样本的嵌入特征进行特征映射处理,得到各图像样本的映射特征;通过归一化处理层,对各图像样本的池化特征进行归一化处理,得到各图像样本的样本特征。
在一些实施例中,该对象识别任务的数量为M个,这里可以依次基于各对象识别任务的训练样本集,分别对初始对象识别模型进行训练,得到对象识别模型。即:获取初始对象识别模型,并获取各对象识别任务的训练样本集;基于第1个对象识别任务的训练样本集,对初始对象识别模型进行训练,得到第1个对象识别任务的中间对象识别模型;通过第i个对象识别任务的训练样本集,对第(i-1)个对象识别任务的中间对象识别模型进行训练,得到第i个对象识别任务的中间对象识别模型;对i进行遍历,得到第M个对象识别任务的中间对象识别模型,并将第M个对象识别任务的中间对象识别模型,作为对象识别模型;其中,M和i为大于1的整数,i小于或等于M。
步骤102:获取对象识别模型的类别中心参数。
其中,类别中心参数基于各训练样本集中各图像样本的样本特征确定。
在实际应用中,该类别中心参数可以是基于对象识别模型的特征提取层针对各训练样本集中各图像样本所提取的样本特征生成的。具体地,从各训练样本集中各图像样本的样本特征中,确定各类别的对象对应的多个样本特征;针对各类别的对象对应的多个样本特征,基于目标数量的聚类中心,对多个样本特征进行聚类,得到目标数量的样本特征簇;基于各样本特征簇的聚类中心所对应的目标样本特征,生成对象识别模型的类别中心参数。需要说明的是,训练样本集中包括对象识别任务中各类别的对象的图像样本,因此,可以通过对各类别的对象的图像样本进行特征提取,得到各类别的对象的图像样本的样本特征,该各类别的对象的图像样本的样本特征,即为各类别的对象对应的多个样本特征。然后针对各类别的对象对应的多个样本特征,进行目标数量的聚类中心的聚类处理,得到目标数量的样本特征簇。例如,可以通过k-means算法实现聚类处理,该目标数量即为k-means算法中k值,可以是预先设置的,也可以是基于轮廓系数法或者手肘法来确定的。最后将各样本特征簇的聚类中心所对应的目标样本特征进行组合,得到对象识别模型的类别中心参数。例如,将目标数量的目标样本特征进行组合时,可以是将目标数量的目标样本特征进行拼接,以得到类别中心参数。
在一些实施例中,该对象识别模型的类别中心参数包括多个子类别中心参数,每个子类别中心参数与上述至少一个对象识别任务中各类别的类别中心一一对应。即,该类别中心参数用 于指示:上述至少一个对象识别任务中各类别的类别中心。当基于该类别中心参数,通过对象识别模型对待识别对象进行识别时,可以得到待识别对象归属于至少一个对象识别任务中各类别的可能程度。
在另一些实施例中,该对象识别模型的类别中心参数可以由各个对象识别任务的任务类别中心参数构成。以至少一个对象识别任务中目标识别任务为例,该目标识别任务的任务类别中心参数包括多个子任务类别中心参数,该多个子任务类别中心参数包括第一子任务类别中心参数以及第二子任务类别中心参数,该第一子任务类别中心参数与目标识别任务中各类别的类别中心一一对应,该第二子任务类别中心参数对应至少一个对象识别任务除目标识别任务之外的其他识别任务。即,该目标识别任务的任务类别中心参数用于指示:目标识别任务中各类别的类别中心、以及其他识别任务的其他类别中心(这里是将其他识别任务中各类别的类别中心统称为其他类别中心,不作区分)。如此,当基于对象识别模型对待识别对象进行识别时,可以分别采用对象识别任务的任务类别中心参数进行识别。而如果在对待识别对象进行识别时,预先设置了采用哪个对象识别任务(比如目标识别任务)进行识别,则可以直接采用该设置的对象识别任务的任务类别中心参数进行识别。需要说明的是,以目标识别任务的任务类别中心参数为例,当基于该任务类别中心参数,通过对象识别模型对待识别对象进行识别时,可以得到待识别对象归属于目标识别任务中各类别的可能程度、以及归属于其他识别任务中其他类别的可能程度。
步骤103:获取新对象识别任务的目标训练样本集;
其中,该目标训练样本集,包括新对象识别任务中多个类别的对象的图像样本。在实际应用中,当构建目标训练样本集时,该目标训练样本集中每个类别的对象的图像样本的样本量,和训练样本集中个类别的对象的图像样本的样本量可以是相同的,也可以是不同的。该新对象识别任务不同上述至少一个对象识别任务中任一对象识别任务。
在实际应用中,可以获取新对象识别任务的新对象视频,该新对象视频中包括多帧视频图像,从而可以通过对各帧视频图像进行对象检测,以确定多帧视频图像中的多帧目标视频图像,该目标视频图像包括新对象识别任务中多个类别的对象。该对象检测的过程可以通过对象检测模型实现,例如,该对象检测模型可以是基于coco数据集训练的yolov3检测器,也可以采用基于业务数据(如游戏视频中各帧视频图像)预先训练好的对象检测器。从而针对新对象识别任务中各类别的对象,从多帧目标视频图像中,选取目标数量的包括该对象的第二视频图像,并将第二视频图像作为相应类别的该对象的图像样本。如此,将新对象识别任务中各类别的对象的图像样本进行组合,构建得到该新对象识别任务的目标训练样本集。
步骤104:基于各训练样本集中各图像样本的样本特征、以及目标训练样本集中各图像样本的样本特征,确定目标类别中心参数。
在实际应用中,当获取到新对象识别任务的目标训练样本集之后,则可以确定该新对象识别任务的目标类别中心参数。该目标类别中心参数,可以是基于新对象识别任务的目标训练样本集中各图像样本的样本特征、以及各训练样本集中各图像样本的样本特征生成的。在一些实施例中,训练样本集中各类别的对象的图像样本的数量为多个,目标训练样本集中各类别的对象的图像样本的数量为多个。参见图5,图5是本申请实施例提供的对象识别模型的更新方法的流程示意图,图5示出了图2中的步骤104可通过步骤1041-步骤1043实现:步骤1041,从各训练样本集中各图像样本的样本特征,确定训练样本集中各类别的对象对应的多个样本特征,并从目标训练样本集中各图像样本的样本特征中,确定目标训练样本集中各类别的对象对应的多个样本特征;步骤1042,针对各类别的对象对应的多个样本特征,基于目标数量的聚类中心,对多个样本特征进行聚类,得到目标数量的样本特征簇;步骤1043,基于各样本特征簇的聚类中心所对应的目标样本特征,生成目标类别中心参数。
在步骤1041中,该各图像样本的样本特征,可以是通过对象识别模型的特征提取层对图像样本进行特征提取得到的。在步骤1042中,当基于目标数量的聚类中心,对多个样本特征进行聚类时,可以采用聚类算法实现,例如,可以通过k-maens算法实现聚类处理,该目标数量即为k-maens算法中k值,可以是预先设置的,也可以是基于轮廓系数法或者手肘法来确定的。在步骤1043中,可以将各样本特征簇的聚类中心所对应的目标样本特征进行组合,得到目标类别中心参数。该组合的过程可以是将各个目标样本特征进行拼接,从而得到目标类别中心参数。 这里,目标类别中心参数包括多个目标子类别中心参数,目标子类别中心参数与目标对象识别任务中各类别的类别中心一一对应,目标对象识别任务包括至少一个对象识别任务和新对象识别任务,因此,每个目标子类别中心参数实际是聚类处理所得到的样本特征簇的聚类中心所对应的目标样本特征。如此,通过对训练样本集以及目标训练样本集中样本的样本特征进行聚类处理,生成了目标类别中心参数,能够保证目标类别中心参数的准确性,使目标类别中心参数更能代表目标对象识别任务中多个类别,从而提高模型的对象识别精度。
在一些实施例中,基于各训练样本集中各图像样本的样本特征、以及目标训练样本集中各图像样本的样本特征,服务器可通过如下方式确定目标类别中心参数:针对各训练样本集分别执行如下处理:针对训练样本集中各图像样本的样本特征,确定图像样本的样本特征、与目标训练样本集中各图像样本的样本特征之间的特征相似度;从训练样本集中,筛除特征相似度满足相似度条件的图像样本的样本特征,得到第一训练样本集;基于各第一训练样本集中各图像样本的样本特征、以及目标训练样本集中各图像样本的样本特征,确定目标类别中心参数。
在实际应用中,训练样本集中可能存在和新对象识别任务的目标训练样本集中图像样本比较相似的图像样本,为了减少相似图像样本对于新对象识别任务的识别精度的影响,可执行如下处理:可以针对训练样本集中各图像样本的样本特征,确定图像样本的样本特征、与目标训练样本集中各图像样本的样本特征之间的特征相似度,从而从训练样本集中,筛除特征相似度满足相似度条件(比如特征相似度达到相似度阈值(可以是预设的)的图像样本、特征相似度降序排序靠前的目标数量(可以是预设的)的图像样本)的图像样本的样本特征,得到第一训练样本集。然后基于各第一训练样本集中各图像样本的样本特征、以及目标训练样本集中各图像样本的样本特征,确定目标类别中心参数。具体地,首先,从各第一训练样本集中各图像样本的样本特征,确定第一训练样本集中各类别的对象对应的多个样本特征,并从目标训练样本集中各图像样本的样本特征中,确定目标训练样本集中各类别的对象对应的多个样本特征;然后针对各类别的对象对应的多个样本特征,基于目标数量的聚类中心,对多个样本特征进行聚类,得到目标数量的样本特征簇;最后基于各样本特征簇的聚类中心所对应的目标样本特征,生成目标类别中心参数。如此,能够筛除训练样本集和目标训练样本集中相似度满足相似度条件的图像样本,减少相似图像样本对于新对象识别任务的识别精度的影响,提高基于目标类别中心参数进行新对象识别任务的识别精度。
步骤105:将对象识别模型的类别中心参数更新为目标类别中心参数,得到目标对象识别模型。
其中,该目标对象识别模型,用于基于目标类别中心参数,识别待识别对象所归属的目标类别,目标类别为以下类别中之一:新对象识别任务中的多个类别、和至少一个对象识别任务中的多个类别。
在一些实施例中,当类别中心参数用于指示:上述至少一个对象识别任务中各类别的类别中心时,该目标类别中心参数也可以用于指示:上述至少一个对象识别任务各类别和新对象识别任务中各类别的类别中心。当基于该目标类别中心参数,通过目标对象识别模型对待识别对象进行识别时,可以得到待识别对象归属于至少一个对象识别任务中各类别和新对象识别任务中各类别的可能程度。此时,将对象识别模型的类别中心参数更新为目标类别中心参数,即可得到既具备至少一个对象识别任务的识别能力,还具备新对象识别任务的识别能力的目标对象识别模型。
在另一些实施例中,当类别中心参数由各个对象识别任务的任务类别中心参数构成,其中目标识别任务的任务类别中心参数用于指示:目标识别任务中各类别的类别中心、以及其他识别任务的其他类别中心时,该目标类别中心参数也可以用于指示:新识别任务中各类别的类别中心、以及其他识别任务的其他类别中心,即该目标类别中心参数可以理解为新对象识别任务的任务类别中心参数。当基于该目标类别中心参数,通过目标对象识别模型对待识别对象进行识别时,可以得到待识别对象归属于新对象识别任务中各类别的可能程度、以及归属于其他对象识别任务的可能程度。此时,将对象识别模型的类别中心参数更新为目标类别中心参数,即得到具备新对象识别任务的识别能力的目标对象识别模型。在实际应用中,还可以将目标类别中心参数以任务类别中心参数的身份加入类别中心参数,以对对象识别模型的类别中心参数进行更新,从而在对待识别对象进行新对象识别任务的识别时,可以从更新后的类别中心参数调 用目标类别中心参数进行识别。
在一些实施例中,如果需要再次增加新的对象识别任务(如目标新对象识别任务),也可以通过执行上述步骤104,基于上述各训练样本集以及目标新对象识别任务的训练样本集,得到目标新对象识别任务对应的目标类别中心参数。如此,针对每个新对象识别任务,均可以基于上述步骤104,得到该新对象识别任务的目标类别中心参数;而针对每个新对象识别任务的目标类别中心参数,将对象识别模型的类别中心参数更新为该新对象识别任务的目标类别中心参数后,则得到支持该新对象识别任务以及上述至少一个对象识别任务的目标对象识别模型。
需要说明的是,当进行对象识别时,需要执行哪个新对象识别任务,则可以通过将对象识别模型的类别中心参数,更新为相应新对象识别任务的目标类别中心参数,得到目标对象识别模型,以实现该新对象识别任务的对象识别。如此,无需对对象识别模型进行重新训练,提高了为对象识别模型增加新对象识别任务的识别能力的实现效率;在为对象识别模型增加新对象识别任务的识别能力的同时,也不会对对象识别模型的原有对象识别任务的识别效果造成影响,保证了目标对象识别模型对于原有对象识别任务的识别效果,提高了已增加新对象识别任务的目标对象识别模型的识别准确性。
例如,参见图6,图6是本申请实施例提供的对象识别模型的更新示意图。这里,对象识别模型包括卷积特征提取层(可以基于卷积神经网络构建的)、池化特征提取层、嵌入特征(Embedding)提取层、第一对象识别层(cosine-match)和第二对象识别层(Softmax层)。在实际应用中,Softmax层可以不设置需要学习的模型参数,cosine-match层可以设置一个对象识别模型的类别中心参数w。如图6所示,新增对象识别任务包括游戏识别任务1和游戏识别任务2。其中,游戏识别任务1的类别中心参数W1用于表征:游戏识别任务1中各类别(游戏对象)所对应的多个类别中心[u1….uN]、以及其他游戏识别任务(不同于游戏识别任务1)的其他类别(游戏对象)的类别中心uO;游戏识别任务2的类别中心参数W2用于表征:游戏识别任务2中各类别(游戏对象)所对应的多个类别中心[u1….uM]、以及其他游戏识别任务(不同于游戏识别任务2)的其他类别(游戏对象)的类别中心uO。
在一些实施例中,目标类别中心参数包括多个目标子类别中心参数,目标子类别中心参数与目标对象识别任务中各类别的类别中心一一对应,目标对象识别任务包括至少一个对象识别任务和新对象识别任务。参见图7,图7是本申请实施例提供的对象识别模型的更新方法的流程示意图,包括:步骤201,通过目标对象识别模型,基于各目标子类别中心参数,对待识别对象的对象图像进行第一对象识别,得到待识别对象归属于各类别中心的初始可能程度;步骤202,基于各类别中心所对应的初始可能程度,确定待识别对象归属于各类别的可能程度;步骤203,基于待识别对象归属于各类别的可能程度,确定待识别对象所归属的对象类别。
这里,由上述实施例可知,每个目标子类别中心参数实际是聚类处理所得到的样本特征簇的聚类中心所对应的目标样本特征。因此,在步骤201中,首先可以通过目标对象识别模型,首先对待识别对象的对象图像进行特征提取,得到对象图像特征,然后针对各目标子类别中心参数分别执行如下处理:确定该目标子类别中心参数所对应的目标样本特征与待识别对象的对象图像特征之间的相似度(例如余弦相似度)或距离(例如欧式距离),将该相似度或距离,作为待识别对象归属于该目标子类别中心参数所对应类别中心的初始可能程度。在步骤202中,可以针对各类别,分别执行如下处理:从类别的各类别中心所对应的初始可能程度中,确定最大初始可能程度(也即最大相似度或最大距离),并将最大初始可能程度,确定为待识别对象归属于类别的可能程度。在步骤203中,在一些实施例中,可以将对应最大可能程度的类别中心所在的类别,作为待识别对象所归属的对象类别。
在另一些实施例中,参见图8,图8是本申请实施例提供的对象识别模型的更新方法的流程示意图,图8示出了图7中的步骤203还可通过步骤2031-步骤2034实现:步骤2031,从待识别对象归属于各类别的可能程度中,确定最大可能程度、以及最大可能程度对应的类别所在的第一识别任务,该第一识别任务归属于目标对象识别任务;步骤2032,从待识别对象归属于各类别的可能程度中,确定待识别对象归属于第二识别任务中各类别的第一可能程度,并从多个第一可能程度中确定最大第一可能程度;其中,第二识别任务为,目标对象识别任务中除第一识别任务之外的识别任务;步骤2033,基于最大可能程度和最大第一可能程度,确定第一识别任务的任务熵;步骤2034,当任务熵小于任务熵阈值时,确定待识别对象归属于第一识别任 务中、对应最大可能程度的对象类别。
这里,在步骤2031中,是确定对应最大可能程度的类别所在的第一识别任务。在步骤2032中,是确定待识别对象归属于第二识别任务(目标对象识别任务中不同于第一识别任务的识别任务)中各类别的第一可能程度、以及最大第一可能程度。在步骤2033中,是基于最大可能程度和最大第一可能程度,确定第一识别任务的任务熵。这里,任务熵可通过如下公式得到:任务熵=-a*ln(a)-b*ln(b),其中,a为最大第一可能程度,b为最大可能程度。在实际应用中,当该任务熵越小,表征待识别对象归属于第一识别任务中的对象类别中的可能性越大。因此,可以预先确定一个任务熵阈值,当待识别对象对应的任务熵小于任务熵阈值时,则确定待识别对象归属于第一识别任务中的对象类别,即待识别对象归属于第一识别任务中、对应最大可能程度的对象类别。如此,通过确定任务熵与任务熵阈值之间的大小关系,能够有效区分待识别对象所属的目标类别和其他类别,提高了对象识别的准确性。
在一些实施例中,当任务熵不小于任务熵阈值时,服务器可通过如下方式确定待识别对象所归属的对象类别:当第二识别任务的数量为一个时,确定待识别对象归属于第二识别任务中的第一类别,该第一类别对应最大第一可能程度。当第二识别任务的数量为多个时,基于待识别对象归属于第二识别任务中各类别的第一可能程度,确定待识别对象所归属的对象类别。
需要说明的是,当第二识别任务的数量为多个时,也可以采用步骤203的实现方式,确定待识别对象是否归属于第二识别任务中某个类别,以及确定待识别对象具体所归属的第二识别任务中的对象类别。具体地,从待识别对象归属于第二识别任务中各类别的可能程度中,确定最大可能程度、以及最大可能程度对应的类别所在的目标第二识别任务;从待识别对象归属于第二识别任务中各类别的可能程度中,确定待识别对象归属于第三识别任务中各类别的第一可能程度,并从第三识别任务中的多个第一可能程度中确定最大第一可能程度;其中,第三识别任务为,多个第二识别任务中除目标第二识别任务之外的识别任务;基于最大可能程度和最大第一可能程度,确定目标第二识别任务的任务熵;当任务熵小于任务熵阈值时,确定待识别对象归属于目标第二识别任务中、对应最大可能程度的对象类别;当任务熵不小于任务熵阈值(表征待识别对象不归属于目标第二识别任务)时,若第三识别任务的数量为一个,则确定待识别对象归属于第三识别任务中的第一类别,该第一类别对应第三识别任务中的最大第一可能程度;若第三识别任务的数量为多个时,则基于待识别对象归属于第三识别任务中各类别的第一可能程度,确定待识别对象所归属的对象类别。其中,第三识别任务的数量为多个时的处理步骤,可以参照第二识别任务的数量为多个时的处理步骤,在此不再赘述;以此类推,可以确定待识别对象所归属的目标识别任务中的对象类别。
应用本申请上述实施例,该训练得到的对象识别模型具有类别中心参数,该类别中心参数是基于各训练样本集中各图像样本的样本特征确定的,无需进行模型训练即可得到。当需要为对象识别模型增加新对象识别任务的识别能力时,则可以基于对象识别任务的各训练样本集中各图像样本的样本特征、以及新对象识别任务的目标训练样本集中各图像样本的样本特征,确定目标类别中心参数,并将对象识别模型的类别中心参数更新为目标类别中心参数即可,无需对对象识别模型进行重新训练。此时所得到的目标对象识别模型既具备至少一个对象识别任务的识别能力,还具备新对象识别任务的识别能力。如此,由于无需对对象识别模型进行重新训练,1)提高了为对象识别模型增加新对象识别任务的识别能力的实现效率;2)在为对象识别模型增加新对象识别任务的识别能力的同时,也不会对对象识别模型的原有对象识别任务的识别效果造成影响,保证了目标对象识别模型对于原有对象识别任务的识别效果,提高了已增加新对象识别任务的目标对象识别模型的识别准确性。
下面将说明本申请实施例在一个实际的应用场景中的示例性应用。在说明本申请实施例之前,首先说明相关技术中的对象识别模型。在相关技术中,针对不同的对象识别任务(比如不同的游戏中各类别的游戏对象的识别),通常采用各对象识别任务的训练样本训练一个对象识别模型来实现,当有新对象识别任务加入时,则采用新对象识别任务的训练样本对对象识别模型进行重新训练,才能使得对象识别模型具备新对象识别任务的识别能力,实现过程效率低;且由于新对象识别任务的重新训练,会导致原有对象识别任务的识别效果受影响。
基于此,本申请实施例提供一种对象识别模型的更新方法,以至少解决上述相关技术中存 在的问题。在一些实施例中,该对象识别模型可以用于至少一个游戏识别任务中各类别的游戏对象的识别。接下来进行详细说明。
(1)对象检测。这里,采用对象检测模型对对象视频(比如包含游戏对象的游戏视频)中各帧视频图像进行对象检测,为后续提取各类别的对象的Embedding(即上述样本特征)提供对象截图(即对象的图像样本)。在实际应用中,对象检测模型可以采用开源的基于coco数据集训练的yolov3检测器,也可以采用基于业务数据(如游戏视频中各帧视频图像)预先训练好的对象检测器。
(2)对象识别模型的搭建。这里,可以采用机器学习中的深度学习方法构建对象识别模型。需要说明的包括:
(2.1)为实现对象识别模型的快速识别,本申请实施例中的对象识别模型基于嵌入特征(Embedding)提取模型,在嵌入特征提取模型之上构建对象识别模型。如此,本申请实施例中的对象识别模型,可以不用对待识别对象的对象图像从底层开始进行特征提取,减少推理计算资源的占用,有利于新对象识别任务的快速增加,故本申请实施例中的嵌入特征提取模型所提取的Embedding具备跨对象识别任务的表征能力。
(2.2)为了在有限样本数据下实现快速为对象识别模型增加新对象识别任务,对象识别模型的对象识别层可以设计尽量少的待学习参数,这是由于待学习参数越多,需要的样本数据越大,而新对象识别任务可利用的样本数据往往是有限的,未必能支持过多待学习参数的学习需求。
(2.3)对象识别模型需要具备区分多个不同对象识别任务下目标识别任务中对象与背景识别任务中对象的能力。例如,对于游戏识别任务1,所有非游戏识别任务1的其他游戏识别任务中的对象都属于背景识别任务中的对象。即,本申请实施例中的对象识别模型具备域外数据识别能力,从而能够支持对象与对象识别任务间关系的判断。
(2.4)针对对象识别模型增加新对象识别任务是一个动态过程。比如,对象识别模型支持1个对象识别任务中n1类对象的识别,接着通过本申请实施例提供的对象识别模型更新方法,可以为对象识别模型增加一个新对象识别任务(用于新对象识别任务中n2类对象的识别),从而使得对象识别模型支持2个对象识别任务的识别,以此类推,可以支持更多对象识别任务的识别。而针对此,相关技术中是先训练1个对象识别任务中n1类对象的对象分类模型,在增加新对象识别任务时,则训练(n1+n2)类对象的对象分类模型,以此类推;但是相关技术中由于模型分类分支参数(由n1类变为(n1+n2)类)被重新改变,导致(n1+n2)类对象的对象分类模型对n1类对象的模型分类效果,对比n1类对象分类模型对n1类对象的模型分类效果发生了较大变化,存在部分类别的对象分类效果变差的情况。故在本申请实施例中,在保持n1类对象的分类不变的情况下,通过新增n2类对象的分类的分支,使得新对象识别任务对现有对象识别任务的影响更可控,且无需重复训练,效率高,更有利于后续针对性优化特定对象识别任务的业务升级及维护。
(3)对象识别模型的模型结构。在实际应用中,对象识别模型是在嵌入特征提取模型之上构建的,嵌入特征提取模型的结构如表1(基础特征提取层)和表2(Embedding特征提取层)所示,对象识别模型的结构如表3所示。其中,表1所示基础特征提取层的输入为待识别对象的对象图像,表1所示基础特征提取层的输出为表2所示Embedding特征提取层的输入,表2所示Embedding特征提取层的输出为表3所示对象识别模型的输入,表3所示对象识别模型的输出为待识别对象的对象类别。这里,嵌入特征提取模型包括上述卷积特征提取层(表1所示的Conv1-Conv5)、池化特征提取层(表2所示的pool层)和嵌入特征提取层(表2所示的Embedding层)。

表1 ResNet-101基础特征提取层的结构表
表2 Embedding特征提取层的结构表
这里,表2所示Embedding特征提取层的输入为上述表1所示基础特征提取层的输出。为了对象识别模型应用时的兼容考虑,可以预先训练完成嵌入特征提取模型,然后在嵌入特征提取模型的基础之上,构建对象识别模型。如此,在本申请实施例中训练对象识别模型时,可以不改变嵌入特征提取模型的模型参数,即训练对象识别模型时,固定表1和表2所示模型的模型参数不更新。
表3对象识别模型的结构表
这里,表3所示对象识别模型的输入为上述表2所示Embedding特征提取层的输出,即Embedding。在表3所示对象识别模型中,首先通过全连接层(Fully Connected layer,FC,即上述特征映射层)对Embedding特征进行非线性映射,得到映射特征;然后通过归一化处理层(Normalization)对映射特征进行归一化处理(输入向量中每个元素除以该向量的模长),把映射特征归一化到单位超球面;接着通过cosine-match层(即第一对象识别层)进行第一对象识别,得到待识别对象归属于各类别中心的预测概率,Nx为对象识别模型所支持识别的对象的类别所包括的类别中心的中心数量,Nc为对象识别模型所支持识别的对象的类别的类别数量,例如,在对象识别模型支持81个类别的游戏对象的识别时,则Nc=81,Nx由每个类别的游戏对象的类别中心的中心数量决定;最后通过softmax层(第二对象识别层)确定待识别对象归属于各类别的预测概率,并把各类别的预测概率映射到0~1之间。
需要说明的是,每个类别包括至少一个类别中心,比如在游戏识别任务中,类别中心可以为所归属类别的游戏对象的至少一种游戏对象原型,该游戏对象原型为游戏对象的不同表现形式,比如游戏对象在发动1游戏技能、2游戏技能、3游戏技能、站立、行走时的对象标准样式,可以视作该游戏对象的5个游戏对象原型。
表4类别中心参数
在实际应用中,Normalization层、cosine-match层、和softmax层可以不设置需要学习的模型参数。由于Fc层产生对象识别时所需要的Embedding,可以设置需要学习的模型参数,cosine-match层可以设置一个对象识别模型的类别中心参数w,该类别中心参数w是基于训练 样本的样本特征产生的,不需要模型训练得到。在实际实施时,上述样本特征可以是基于Fc层所产生的训练样本的Embedding。因此,在对象识别模型的学习过程中,每次模型迭代结束后,可以更新对象识别模型的类别中心参数w(如表4所示)。在为对象识别模型增加新对象识别任务时,可以通过更新对象识别模型的类别中心参数w实现。
(4)对象识别模型的训练过程。
(4.1)数据准备。这里,收集需要学习的目标数量的对象识别任务中各对象识别任务中各类别的对象的图像样本,以构建各对象识别任务的训练样本集,该目标数量的对象识别任务的训练样本集可以称为基础训练样本集。例如,可以针对各对象识别任务中各类别的对象,收集目标数量的图像样本,比如25张图像样本(其中保证有超过20张图像样本用于训练集,同时5张图像样本用于测试集)。在基于各对象识别任务的训练样本集训练对象识别模型时,可以从目标数量的对象识别任务中随机指定一个对象识别任务为目标识别任务(如游戏识别任务1),此时,该目标识别任务中各类别为目标类别,其他识别任务中各类别则为背景类别。如此,当基于该目标识别任务的训练样本集训练结束后,该对象识别模型可以用于识别待识别对象是目标类别还是背景类别、以及是目标类别中具体哪一类别。继续地,当基于该目标识别任务的训练样本训练结束后,再从目标数量的对象识别任务中随机指定一个对象识别任务(不同于之前指定的对象识别任务)为目标识别任务以进行训练;以此类推,达到基于各对象识别任务的训练样本集训练对象识别模型的目的。
(4.2)对象识别模型的训练。这里,对象识别模型在最终应用时,所支持识别的对象的类别会发生变化(如当前接入游戏识别任务1,两周后要新接入游戏识别任务2,等等),同时各类别的对象的图像样本数量可能不多(如25个以上)。在这种情况下,为了支持快速为对象识别模型增加新对象识别任务,即最终应用时可以在不重新训练对象识别模型情况下应用到新对象识别任务上,在本申请实施例中,设计了如下对象识别模型的训练以及数据采样过程,以支持在不重新训练对象识别模型情况下,直接更新对象识别模型,以支持下游对象识别任务(即新增的对象识别任务)。在训练对象识别模型时,首先是在开始训练前,从目标数量的对象识别任务中随机选择一个对象识别任务作为目标识别任务,在保证与真实数据分布接近的情况下构建该目标识别任务的训练样本集,然后基于该训练样本集训练该目标识别任务,并达到该目标识别任务的训练结束标准(比如训练指定次数N_project次);再随机选择另一个对象识别任务作为目标识别任务,构建训练样本集并训练该目标识别任务;等等;以此类推,直到所有对象识别任务都达到训练结束标准为止。
(4.2.1)训练样本集的构建。从目标数量的对象识别任务中随机选择一个对象识别任务作为目标识别任务,对该目标识别任务中n(比如n=30)类别的对象,分别对每类别的对象i采样k1个图像样本,得到目标识别任务的训练样本集。例如,该k1可以满足如下条件:k1=max(N_i_sample,25),其中N_i_sample为[25,每类别的对象i的图像样本总数]范围中选择的随机值,如此每类别的对象i的图像样本数量不少于25个。然后从n类别的对象的图像样本中选择剩余的k2个(比如5个)图像样本来构建测试集。当采用该训练样本集训练了指定次数(如10次)的迭代(epoch)后,则完成该训练样本集的训练。然后再随机产生另一个目标识别任务,构建训练样本集以及测试集,继续新一轮训练;等等;以此类推,直到收敛(比如loss不再下降、测试结果准确率不再提升等)。需要说明的是,k1的数量限制是为了满足样本量不足的情况下,让各类别的样本量均衡(相同)以保证各类别获得同等被学习的机会,提高模型训练效果;且在有限训练样本下有效提升了对象识别模型的识别能力;如果样本量充足则可以根据需要设置k1的值,并不限于上述k1所满足的条件。
(4.2.2)训练中模型参数的更新过程。在本申请实施例中,采用基于随机梯度下降法(Stochastic Gradient Descent,SGD)更新对象识别模型中的模型参数,包括卷积模板参数α和偏置参数β。在每次迭代过程中,计算预测结果的误差并反向传播到对象识别模型中,计算梯度并更新对象识别模型的模型参数。具体过程为:把对象识别模型的所有待学习参数设为需要学习状态,训练时对象识别模型对输入的图像样本进行前向计算得到预测结果,把预测结果与图像样本的标签进行对比,计算对象识别模型的损失值,把损失值回传到对象识别模型中,并通过随机梯度下降法更新模型参数,从而实现一次模型参数的优化,经过多次优化,最终得到表现良好的对象识别模型。
(4.2.3)类别中心参数。这里,如图6所示,在cosine-match层设置有对象识别模型的类别中心参数w,用于表征各对象识别任务中各类别所对应的多个类别中心[u1….uN]。在本申请实施例中,每个类别包括多个类别中心,比如在游戏识别任务中,类别中心可以为其所归属类别的游戏对象的多种游戏对象原型,该游戏对象原型为游戏对象的不同表现形式,比如游戏对象在发动1游戏技能、2游戏技能、3游戏技能、站立、行走时的对象标准样式,可以视作该游戏对象的5个游戏对象原型。由于游戏对象的其他动作和状态都可以看作这5个游戏对象原型稍加变化产生的,故对象识别模型只需要学习到这5个游戏对象原型的表达(即类别中心参数),即可保证图像样本中某个状态下的游戏对象可以找到对应的游戏对象原型。如此,通过为对象识别模型设置类别中心参数w,对象识别模型只需要学习到该类别中心参数w,即可保证对象识别时待识别对象可以找到所归属的类别中心。在本申请实施例中,类别中心可以设置为多个,将使得不是每个图像样本都往一个类别中心(如一个游戏对象原型)上靠拢,从而避免由于对象表征过于靠近唯一的单中心造成对象表征中的多样性丢失,进一步避免对象表征无法同时支持对象排重、以及其他需要关注不同对象表征的对象识别的问题,即避免了单中心分类对多识别任务中对象识别的过拟合问题。
类别中心参数的产生:对各对象的每个图像样本产生表3所示Fc层输出的样本Embedding;然后对每个对象的所有样本Embedding进行Kn个聚类中心的聚类处理,比如5个聚类中心的聚类处理,得到Kn个类别中心,并记录Kn个类别中心到类别记忆单元,该Kn个类别中心用于构建类别中心参数。例如,当前训练阶段下的对象识别模型支持81个类别(包括目标数量的对象识别任务中目标识别任务的80个目标类别,剩余1个类别为背景类别)的对象的识别。那么针对目标识别任务,对目标识别任务中各目标类别的对象都产生Kn个类别中心,共得到80Kn个类别中心;针对others类别(即背景类别,为目标数量的对象识别任务中除目标识别任务之外的识别任务中的各类别),产生r*Kn个类别中心,其中r=Nothers/Nhero(Nhero为others类别中各类别的对象的图像样本的数量,Nothers为others类别的对象的全量图像样本的数量),比如Nothers=1000,Nhero=25,那么则r=40,对于当前对象识别模型,Kn=5,Nc=81,类别中心的总数量为Nx=(Nc-1)*Kn+r*Kn=600。
类别中心参数的更新:该类别中心参数是基于训练样本的样本特征产生的,不需要模型训练得到。在实际实施时,该样本特征可以是基于对象识别模型的Fc层所产生的训练样本的Embedding。因此,在对每个对象识别任务的学习过程中,每次迭代结束后由于对象识别模型的模型参数发生变化,故需要更新对象识别模型的类别中心参数w,在更新时可以按照上述类别中心参数的产生方法实现。
(4.2.4)对象识别模型的损失计算。由于对每个图像样本,经过对象识别模型产生表3所示Fc层输出的样本Embedding(记为p),然后计算p与所有Nx个类别中心的余弦相似度,得到图像样本在每个类别中心的预测结果,在预先标注类别的Kn个类别中心中,选择余弦相似度最大的类别中心(记为y)为该图像样本需要学习的样本Embedding的目标,同时需要使得p与其他非类别的类别中心的余弦相似度变小。每个图像样本的损失loss可通过如下公式(1)确定:
其中,yp项表示余弦相似度;项表示该图像样本与其他类别的类别中心的欧式距离越大越好,yj表示其他类别(包括背景类别、该图像样本对应的识别任务中不同于该图像样本的真实类别的类别)的类别中心,j的取值范围是[1,Nx-Kn=(Nc-2)*Kn+r*Kn]。其中,Nc为对象识别任务所要学习的类别总数(包含背景类别),(Nc-2)指剔除背景类别和真值类别(该图像样本的真实类别)后剩下的类别数量,r*Kn为背景类别的类别中心数量。
针对每个训练样本集,基于上式(1)对该训练样本集中各图像样本分别计算样本损失,然后计算各样本损失的平均值,得到该对象识别模型的损失。
(5)对象识别模型的应用。对每个待识别对象的对象图像,通过表3所示cosine-match层进行对象识别,得到待识别对象归属于各类别中心的预测值(即预测概率),即输出对Nx个类别中心的预测值;然后,从每个类别的多个类别中心的预测值中,取最大预测值作为对该类别的预测值,从而得到Nc个类别的预测值,并把各类别的预测值映射到0~1之间,得到待识别 对象针对Nc个类别的预测结果。
(6)为对象识别模型增加新对象识别任务。上述过程训练了对象分类表征(即Embedding的提取),保证对象识别模型在对象识别任务变化下,也能在不重新训练的情况下支持新对象识别任务的增加。具体地,构建新对象识别任务的目标训练样本集(比如新对象识别任务中各类别的对象的一定数量的图像样本);然后基于对象识别模型的Fc层得到目标训练样本集中各图像样本的Embedding,并计算目标训练样本集中各图像样本的Embedding与基础训练样本集中各图像样本的Embedding的余弦相似度,从而从基础训练样本集筛除余弦相似度最大的5%的图像样本,得到目标基础训练样本集;最后,基于目标基础训练样本集和目标训练样本集,生成目标类别中心参数,并采用该目标类别中心参数更新对象识别模型原有的类别中心参数,得到目标对象识别模型,此时,该对象识别模型则可以支持新对象识别任务。
(7)在识别对象的类别时,控制背景类对象对目标类对象的干扰。在对象识别模型应用前,先确定任务熵阈值,包括:1)把所有测试样本输入对象识别模型,得到Nc个类别的预测值;2)确定Nc个类别中的最大预测值(如0.7),并确定Nc个类别中不同于最大预测值所对应类别的背景类别、以及背景类别中的最大背景类别预测值;3)对每张测试样本,计算最大预测值与最大背景类别预测值的熵,作为该测试样本属于特定类别(即该最大预测值所对应类别)所归属的目标识别任务的熵,称该测试样本的任务熵。例如,对于最大背景类别预测值0.1和最大预测值0.7的测试样本,其任务熵为-0.1*ln(0.1)-0.7*ln(0.7)=0.48,对于最大背景类别预测值0.45和最大预测值0.45的测试样本,其任务熵为0.72。如此可见,当任务熵越大,越表示该测试样本归属于目标识别任务中某个类别的可能性越小;4)对所有测试样本的任务熵,根据该测试样本是否归属于目标识别任务中某个类别,在“0.10~0.99”范围内,以0.02为步长做阈值搜索,找到可用于区分测试样本是否归属于目标识别任务中某个类别的最佳的任务熵阈值thr。
在应用对象识别模型进行对象识别时,先把待识别对象的对象图像输入对象识别模型,输出各类别的预测值,并确定最大预测值以及所对应的目标类别;然后计算该对象图像的任务熵,当任务熵小于任务熵阈值thr,且最大预测值大于最大背景类别预测值时,则认为是待识别对象为目标类别,否则认为是背景类别。由于存在范围很广的背景类别,背景类别中可能出现某对象与目标类别的某对象相似,若直接取预测值中的最大值,背景类别对象容易识别成目标类别对象。故需要借助熵进行信息判断,当不能区分目标类与背景类时,熵总是偏大的,如此通过信息熵与概率度量联合判断,提高了对象识别的准确性。
参见图9A,图9A是本申请实施例提供的对象识别模型的应用示意图。这里,1)针对新增入库视频:a)经过上述对象检测模型对视频中各帧进行对象检测,得到对象截图。b)经过本申请实施例提供的对象识别模型,对对象截图中的待识别对象进行识别,得到排重Embedding+识别结果,其中,排重Embedding为上述表2的输出,识别结果为上述表3的输出。c)把视频的排重Embedding,根据在视频中的帧序号从前到后保存到排重库存中,并记录每个排重Embedding对应的帧序号,以及每个帧序号下有哪些排重Embedding。
2)针对视频切片库存重构:根据历史视频的排重Embedding库,应用上述表3的对象识别模型对排重Embedding进行对象识别,得到每个排重Embedding的识别结果,根据视频每个帧序号下排重Embedding的识别结果,当前后两帧均包含相同对象(如都含有A对象)时,则前后两帧都属于某对象的视频片段,以此类推对视频所有帧前后合并对象,并根据对象出现的时间段把原始视频切成多个视频片段,每个视频片段对应一个对象(需要说明的是,当一帧出现多个对象时可以丢弃该帧)。把视频片段以及视频片段对应的对象的排重Embedding保存到对象视频库中,并可以把该视频片段所在原始视频的播放量保存为该对象的热度值。
3)在根据查询对象(比如游戏对象)查询视频时,需要对查询到的多个视频进行排重检索,因此首先对输入的查询视频(包括查询对象)进行对象检测,然后提取查询视频的排重Embedding与识别结果,并根据识别结果获取该查询视频中对象的检索权重。利用排重Embedding,从排重库存中查询相似的库存Embedding(取排重Embedding相似度的阈值为Ks,当相似度超过阈值Ks表示相似),并根据检索权重从视频切片库中召回相似库存Embedding所属的视频。根据召回的视频的库存Embedding,计算召回的每个视频的库存Embedding与查询视频的排重Embedding相似度,并根据阈值统计相互间所具有的相似帧的帧数量,并根据相似帧的帧数量与总帧数量的比值,得到两个视频的重复比例。最后根据重复比例输出该查询视 频对应的排重检索结果。
4)针对视频推荐,则根据查询对象,从对象视频库存中获取与该查询对象的排重Embedding相似的库存Embedding所对应的视频作为召回视频,并将召回视频的对象类别与查询视频的对象类别进行比对,若两者对象类别不同,则不召回该视频。最终把对象类别相同的召回视频根据热度值从大到小排序,并根据排序结果输出推荐视频给用户。
5)针对新对象识别任务的增加:对对象识别模型进行升级,为对象识别模型增加新对象识别任务。新对象识别任务在构建时,当基于上述步骤生成支持新对象识别任务的新类别中心参数后,对于新对象识别任务,结合新类别中心参数进行对象识别即可。也就是说,对于增加的不同的新对象识别任务,基于对象识别模型,直接结合新对象识别任务的新类别中心参数进行对象识别即可。
参见图9B,图9B是本申请实施例提供的对象识别模型的应用示意图。这里,前端A接收到待识别图像(包括待识别对象),然后上传给后端,后端使用本申请实施例提供的对象识别模型对待识别对象进行识别,输出识别结果(即待识别对象所归属的对象类别)并返回到前端A。
应用本申请上述实施例,a)提供一种在有限训练样本下有效学习对象识别的能力,减少由于同时存在大量其他类别的对象对目标类别的对象的识别的影响,并提高有限样本下的特征表达能力。b)提供一种在不影响现有对象识别能力的新对象识别任务的增量学习能力,并能够保证各对象识别任务的识别效果。
下面说明本申请实施例提供的对象识别模型的更新装置。参见图10,图10是本申请实施例提供的对象识别模型的更新装置的结构示意图。本申请实施例提供的对象识别模型的更新装置包括:
第一获取模块1010,配置为获取对象识别模型;其中,所述对象识别模型用于识别至少一个对象识别任务中多个类别的对象,所述对象识别模型基于各所述对象识别任务的训练样本集训练得到,所述对象识别任务的训练样本集包括所述对象识别任务中各类别的对象的图像样本;第二获取模块1020,配置为获取所述对象识别模型的类别中心参数,所述类别中心参数基于各所述训练样本集中各所述图像样本的样本特征确定;第三获取模块1030,配置为获取新对象识别任务的目标训练样本集,所述目标训练样本集,包括所述新对象识别任务中多个类别的对象的图像样本;确定模块1040,配置为基于各所述训练样本集中各所述图像样本的样本特征、以及所述目标训练样本集中各所述图像样本的样本特征,确定目标类别中心参数;更新模块1050,配置为将所述对象识别模型的类别中心参数更新为所述目标类别中心参数,得到目标对象识别模型;其中,所述目标对象识别模型,用于基于所述目标类别中心参数,识别待识别对象所归属的目标类别,所述目标类别为以下类别中之一:所述新对象识别任务中的多个类别、和所述至少一个对象识别任务中的多个类别。
在一些实施例中,所述第一获取模块1010,还配置为获取初始对象识别模型,并获取各所述对象识别任务的训练样本集,所述训练样本集中各所述图像样本标注有标签;获取各所述训练样本集中各所述图像样本的样本特征,并基于各所述训练样本集中各所述图像样本的样本特征,确定所述对象识别模型的类别中心参数;通过所述初始对象识别模型,基于所述类别中心参数,分别对各所述训练样本集中各所述图像样本进行对象识别,得到各所述图像样本的识别结果;基于各所述图像样本的所述识别结果和所述标签间的差异,更新所述初始对象识别模型的模型参数,得到所述对象识别模型,所述模型参数不同于所述类别中心参数。
在一些实施例中,所述第一获取模块1010,还配置为针对各所述对象识别任务,分别执行如下处理:获取所述对象识别任务的对象视频,所述对象视频中包括多帧视频图像;确定所述多帧视频图像中的多帧目标视频图像,所述目标视频图像包括所述对象识别任务中多个类别的对象;针对所述对象识别任务中各类别的对象,从所述多帧目标视频图像中,选取目标数量的包括所述类别的对象的第一视频图像,并将所述第一视频图像作为所述类别的对象的图像样本;基于所述对象识别任务中各类别的对象的图像样本,构建得到所述对象识别任务的训练样本集。
在一些实施例中,所述第一获取模块1010,还配置为通过所述特征提取层,分别对各所述训练样本集中各所述图像样本进行特征提取,得到各所述图像样本的样本特征;相应的,所述 第一获取模块1010,还配置为在所述更新所述初始对象识别模型的模型参数之后,通过模型参数更新后的所述特征提取层,分别对各所述训练样本集中各所述图像样本进行特征提取,得到各所述图像样本的新样本特征;基于各所述训练样本集中各所述图像样本的新样本特征,确定所述对象识别模型的新类别中心参数;将所述对象识别模型的类别中心参数更新为所述新类别中心参数。
在一些实施例中,所述训练样本集中各类别的对象的图像样本的数量为多个,所述第一获取模块1010,还配置为从各所述训练样本集中各所述图像样本的样本特征中,确定各类别的对象对应的多个样本特征;针对各类别的对象对应的多个样本特征,基于目标数量的聚类中心,对所述多个样本特征进行聚类,得到目标数量的样本特征簇;基于各所述样本特征簇的聚类中心所对应的目标样本特征,生成所述对象识别模型的类别中心参数。
在一些实施例中,所述类别中心参数包括多个子类别中心参数,所述子类别中心参数与所述至少一个对象识别任务中各类别的类别中心一一对应;所述第一获取模块1010,还配置为分别对各所述训练样本集中各所述图像样本进行特征提取,得到各所述图像样本的样本特征;基于各所述子类别中心参数,分别对各所述训练样本集中各所述图像样本的样本特征进行第一对象识别,得到各所述图像样本中对象归属于各所述类别中心的可能程度;针对各所述图像样本,基于所述图像样本中对象归属于各所述类别中心的可能程度,确定所述图像样本中对象所归属的类别,并将所述图像样本中对象所归属的类别作为所述识别结果。
在一些实施例中,所述第一获取模块1010,还配置为分别对各所述训练样本集中各所述图像样本进行卷积处理,得到各所述图像样本的卷积特征;分别对各所述图像样本的卷积特征进行池化处理,得到各所述图像样本的池化特征;对各所述图像样本的池化特征进行嵌入特征提取处理,得到各所述图像样本的嵌入特征;对各所述图像样本的嵌入特征进行特征映射处理,得到各所述图像样本的映射特征;对各所述图像样本的池化特征进行归一化处理,得到各所述图像样本的样本特征。
在一些实施例中,所述对象识别任务的数量为M个,所述第一获取模块1010,还配置为获取初始对象识别模型,并获取各所述对象识别任务的训练样本集;基于第1个对象识别任务的训练样本集,对所述初始对象识别模型进行训练,得到第1个对象识别任务的中间对象识别模型;通过第i个对象识别任务的训练样本集,对第(i-1)个对象识别任务的中间对象识别模型进行训练,得到第i个对象识别任务的中间对象识别模型;对所述i进行遍历,得到第M个对象识别任务的中间对象识别模型,并将所述第M个对象识别任务的中间对象识别模型,作为所述对象识别模型;其中,所述M和所述i为大于1的整数,所述i小于或等于所述M。
在一些实施例中,所述训练样本集中各类别的对象的图像样本的数量为多个,所述目标训练样本集中各类别的对象的图像样本的数量为多个;所述确定模块1040,还配置为从各所述训练样本集中各所述图像样本的样本特征,确定所述训练样本集中各类别的对象对应的多个样本特征,并从所述目标训练样本集中各所述图像样本的样本特征中,确定所述目标训练样本集中各类别的对象对应的多个样本特征;针对各类别的对象对应的多个样本特征,基于目标数量的聚类中心,对所述多个样本特征进行聚类,得到目标数量的样本特征簇;基于各所述样本特征簇的聚类中心所对应的目标样本特征,生成所述目标类别中心参数。
在一些实施例中,所述确定模块1040,还配置为针对各所述训练样本集分别执行如下处理:针对所述训练样本集中各所述图像样本的样本特征,确定所述图像样本的样本特征、与所述目标训练样本集中各所述图像样本的样本特征之间的特征相似度;从所述训练样本集中,筛除特征相似度满足相似度条件的所述图像样本的样本特征,得到第一训练样本集;基于各所述第一训练样本集中各所述图像样本的样本特征、以及所述目标训练样本集中各所述图像样本的样本特征,确定目标类别中心参数。
在一些实施例中,所述目标类别中心参数包括多个目标子类别中心参数,所述目标子类别中心参数与目标对象识别任务中各类别的类别中心一一对应,所述目标对象识别任务包括所述至少一个对象识别任务和所述新对象识别任务;所述更新模块1050,还配置为通过所述目标对象识别模型,基于各所述目标子类别中心参数,对待识别对象的对象图像进行第一对象识别,得到所述待识别对象归属于各所述类别中心的初始可能程度;基于各所述类别中心所对应的初始可能程度,确定所述待识别对象归属于各所述类别的可能程度;基于所述待识别对象归属于 各所述类别的可能程度,确定所述待识别对象所归属的对象类别。
在一些实施例中,当各所述类别的类别中心的数量为多个时,所述更新模块1050,还配置为针对各所述类别,分别执行如下处理:从所述类别的各类别中心所对应的初始可能程度中,确定最大初始可能程度,并将所述最大初始可能程度,确定为所述待识别对象归属于所述类别的可能程度。
在一些实施例中,所述更新模块1050,还配置为从所述待识别对象归属于各所述类别的可能程度中,确定最大可能程度、以及所述最大可能程度对应的类别所在的第一识别任务,所述第一识别任务归属于所述目标对象识别任务;从所述待识别对象归属于各所述类别的可能程度中,确定所述待识别对象归属于第二识别任务中各类别的第一可能程度,并从多个所述第一可能程度中确定最大第一可能程度;其中,所述第二识别任务为,所述目标对象识别任务中除所述第一识别任务之外的识别任务;基于所述最大可能程度和所述最大第一可能程度,确定所述第一识别任务的任务熵;当所述任务熵小于任务熵阈值时,确定所述待识别对象归属于所述第一识别任务中、对应所述最大可能程度的对象类别。
在一些实施例中,当所述任务熵不小于任务熵阈值时,所述更新模块1050,还配置为当所述第二识别任务的数量为一个时,确定所述待识别对象归属于所述第二识别任务中的第一类别,所述第一类别对应所述最大第一可能程度。当所述第二识别任务的数量为多个时,基于所述待识别对象归属于所述第二识别任务中各类别的第一可能程度,确定所述待识别对象所归属的对象类别。
应用本申请上述实施例,该训练得到的对象识别模型具有类别中心参数,该类别中心参数是基于各训练样本集中各图像样本的样本特征确定的,无需进行模型训练即可得到。当需要为对象识别模型增加新对象识别任务的识别能力时,则可以基于对象识别任务的各训练样本集中各图像样本的样本特征、以及新对象识别任务的目标训练样本集中各图像样本的样本特征,确定目标类别中心参数,并将对象识别模型的类别中心参数更新为目标类别中心参数即可,无需对对象识别模型进行重新训练。此时所得到的目标对象识别模型既具备至少一个对象识别任务的识别能力,还具备新对象识别任务的识别能力。如此,由于无需对对象识别模型进行重新训练,1)提高了为对象识别模型增加新对象识别任务的识别能力的实现效率;2)在为对象识别模型增加新对象识别任务的识别能力的同时,也不会对对象识别模型的原有对象识别任务的识别效果造成影响,保证了目标对象识别模型对于原有对象识别任务的识别效果,提高了已增加新对象识别任务的目标对象识别模型的识别准确性。
下面说明本申请实施例提供的实施对象识别模型的更新方法的电子设备。参见图11,图11是本申请实施例提供的实施对象识别模型的更新方法的电子设备500的结构示意图。该电子设备500可以是服务器,也可以是终端。本申请实施例提供的实施对象识别模型的更新方法的电子设备500包括:至少一个处理器510、存储器550、至少一个网络接口520和用户接口530。电子设备500中的各个组件通过总线系统540耦合在一起。可理解,总线系统540用于实现这些组件之间的连接通信。总线系统540除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图11中将各种总线都标为总线系统540。
处理器510可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(Digital Signal Processor,DSP),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
存储器550可以是可移除的,不可移除的或其组合。存储器550可选地包括在物理位置上远离处理器510的一个或多个存储设备。存储器550包括易失性存储器或非易失性存储器,也可包括易失性存储器和非易失性存储器两者。非易失性存储器可以是只读存储器(Read Only Memory,ROM),易失性存储器可以是随机存取存储器(Random Access Memory,RAM)。本申请实施例描述的存储器550旨在包括任意适合类型的存储器。
存储器550能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集。在本申请实施例中,存储器550存储有计算机可执行指令;当计算机可执行指令被处理器510执行时,将引起处理器510执行本申请实施例提供的对象识别模型的更新方法。
本申请实施例还提供一种计算机程序产品,该计算机程序产品包括计算机可执行指令,该计算机可执行指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机可执行指令,处理器执行该计算机可执行指令,使得该电子设备执行本申请实施例提供的对象识别模型的更新方法。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,当该计算机可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的对象识别模型的更新方法。
在一些实施例中,计算机可读存储介质可以是RAM、ROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,计算机可执行指令可以采用程序、软件、软件模块、脚本等形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,计算机可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(Hyper Text Markup Language,HTML)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序)中。
作为示例,计算机可执行指令可被部署为在一个电子设备上执行,或者在位于一个地点的多个电子设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个电子设备上执行。
以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。

Claims (18)

  1. 一种对象识别模型的更新方法,应用于电子设备,所述方法包括:
    获取对象识别模型;其中,所述对象识别模型用于识别至少一个对象识别任务中多个类别的对象,所述对象识别模型基于各所述对象识别任务的训练样本集训练得到,所述对象识别任务的训练样本集包括所述对象识别任务中各类别的对象的图像样本;
    获取所述对象识别模型的类别中心参数,所述类别中心参数基于各所述训练样本集中各所述图像样本的样本特征确定;
    获取新对象识别任务的目标训练样本集,所述目标训练样本集,包括所述新对象识别任务中多个类别的对象的图像样本;
    基于各所述训练样本集中各所述图像样本的样本特征、以及所述目标训练样本集中各所述图像样本的样本特征,确定目标类别中心参数;
    将所述对象识别模型的类别中心参数更新为所述目标类别中心参数,得到目标对象识别模型;
    其中,所述目标对象识别模型,用于基于所述目标类别中心参数,识别待识别对象所归属的目标类别,所述目标类别为以下类别中之一:所述新对象识别任务中的多个类别、和所述至少一个对象识别任务中的多个类别。
  2. 如权利要求1所述的方法,其中,所述获取对象识别模型,包括:
    获取初始对象识别模型,并获取各所述对象识别任务的训练样本集,所述训练样本集中各所述图像样本标注有标签;
    获取各所述训练样本集中各所述图像样本的样本特征,并基于各所述训练样本集中各所述图像样本的样本特征,确定所述对象识别模型的类别中心参数;
    通过所述初始对象识别模型,基于所述类别中心参数,分别对各所述训练样本集中各所述图像样本进行对象识别,得到各所述图像样本的识别结果;
    基于各所述图像样本的所述识别结果和所述标签间的差异,更新所述初始对象识别模型的模型参数,得到所述对象识别模型,所述模型参数不同于所述类别中心参数。
  3. 如权利要求2所述的方法,其中,所述获取各所述对象识别任务的训练样本集,包括:
    针对各所述对象识别任务,分别执行如下处理:
    获取所述对象识别任务的对象视频,所述对象视频中包括多帧视频图像;
    确定所述多帧视频图像中的多帧目标视频图像,所述目标视频图像包括所述对象识别任务中多个类别的对象;
    针对所述对象识别任务中各类别的对象,从所述多帧目标视频图像中,选取目标数量的包括所述类别的对象的第一视频图像,并将所述第一视频图像作为所述类别的对象的图像样本;
    基于所述对象识别任务中各类别的对象的图像样本,构建得到所述对象识别任务的训练样本集。
  4. 如权利要求2所述的方法,其中,所述初始对象识别模型包括特征提取层,所述获取各所述训练样本集中各所述图像样本的样本特征,包括:
    通过所述特征提取层,分别对各所述训练样本集中各所述图像样本进行特征提取,得到各所述图像样本的样本特征;
    所述更新所述初始对象识别模型的模型参数之后,所述方法还包括:
    通过模型参数更新后的所述特征提取层,分别对各所述训练样本集中各所述图像样本进行特征提取,得到各所述图像样本的新样本特征;
    基于各所述训练样本集中各所述图像样本的新样本特征,确定所述对象识别模型的新类别中心参数;
    将所述对象识别模型的类别中心参数更新为所述新类别中心参数。
  5. 如权利要求2所述的方法,其中,所述训练样本集中各类别的对象的图像样本的数量为多个,所述基于各所述训练样本集中各所述图像样本的样本特征,确定所述对象识别模型的类别中心参数,包括:
    从各所述训练样本集中各所述图像样本的样本特征中,确定各类别的对象对应的多个样本特征;
    针对各类别的对象对应的多个样本特征,基于目标数量的聚类中心,对所述多个样本特征进行聚类,得到目标数量的样本特征簇;
    基于各所述样本特征簇的聚类中心所对应的目标样本特征,生成所述对象识别模型的类别中心参数。
  6. 如权利要求2所述的方法,其中,所述类别中心参数包括多个子类别中心参数,所述子类别中心参数与所述至少一个对象识别任务中各类别的类别中心一一对应;
    所述基于所述类别中心参数,分别对各所述训练样本集中各所述图像样本进行对象识别,得到各所述图像样本的识别结果,包括:
    分别对各所述训练样本集中各所述图像样本进行特征提取,得到各所述图像样本的样本特征;
    基于各所述子类别中心参数,分别对各所述训练样本集中各所述图像样本的样本特征进行第一对象识别,得到各所述图像样本中对象归属于各所述类别中心的可能程度;
    针对各所述图像样本,基于所述图像样本中对象归属于各所述类别中心的可能程度,确定所述图像样本中对象所归属的类别,并将所述图像样本中对象所归属的类别作为所述识别结果。
  7. 如权利要求6所述的方法,其中,所述分别对各所述训练样本集中各所述图像样本进行特征提取,得到各所述图像样本的样本特征,包括:
    分别对各所述训练样本集中各所述图像样本进行卷积处理,得到各所述图像样本的卷积特征;
    分别对各所述图像样本的卷积特征进行池化处理,得到各所述图像样本的池化特征;
    对各所述图像样本的池化特征进行嵌入特征提取处理,得到各所述图像样本的嵌入特征;
    对各所述图像样本的嵌入特征进行特征映射处理,得到各所述图像样本的映射特征;
    对各所述图像样本的池化特征进行归一化处理,得到各所述图像样本的样本特征。
  8. 如权利要求1所述的方法,其中,所述对象识别任务的数量为M个,所述获取对象识别模型,包括:
    获取初始对象识别模型,并获取各所述对象识别任务的训练样本集;
    基于第1个对象识别任务的训练样本集,对所述初始对象识别模型进行训练,得到第1个对象识别任务的中间对象识别模型;
    通过第i个对象识别任务的训练样本集,对第(i-1)个对象识别任务的中间对象识别模型进行训练,得到第i个对象识别任务的中间对象识别模型;
    对所述i进行遍历,得到第M个对象识别任务的中间对象识别模型,并将所述第M个对象识别任务的中间对象识别模型,作为所述对象识别模型;
    其中,所述M和所述i为大于1的整数,所述i小于或等于所述M。
  9. 如权利要求1所述的方法,其中,所述训练样本集中各类别的对象的图像样本的数量为多个,所述目标训练样本集中各类别的对象的图像样本的数量为多个;
    所述基于各所述训练样本集中各所述图像样本的样本特征、以及所述目标训练样本集中各所述图像样本的样本特征,确定目标类别中心参数,包括:
    从各所述训练样本集中各所述图像样本的样本特征,确定所述训练样本集中各类别的对象对应的多个样本特征,并
    从所述目标训练样本集中各所述图像样本的样本特征中,确定所述目标训练样本集中各类别的对象对应的多个样本特征;
    针对各类别的对象对应的多个样本特征,基于目标数量的聚类中心,对所述多个样本特征进行聚类,得到目标数量的样本特征簇;
    基于各所述样本特征簇的聚类中心所对应的目标样本特征,生成所述目标类别中心参数。
  10. 如权利要求1所述的方法,其中,所述基于各所述训练样本集中各所述图像样本的样本特征、以及所述目标训练样本集中各所述图像样本的样本特征,确定目标类别中心参数,包括:
    针对各所述训练样本集分别执行如下处理:针对所述训练样本集中各所述图像样本的样本特征,确定所述图像样本的样本特征、与所述目标训练样本集中各所述图像样本的样本特征之间的特征相似度;从所述训练样本集中,筛除特征相似度满足相似度条件的所述图像样本的样本特征,得到第一训练样本集;
    基于各所述第一训练样本集中各所述图像样本的样本特征、以及所述目标训练样本集中各所述图像样本的样本特征,确定目标类别中心参数。
  11. 如权利要求1所述的方法,其中,所述目标类别中心参数包括多个目标子类别中心参数,所述目标子类别中心参数与目标对象识别任务中各类别的类别中心一一对应,所述目标对象识别任务包括所述至少一个对象识别任务和所述新对象识别任务;
    所述方法还包括:
    通过所述目标对象识别模型,基于各所述目标子类别中心参数,对待识别对象的对象图像进行第一对象识别,得到所述待识别对象归属于各所述类别中心的初始可能程度;
    基于各所述类别中心所对应的初始可能程度,确定所述待识别对象归属于各所述类别的可能程度;
    基于所述待识别对象归属于各所述类别的可能程度,确定所述待识别对象所归属的对象类别。
  12. 如权利要求11所述的方法,其中,当各所述类别的类别中心的数量为多个时,所述基于各所述类别中心所对应的初始可能程度,确定所述待识别对象所归属的对象类别,包括:
    针对各所述类别,分别执行如下处理:
    从所述类别的各类别中心所对应的初始可能程度中,确定最大初始可能程度,并将所述最大初始可能程度,确定为所述待识别对象归属于所述类别的可能程度。
  13. 如权利要求11所述的方法,其中,所述基于所述待识别对象归属于各所述类别的可能程度,确定所述待识别对象所归属的对象类别,包括:
    从所述待识别对象归属于各所述类别的可能程度中,确定最大可能程度、以及所述最大可能程度对应的类别所在的第一识别任务,所述第一识别任务归属于所述目标对象识别任务;
    从所述待识别对象归属于各所述类别的可能程度中,确定所述待识别对象归属于第二识别任务中各类别的第一可能程度,并从多个所述第一可能程度中确定最大第一可能程度;
    其中,所述第二识别任务为,所述目标对象识别任务中除所述第一识别任务之外的识别任务;
    基于所述最大可能程度和所述最大第一可能程度,确定所述第一识别任务的任务熵;
    当所述任务熵小于任务熵阈值时,确定所述待识别对象归属于所述第一识别任务中、对应所述最大可能程度的对象类别。
  14. 如权利要求13所述的方法,其中,当所述任务熵不小于任务熵阈值时,所述方法还包括:
    当所述第二识别任务的数量为一个时,确定所述待识别对象归属于所述第二识别任务中的第一类别,所述第一类别对应所述最大第一可能程度;
    当所述第二识别任务的数量为多个时,基于所述待识别对象归属于所述第二识别任务中各类别的第一可能程度,确定所述待识别对象所归属的对象类别。
  15. 一种对象识别模型的更新装置,所述装置包括:
    第一获取模块,配置为获取对象识别模型;其中,所述对象识别模型用于识别至少一个对象识别任务中多个类别的对象,所述对象识别模型基于各所述对象识别任务的训练样本集训练得到,所述对象识别任务的训练样本集包括所述对象识别任务中各类别的对象的图像样本;
    第二获取模块,配置为获取所述对象识别模型的类别中心参数,所述类别中心参数基于各所述训练样本集中各所述图像样本的样本特征确定;
    第三获取模块,配置为获取新对象识别任务的目标训练样本集,所述目标训练样本集,包括所述新对象识别任务中多个类别的对象的图像样本;
    确定模块,配置为基于各所述训练样本集中各所述图像样本的样本特征、以及所述目标训练样本集中各所述图像样本的样本特征,确定目标类别中心参数;
    更新模块,配置为将所述对象识别模型的类别中心参数更新为所述目标类别中心参数,得到目标对象识别模型;
    其中,所述目标对象识别模型,用于基于所述目标类别中心参数,识别待识别对象所归属的目标类别,所述目标类别为以下类别中之一:所述新对象识别任务中的多个类别、和所述至少一个对象识别任务中的多个类别。
  16. 一种电子设备,所述电子设备包括:
    存储器,配置为存储计算机可执行指令;
    处理器,配置为执行所述存储器中存储的计算机可执行指令时,实现权利要求1至14任一项所述的对象识别模型的更新方法。
  17. 一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令被处理器执行时,实现权利要求1至14任一项所述的对象识别模型的更新方法。
  18. 一种计算机程序产品,包括计算机可执行指令,所述计算机可执行指令被处理器执行时,实现权利要求1至14任一项所述的对象识别模型的更新方法。
PCT/CN2023/129301 2022-12-26 2023-11-02 对象识别模型的更新方法、装置、电子设备、存储介质及计算机程序产品 WO2024139703A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202211678065.2A CN116958608A (zh) 2022-12-26 2022-12-26 对象识别模型的更新方法、装置、设备、介质及程序产品
CN202211678065.2 2022-12-26

Publications (1)

Publication Number Publication Date
WO2024139703A1 true WO2024139703A1 (zh) 2024-07-04

Family

ID=88446707

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/129301 WO2024139703A1 (zh) 2022-12-26 2023-11-02 对象识别模型的更新方法、装置、电子设备、存储介质及计算机程序产品

Country Status (2)

Country Link
CN (1) CN116958608A (zh)
WO (1) WO2024139703A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116958608A (zh) * 2022-12-26 2023-10-27 腾讯科技(深圳)有限公司 对象识别模型的更新方法、装置、设备、介质及程序产品

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200175384A1 (en) * 2018-11-30 2020-06-04 Samsung Electronics Co., Ltd. System and method for incremental learning
CN111241992A (zh) * 2020-01-08 2020-06-05 科大讯飞股份有限公司 人脸识别模型构建方法、识别方法、装置、设备及存储介质
CN113590863A (zh) * 2021-02-23 2021-11-02 腾讯科技(北京)有限公司 图像聚类方法、装置及计算机可读存储介质
CN113822130A (zh) * 2021-07-05 2021-12-21 腾讯科技(深圳)有限公司 模型训练方法、场景识别方法、计算设备和介质
CN116958608A (zh) * 2022-12-26 2023-10-27 腾讯科技(深圳)有限公司 对象识别模型的更新方法、装置、设备、介质及程序产品

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200175384A1 (en) * 2018-11-30 2020-06-04 Samsung Electronics Co., Ltd. System and method for incremental learning
CN111241992A (zh) * 2020-01-08 2020-06-05 科大讯飞股份有限公司 人脸识别模型构建方法、识别方法、装置、设备及存储介质
CN113590863A (zh) * 2021-02-23 2021-11-02 腾讯科技(北京)有限公司 图像聚类方法、装置及计算机可读存储介质
CN113822130A (zh) * 2021-07-05 2021-12-21 腾讯科技(深圳)有限公司 模型训练方法、场景识别方法、计算设备和介质
CN116958608A (zh) * 2022-12-26 2023-10-27 腾讯科技(深圳)有限公司 对象识别模型的更新方法、装置、设备、介质及程序产品

Also Published As

Publication number Publication date
CN116958608A (zh) 2023-10-27

Similar Documents

Publication Publication Date Title
US20220335338A1 (en) Feature processing tradeoff management
JP6643554B2 (ja) エンティティ推薦方法及び装置
US10452992B2 (en) Interactive interfaces for machine learning model evaluations
US12086548B2 (en) Event extraction from documents with co-reference
US20220100772A1 (en) Context-sensitive linking of entities to private databases
KR102064292B1 (ko) 개인화된 소셜네트워크서비스 컨텐츠 추천 방법 및 장치
WO2024114034A1 (zh) 内容推荐方法、装置、设备、介质和程序产品
CN113821657A (zh) 基于人工智能的图像处理模型训练方法及图像处理方法
US20220100967A1 (en) Lifecycle management for customized natural language processing
CN111143684A (zh) 基于人工智能的泛化模型的训练方法及装置
WO2023160060A1 (zh) 一种模型优化方法、装置、电子设备、计算机可读存储介质及计算机程序产品
WO2022252694A1 (zh) 神经网络优化方法及其装置
CN117036834B (zh) 基于人工智能的数据分类方法、装置及电子设备
WO2024067373A1 (zh) 一种数据处理方法及相关装置
WO2024221925A1 (zh) 数据处理方法、装置、电子设备、计算机可读存储介质及计算机程序产品
WO2024139703A1 (zh) 对象识别模型的更新方法、装置、电子设备、存储介质及计算机程序产品
CN115238126A (zh) 搜索结果重排序方法、装置、设备及计算机存储介质
US20200394448A1 (en) Methods for more effectively moderating one or more images and devices thereof
WO2021258968A1 (zh) 小程序分类方法、装置、设备及计算机可读存储介质
WO2023051678A1 (zh) 一种推荐方法及相关装置
CN117633202A (zh) 一种非结构化数据的处理方法、装置、设备及存储介质
CN114330353B (zh) 虚拟场景的实体识别方法、装置、设备、介质及程序产品
CN116956117A (zh) 一种标签识别的方法、装置、设备、存储介质及程序产品
CN116956015A (zh) 一种数据筛选方法、装置、设备及存储介质
CN117216537A (zh) 集成模型的训练方法、装置、设备、存储介质及程序产品

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23909636

Country of ref document: EP

Kind code of ref document: A1