An end-side cooperation-based content management and control method, device and equipment

By collaborating between edge devices and end-side devices, splitting and distributing the model, the problem of insufficient computing resources in central devices is solved, and efficient anomaly detection performance is achieved.

CN120631722BActive Publication Date: 2025-10-24HANGZHOU HIKVISION DIGITAL TECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511127354.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-08-12
Publication Date
2025-10-24
Estimated Expiration
2045-08-12

AI Technical Summary

Technical Problem

When central equipment deploys multiple models for anomaly detection, excessive computing resources are occupied, causing equipment to freeze, unable to effectively complete detection, and poor detection performance.

Method used

Using a method based on end-edge collaboration, the model to be deployed is split into sub-models and distributed on multiple end-side devices. Computing resources are integrated and collaboratively utilized through computing domains, and edge devices are responsible for coordinating computing resources and information transmission.

Benefits of technology

It achieves efficient integration of computing resources, improves the performance of anomaly detection, avoids waste of computing resources, and adapts to end-side devices with limited computing resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120631722B_ABST
    Figure CN120631722B_ABST
Patent Text Reader

Abstract

The application provides a content management and control method, device and equipment based on end-side cooperation, which comprises the following steps: determining the number of devices corresponding to each to-be-deployed model; determining the number of computing power domains corresponding to each to-be-deployed model based on the total number of end-side devices and the number of devices corresponding to each to-be-deployed model; sequentially traversing each to-be-deployed model as a current to-be-deployed model, and obtaining K computing power domains corresponding to the current to-be-deployed model; splitting the current to-be-deployed model into M sub-models; deploying the M sub-models to M end-side devices of each computing power domain; obtaining a computing power graph of the current to-be-deployed model; and when any to-be-deployed model is used for abnormality detection, the computing power graph of the to-be-deployed model is used for abnormality detection of to-be-detected content to obtain an abnormality detection result. Through the technical scheme of the application, computing resources can be fully cooperatively utilized, and abnormality detection can be efficiently completed. The computing resources of the end-side devices can be reasonably allocated.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The application relates to the technical field of network security, in particular to a content management and control method and device based on end-edge cooperation. BACKGROUND

[0002] Content management and control refers to performing abnormality detection on content (i.e., to-be-detected content) displayed by a display device (such as a display screen, a smart screen, etc.), obtaining an abnormality detection result, and the abnormality detection result indicating that the to-be-detected content is abnormal or not. If the to-be-detected content is not abnormal, the to-be-detected content is allowed to be displayed by the display device, such as picture content or text content. If the to-be-detected content is abnormal, the to-be-detected content is prohibited from being displayed by the display device, such as being replaced by specified content to be displayed.

[0003] In order to perform abnormality detection on the to-be-detected content, the center device needs to deploy multiple models to perform abnormality detection on the to-be-detected content through the multiple models. For example, the center device detects whether there is type 1 abnormality through model 1, the center device detects whether there is type 2 abnormality through model 2, the center device detects whether there is type 3 abnormality through model 3, and so on, so as to detect various types of abnormalities.

[0004] When the center device deploys multiple models to perform abnormality detection on the to-be-detected content through the multiple models, running these models needs to occupy a large amount of computing resources of the center device, causing the center device to lag, and when the computing resources of the center device are insufficient, the center device cannot complete abnormality detection, and the detection performance of the center device is poor. SUMMARY

[0005] The application provides a content management and control method based on end-edge cooperation, applied to an edge device, the edge device being used for content management and control of multiple end-side devices, and the method comprises the following steps:

[0006] Determine the number of devices corresponding to each to-be-deployed model; based on the total number of end-side devices and the number of devices corresponding to each to-be-deployed model, determine the number of computing power domains corresponding to each to-be-deployed model;

[0007] Iterate each to-be-deployed model as a current to-be-deployed model in turn, obtain K computing power domains corresponding to the current to-be-deployed model, and for each computing power domain, the computing power domain comprises M end-side devices; K represents the number of computing power domains corresponding to the current to-be-deployed model, and M is determined based on the number of devices corresponding to the current to-be-deployed model;

[0008] Split the current to-be-deployed model into M sub-models; for each computing power domain, deploy the M sub-models to the M end-side devices of the computing power domain, and each end-side device corresponds to a sub-model;

[0009] obtain an algorithm graph of the current to-be-deployed model, a root node of the algorithm graph being the edge device, a next level node of the edge device being a first level end-side device of each algorithm domain; for the i-th level end-side device, the i-th level end-side device not being the last level end-side device, a next level node of the end-side device being an i+1-th level end-side device of each algorithm domain; for the last level end-side device, a next level node of the end-side device being the edge device;

[0010] When any to-be-deployed model is used for abnormality detection, the algorithm graph of the to-be-deployed model is used to perform abnormality detection on the to-be-detected content to obtain an abnormality detection result.

[0011] The application provides a content management and control device based on end-side cooperation, applied to an edge device, the edge device being used for content management and control of a plurality of end-side devices, the device comprising:

[0012] A determination module is configured to determine a number of devices corresponding to each to-be-deployed model, and determine a number of algorithm domains corresponding to each to-be-deployed model based on a total number of end-side devices and the number of devices corresponding to each to-be-deployed model.

[0013] An obtaining module is configured to sequentially traverse each to-be-deployed model as a current to-be-deployed model, and obtain K algorithm domains corresponding to the current to-be-deployed model, each algorithm domain comprising M end-side devices; K represents a number of algorithm domains of the current to-be-deployed model, and M is determined based on a number of devices of the current to-be-deployed model.

[0014] A processing module is configured to split the current to-be-deployed model into M sub-models, and deploy the M sub-models to the M end-side devices of each algorithm domain, each end-side device corresponding to a sub-model.

[0015] The obtaining module is configured to obtain an algorithm graph of the current to-be-deployed model, a root node of the algorithm graph being the edge device, a next level node of the edge device being a first level end-side device of each algorithm domain; for the i-th level end-side device, the i-th level end-side device not being the last level end-side device, a next level node of the end-side device being an i+1-th level end-side device of each algorithm domain; for the last level end-side device, a next level node of the end-side device being the edge device; when any to-be-deployed model is used for abnormality detection, the algorithm graph of the to-be-deployed model is used to perform abnormality detection on to-be-detected content to obtain an abnormality detection result.

[0016] The application provides an electronic device, comprising a processor and a machine readable storage medium, the machine readable storage medium storing machine executable instructions capable of being executed by the processor; the processor is used to execute the machine executable instructions to implement the content management and control method based on end-side cooperation of the above examples.

[0017] The computer program product comprises a computer program, and the computer program, when executed by a processor, implements the content management method based on edge-side cooperation of the above examples.

[0018] The machine-readable storage medium stores machine-executable instructions capable of being executed by a processor, and the processor is configured to execute the machine-executable instructions to implement the content management method based on edge-side cooperation of the above examples.

[0019] From the above technical solutions, in the embodiments of the present application, for each to-be-deployed model, the K computing power domains corresponding to the to-be-deployed model can be obtained, and the M end-side devices of each computing power domain jointly run the to-be-deployed model, so that the detection work of the to-be-deployed model is completed by the M end-side devices, and the computing resources of the K computing power domains can support K times of running of the to-be-deployed model. In this way, even if the computing resources of each end-side device are limited, the computing resources of each end-side device can be comprehensively utilized, the integration of computing resources can be realized, the computing resources can be fully utilized in cooperation, and the abnormal detection can be efficiently completed with good detection performance.

[0020] For a plurality of to-be-deployed models, when there are a large number of end-side devices, the edge device can determine the number of computing power domains corresponding to each to-be-deployed model based on the number of devices corresponding to each to-be-deployed model, thereby obtaining K computing power domains corresponding to each to-be-deployed model, K representing the number of computing power domains corresponding to the to-be-deployed model. In this way, the computing resources of all end-side devices can be reasonably allocated, and waste of computing resources can be avoided. BRIEF DESCRIPTION OF DRAWINGS

[0021] Figure 1 is a flowchart of the content management method based on edge-side cooperation in the embodiments of the present application;

[0022] Figure 2 is a structural diagram of the content management system in an embodiment of the present application;

[0023] Figure 3 is a flowchart of the content management method based on edge-side cooperation in the embodiments of the present application;

[0024] Figure 4 is a curve diagram of the total time consumption and the number of end-side devices in the embodiments of the present application;

[0025] Figure 5A and Figure 5B is a schematic diagram of the computing power diagram in the embodiments of the present application;

[0026] Figure 6 is a structural diagram of the content management device based on edge-side cooperation in the embodiments of the present application;

[0027] Figure 7 Figure 1 is a hardware structure diagram of an electronic device in an embodiment of the present application. DETAILED DESCRIPTION

[0028] An edge-side collaborative content management method is provided in an embodiment of the present application. The method can be applied to an edge device, and the edge device is used to manage content of a plurality of end-side devices. Referring to Figure 2, which is a flowchart of the content management method, the content management method can include the following steps. Figure 1

[0029] In step 101, the number of devices corresponding to each to-be-deployed model is determined. Based on the total number of end-side devices and the number of devices corresponding to each to-be-deployed model, the number of computing power domains corresponding to each to-be-deployed model is determined.

[0030] In step 102, each to-be-deployed model is sequentially traversed as a current to-be-deployed model, and K computing power domains corresponding to the current to-be-deployed model are obtained. For each computing power domain, the computing power domain includes M end-side devices. K represents the number of computing power domains corresponding to the current to-be-deployed model, and M is determined based on the number of devices corresponding to the current to-be-deployed model. For example, M is obtained by rounding up the number of devices corresponding to the current to-be-deployed model. For example, if the number of devices is 5, M is 5, if the number of devices is 3.5, M is 4, and so on.

[0031] In step 103, the current to-be-deployed model is split into M sub-models. For each computing power domain, the M sub-models are deployed to the M end-side devices of the computing power domain, and each end-side device corresponds to a sub-model.

[0032] In step 104, the computing power graph of the current to-be-deployed model is obtained. The root node of the computing power graph is the edge device, and the next level node of the edge device is the first level end-side device of each computing power domain. For the i-th level end-side device, which is not the last level end-side device, the next level node of the end-side device is the i+1-th level end-side device of each computing power domain. For the last level end-side device, the next level node of the end-side device is the edge device. When any to-be-deployed model is used for anomaly detection, the computing power graph of the to-be-deployed model is used to perform anomaly detection on the to-be-detected content, and an anomaly detection result is obtained.

[0033] ​For example, for each to-be-deployed model, the process of determining the number of devices corresponding to the to-be-deployed model can include but is not limited to: determining an initial number of the to-be-deployed model based on the acquired parameter amount that can be processed by a unit computing resource, the total size of computing resources of the end-side device, and the total amount of parameters of the to-be-deployed model; acquiring a plurality of candidate numbers, each of which is not less than the initial number; for each candidate number, determining the overall time consumption corresponding to the candidate number based on the calculation time consumption and the communication time consumption corresponding to the candidate number; based on the overall time consumption corresponding to each candidate number, the candidate number corresponding to the minimum overall time consumption can be determined as the number of devices M corresponding to the to-be-deployed model. Wherein, for each candidate number, when determining the calculation time consumption and the communication time consumption corresponding to the candidate number, the to-be-deployed model can be split into N sub-models, and the deployment mode of the N sub-models is determined, N is determined based on the candidate number, and the deployment mode is a serial mode, a parallel mode, or a serial-parallel hybrid mode. Wherein, based on the deployment mode of the N sub-models and the data processing time length of each sub-model, the calculation time consumption corresponding to the candidate number is determined; based on the communication data amount between the N sub-models and the data transmission time length between the sub-models, the communication time consumption corresponding to the candidate number is determined. For example, the data transmission time length is determined based on the average value of the delay of a plurality of device pairs, and the device pair includes two end-side devices, and the delay of the device pair represents the transmission delay between the two end-side devices.

[0034] For example, based on the total number of end-side devices and the number of devices corresponding to each to-be-deployed model, the number of computing power domains corresponding to each to-be-deployed model can be determined, which can include but is not limited to: determining the consumed device number of all to-be-deployed models based on the number of devices corresponding to each to-be-deployed model, and obtaining a first number by taking the floor of the quotient of the total number of end-side devices and the consumed device number; determining the remaining device number based on the total number of end-side devices, the consumed device number, and the first number; selecting part of the to-be-deployed models from all to-be-deployed models, and determining the second number of the to-be-deployed model based on the number of devices corresponding to the to-be-deployed model and the remaining device number; for each to-be-deployed model that has not been selected, determining the number of computing power domains corresponding to the to-be-deployed model based on the first number; for each to-be-deployed model that has been selected, determining the number of computing power domains corresponding to the to-be-deployed model based on the first number and the second number of the to-be-deployed model.

[0035] For example, sequentially traversing each to-be-deployed model as a current to-be-deployed model can include but is not limited to: for each to-be-deployed model, determining a target traffic corresponding to the to-be-deployed model; wherein the target traffic can be a sum of the first traffic, the second traffic, and the third traffic; wherein when the to-be-deployed model is split into M sub-models, the first traffic can be the traffic of the edge device sending the to-be-detected content to the first sub-model, the second traffic can be the communication data volume between the M sub-models, and the third traffic can be the traffic of the last sub-model returning the anomaly detection result to the edge device. Based on the target traffic corresponding to each to-be-deployed model, all to-be-deployed models are sorted in descending order of the target traffic; based on the sorted plurality of to-be-deployed models, starting from the first to-be-deployed model, sequentially traversing each to-be-deployed model as a current to-be-deployed model.

[0036] For example, obtaining K computing power domains corresponding to the current to-be-deployed model can include but is not limited to: when obtaining each computing power domain corresponding to the current to-be-deployed model, obtaining candidate end-side devices allowed to be used, the candidate end-side devices can be end-side devices not selected by existing computing power domains, or the candidate end-side devices can be end-side devices selected by existing computing power domains and not all computing power resources of the candidate end-side devices are occupied by the existing computing power domains. Based on all candidate end-side devices, a plurality of device sets are constructed; for each device set, the device set includes M candidate end-side devices, and any two candidate end-side devices form a device pair. Obtain the communication loss corresponding to each device set, which can be determined based on the delay of all device pairs corresponding to the device set, and the delay of the device pair represents the transmission delay between the two candidate end-side devices; based on the communication loss corresponding to each device set, the M candidate end-side devices in the device set corresponding to the minimum communication loss are divided into one computing power domain corresponding to the current to-be-deployed model.

[0037] For example, after obtaining the computing power graph of each to-be-deployed model, if it is determined that the to-be-detected content obtained needs to be detected by the to-be-deployed model, the next level node of the edge device is determined based on the computing power graph of the to-be-deployed model; wherein the next level node includes the first level end-side devices of the K computing power domains corresponding to the to-be-deployed model. Select a target end-side device from the first level end-side devices of the K computing power domains; wherein based on the delay of each first level end-side device and the edge device, the first level end-side device with the minimum delay is selected as the target end-side device; or, the first level end-side device in an idle state is selected as the target end-side device; or, for each first level end-side device, based on the delay of the first level end-side device and the edge device, the processing completion time of the first level end-side device for the allocated data, the idle time of the first level end-side device is determined, and the first level end-side device with the earliest idle time is selected as the target end-side device.

[0038] The to-be-detected content is sent to the target-side device, so that the target-side device processes the to-be-detected content based on the deployed sub-model to obtain intermediate features, selects one end-side device from the next level of end-side devices of the K computing power domains based on the computing power diagram, and sends the intermediate features to the selected end-side device, and so on, until the intermediate features are sent to the last level of end-side devices, and the last level of end-side devices processes the intermediate features based on the deployed sub-model to obtain an anomaly detection result.

[0039] The anomaly detection result is received; if the anomaly detection result indicates that the content is normal, the to-be-detected content is sent to a display device connected to the end-side device, and the to-be-detected content is displayed through the display device.

[0040] For example, after obtaining the to-be-detected content, a to-be-detected hash value corresponding to the to-be-detected content can also be determined; the similarity between the to-be-detected hash value and the stored hash values in the content cache is determined; wherein the content cache includes stored hash values of detected content and detection labels of the detected content, and the detection label is used to indicate the anomaly detection result of the detected content. If the similarity between the to-be-detected hash value and any stored hash value is greater than a threshold, the anomaly detection result of the to-be-detected content is determined based on the detection label corresponding to the stored hash value. If the similarity between the to-be-detected hash value and all stored hash values is not greater than the threshold, the to-be-detected content is detected for anomaly through the to-be-deployed model to obtain an anomaly detection result, and the to-be-detected hash value and the detection label corresponding to the anomaly detection result are stored in the content cache.

[0041] For example, if the content detection configuration information sent by the center device is received, and the content detection configuration information is used to indicate that partial to-be-deployed models are used for anomaly detection, it can be determined based on the content detection configuration information that the to-be-detected content obtained needs to be detected for anomaly through the partial to-be-deployed models.

[0042] Alternatively, if the global emergency information sent by the center device is received, and the global emergency information is used to indicate that all to-be-deployed models are used for anomaly detection, it can be determined based on the global emergency information that the to-be-detected content obtained needs to be detected for anomaly through all to-be-deployed models.

[0043] From the above technical solutions, in the embodiments of the present application, for each to-be-deployed model, the K algorithm power domains corresponding to the to-be-deployed model can be obtained, and the M end-side devices of each algorithm power domain collectively run the to-be-deployed model, so that the detection work of the to-be-deployed model is completed by the M end-side devices, and the computing resources of the K algorithm power domains can support K times of running of the to-be-deployed model. In this way, even if the computing resources of each end-side device are limited, the computing resources of each end-side device can be comprehensively utilized, the integration of computing resources can be realized, the computing resources can be fully cooperatively utilized, and the abnormal detection can be efficiently completed with good detection performance.

[0044] For multiple to-be-deployed models, when there are a large number of end-side devices, the edge device can determine the number of algorithm power domains corresponding to each to-be-deployed model based on the number of devices corresponding to each to-be-deployed model, so as to obtain K algorithm power domains corresponding to each to-be-deployed model, K representing the number of algorithm power domains corresponding to the to-be-deployed model. In this way, the computing resources of all end-side devices can be reasonably allocated, and waste of computing resources can be avoided.

[0045] The above technical solutions of the embodiments of the present application will be described below in combination with specific application scenarios.

[0046] In the embodiments of the present application, a content management system is provided, as shown in Figure 2 The content management system can include a center device, an edge device, and an end-side device.

[0047] For each display device (such as a display screen or a smart screen) in a specified area (such as an office hall or a bank hall), an end-side device can be connected to the display device, such as the end-side device can be connected to the display device through HDMI (High Definition Multimedia Interface, high-definition multimedia interface) or network signal source daisy chain. In this way, before sending the to-be-displayed content to the display device, the to-be-displayed content is first sent to the end-side device, and the end-side device sends the to-be-displayed content to the display device for display.

[0048] For example, in a local area network scenario, n+1 display screens in a specified area need to be managed, and n+1 end-side devices need to be deployed, each of which manages one display screen. In this way, the signal (i.e., to-be-displayed content) originally input directly to the display screen needs to be first input to the end-side device.

[0049] For all end-side devices in a specified area, one end-side device can be selected from these end-side devices as an edge device. In this way, the edge device has the functions of an end-side device and also has the functions of an edge device. For example, one end-side device is selected from n+1 end-side devices as an edge device.

[0050] InFigure 2 For example, in two specified areas, in the first specified area, there is one edge device and multiple end-side devices, and in the second specified area, there is one edge device and multiple end-side devices. Since the edge devices have the same processing mode, in subsequent embodiments, the processing of one edge device is taken as an example.

[0051] The center device can also be referred to as a center server. The center device is connected with each edge device. The center device can train multiple to-be-deployed models (such as model 1, model 2, model 3, etc.), and send each to-be-deployed model to the edge device, so that the edge device implements content management and control based on the multiple to-be-deployed models. Content management and control refers to performing abnormality detection on to-be-detected content (i.e., to-be-displayed content) displayed by a display device to obtain an abnormality detection result, which indicates whether the to-be-detected content is abnormal or not.

[0052] In the above application scenarios, an embodiment of the present application proposes a content management and control method based on end-side cooperation. In the content management and control method, the center device is responsible for overall content situation information collection, display, and unified configuration, the edge device is responsible for overall resource planning of the computing power of the end-side devices and reporting and issuing information within the local area network, and the end-side device is responsible for collecting specific content of content assets, participating in calculation, and actual management and control. Based on the three-layer networking architecture of the center device, the edge device, and the end-side device, through network self-organization, distributed computing power, content caching mechanism, and model lightweight deployment, end-side cooperative content management and control is achieved. For example, end-side cooperation refers to the cooperative linkage among the center device, the edge device, and the end-side device, including content asset management, content situation display, inspection and control of the edge device, unified strategy configuration issuing and updating, etc.

[0053] In an embodiment of the present application, the edge device initialization and network automatic construction process, the hierarchical distributed computing power deployment process, the task scheduling and distribution process, the business data flow process, and the content publishing and display and unified configuration process can be involved. The following will describe these processes in combination with specific application scenarios.

[0054] First, the edge device initialization and network automatic construction process.

[0055] For all end-side devices (such as n+1 end-side devices) in a specified area, one end-side device is selected from these end-side devices as an edge device, and the edge device is an effective WIFI source. The edge device needs to independently occupy one or more public network addresses, such as public IP or 4G network cards, that is, the edge device has network access permission and can communicate with the center device. The edge device is an effective WIFI source, and other end-side devices can connect to the edge device, and the end-side devices communicate through the edge device.

[0056] Exemplarily, after a certain end-side device is served as an edge device, the edge device has public network or non-local area network access permission, i.e., the edge device accesses the network. The edge device starts a WIFI with a name A as a hotspot, sets an IP address as an IP address B, and the hotspot of the edge device is not set with a password. For example, the hotspot name A can be configured arbitrarily, such as ScreenGuard, etc. The IP address B can be configured arbitrarily, such as 192.168.100.1.

[0057] The end-side device without network access permission can join the hotspot with the hotspot name A by default, and send a registration message to the IP address B, to perform local area network registration on the edge device through the registration message. The registration message can include a unique identifier of the end-side device. For example, the end-side device has written a serial number at the factory, which can be used as the unique identifier of the end-side device. For example, the registration message can be an MQTT (Message Queuing Telemetry Transport) registration message, and the end-side device can encrypt the MQTT registration message based on a built-in encryption certificate, and send the encrypted MQTT registration message to the edge device, and the edge device decrypts the MQTT registration message.

[0058] After receiving the registration message of the end-side device, the edge device can parse the unique identifier of the end-side device from the registration message, and store the unique identifier of the end-side device in a registration information table.

[0059] After a period of time, the edge device starts the WIFI with the name A as a hotspot, sets the IP address as the IP address B, and the hotspot of the edge device is set with a password C. Based on the unique identifier of each end-side device in the registration information table, the edge device can send the password C of the hotspot to each end-side device.

[0060] Each end-side device without network access permission can join the hotspot with the hotspot name A based on the password C. When the end-side device joins the hotspot with the hotspot name A, the edge device determines whether the unique identifier of the end-side device exists in the registration information table. If not, the edge device prohibits the end-side device to access the network, and if yes, the edge device allows the end-side device to access the network, i.e., the end-side device has network access permission.

[0061] In summary, each end-side device joins the hotspot of the edge device, can be connected to the edge device, and each end-side device can communicate through the edge device. After all the end-side devices are physically deployed, the local area network is also connected and registered synchronously. Thus, the network self-organization (i.e., small local area network network self-organization) between the edge device and the end-side device is completed. The network self-organization refers to that the edge device performs network self-organization through WIFI or local area network wired manner, reduces public network address occupation, and the end-side device joins the network through the hotspot.

[0062] After the network self-assembly is completed, the center device, the edge device and the end-side device all access the network. Since the edge device is selected from all the end-side devices, the edge device and the end-side device can be the same device. The difference between the edge device and the end-side device is that the edge device is used for arranging network access and distributed computing task distribution docking, and the end-side device is used for undertaking detection tasks and completing business functions (such as displaying content).

[0063] For example, the edge device can obtain the transmission delay between each end-side device and form a network condition matrix table. The network condition matrix table can be a symmetric matrix with a dimension of (n+1)*(n+1), where n represents the number of end-side devices only, and 1 represents the number of end-side devices and edge devices.

[0064] Table 1

[0065]

[0066] In Table 1, T12 represents the transmission delay between end-side device d1 and end-side device d2. For example, end-side device d1 sends a detection packet (such as a PING packet) to end-side device d2, obtains the transmission delay between end-side device d1 and end-side device d2 through the PING packet, and sends the transmission delay to the edge device. Similarly, T13 represents the transmission delay between end-side device d1 and end-side device d3, and so on. In addition, dn+1 represents the edge device, and T1n+1 represents the transmission delay between end-side device d1 and the edge device.

[0067] Second, hierarchical distributed computing deployment process.

[0068] For example, content detection can apply a deep learning model (such as multiple deep learning models) to perform anomaly detection on the to-be-detected content, and output whether the to-be-detected content is abnormal. The number of models, model size, device quantity, communication mode and other dimensions need to be combined to perform hierarchical distributed computing deployment. For the hierarchical distributed computing deployment process, the content management and control method based on end-side collaboration is proposed in the embodiments of the present application, as shown in Figure 3 The method can include the following steps:

[0069] Step 301, the edge device obtains a plurality of to-be-deployed models.

[0070] For example, the center device can train a plurality of to-be-deployed models and send the plurality of to-be-deployed models to the edge device, so that the edge device obtains the plurality of to-be-deployed models. These to-be-deployed models can be deep learning models, neural network models or other models, which are not limited.

[0071] For example, the plurality of to-be-deployed models can include model 1, model 2, model 3, model 4, and model 5, model 1 is used to detect whether there is type 1 anomaly, for example, after inputting the to-be-detected content into model 1, model 1 outputs an anomaly detection result, and the anomaly detection result indicates that the to-be-detected content has type 1 anomaly or does not have type 1 anomaly. Model 2 is used to detect whether there is type 2 anomaly, model 3 is used to detect whether there is type 3 anomaly, and model 4 is used to detect whether there is type 4 anomaly. Obviously, model 1, model 2, model 3, and model 4 can be binary classification models, which can also be called classifiers.

[0072] Model 5 is used to detect whether there is type 1, type 2, type 3, and type 4 anomaly, for example, after inputting the to-be-detected content into model 5, model 5 outputs an anomaly detection result, and the anomaly detection result indicates that the to-be-detected content has type 1 anomaly, or has type 2 anomaly, or has type 3 anomaly, or has type 4 anomaly, or does not have type 1, type 2, type 3, and type 4 anomaly.

[0073] Of course, model 1, model 2, model 3, model 4, and model 5 are only examples of the plurality of to-be-deployed models, and the to-be-deployed models are not limited. In the following, the five to-be-deployed models are taken as examples for description.

[0074] Step 302, the edge device obtains computing power data, the computing power data is used to obtain the computing power domain corresponding to the to-be-deployed model, that is, the edge device obtains the computing power domain corresponding to each to-be-deployed model based on the computing power data.

[0075] In one possible implementation, the computing power data can include but is not limited to at least one of the following:

[0076] The total size of the computing power resources of the end-side device: the total size of the computing power resources can be device computing power (Computing), and the computing power resources can be display memory resources, CPU resources, and memory resources, etc. Taking the display memory resources as an example, the total size of the computing power resources can be the total size of the display memory resources, that is, the total size of the display memory resources of the end-side device.

[0077] For example, assuming that all end-side devices are the same type of end-side device, that is, the total size of the computing power resources of all end-side devices is the same, the edge device can obtain the total size of the computing power resources.

[0078] Parameter total amount of the to-be-deployed model: The parameter total amount is also referred to as a parameter amount (Parameter) and indicates how many parameters the to-be-deployed model has, such as one million parameters, one hundred thousand parameters, and the like. For example, when the parameter total amount of the to-be-deployed model is large, a single end-side device cannot independently deploy the to-be-deployed model, and multiple end-side devices need to be coordinated to deploy the to-be-deployed model. When the parameter total amount of the to-be-deployed model is small, a single end-side device can independently deploy the to-be-deployed model, thereby improving hardware utilization.

[0079] For example, for each to-be-deployed model, the parameter total amount of the to-be-deployed model is known, so that the edge device can obtain the parameter total amount of the to-be-deployed model, that is, the parameter total amount of each to-be-deployed model.

[0080] Model architecture of the to-be-deployed model: The model architecture affects the parallel and serial computing possibilities of the to-be-deployed model. For example, if the to-be-deployed model is only sensitive word matching, serial deployment is considered (one input and multiple outputs), if it is conditional judgment, parallel deployment is considered, if it is MLP (Multilayer Perceptron, Multilayer Perceptron), serial deployment or parallel-serial hybrid deployment is considered.

[0081] For example, for each to-be-deployed model, the model architecture of the to-be-deployed model is known, so that the edge device can obtain the model architecture of the to-be-deployed model, that is, the model architecture of each to-be-deployed model.

[0082] For each to-be-deployed model, after the to-be-deployed model is divided into N sub-models, N can be a positive integer greater than 1, and based on the model architecture of the to-be-deployed model, the deployment mode of the N sub-models can be obtained, which can be a serial mode, a parallel mode, or a serial-parallel hybrid mode.

[0083] For example, after the to-be-deployed model is divided into sub-model 1 and sub-model 2, based on the model architecture of the to-be-deployed model, it is determined that the deployment mode of sub-model 1 and sub-model 2 is a serial mode.

[0084] After the to-be-deployed model is divided into sub-model 1, sub-model 2, and sub-model 3, based on the model architecture of the to-be-deployed model, the deployment mode of sub-model 1, sub-model 2, and sub-model 3 is a serial mode, the output of sub-model 1 is used as the input of sub-model 2, and the output of sub-model 2 is used as the input of sub-model 3.

[0085] After the to-be-deployed model is divided into sub-model 1, sub-model 2, sub-model 3, and sub-model 4, based on the model architecture of the to-be-deployed model, the deployment manner of sub-model 1, sub-model 2, sub-model 3, and sub-model 4 is a mixed manner of series and parallel, the output of sub-model 1 is taken as the input of sub-model 2, the output of sub-model 1 is taken as the input of sub-model 3, the output of sub-model 2 is taken as the input of sub-model 4, the output of sub-model 3 is taken as the input of sub-model 4, and the output of sub-model 4 is taken as the output of the to-be-deployed model.

[0086] Of course, the above is only an example, regardless of the division manner, that is, when the to-be-deployed model is divided into N sub-models, what is the value of N, such as 2, 3, 4, 5, 6, etc., based on the model architecture of the to-be-deployed model, the deployment manner of N sub-models can be known.

[0087] For example, the to-be-deployed model can be divided into N sub-models in a tensor parallel manner, and the deployment manner of the N sub-models can be a mixed manner of series and parallel. The tensor parallel manner refers to splitting each layer of the to-be-deployed model according to a pre-set number of sub-models, that is, each sub-model contains a part of the to-be-deployed model. For example, the to-be-deployed model is used to perform an X*A=Y operation, X is a 2-row 4-column matrix, A is a 4-row 2-column matrix, and Y is a 2-row 2-column matrix. The to-be-deployed model can be divided into sub-model 1, sub-model 2, and sub-model 3 in a tensor parallel manner, sub-model 1 is used to perform an X*A1=Y1 operation, A1 is the first column of A, sub-model 2 is used to perform an X*A2=Y2 operation, A2 is the second column of A, and sub-model 3 is used to perform an operation of splicing Y1 and Y2 into Y.

[0088] For example, the to-be-deployed model can be divided into N sub-models in a pipeline parallel manner, and the deployment manner of the N sub-models can be a series manner, a parallel manner, or a mixed manner of series and parallel. The pipeline parallel manner refers to splitting the to-be-deployed model into N sub-models according to the model architecture of the to-be-deployed model, if the layers of the to-be-deployed model are parallel, then the sub-models can be in a parallel manner, if the layers of the to-be-deployed model are in series, then the sub-models can be in a series manner, and if the layers of the to-be-deployed model are in series and parallel, then the sub-models can be in a mixed manner of series and parallel.

[0089] For example, the to-be-deployed model can be divided into N sub-models in a mixed manner of pipeline parallelism and tensor parallelism, and the deployment manner of the N sub-models can be a serial manner, a parallel manner, or a mixed manner of serial and parallel. For example, the to-be-deployed model includes four network layers (L1, L2, L3, and L4), and the to-be-deployed model is divided into eight sub-models in a mixed manner of pipeline parallelism and tensor parallelism. Sub-model 1 and sub-model 2 execute L1, L2, L3, and L4 in a tensor parallel manner, sub-model 1 executes L1, L2, L3, and L4 in series, and sub-model 2 executes L1, L2, L3, and L4 in series. Sub-model 3 and sub-model 4 execute L1, L2, L3, and L4 in a tensor parallel manner. Sub-model 5 and sub-model 6 execute L1, L2, L3, and L4 in a tensor parallel manner. Sub-model 7 and sub-model 7 execute L1, L2, L3, and L4 in a tensor parallel manner. In addition, sub-model 1, sub-model 3, sub-model 5, and sub-model 7 can be executed in parallel, and sub-model 2, sub-model 4, sub-model 6, and sub-model 8 can be executed in parallel.

[0090] Communication data volume: When the sub-models are deployed in series or in parallel, the to-be-computed data needs to be transmitted between the sub-models, and the communication data volume can represent the data volume of the to-be-computed data transmitted between the sub-models. The larger the communication data volume or the worse the network condition, the greater the communication loss.

[0091] For example, for each to-be-deployed model, after the to-be-deployed model is divided into N sub-models, the deployment manner of the N sub-models can be known, and the communication data volume between the N sub-models can be known.

[0092] For example, after the to-be-deployed model is divided into sub-model 1 and sub-model 2, the deployment manner of sub-model 1 and sub-model 2 is a serial manner, the output data (i.e., to-be-computed data) of sub-model 1 is used as the input of sub-model 2, the size of the output data represents the communication data volume between sub-model 1 and sub-model 2, and when the output data is 4*4, the communication data volume between sub-model 1 and sub-model 2 is 16. After the to-be-deployed model is divided into sub-model 1, sub-model 2, and sub-model 3, the deployment manner of sub-model 1, sub-model 2, and sub-model 3 is a serial manner, the size of the output data 1 of sub-model 1 represents the communication data volume between sub-model 1 and sub-model 2, and the size of the output data 2 of sub-model 2 represents the communication data volume between sub-model 2 and sub-model 3. Assuming that the output data 1 is 4*4 and the output data 2 is 6*6, the communication data volume between sub-model 1 and sub-model 2 is 16, and the communication data volume between sub-model 2 and sub-model 3 is 36.

[0093] Of course, the above is only an example, and regardless of the division manner, i.e., when the to-be-deployed model is divided into N sub-models, the communication data volume between the N sub-models can be known.

[0094] Network: The network condition can represent the network speed in the computing power domain. The slower the network speed (e.g., the farther the distance between the edge devices, the weaker the WIFI signal, and the slower the network speed), the worse the network condition. The faster the network speed, the better the network condition. In this embodiment, the network condition can be the network condition matrix table shown in Table 1, that is, the network condition can include the transmission delay between the edge devices.

[0095] Step 303, the edge device determines the number of devices corresponding to each to-be-deployed model.

[0096] For each to-be-deployed model, the number of devices corresponding to the to-be-deployed model, which can also be referred to as the optimal number of devices Q of the to-be-deployed model, can be calculated based on the total size of the computing power resources of the edge device, the total number of parameters of the to-be-deployed model, the model architecture of the to-be-deployed model, and the communication data volume, and the like.

[0097] For example, the number of devices corresponding to the to-be-deployed model can be determined by the following steps:

[0098] Step S11, based on the acquired parameter quantity that can be processed by a unit computing power resource, the total size of the computing power resources of the edge device, and the total number of parameters of the to-be-deployed model, the initial number of the to-be-deployed model is determined.

[0099] For example, the parameter quantity that can be processed by a unit computing power resource represents how many parameters can be processed by a unit computing power resource, such as 100 parameters of the to-be-deployed model that can be processed by a unit GPU resource. The parameter quantity that can be processed by a unit computing power resource is a known value, and the edge device can acquire the parameter quantity that can be processed by a unit computing power resource.

[0100] Based on the parameter quantity that can be processed by a unit computing power resource and the total size of the computing power resources of the edge device, the parameter quantity that can be processed by the edge device is determined, such as the product value of the two as the parameter quantity that can be processed by the edge device. For example, a unit GPU resource can process 100 parameters of the to-be-deployed model, and the total size of the computing power resources of the edge device is 10 unit GPU resources, so the parameter quantity that can be processed by the edge device is 1000.

[0101] Based on the total number of parameters of the to-be-deployed model and the parameter quantity that can be processed by the edge device, the initial number of the to-be-deployed model is determined, such as the quotient value of the two as the initial number of the to-be-deployed model. For example, the total number of parameters of the to-be-deployed model is 5000, and the parameter quantity that can be processed by the edge device is 1000, so the initial number of the to-be-deployed model is 5. Or, the total number of parameters of the to-be-deployed model is 3500, and the parameter quantity that can be processed by the edge device is 1000, so the initial number of the to-be-deployed model is 3.5.

[0102] Step S12, a plurality of candidate quantities are obtained, each candidate quantity is not less than the initial quantity.

[0103] For example, the number of candidate quantities can be configured according to experience, such as 5, 6, 7, 8, etc. Taking 6 candidate quantities as an example. The 6 candidate quantities can be selected arbitrarily, or selected by using an algorithm.

[0104] For example, if the initial quantity of the to-be-deployed model is 5, the plurality of candidate quantities can be 5, 6, 7, 8, 8.5, 9, etc., that is, 6 candidate quantities are selected arbitrarily, or the plurality of candidate quantities can be 5, 5.5, 6, 6.5, 7, 7.5, etc., that is, 6 candidate quantities are selected by using an algorithm, the first candidate quantity is the initial quantity, and each subsequent candidate quantity is the previous candidate quantity plus 0.5. This is not limited.

[0105] For example, if the initial quantity of the to-be-deployed model is 3.5, the plurality of candidate quantities can be 3.5, 4, 4.5, 5, 5.5, 6, etc., which is not limited, as long as the candidate quantity is not less than the initial quantity.

[0106] Step S13, for each candidate quantity, determine the calculation time consumption corresponding to the candidate quantity.

[0107] For example, for each candidate quantity, the to-be-deployed model can be split into N sub-models, N is determined based on the candidate quantity, that is, N is obtained by rounding up the candidate quantity. Assuming that the candidate quantity is 5, the to-be-deployed model can be split into 5 sub-models, assuming that the candidate quantity is 3.5, the to-be-deployed model can be split into 4 sub-models by rounding up the candidate quantity, and so on.

[0108] Determine the deployment mode of the N sub-models. The deployment mode can be a serial mode (i.e., a serial deployment mode), a parallel mode (i.e., a parallel deployment mode), or a serial-parallel hybrid mode (i.e., a serial-parallel hybrid deployment mode). Referring to step 302, the model architecture of the to-be-deployed model affects the sub-model deployment mode of the to-be-deployed model, therefore, based on the model architecture of the to-be-deployed model, the deployment mode of the N sub-models can be determined.

[0109] Based on the deployment mode of the N sub-models and the data processing time length of each sub-model, the calculation time consumption corresponding to the candidate quantity can be determined. For example, the data processing time length can represent the time length of processing data by a sub-model, that is, the time length from starting to process data to ending to process data. For example, after the to-be-deployed model is split into N sub-models, the edge device can obtain the data processing time length of each sub-model, and the manner of obtaining the data processing time length is not limited, which is related to the attributes of the to-be-deployed model.

[0110] For example, after the to-be-deployed model is divided into sub-model 1, sub-model 2 and sub-model 3, if the deployment modes of sub-model 1, sub-model 2 and sub-model 3 are serial modes, the calculation time consumption corresponding to the candidate number (3) is the data processing time length of sub-model 1 + the data processing time length of sub-model 2 + the data processing time length of sub-model 3. Or, after the to-be-deployed model is divided into sub-model 1, sub-model 2, sub-model 3 and sub-model 4, if the output of sub-model 1 is taken as the input of sub-model 2, the output of sub-model 1 is taken as the input of sub-model 3, the output of sub-model 2 is taken as the input of sub-model 4, and the output of sub-model 3 is taken as the input of sub-model 4, the calculation time consumption corresponding to the candidate number (4) is the data processing time length of sub-model 1 + the first data processing time length + the data processing time length of sub-model 4. If the data processing time length of sub-model 2 is greater than the data processing time length of sub-model 3, the first data processing time length is the data processing time length of sub-model 2, otherwise, the first data processing time length is the data processing time length of sub-model 3.

[0111] As can be seen from the above, in determining the calculation time consumption, for a sub-model deployed in series, the calculation time consumption corresponding to the candidate number includes the data processing time length of the sub-model. For a sub-model deployed in parallel, the calculation time consumption corresponding to the candidate number includes the data processing time length of the larger one of the sub-models 2.

[0112] Step S14, for each candidate number, determine the communication time consumption corresponding to the candidate number.

[0113] Referring to step 302, after the to-be-deployed model is split into N sub-models, N is determined based on the candidate number, and the communication data amount between the N sub-models can be obtained, such as the communication data amount between sub-model 1 and sub-model 2, the communication data amount between sub-model 2 and sub-model 3, and so on.

[0114] The data transmission time length between the sub-models can be obtained, which is determined based on the delay average of a plurality of device pairs, and a device pair includes two end-side devices, and the delay of a device pair represents the transmission delay between the two end-side devices. Referring to Table 1, all device pairs (such as d1 and d2 forming a device pair) are shown, and the delay average of all transmission delays (such as T12, T13,...) in Table 1 can be calculated, so that this delay average can be taken as the data transmission time length between the sub-models.

[0115] On this basis, for each candidate number, the communication time consumption corresponding to the candidate number can be determined based on the communication data amount between the N sub-models and the data transmission time length between the sub-models.

[0116] For example, after the to-be-deployed model is divided into sub-model 1, sub-model 2 and sub-model 3, if the deployment mode of sub-model 1, sub-model 2 and sub-model 3 is a serial mode, the communication time consumption corresponding to the candidate number (3) can be t1+t2, t1 can represent the time length of data from sub-model 1 to sub-model 2, and t2 can represent the time length of data from sub-model 2 to sub-model 3. t1 is the product of the communication data volume (the communication data volume between sub-model 1 and sub-model 2) and the data transmission time length, and t2 is the product of the communication data volume (the communication data volume between sub-model 2 and sub-model 3) and the data transmission time length.

[0117] Alternatively, after the to-be-deployed model is divided into sub-model 1, sub-model 2, sub-model 3 and sub-model 4, if the output of sub-model 1 is used as the input of sub-model 2, the output of sub-model 1 is used as the input of sub-model 3, the output of sub-model 2 is used as the input of sub-model 4, and the output of sub-model 3 is used as the input of sub-model 4, the communication time consumption corresponding to the candidate number (4) can be t3+t4. If the time length of data from sub-model 1 to sub-model 2 is greater than the time length of data from sub-model 1 to sub-model 3, t3 represents the time length of sub-model 1 to sub-model 2, otherwise, t3 represents the time length of sub-model 1 to sub-model 3. If the time length of data from sub-model 2 to sub-model 4 is greater than the time length of data from sub-model 3 to sub-model 4, t4 represents the time length of sub-model 2 to sub-model 4, otherwise, t4 represents the time length of sub-model 3 to sub-model 4.

[0118] In step S15, for each candidate number, the overall time consumption corresponding to the candidate number is determined based on the calculation time consumption and the communication time consumption corresponding to the candidate number, for example, the sum of the calculation time consumption and the communication time consumption as the overall time consumption.

[0119] For example, the overall time consumption corresponding to the candidate number is determined by the following formula: loss= + , loss represents the overall time consumption, represents the calculation time consumption, represents the communication time consumption.

[0120] In step S16, based on the overall time consumption corresponding to each candidate number, the candidate number corresponding to the minimum overall time consumption is determined as the device number corresponding to the to-be-deployed model, that is, the optimal device number Q. The optimal device number Q corresponding to the to-be-deployed model can be an integer or a decimal number, and no limitation is made in this regard.

[0121] For example, as the number of end-side devices participating in the calculation increases, the main component of the overall time consumption of the to-be-deployed model will change from the calculation time consumption to the communication time consumption, therefore, the curve of the overall time consumption and the number of end-side devices can be fitted, as shown in FIG. 2.Figure 4 As shown, a curve diagram of overall time consumption and the number of end-side devices is shown.

[0122] In Figure 4 the abscissa represents the number of end-side devices, and the ordinate represents the overall time consumption. Obviously, the number of candidates corresponding to the minimum overall time consumption (i.e. the lowest point) can be used as the number of devices Q corresponding to the to-be-deployed model. Before the minimum overall time consumption, the main component of the overall time consumption is the calculation time consumption, and the calculation time consumption becomes smaller and smaller as the number of devices becomes larger and larger. After the minimum overall time consumption, the main component of the overall time consumption is the communication time consumption, and the communication time consumption becomes larger and larger as the number of devices becomes larger and larger.

[0123] In this way, by taking the sum of the calculation time consumption and the communication time consumption as the overall time consumption, and minimizing the overall time consumption, the number of candidates corresponding to the minimum overall time consumption is used as the optimal number of devices Q of the to-be-deployed model.

[0124] Up to now, step 303 is completed, and the number of devices corresponding to each to-be-deployed model can be obtained.

[0125] Step 304, the edge device determines the number of computing power domains corresponding to each to-be-deployed model based on the total number of end-side devices (i.e. the total number of devices) and the number of devices corresponding to each to-be-deployed model.

[0126] Exemplarily, the number of computing power domains corresponding to each to-be-deployed model can be determined by the following steps:

[0127] Step S21, determine the consumed device number of all to-be-deployed models based on the number of devices corresponding to each to-be-deployed model. The consumed device number can be the sum of the number of devices corresponding to all to-be-deployed models.

[0128] For example, assuming that the number of devices corresponding to the to-be-deployed model 1 is 5, the number of devices corresponding to the to-be-deployed model 2 is 4, the number of devices corresponding to the to-be-deployed model 3 is 3, the number of devices corresponding to the to-be-deployed model 4 is 1, and the number of devices corresponding to the to-be-deployed model 5 is 0.5, then the consumed device number can be 13.5.

[0129] Step S22, the quotient of the total number of end-side devices and the consumed device number is rounded down to obtain a first number. For example, the total number of end-side devices can include edge devices, such as the total number is n+1, or the total number of end-side devices can not include edge devices, such as the total number is n. Taking the total number of n+1 as an example.

[0130] For example, assuming that the total number of end-side devices is 100, i.e. there are 100 end-side devices in total, then the quotient of 100 / 13.5 can be rounded down, and the rounded-down value is used as the first number, i.e. the first number is 7.

[0131] Step S23, determining the remaining device quantity based on the total quantity of the terminal-side devices, the consumed device quantity and the first quantity. For example, first calculate the product value of the consumed device quantity and the first quantity, then calculate the difference value between the total quantity of the terminal-side devices and the product value, and the difference value is taken as the remaining device quantity.

[0132] For example, the remaining device quantity can be 100-13.5*7, that is, the remaining device quantity is 5.5.

[0133] Step S24, selecting part of the to-be-deployed models from all the to-be-deployed models, and determining the second quantity of the to-be-deployed model based on the device quantity corresponding to the to-be-deployed model and the remaining device quantity.

[0134] For example, the device quantity corresponding to the to-be-deployed model 1 is 5, the device quantity corresponding to the to-be-deployed model 5 is 0.5, and the sum of the two is the remaining device quantity, so the to-be-deployed model 1 and the to-be-deployed model 5 can be selected, the second quantity of the to-be-deployed model 1 is 1, and the second quantity of the to-be-deployed model 5 is 1.

[0135] For example, the device quantity corresponding to the to-be-deployed model 2 is 4, the device quantity corresponding to the to-be-deployed model 4 is 1, and the device quantity corresponding to the to-be-deployed model 5 is 0.5, and the sum of the three is the remaining device quantity, so the to-be-deployed model 1, the to-be-deployed model 4 and the to-be-deployed model 5 can be selected, the second quantity of the to-be-deployed model 1 is 1, the second quantity of the to-be-deployed model 4 is 1, and the second quantity of the to-be-deployed model 5 is 1.

[0136] In a possible implementation, for the remaining device quantity, the to-be-deployed model with high computing power requirement can be deployed preferentially. Considering that the device quantity corresponding to the to-be-deployed model 1 is the largest, the to-be-deployed model 1 is deployed preferentially, if the deployment requirement of the to-be-deployed model 1 is not met, the to-be-deployed model 2 is deployed preferentially, and so on. Based on this, the to-be-deployed model 1 and the to-be-deployed model 5 can be selected from all the to-be-deployed models.

[0137] Step S25, for each to-be-deployed model that is not selected, determining the computing power domain quantity corresponding to the to-be-deployed model based on the first quantity; and for each to-be-deployed model that is selected, determining the computing power domain quantity corresponding to the to-be-deployed model based on the first quantity and the second quantity of the to-be-deployed model.

[0138] For example, for the unselected to-be-deployed model 2, to-be-deployed model 3 and to-be-deployed model 4, the number of computing power domains corresponding to these to-be-deployed models is the first number, i.e., the number of computing power domains is 7. For the selected to-be-deployed model 1 and to-be-deployed model 5, the number of computing power domains corresponding to these to-be-deployed models is the sum of the first number and the second number, i.e., the number of computing power domains is 8. In summary, the number of computing power domains of the to-be-deployed model 1 is 8, the number of computing power domains of the to-be-deployed model 2 is 7, the number of computing power domains of the to-be-deployed model 3 is 7, the number of computing power domains of the to-be-deployed model 4 is 7, and the number of computing power domains of the to-be-deployed model 5 is 8.

[0139] At this point, step 304 is completed, and the number of computing power domains corresponding to each to-be-deployed model is obtained.

[0140] Step 305: The edge device sequentially traverses each to-be-deployed model as a current to-be-deployed model.

[0141] For example, the edge device first traverses the to-be-deployed model 1 as a current to-be-deployed model, and executes the subsequent steps for the to-be-deployed model 1. After the processing of the to-be-deployed model 1 is completed, the edge device traverses the to-be-deployed model 2 as a current to-be-deployed model, executes the subsequent steps for the to-be-deployed model 2, and so on.

[0142] In a possible implementation, the traversal order of the to-be-deployed models can be determined by the following steps:

[0143] Step S31: For each to-be-deployed model, determine the target traffic corresponding to the to-be-deployed model, which can be the sum of the first traffic, the second traffic and the third traffic.

[0144] For example, assuming that the number of devices corresponding to the to-be-deployed model (i.e., the optimal number of devices Q) is M, the to-be-deployed model needs to be split into M sub-models, the first traffic can be the traffic of the edge device sending the to-be-detected content to the first sub-model (i.e., the task traffic), the second traffic can be the communication data amount between the M sub-models, and the third traffic can be the traffic of the last sub-model returning the anomaly detection result to the edge device. Obviously, if the number of M is 1, the second traffic is 0.

[0145] Assuming that the size of the content to be detected sent by the edge device to the first sub-model is 32*32, the first traffic is 1024. Assuming that the M sub-models are 5 sub-models, and the sub-model 5 is the last sub-model, then the second traffic is determined based on the size of the output data 1 of the sub-model 1, the size of the output data 2 of the sub-model 2, the size of the output data 3 of the sub-model 3, and the size of the output data 4 of the sub-model 4. For example, the size of the output data 1 is 4*4, the size of the output data 2 is 6*6, the size of the output data 3 is 4*4, and the size of the output data 4 is 6*6. Then the second traffic is 104 (16+36+16+36). Assuming that the size of the abnormal detection result returned by the sub-model 5 to the edge device is 1*1, the third traffic is 1.

[0146] In step S32, based on the target traffic corresponding to each to-be-deployed model, all to-be-deployed models are sorted in descending order of target traffic, that is, the traversal order of the to-be-deployed models is obtained.

[0147] For example, if the target traffic corresponding to the to-be-deployed model 2 is greater than the target traffic corresponding to the to-be-deployed model 1, the target traffic corresponding to the to-be-deployed model 1 is greater than the target traffic corresponding to the to-be-deployed model 3, the target traffic corresponding to the to-be-deployed model 3 is greater than the target traffic corresponding to the to-be-deployed model 4, and the target traffic corresponding to the to-be-deployed model 4 is greater than the target traffic corresponding to the to-be-deployed model 5, the sorting result is to-be-deployed model 2, to-be-deployed model 1, to-be-deployed model 3, to-be-deployed model 4, and to-be-deployed model 5.

[0148] Based on the sorted plurality of to-be-deployed models, starting from the first to-be-deployed model, each to-be-deployed model is traversed as a current to-be-deployed model in turn. For example, the to-be-deployed model 2 is traversed as a current to-be-deployed model first, and after the processing of the to-be-deployed model 2 is completed, the to-be-deployed model 1 is traversed as a current to-be-deployed model, and so on, until all to-be-deployed models are traversed as a current to-be-deployed model.

[0149] In step 306, the edge device obtains K computing power domains corresponding to the current to-be-deployed model.

[0150] For example, for each computing power domain, the computing power domain includes M end-side devices; K represents the number of computing power domains corresponding to the current to-be-deployed model, and M is determined based on the number of devices corresponding to the current to-be-deployed model. For example, the number of computing power domains K of the to-be-deployed models 1, 2, 3, 4, and 5 is 8, 7, 7, 7, and 8 in turn. M is obtained by rounding up the number of devices corresponding to the current to-be-deployed model. For example, if the number of devices corresponding to the current to-be-deployed model is 5, M is 5, and if the number of devices corresponding to the current to-be-deployed model is 3.5, M is 4.

[0151] For example, first, the first computing power domain corresponding to the current to-be-deployed model can be acquired, the first computing power domain can include M end-side devices, such as end-side devices 1-5, then, the second computing power domain corresponding to the current to-be-deployed model can be acquired, the second computing power domain can include M end-side devices, such as end-side devices 6-10, and so on, until the Kth computing power domain corresponding to the current to-be-deployed model is acquired.

[0152] For example, the following steps can be used to acquire each computing power domain corresponding to the current to-be-deployed model:

[0153] In step S41, candidate end-side devices allowed to be used are acquired. The candidate end-side devices can be end-side devices not selected by existing computing power domains, or the candidate end-side devices can be end-side devices selected by existing computing power domains, and the existing computing power domains do not occupy all computing power resources of the candidate end-side devices.

[0154] For example, when acquiring the computing power domain corresponding to the current to-be-deployed model, since the computing power domain includes M end-side devices (M is the number of devices rounded up), M end-side devices need to be selected as a computing power domain. However, the computing power domain only needs to occupy the number of devices computing power resources. For example, if the number of devices is 3.5, although 4 end-side devices are selected as a computing power domain, the computing power domain only occupies the complete computing power resources of 3 end-side devices and part of the computing power resources (such as 0.5 times of all computing power resources) of 1 end-side device. On this basis, if the number of devices and the value of M are the same, such as both are 5, all end-side devices not selected by existing computing power domains are used as candidate end-side devices.

[0155] If the number of devices and the value of M are different, such as the number of devices is 3.5 and M is 4, all end-side devices not selected by existing computing power domains are used as candidate end-side devices, and for end-side devices selected by existing computing power domains, end-side devices not occupied by the existing computing power domains are used as candidate end-side devices.

[0156] For example, if the number of devices corresponding to the existing computing power domain is 3.5 and the existing computing power domain selects 4 end-side devices, the complete computing power resources of 3 end-side devices are occupied, and part of the computing power resources (such as 0.5 times of all computing power resources) of the 4th end-side device are occupied. In this way, the 3 end-side devices whose complete computing power resources are occupied cannot be used as candidate end-side devices, and the 4th end-side device can be used as a candidate end-side device.

[0157] In step S42, a plurality of device sets are constructed based on all candidate end-side devices. For each device set, the device set includes M candidate end-side devices, and M is the number of devices rounded up.

[0158] For example, assuming that M is 5 and the number of candidate end-side devices is 6, then device set 1 includes candidate end-side devices 1, 2, 3, 4, 5, device set 2 includes candidate end-side devices 1, 2, 3, 4, 6, device set 3 includes candidate end-side devices 1, 2, 3, 5, 6, device set 4 includes candidate end-side devices 1, 2, 4, 5, 6, device set 5 includes candidate end-side devices 1, 3, 4, 5, 6, and device set 6 includes candidate end-side devices 2, 3, 4, 5, 6, so that a total of 6 device sets can be obtained.

[0159] In step S43, for each device set, a communication loss corresponding to the device set is obtained, which can be determined based on the delay of all device pairs (each composed of any two candidate end-side devices) corresponding to the device set, and the delay of a device pair represents the transmission delay between the two candidate end-side devices.

[0160] For example, assuming that device set 1 includes candidate end-side devices 1, 2, 3, 4, and 5, the communication loss corresponding to the device set 1 can be t12+t13+t14+t15+t23+t24+t25+t34+t35+t45.

[0161] Wherein, t12 represents the transmission delay between candidate end-side device 1 and candidate end-side device 2, which is obtained by querying table 1, t13 represents the transmission delay between candidate end-side device 1 and candidate end-side device 3, t24 represents the transmission delay between candidate end-side device 2 and candidate end-side device 4, and so on.

[0162] For example, assuming that device set 1 includes candidate end-side devices 1, 2, 3, 4, and 5, the communication loss corresponding to the device set 1 can be t12+t13+t14+t15+t23+t24+t25+t34+t35+t45+t0. Wherein, t0 represents the transmission delay between the edge device and any candidate end-side device (1, 2, 3, 4, 5), or t0 represents the minimum transmission delay between the edge device and candidate end-side devices 1, 2, 3, 4, and 5, or t0 represents the maximum transmission delay between the edge device and candidate end-side devices 1, 2, 3, 4, and 5.

[0163] In step S44, based on the communication loss corresponding to each device set, the M candidate end-side devices in the device set corresponding to the minimum communication loss are divided into one computing power domain corresponding to the current to-be-deployed model.

[0164] For example, assuming that the communication loss corresponding to device set 5, then the M candidate end-side devices (such as candidate end-side devices 1, 3, 4, 5, and 6) in device set 5 are divided into one computing power domain corresponding to the current to-be-deployed model, that is, the computing power domain can include candidate end-side devices 1, 3, 4, 5, and 6.

[0165] Then, determine whether K computing power domains corresponding to the current model to be deployed have been obtained. If not, repeat steps S41-S44 to obtain another computing power domain corresponding to the current model to be deployed, and so on, until K computing power domains corresponding to the current model to be deployed are obtained, and execute subsequent step 307.

[0166] For example, after sorting all the models to be deployed in descending order according to the target communication volume, each model to be deployed is traversed in turn as the current model to be deployed. By obtaining the K computing power domains corresponding to the current model to be deployed, the overall model deployment time can be optimized to determine the computing power domain to which each device belongs. This can be simply understood as deploying the device with the largest communication data volume on the link with the best network conditions.

[0167] Step 307: The edge device splits the current model to be deployed into M sub-models; for each computing power domain, the M sub-models are deployed to the M end-side devices of the computing power domain, and each end-side device corresponds to one sub-model.

[0168] For example, assuming M is 3, the edge device splits the model to be deployed into sub-model 1, sub-model 2, and sub-model 3. The edge device deploys sub-model 1 to device a1 on the edge of the first computing domain, sub-model 2 to device a2 on the edge of the first computing domain, and sub-model 3 to device a3 on the edge of the first computing domain. The edge device then deploys sub-model 1 to device b1 on the edge of the second computing domain, sub-model 2 to device b2 on the edge of the second computing domain, and sub-model 3 to device b3 on the edge of the second computing domain. This process continues in this order, until all sub-models are deployed to K computing domains.

[0169] Step 308: The edge device obtains the computing power graph of the current model to be deployed.

[0170] Exemplarily, the root node of the computing power graph is an edge device, and the next-level node of the edge device is the first-level end-side device of each computing power domain. For the i-th level end-side device, which is not the last level end-side device, the next-level node of this end-side device is the i+1-th level end-side device of each computing power domain. For the last level end-side device, the next-level node of this end-side device is an edge device.

[0171] For example, taking M as 3, assuming that sub-model 1, sub-model 2 and sub-model 3 are serial, if K computing power domains are 3 computing power domains, the computing power diagram can be seen in Figure 5A As shown. Figure 5AIn the embodiment, the end-side device a1 is the first-level end-side device of the computing power domain 1 (for deploying the sub-model 1), the end-side device a2 is the second-level end-side device of the computing power domain 1 (for deploying the sub-model 2), and the end-side device a3 is the third-level end-side device of the computing power domain 1 (for deploying the sub-model 3). The end-side device b1 is the first-level end-side device of the computing power domain 2, the end-side device b2 is the second-level end-side device of the computing power domain 2, and the end-side device b3 is the third-level end-side device of the computing power domain 2. The end-side device c1 is the first-level end-side device of the computing power domain 3, the end-side device c2 is the second-level end-side device of the computing power domain 3, and the end-side device c3 is the third-level end-side device of the computing power domain 3.

[0172] For example, taking M as 4, assuming that the sub-model 2 and the sub-model 3 are parallel, if the K computing power domains are 3, the computing power diagram can be referred to as shown in FIG. 4. Figure 5B Figure 5B In the embodiment, the end-side device a1 is the first-level end-side device of the computing power domain 1 (for deploying the sub-model 1), the end-side device a2 is the second-level end-side device of the computing power domain 1 (for deploying the sub-model 2), and the end-side device a3 is the second-level end-side device of the computing power domain 1 (for deploying the sub-model 3), that is, the end-side device a2 and the end-side device a3 are parallel and both are the second-level end-side devices, and the end-side device a4 is the third-level end-side device of the computing power domain 1 (for deploying the sub-model 4).

[0173] Similarly, the end-side device b1 is the first-level end-side device of the computing power domain 2, the end-side device b2 and the end-side device b3 are the second-level end-side devices of the computing power domain 2, the end-side device b4 is the third-level end-side device of the computing power domain 2, the end-side device c1 is the first-level end-side device of the computing power domain 3, the end-side device c2 and the end-side device c3 are the second-level end-side devices of the computing power domain 3, and the end-side device c4 is the third-level end-side device of the computing power domain 3.

[0174] At this point, the computing power diagram of the current to-be-deployed model is obtained. Then, it is determined whether all to-be-deployed models have been traversed. If not, the next to-be-deployed model of the current to-be-deployed model is taken as the current to-be-deployed model, and steps 306-308 are repeated, and this is repeated until all to-be-deployed models are traversed, so that the computing power diagram of each to-be-deployed model is obtained, and each to-be-deployed model is split into M sub-models, and the M sub-models are deployed to the M end-side devices of the K computing power domains.

[0175] ​In summary, for each to-be-deployed model, the end-side device where the first sub-model of the to-be-deployed model is located is connected with the edge device, and the end-side device where the last sub-model of the to-be-deployed model is located is connected with the edge device. For the end-side devices where the plurality of sub-models of the to-be-deployed model are located, the end-side devices with algorithm dependency are connected, such as the serially deployed end-side devices are connected, and the parallelly deployed end-side devices are connected. In addition, the algorithm domains deploying the same sub-model are hierarchically connected, that is, the first-level end-side devices (the first-level end-side devices within each algorithm domain) need to be connected with the second-level end-side devices of all algorithm domains.

[0176] Up to now, the hierarchical distributed algorithm deployment process is completed, the algorithm domain of each to-be-deployed model can be obtained, and the algorithm graph of each to-be-deployed model can be obtained, and the to-be-deployed model is deployed to the end-side device.

[0177] Third, task scheduling and allocation process. For example, when any to-be-deployed model is used for abnormality detection, the algorithm graph of the to-be-deployed model is used for abnormality detection on the to-be-detected content to obtain the abnormality detection result corresponding to the to-be-detected content. For example, the task scheduling and allocation process includes the following steps:

[0178] Step S51, if the edge device determines that the to-be-detected content obtained needs to be detected by the to-be-deployed model, the next level node of the edge device is determined based on the algorithm graph of the to-be-deployed model. Wherein, the next level node can include the first-level end-side devices of the K algorithm domains corresponding to the to-be-deployed model.

[0179] For example, if it is determined that the to-be-detected content needs to be detected by the to-be-deployed model 1, the task scheduling and allocation process is executed based on the to-be-deployed model 1. If it is determined that the to-be-detected content needs to be detected by the to-be-deployed model 2, the task scheduling and allocation process is executed based on the to-be-deployed model 2, and so on.

[0180] For example, when the to-be-detected content is detected by a to-be-deployed model, the next level node of the edge device needs to be determined based on the algorithm graph of the to-be-deployed model. For example, referring to the algorithm graph shown in Figure 5A and Figure 5B The next level node of the edge device can include the end-side device a1, the end-side device b1 and the end-side device c1, which are the first-level end-side devices of the K algorithm domains.

[0181] Step S52, the edge device selects a target end-side device from the first-level end-side devices of the K algorithm domains.

[0182] For example, based on the delay between each first-level end-side device and the edge device (i.e., the transmission delay between the end-side device and the edge device, which can be obtained by querying Table 1), the edge device can select the first-level end-side device corresponding to the minimum delay as the target end-side device. Alternatively,

[0183] The edge device can select the first-level end-side device in an idle state as the target end-side device. For example, the first-level end-side device can send an idle message to the edge device when the device is in an idle state, indicating that the device is in an idle state. In this way, the edge device can learn which end-side devices are in an idle state, and then select the first-level end-side device in an idle state as the target end-side device. Alternatively,

[0184] For each first-level end-side device, the edge device determines the idle time of the first-level end-side device based on the delay between the first-level end-side device and the edge device, and the processing completion time of the first-level end-side device for the allocated data, and selects the first-level end-side device with the earliest idle time as the target end-side device.

[0185] For example, by querying Table 1, the edge device can learn the delay t11 between end-side device a1 and the edge device, the delay t21 between end-side device b1 and the edge device, and the delay t31 between end-side device c1 and the edge device.

[0186] End-side device a1 can periodically report the current task state of the end-side device. The current task state can be an idle timestamp t12, which indicates the processing completion time of end-side device a1 for the allocated data, i.e., all allocated data is processed at idle timestamp t12, and end-side device a1 is idle from idle timestamp t12. Similarly, end-side device b1 reports an idle timestamp t22, which indicates the processing completion time of end-side device b1, and end-side device c1 reports an idle timestamp t32, which indicates the processing completion time of end-side device c1.

[0187] For example, the idle timestamp refers to the timestamp after the end-side device has processed all the to-be-detected data. The idle timestamp can be earlier than the current time (i.e., the end-side device is always idle), or the idle timestamp can be later than the current time (i.e., the end-side device is always running, and the end-side device can have tasks accumulated and queued).

[0188] Based on the delay t11 of the edge device and the idle timestamp t12 of the edge device, the edge device can determine the idle time of the edge device a1. For example, calculate the sum of the current time and the delay t11, if the sum is later than the idle timestamp t12, the sum is the idle time of the edge device a1, if the sum is not later than the idle timestamp t12, the idle timestamp t12 is the idle time of the edge device a1. Similarly, the idle time of the edge device b1 and the idle time of the edge device c1 can be obtained.

[0189] Based on the idle time of each first-level edge device, the first-level edge device with the earliest idle time can be selected as the target edge device, and thus the edge device can obtain the target edge device.

[0190] In step S53, the edge device sends the to-be-detected content to the target edge device, so that the target edge device processes the to-be-detected content based on the deployed sub-model to obtain intermediate features, selects an edge device from the next-level edge devices of the K computing power domains based on the computing power diagram, and sends the intermediate features to the selected edge device, and so on, until the intermediate features are sent to the last-level edge device.

[0191] For example, assuming that the target edge device is the edge device a1, the edge device sends the to-be-detected content to the edge device a1, and the edge device a1 processes the to-be-detected content based on the deployed sub-model 1 to obtain intermediate features 1 after receiving the to-be-detected content. The processing process is not limited.

[0192] Based on Figure 5A As shown in the computing power diagram, the next-level edge devices of the edge device a1 include the edge device a2, the edge device b2 and the edge device c2, that is, the next-level nodes of the edge device a1 are determined based on the computing power diagram, and the next-level nodes can include the next-level edge devices of the K computing power domains.

[0193] Then, the end-side device a1 selects one end-side device (i.e., the target end-side device for the end-side device a1) from the K next-level end-side devices of the computing power domains, and the end-side device a1 sends the intermediate feature 1 to the selected end-side device. As to how to select the target end-side device for the end-side device a1, the end-side device a1 can select the target end-side device by itself, i.e., the end-side device a1 selects the target end-side device for the end-side device a1 based on the latency of the next-level end-side devices and the end-side device a1, the processing completion time of the next-level end-side devices for the assigned data, etc. The selection manner can refer to step S52, and will not be repeated here. Alternatively, the edge device can select (e.g., based on the latency of the next-level end-side devices and the end-side device a1, the processing completion time of the next-level end-side devices for the assigned data, etc.) and inform the end-side device a1 of the selected end-side device, so that the end-side device a1 knows the target end-side device for the end-side device a1.

[0194] For example, assuming that the selected end-side device is the end-side device b2, the end-side device a1 sends the intermediate feature 1 to the end-side device b2. After receiving the intermediate feature 1, the end-side device b2 processes the intermediate feature 1 based on the deployed sub-model 2 to obtain an intermediate feature 2. The processing process is not limited.

[0195] Based on the computing power diagram shown in FIG. 6, the next-level end-side devices of the end-side device b2 include the end-side device a3, the end-side device b3, and the end-side device c3, i.e., the next-level nodes of the end-side device b2 are determined based on the computing power diagram, and the next-level nodes can include the next-level end-side devices of the K computing power domains. Figure 5A Then, the end-side device b2 selects one end-side device (i.e., the target end-side device for the end-side device b2) from the K next-level end-side devices of the computing power domains. The selection manner of the end-side device b2 is the same as that of the end-side device a1, and will not be repeated here. The end-side device b2 sends the intermediate feature 2 to the selected end-side device. Assuming that the selected end-side device is the end-side device b3, the end-side device b2 sends the intermediate feature 2 to the end-side device b3. In this way, the intermediate feature can be sent to the last-level end-side device, and the last-level end-side device processes the intermediate feature based on the deployed sub-model to obtain an anomaly detection result.

[0196] After receiving the intermediate feature 2, the end-side device b3 processes the intermediate feature 2 based on the deployed sub-model 3 to obtain an anomaly detection result. Based on the computing power diagram shown in FIG. 6, the next-level device of the end-side device b3 is the edge device, and therefore, the anomaly detection result is sent to the edge device.

[0197] Figure 5A

[0198] ​​From the above, it can be seen that the selection method for the end-side device can be carried out by the end-side device itself at a level, or it can be uniformly scheduled by the edge device. When selecting at a level, after the task of the current end-side device is completed, the current end-side device selects from the end-side devices of the next level based on the comprehensive communication delay and the expected idle time of the device, and selects the end-side device with the earliest task completion time among the end-side devices of the next level. In the case of unified scheduling, after the edge device receives the detection task, it selects the path based on the computing power graph, calculates the communication delay and the expected idle time of the device at each level of the end-side device, and after completing the optimal path selection, determines the detection target and the optimal path sequence, and then transfers the task according to the optimal path sequence.

[0199] At this point, step S53 is completed, and anomaly detection can be performed on the content to be detected to obtain an anomaly detection result.

[0200] Figure 5B and Figure 5A In contrast, if the next level of end-side devices in the K computing domains for end-side device a1 includes end-side devices a2, b2, and c2, then one end-side device is selected from these devices and intermediate feature 1 is sent to this end-side device. Furthermore, if the next level of end-side devices in the K computing domains for end-side device a1 includes end-side devices a3, b3, and c3, then one end-side device is selected from these devices and intermediate feature 1 is sent to this end-side device simultaneously. This allows intermediate feature 1 to be output to the end-side devices of the two sub-models (sub-model 2 and sub-model 3), enabling parallel processing of intermediate feature 1.

[0201] Step S54: The edge device receives the abnormality detection result corresponding to the content to be detected.

[0202] Step S55: If the abnormality detection result indicates that the content is normal, the edge device sends the content to be detected to the display device connected to the end-side device, and the display device displays the content to be detected. For example, the edge device first sends the content to be detected to the end-side device (such as all end-side devices or some end-side devices), and the end-side device sends the content to be detected to the display device, which then displays the content to be detected.

[0203] Alternatively, if the anomaly detection result indicates that the content is abnormal, the display of the detected content is prohibited. The edge device can send specified content (i.e., pre-configured content, i.e., model content) to the end-side device, which then sends the specified content to the display device, which then displays the specified content. Alternatively, the edge device can not send any content and not display the relevant content on the display device.

[0204] Fourth, the business data flow process. For example, the business data flow process can include a content situation information collection and display process, a content cache establishment process, which are described below.

[0205] For the content situation information collection and display process, 1, content asset basic information display: the current overall content asset situation can be displayed, which can include but is not limited to: asset online quantity, asset offline quantity, asset normal quantity, resource abnormal quantity, model type, content asset distribution, etc.

[0206] For example, assuming that there are 100 end-side devices, in the edge device initialization and network automatic construction process, if the edge device only receives the registration messages of 95 end-side devices, then the asset online quantity is 95 and the asset offline quantity is 5. In addition, for the 100 end-side devices, the edge device can obtain the end-side devices in the normal state and the end-side devices in the abnormal state, the asset normal quantity can represent the number of end-side devices in the normal state, and the resource abnormal quantity can represent the number of end-side devices in the abnormal state.

[0207] The model type refers to the detection type of the to-be-deployed model, such as to-be-deployed model 1 is used to detect whether there is type 1 anomaly, to-be-deployed model 2 is used to detect whether there is type 2 anomaly, and then the model type is used to indicate that to-be-deployed model 1 corresponds to type 1 and to-be-deployed model 2 corresponds to type 2.

[0208] The content asset distribution represents the distribution relationship between the sub-model and the end-side device, for example, sub-model 1 of to-be-deployed model 1 is distributed in end-side device a1, end-side device b1 and end-side device c1, sub-model 2 of to-be-deployed model 1 is distributed in end-side device a2, end-side device b2 and end-side device c2, sub-model 3 of to-be-deployed model 1 is distributed in end-side device a3, end-side device b3 and end-side device c3, and so on.

[0209] 2, the center device obtains the current content picture (i.e. the picture currently displayed by the display device) of the edge device and each end-side device by an active way, and displays the content picture in real time. Alternatively, the center device obtains the current content picture of the edge device and each end-side device by a passive way, and displays the content picture in real time.

[0210] 3, the center device can display the abnormal alarm content trend based on the detection alarm, and / or the center device can display the business trend based on the business alarm, to facilitate timely troubleshooting by the operation and maintenance personnel.

[0211] For example, the detection alarm is an alarm generated for an abnormal picture, for example, if the edge device determines that the abnormal detection result corresponding to the to-be-detected content indicates that the content is abnormal, a detection alarm can be generated. The abnormal alarm content trend can represent information of the abnormal content, such as information of the abnormal picture.

[0212] For example, the service alarm is an alarm generated by an abnormality of the end-side device. For example, if the edge device determines that the end-side device is disconnected, a service alarm is generated. If the edge device fails to distribute content to a certain end-side device, a service alarm is generated. The service trend can represent information about the abnormality of the end-side device.

[0213] 4. Each edge device performs disposal according to the configuration information and the abnormality detection result. For example, if an abnormality is found, a preset background image is used to replace the current image and output to the display screen, or the screen power is directly turned off.

[0214] When the configuration information indicates that a preset background image is used, if the abnormality detection result indicates that the to-be-detected content has an abnormality, the preset background image is used to replace the current image and output to the display screen. When the configuration information indicates that the screen power is turned off, if the abnormality detection result indicates that the to-be-detected content has an abnormality, the screen power is directly turned off.

[0215] For the content cache establishment process, the content cache can be maintained in the center device, and / or the content cache can be maintained in the edge device. The content cache is used to reduce the detection frequency of similar images or samples.

[0216] 1. Image content cache: The image content cache can include a plurality of image pixel-level hash values and detection labels. When the hash value of the to-be-detected image has a similarity greater than a threshold to a certain image pixel-level hash value in the image content cache, the corresponding detection label is directly reused for output, and no abnormality detection is performed.

[0217] 2. Video content cache: The video content cache can include a plurality of video hash values and detection labels. When the hash value of the to-be-detected video has a similarity greater than a threshold to a certain video hash value in the video content cache, the corresponding detection label is directly reused for output, and no abnormality detection is performed.

[0218] 3. File content cache: The file content cache can include a plurality of file hash values and detection labels. When the hash value of the to-be-detected file has a similarity greater than a threshold to a certain file hash value in the file content cache, the corresponding detection label is directly reused for output, and no abnormality detection is performed.

[0219] 4. Cache management: When the detection configuration is changed, the content cache is directly emptied (to avoid interference of historical labels on the detection result). When the content cache is not full, the corresponding hash and label values are written in each time a content is newly detected. When the content cache is full, one or more samples with the longest detection time are deleted, and a newly detected content is written in.

[0220] Based on the above technical concept, in the embodiment of the present application, after obtaining the to-be-detected content, the to-be-detected hash value corresponding to the to-be-detected content can be determined, and the determination manner of the to-be-detected hash value is not limited.

[0221] Then, the similarity between the to-be-detected hash value and the stored hash value in the content cache is determined. The content cache includes the stored hash value of the detected content (i.e. the to-be-detected content in the historical period) and the detection label of the detected content, and the detection label is used to represent the anomaly detection result of the detected content. For example, if the to-be-detected content is image content, the similarity between the to-be-detected hash value and the stored hash value in the image content cache is determined, if the to-be-detected content is video content, the similarity between the to-be-detected hash value and the stored hash value in the video content cache is determined, and if the to-be-detected content is file content, the similarity between the to-be-detected hash value and the stored hash value in the file content cache is determined.

[0222] Then, if the similarity between the to-be-detected hash value and any stored hash value is greater than a threshold value, it indicates that the to-be-detected content is similar to the detected content, and the detected content has completed anomaly detection in the historical period, therefore, the anomaly detection result of the to-be-detected content is determined based on the detection label corresponding to this stored hash value. For example, if the detection label corresponding to this stored hash value indicates that the content is abnormal, the anomaly detection result of the to-be-detected content can be content abnormal, and if the detection label corresponding to this stored hash value indicates that the content is normal, the anomaly detection result of the to-be-detected content can be content normal.

[0223] Or, if the similarity between the to-be-detected hash value and all stored hash values is not greater than the threshold value, the to-be-detected content needs to be detected for anomaly, i.e. the to-be-detected content needs to be detected for anomaly by the to-be-deployed model to obtain the anomaly detection result, and the detection manner can refer to the task scheduling and distribution process. After the detection is completed, the to-be-detected hash value (which can be used as a stored hash value) and the detection label corresponding to the anomaly detection result (which can be used as the detection label corresponding to the stored hash value) are stored in the content cache.

[0224] For example, after storing the to-be-detected hash value and the detection label in the content cache, if the number of stored hash values in the content cache exceeds a preset threshold value, at least one stored hash value and its corresponding detection label are deleted from the content cache, so that the number of stored hash values does not exceed the preset threshold value.

[0225] Fifth, content publishing display and unified configuration process. For example, the content publishing display and unified configuration process can include a center publishing task inspection and distribution process, and a center business self-learning and configuration distribution process.

[0226] For the center task inspection and delivery process, 1, in the event of an emergency or emergency, the center device can deliver emergency content for global content asset playback or control. 2, the user uploads an emergency video or picture or voice to the center device, regardless of the current content detection configuration, the center device uses the full algorithm with the most stringent threshold for detection, and confirms that there is no exception before delivering the playback task. 3, after the edge device receives the playback material (i.e. the detected content), it also uses the full algorithm with the most stringent threshold for detection, and confirms that there is no exception before delivering it to each end-side device. 4, each end-side device plays the received playback material.

[0227] Based on the above technical concept, in the embodiment of the present application, if the edge device receives the content detection configuration information sent by the center device, and the content detection configuration information is used to indicate that partial to-be-deployed models are used for anomaly detection, the edge device determines that the to-be-deployed model needs to be used for anomaly detection based on the content detection configuration information. For example, if the content detection configuration information is used to indicate that to-be-deployed model 1 and to-be-deployed model 4 are used for anomaly detection, the edge device uses to-be-deployed model 1 and to-be-deployed model 4 to perform anomaly detection on the acquired to-be-detected content, that is, the task scheduling and distribution process is performed for to-be-deployed model 1, and the task scheduling and distribution process is performed for to-be-deployed model 4.

[0228] If the edge device receives the global emergency information sent by the center device (i.e. in the event of an emergency or emergency, the center device sends global emergency information to the edge device), and the global emergency information is used to indicate that all to-be-deployed models are used for anomaly detection, the edge device determines that all to-be-deployed models need to be used for anomaly detection based on the global emergency information, that is, all to-be-deployed models are used for anomaly detection regardless of the current configuration.

[0229] For example, after receiving the global emergency information, the edge device uses all to-be-deployed models to perform anomaly detection on the acquired to-be-detected content, that is, the task scheduling and distribution process is performed for to-be-deployed model 1, the task scheduling and distribution process is performed for to-be-deployed model 2, the task scheduling and distribution process is performed for to-be-deployed model 3, and the task scheduling and distribution process is performed for to-be-deployed model 4, and so on.

[0230] For the center business self-learning and configuration delivery process, 1, each to-be-deployed model will have a false alarm when actually deployed, and after the to-be-deployed model is deployed for a period of time (such as one month), the default alarm ignoring method is used, the alarm information of the to-be-deployed model (i.e. the detection alarm generated by the to-be-deployed model, indicating that the anomaly detection result is content anomaly) is collected, and the false alarm is checked by the operation and maintenance personnel based on the alarm information.

[0231] 2. In combination with the false alarm processing of the alarm, fine-tuning the to-be-deployed model, that is, retraining the to-be-deployed model or adjusting the detection threshold of the to-be-deployed model, so as to optimize the to-be-deployed model.

[0232] 3. Configuration delivery: for self-learning results (models or thresholds), operation and maintenance personnel configuration modification (such as threshold configuration, base map update, algorithm activation, algorithm deactivation, alarm handling scheme), the center device delivers to the edge device through the MQTT channel, and the edge device delivers to each end-side device for execution.

[0233] For example, after the center device optimizes the to-be-deployed model, it can deliver the self-learning result (that is, the optimized to-be-deployed model or the threshold of the to-be-deployed model) to the edge device. The center device can deliver the threshold configuration scheme modified by the operation and maintenance personnel to the edge device, the center device can deliver the base map update method modified by the operation and maintenance personnel to the edge device, and the like. No limitation is made in this regard.

[0234] In a possible implementation, when transmitting data between the edge device and the center device, the data can be transmitted in an encrypted manner. The encryption method can be software algorithm encryption or hardware password card encryption. In the present embodiment, the content management and control not only includes the detection result of the content, but also includes the inspection of the business operation of the device itself (that is, the end-side device), such as the online state, the offline state, and the peripheral device management and control state (through the linkage screen physical box switch. If the physical box is opened, an alarm is generated).

[0235] As can be seen from the above technical solutions, in the present embodiment, even if the computing resources of each end-side device are limited, the computing resources of each end-side device can be comprehensively utilized (the algorithm distributed deployment and calculation are performed in a manner considering communication loss throughout the process. The to-be-deployed model can adopt distributed calculation, and the same picture is repeatedly detected through content caching), the computing resources are integrated, the computing resources can be fully and cooperatively utilized, the abnormal detection is efficiently completed, and the detection performance is good. The computing resources of all end-side devices can be reasonably allocated, and waste of computing resources can be avoided. The detection capabilities of the edge device and the center device are quite different, and the resources can be fully and cooperatively utilized (the center device deploys a large-scale model, and a small model is obtained through a lightweight manner, such as pruning, quantization, and distillation. The data preprocessing manners of the two models are the same, the small model is delivered to the edge device, and the small model is split into multiple sub-models by the edge device through the above method). When the edge device is deployed, it needs to independently occupy one or more public network addresses, such as a public IP or a 4G network card. Through a small local area network network self-assembly manner, multiple end-side devices can access the edge device.

[0236] Based on the same application concept as the above method, an embodiment of the present application proposes a content management and control device based on end-side cooperation, applied to an edge device, the edge device is used for content management and control of a plurality of end-side devices, as shown in Figure 6 The device includes:

[0237] A determination module 61 is configured to determine the number of devices corresponding to each to-be-deployed model; determine the number of computing power domains corresponding to each to-be-deployed model based on the total number of end-side devices and the number of devices corresponding to each to-be-deployed model; a obtaining module 62 is configured to sequentially traverse each to-be-deployed model as a current to-be-deployed model, obtain K computing power domains corresponding to the current to-be-deployed model, and for each computing power domain, the computing power domain includes M end-side devices; K represents the number of computing power domains of the current to-be-deployed model, and M is determined based on the number of devices of the current to-be-deployed model; a processing module 63 is configured to split the current to-be-deployed model into M sub-models; for each computing power domain, deploy the M sub-models to the M end-side devices of the computing power domain, and each end-side device corresponds to a sub-model; the obtaining module 62 is configured to obtain a computing power graph of the current to-be-deployed model, a root node of the computing power graph is an edge device, and a next-level node of the edge device is a first-level end-side device of each computing power domain; for an i-level end-side device, the i-level end-side device is not the last-level end-side device, and a next-level node of the end-side device is an i+1-level end-side device of each computing power domain; for the last-level end-side device, a next-level node of the end-side device is the edge device; wherein when any to-be-deployed model is used for anomaly detection, the computing power graph of the to-be-deployed model is used for anomaly detection on to-be-detected content to obtain an anomaly detection result.

[0238] For example, when determining the device quantity corresponding to each to-be-deployed model, the determination module 61 is specifically configured to: determine an initial quantity of the to-be-deployed model based on the acquired parameter quantity that can be processed by a unit computing resource, the total size of computing resources of the end-side device, and the total quantity of parameters of the to-be-deployed model; acquire a plurality of candidate quantities, each of which is not less than the initial quantity; for each candidate quantity, determine an overall time consumption corresponding to the candidate quantity based on the computing time consumption and the communication time consumption corresponding to the candidate quantity; and determine the candidate quantity corresponding to the minimum overall time consumption as the device quantity M corresponding to the to-be-deployed model based on the overall time consumption corresponding to each candidate quantity. For each candidate quantity, the to-be-deployed model is split into N sub-models when determining the computing time consumption and the communication time consumption corresponding to the candidate quantity, the deployment manner of the N sub-models is determined, N is determined based on the candidate quantity, and the deployment manner is a serial manner, a parallel manner, or a serial-parallel hybrid manner. The computing time consumption corresponding to the candidate quantity is determined based on the deployment manner of the N sub-models and the data processing time length of each sub-model. The communication time consumption corresponding to the candidate quantity is determined based on the communication data quantity between the N sub-models and the data transmission time length between the sub-models. The data transmission time length is determined based on the average value of the delay of a plurality of device pairs, and a device pair includes two end-side devices. The delay of a device pair represents the transmission delay between the two end-side devices.

[0239] For example, when determining the computing resource domain quantity corresponding to each to-be-deployed model based on the total quantity of end-side devices and the device quantity corresponding to each to-be-deployed model, the determination module 61 is specifically configured to: determine the consumed device quantity of all to-be-deployed models based on the device quantity corresponding to each to-be-deployed model, take the quotient of the total quantity of end-side devices and the consumed device quantity, and obtain a first quantity by rounding down; determine the remaining device quantity based on the total quantity of end-side devices, the consumed device quantity, and the first quantity; select part of the to-be-deployed models from all to-be-deployed models, determine the second quantity of the to-be-deployed model based on the device quantity corresponding to the to-be-deployed model and the remaining device quantity; for each to-be-deployed model that is not selected, determine the computing resource domain quantity corresponding to the to-be-deployed model based on the first quantity; and for each to-be-deployed model that is selected, determine the computing resource domain quantity corresponding to the to-be-deployed model based on the first quantity and the second quantity of the to-be-deployed model.

[0240] Illustratively, the acquisition module 62 sequentially traverses each to-be-deployed model as a current to-be-deployed model, and is specifically configured to: for each to-be-deployed model, determine a target traffic corresponding to the to-be-deployed model; wherein the target traffic is a sum of a first traffic, a second traffic, and a third traffic; wherein, when the to-be-deployed model is split into M sub-models, the first traffic is a traffic of the edge device sending to-be-detected content to a first sub-model, the second traffic is a communication data amount between the M sub-models, and the third traffic is a traffic of a last sub-model returning an abnormality detection result to the edge device; based on the target traffic corresponding to each to-be-deployed model, sort all to-be-deployed models in a descending order of the target traffic; and based on the sorted plurality of to-be-deployed models, sequentially traverse each to-be-deployed model as a current to-be-deployed model, starting from a first to-be-deployed model.

[0241] Illustratively, the acquisition module 62 acquires K computing power domains corresponding to the current to-be-deployed model, and is specifically configured to: when acquiring each computing power domain, acquire a candidate end-side device allowed to be used, the candidate end-side device being an end-side device not selected by an existing computing power domain, or the candidate end-side device being an end-side device selected by an existing computing power domain and not having all computing power resources of the candidate end-side device occupied by the existing computing power domain; construct a plurality of device sets based on all candidate end-side devices; for each device set, the device set including M candidate end-side devices, and any two candidate end-side devices forming a device pair; acquire a communication loss corresponding to each device set, the communication loss being determined based on a delay of all device pairs corresponding to the device set, the delay of the device pair representing a transmission delay between two candidate end-side devices; and based on the communication loss corresponding to each device set, divide M candidate end-side devices in a device set corresponding to a minimum communication loss to one computing power domain corresponding to the current to-be-deployed model.

[0242] Illustratively, the processing module 63 is further configured to, if it is determined that the to-be-detected content needs to be detected for abnormality by the to-be-deployed model, determine a next-level node of the edge device based on a computing power graph of the to-be-deployed model; wherein the next-level node includes first-level end-side devices of K computing power domains corresponding to the to-be-deployed model; select a target end-side device from the first-level end-side devices of the K computing power domains; wherein, based on a delay of each first-level end-side device and the edge device, a first-level end-side device corresponding to a minimum delay is selected as the target end-side device; or, a first-level end-side device in an idle state is selected as the target end-side device; or, for each first-level end-side device, based on a delay of the first-level end-side device and the edge device, a processing completion time of the first-level end-side device for the allocated data, an idle time of the first-level end-side device is determined, and a first-level end-side device with an earliest idle time is selected as the target end-side device.

[0243] sending the to-be-detected content to the target-side device, so that the target-side device obtains intermediate features by processing the to-be-detected content based on the deployed sub-model, selects one end-side device from the next-level end-side devices of the K computing power domains based on the computing power diagram, and sends the intermediate features to the selected end-side device, until the intermediate features are sent to the last-level end-side device, and the last-level end-side device obtains the anomaly detection result by processing the intermediate features based on the deployed sub-model;

[0244] receiving the anomaly detection result; if the anomaly detection result indicates that the content is normal, sending the to-be-detected content to a display device connected to the end-side device, and displaying the to-be-detected content through the display device.

[0245] For example, the processing module 63 is further configured to, after obtaining the to-be-detected content, determine a to-be-detected hash value corresponding to the to-be-detected content, determine a similarity between the to-be-detected hash value and a stored hash value in a content cache, wherein the content cache includes a stored hash value of a detected content and a detection label of the detected content, and the detection label is used to indicate an anomaly detection result of the detected content; if the similarity between the to-be-detected hash value and any stored hash value is greater than a threshold value, determining the anomaly detection result of the to-be-detected content based on a detection label corresponding to the stored hash value; if the similarity between the to-be-detected hash value and all stored hash values is not greater than the threshold value, obtaining the anomaly detection result of the to-be-detected content by performing anomaly detection on the to-be-detected content through a to-be-deployed model, and storing the to-be-detected hash value and a detection label corresponding to the anomaly detection result in the content cache.

[0246] For example, the processing module 63 is further configured to, if receiving content detection configuration information sent by the center device, the content detection configuration information being used to indicate that partial to-be-deployed models are used for anomaly detection, determining that the acquired to-be-detected content needs to be subjected to anomaly detection through the partial to-be-deployed models based on the content detection configuration information; or, if receiving global emergency information sent by the center device, the global emergency information being used to indicate that all to-be-deployed models are used for anomaly detection, determining that the acquired to-be-detected content needs to be subjected to anomaly detection through the all to-be-deployed models based on the global emergency information.

[0247] Based on the same application concept as the above method, the embodiments of the present application propose an electronic device (such as an edge device), as shown in Figure 7As shown, it includes: a processor 71 and a machine-readable storage medium 72, the machine-readable storage medium 72 stores machine-executable instructions that can be executed by the processor 71; the processor 71 is used to execute the machine-executable instructions to implement the content management method based on end-edge collaboration disclosed in the above example.

[0248] Based on the same application concept as the above method, an embodiment of the present application also provides a machine-readable storage medium, on which a number of computer instructions are stored. When the computer instructions are executed by the processor, the content management method based on end-edge collaboration disclosed in the above example of the present application can be implemented.

[0249] The machine-readable storage medium may be any electronic, magnetic, optical, or other physical storage device that may contain or store information, such as executable instructions, data, and the like. For example, the machine-readable storage medium may be: RAM (Random Access Memory), volatile memory, non-volatile memory, flash memory, a storage drive (such as a hard disk drive), a solid-state drive, any type of storage disk (such as a CD, DVD, etc.), or similar storage media, or a combination thereof.

[0250] Based on the same application concept as the above method, an embodiment of the present application also provides a computer program product, which may include a computer program. When the computer program is executed by a processor, it implements the content management method based on end-edge collaboration disclosed in the above example of the present application.

[0251] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may take the form of a fully hardware embodiment, a fully software embodiment, or an embodiment combining software and hardware. Furthermore, the embodiments of the present application may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0252] The foregoing is merely an embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application should all be included within the scope of the claims of the present application.

Claims

1. A content management method based on end-side cooperation, characterized in that, The method is applied to an edge device used for content management of a plurality of end-side devices, and comprises the following steps: determining the number of devices corresponding to each to-be-deployed model; based on the total number of end-side devices and the number of devices corresponding to each to-be-deployed model, determining the number of computing power domains corresponding to each to-be-deployed model; iterating each to-be-deployed model as a current to-be-deployed model in turn, obtaining K computing power domains corresponding to the current to-be-deployed model, and for each computing power domain, the computing power domain includes M end-side devices; K represents the number of computing power domains corresponding to the current to-be-deployed model, and M is determined based on the number of devices corresponding to the current to-be-deployed model; splitting the current to-be-deployed model into M sub-models; for each computing power domain, deploying the M sub-models to the M end-side devices of the computing power domain, and each end-side device corresponds to a sub-model; obtaining the computing power graph of the current to-be-deployed model, the root node of the computing power graph being the edge device, and the next level node of the edge device being the first level end-side device of each computing power domain; for the i-th level end-side device, the i-th level end-side device being not the last level end-side device, the next level node of the end-side device being the i+1-th level end-side device of each computing power domain; for the last level end-side device, the next level node of the end-side device being the edge device; 2. The method of claim 1, wherein, wherein, when any to-be-deployed model is used for anomaly detection, the computing power graph of the to-be-deployed model is used for anomaly detection on the to-be-detected content to obtain an anomaly detection result. For each to-be-deployed model, the process of determining the number of devices corresponding to the to-be-deployed model comprises the following steps: based on the parameter amount that can be processed by the unit computing power resource, the total size of the computing power resource of the end-side device, and the total parameter amount of the to-be-deployed model, determining the initial number of the to-be-deployed model; obtaining a plurality of candidate numbers, each candidate number being not less than the initial number; for each candidate number, based on the calculation time consumption and the communication time consumption corresponding to the candidate number, determining the overall time consumption corresponding to the candidate number; based on the overall time consumption corresponding to each candidate number, determining the candidate number corresponding to the minimum overall time consumption as the number of devices M corresponding to the to-be-deployed model; wherein, for each candidate number, when the calculation time consumption and the communication time consumption corresponding to the candidate number are determined, the to-be-deployed model is split into N sub-models, and the deployment mode of the N sub-models is determined, N being determined based on the candidate number, and the deployment mode being a serial mode, a parallel mode, or a serial-parallel hybrid mode; wherein, based on the deployment mode of the N sub-models and the data processing time length of each sub-model, the calculation time consumption corresponding to the candidate number is determined; based on the communication data amount between the N sub-models and the data transmission time length between the sub-models, the communication time consumption corresponding to the candidate number is determined; 3. The method of claim 1, wherein, the data transmission time length is determined based on the average value of the delay of a plurality of device pairs, and a device pair includes two end-side devices, and the delay of a device pair represents the transmission delay between the two end-side devices. based on the total number of end-side devices and the number of devices corresponding to each to-be-deployed model, determining the number of computing power domains corresponding to each to-be-deployed model, comprises the following steps: determining a consumed device quantity of all to-be-deployed models based on the quantity of devices corresponding to each to-be-deployed model, and obtaining a first quantity by taking the quotient of the total quantity of edge-side devices and the consumed device quantity as an integer; determining a remaining device quantity based on the total quantity of edge-side devices, the consumed device quantity, and the first quantity, and selecting part of the to-be-deployed models from all to-be-deployed models, and determining a second quantity of each to-be-deployed model based on the quantity of devices corresponding to the to-be-deployed model and the remaining device quantity; for each to-be-deployed model that is not selected, determining the quantity of computing power domains corresponding to the to-be-deployed model based on the first quantity, and for each to-be-deployed model that is selected, determining the quantity of computing power domains corresponding to the to-be-deployed model based on the first quantity and the second quantity of the to-be-deployed model.

4. The method of claim 1, wherein the sequentially traversing each to-be-deployed model as a current to-be-deployed model comprises: for each to-be-deployed model, determining a target traffic corresponding to the to-be-deployed model, wherein the target traffic is a sum of a first traffic, a second traffic, and a third traffic, wherein the first traffic is a traffic of sending to-be-detected content from an edge device to a first sub-model when the to-be-deployed model is split into M sub-models, the second traffic is a communication data amount between the M sub-models, and the third traffic is a traffic of returning an anomaly detection result from a last sub-model to the edge device; based on the target traffic corresponding to each to-be-deployed model, sorting all to-be-deployed models in a descending order of target traffic, and based on the sorted to-be-deployed models, sequentially traversing each to-be-deployed model as a current to-be-deployed model starting from a first to-be-deployed model.

5. The method of claim 1, wherein the obtaining K computing power domains corresponding to the current to-be-deployed model comprises: when obtaining each computing power domain, obtaining candidate edge-side devices allowed to be used, wherein a candidate edge-side device is an edge-side device that is not selected by an existing computing power domain, or a candidate edge-side device is an edge-side device that is selected by an existing computing power domain and the existing computing power domain does not occupy all computing power resources of the candidate edge-side device; constructing a plurality of device sets based on all candidate edge-side devices, wherein each device set includes M candidate edge-side devices, and any two candidate edge-side devices form a device pair; obtaining a communication loss corresponding to each device set, wherein the communication loss is determined based on a delay of all device pairs corresponding to the device set, and the delay of a device pair represents a transmission delay between two candidate edge-side devices; based on the communication loss corresponding to each device set, dividing the M candidate edge-side devices in a device set corresponding to a minimum communication loss to a computing power domain corresponding to the current to-be-deployed model.

6. The method of claim 1, wherein after obtaining the computing power graph of each to-be-deployed model, the method further comprises: ​ ​ ​ If it is determined that the acquired to-be-detected content needs to be subjected to anomaly detection by a to-be-deployed model, a next-level node of the edge device is determined based on an algorithm power diagram of the to-be-deployed model; wherein the next-level node comprises a first-level end-side device of K algorithm power domains corresponding to the to-be-deployed model; A target end-side device is selected from the first-level end-side devices of the K algorithm power domains; wherein based on the delay of each first-level end-side device and the edge device, the first-level end-side device corresponding to the minimum delay is taken as the target end-side device; or, the first-level end-side device in an idle state is taken as the target end-side device; or, for each first-level end-side device, based on the delay of the first-level end-side device and the edge device, the processing completion time of the first-level end-side device for the allocated data, the idle time of the first-level end-side device is determined, and the first-level end-side device with the earliest idle time is taken as the target end-side device; The to-be-detected content is sent to the target end-side device, so that the target end-side device processes the to-be-detected content based on the deployed sub-model to obtain intermediate features, selects an end-side device from the next-level end-side devices of the K algorithm power domains based on the algorithm power diagram, and sends the intermediate features to the selected end-side device, until the intermediate features are sent to the last-level end-side device, and the last-level end-side device processes the intermediate features based on the deployed sub-model to obtain an anomaly detection result; The anomaly detection result is received; if the anomaly detection result indicates that the content is normal, the to-be-detected content is sent to a display device connected to the end-side device, and the to-be-detected content is displayed on the display device.

7. The method according to claim 1 or 6, characterized in that, The method further comprises: After obtaining the to-be-detected content, a to-be-detected hash value corresponding to the to-be-detected content is determined; The similarity between the to-be-detected hash value and the stored hash values in the content cache is determined; wherein the content cache comprises stored hash values of detected content and detection labels of the detected content, and the detection labels are used to indicate anomaly detection results of the detected content; If the similarity between the to-be-detected hash value and any stored hash value is greater than a threshold value, the anomaly detection result of the to-be-detected content is determined based on the detection label corresponding to the stored hash value; If the similarity between the to-be-detected hash value and all stored hash values is not greater than the threshold value, the to-be-detected content is subjected to anomaly detection by a to-be-deployed model to obtain an anomaly detection result, and the to-be-detected hash value and the detection label corresponding to the anomaly detection result are stored in the content cache.

8. The method of claim 1 or 6, wherein, The method further comprises: If the content detection configuration information sent by the center device is received, the content detection configuration information is used to indicate that partial to-be-deployed models are used for anomaly detection, and it is determined that the acquired to-be-detected content needs to be subjected to anomaly detection by the partial to-be-deployed models. Alternatively, if the global emergency information sent by the center device is received, the global emergency information is used to indicate that all to-be-deployed models are used for anomaly detection, and it is determined based on the global emergency information that the acquired to-be-detected content needs to be detected for anomaly by all to-be-deployed models.

9. A content management device based on end-to-end coordination, characterized in that, The device is applied to an edge device used for content management and control of a plurality of end-side devices, and the device comprises: A determination module is configured to determine the number of devices corresponding to each to-be-deployed model, and determine the number of computing power domains corresponding to each to-be-deployed model based on the total number of end-side devices and the number of devices corresponding to each to-be-deployed model. An acquisition module is configured to sequentially traverse each to-be-deployed model as a current to-be-deployed model, acquire K computing power domains corresponding to the current to-be-deployed model, and for each computing power domain, the computing power domain comprises M end-side devices; K represents the number of computing power domains of the current to-be-deployed model, and M is determined based on the number of devices of the current to-be-deployed model. A processing module is configured to split the current to-be-deployed model into M sub-models, and for each computing power domain, deploy the M sub-models to the M end-side devices of the computing power domain, and each end-side device corresponds to a sub-model. The acquisition module is configured to acquire a computing power graph of the current to-be-deployed model, a root node of the computing power graph is the edge device, a next-level node of the edge device is a first-level end-side device of each computing power domain; for an i-level end-side device, if the i-level end-side device is not the last-level end-side device, a next-level node of the end-side device is an i+1-level end-side device of each computing power domain; for the last-level end-side device, a next-level node of the end-side device is the edge device; wherein, when any to-be-deployed model is used for anomaly detection, the computing power graph of the to-be-deployed model is used to detect the to-be-detected content for anomaly detection to obtain an anomaly detection result.

10. An electronic device, comprising: The device comprises: A processor and a machine readable storage medium, the machine readable storage medium stores machine executable instructions that can be executed by the processor; The processor is configured to execute the machine executable instructions to implement the method in any one of claims 1-8.

Citation Information

Patent Citations

  • Target detection method and related equipment

    CN118279779A

  • Model training method and device, electronic equipment, storage medium and computer program product

    CN118821964A