Configuration method based on assistance information, and related apparatus
By sending auxiliary information about computing resources to the network side through terminal devices, the problem of insufficient auxiliary information in existing technologies is solved, thereby improving the processing and scheduling efficiency of AI tasks and reducing power consumption.
Patent Information
- Application Number
- PCT/CN2025/090418
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-04-23
- Filing Date
- 2025-04-22
- Publication Date
- 2025-10-30
AI Technical Summary
The lack of auxiliary information reported by the terminal in the existing protocol makes it impossible for the network side to make accurate and comprehensive configurations for AI tasks, resulting in low efficiency in AI task processing and scheduling.
The first device sends auxiliary information to the second device, indicating the available load and usage status of computing resources. The second device then allocates and schedules tasks based on this information to improve the efficiency of task processing and scheduling.
This enables tasks to be executed within time units with sufficient computing resources, reducing power consumption, avoiding resource waste, and improving task execution efficiency and network-side scheduling efficiency.
Smart Images

Figure CN2025090418_30102025_PF_FP_ABST
Abstract
Description
A configuration method and related apparatus based on auxiliary information
[0001] This application claims priority to Chinese Patent Application No. 202410497184.0, filed on April 23, 2024, entitled "A Configuration Method and Related Device Based on Auxiliary Information", the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the fields of communication and artificial intelligence technologies, and in particular to a configuration method and related apparatus based on auxiliary information. Background Technology
[0003] To address the vision of a future of intelligent and inclusive accessibility, intelligence will further evolve at the wireless network architecture level, and Artificial Intelligence (AI) will be more deeply integrated with wireless network communication. Currently, a common scenario for the integration of AI and wireless networks is the collaborative execution of AI tasks by the terminal and network sides. In this scenario, there is frequent interaction of AI data between the terminal and the network. In New Radio (NR) networks, although the protocol defines some content and methods for terminals to report assistance information, when it comes to specific AI tasks, the assistance information reported by the terminal in the existing protocol cannot enable the network side to accurately and comprehensively configure the relevant parameters of the AI task, resulting in low processing and scheduling efficiency for AI tasks. Summary of the Invention
[0004] This application provides a configuration method and related apparatus based on auxiliary information, which enriches the auxiliary information reported by the user side. The network side can efficiently schedule the user side based on this auxiliary information, which is beneficial to improving the processing efficiency of tasks.
[0005] In a first aspect, embodiments of this application provide a configuration method based on auxiliary information, applied to a first device, the method comprising:
[0006] Send first auxiliary information to the second device; the first auxiliary information is used to indicate computing resources at least in one time unit;
[0007] Receive first instruction information from the second device; the first instruction information is used to instruct the second device to allocate tasks to the first device based on computing resources in at least one time unit.
[0008] As can be seen, in this embodiment, the first device can send computing resources in at least one time unit as auxiliary information to the second device, thereby enabling the second device to allocate tasks to the first device based on computing resources in at least one time unit. This ensures that tasks on the first device are scheduled for execution in time units with sufficient computing resources, thus improving task scheduling efficiency. Simultaneously, the first device can fully utilize the computing resources in that time unit to execute the allocated tasks, further enhancing task processing efficiency.
[0009] In one possible implementation, the first auxiliary information indicates one or more of the following:
[0010] The available load of computing resources over at least one time unit;
[0011] Whether the computing resources used in at least one time unit are less than or equal to the first load threshold;
[0012] Whether computing resources have been shut down for at least one time unit.
[0013] In this implementation, the first device can send the usage of computing resources in at least one time unit as auxiliary information to the second device, thereby enabling the second device to perform efficient task scheduling for the first device based on the auxiliary information.
[0014] In one possible implementation, the method further includes:
[0015] If tasks are assigned over M time units, then the tasks over M time units are aggregated into N time units; where M is greater than N, and N is greater than or equal to 1.
[0016] Send second auxiliary information to the second device; the second auxiliary information is used to instruct the first device to aggregate tasks from M time units to N time units;
[0017] Receive second indication information from the second device; the second indication information is used to indicate the transmission resources configured by the second device for the task based on N time units.
[0018] In this implementation, the first device can aggregate tasks into smaller time units for execution and shut down computing resources in other time units, thereby reducing the power consumption of the first device. Based on the first device's operation of aggregating tasks into smaller time units, the second device can schedule transmission resources after the tasks have been completed to be allocated to tasks on the first device side, thus avoiding the resource waste caused by scheduling transmission resources to the first device before the tasks have been completed.
[0019] In one possible implementation, the task is performed by a first neural network model on the first device side; the method further includes:
[0020] If the load on the first device is greater than or equal to the second load threshold, third auxiliary information is sent to the second device; the third auxiliary information includes an update delay indication for the first neural network model.
[0021] Receive third instruction information from the second device; the third instruction information is used to instruct the first device to reduce the monitoring frequency of the first neural network model; the third instruction information is generated based on the update delay instruction.
[0022] In this implementation, the first device can monitor the local load during the inference of the first neural network model. When the local load is high, it sends an update delay indication as auxiliary information to the second device. The second device can then instruct the first device to reduce the monitoring frequency of the first neural network model, thereby reducing the power consumption of the first device.
[0023] In one possible implementation, the method further includes:
[0024] If the communication environment of the first device changes, a fourth auxiliary information is sent to the second device; the fourth auxiliary information includes an identifier of the second neural network model to be used.
[0025] The system receives a fourth instruction from the second device; the fourth instruction is used to instruct the first device to start the third neural network model to perform the task; the third neural network model is the second neural network model or a neural network model whose performance difference from that of the second neural network model is less than or equal to a performance threshold.
[0026] In this implementation, when the communication environment changes, the first device can send the identifier of the suggested second neural network model to the second device. Based on this auxiliary information, the second device can instruct the first device to start the third neural network model to perform the task, so that the model can be adapted to the communication environment, thereby improving the execution efficiency of the task.
[0027] In one possible implementation, the method further includes:
[0028] Send fifth auxiliary information to the second device; the fifth auxiliary information indicates one or more of the following: the data acquisition capability of the first device; the suggested reporting time for the acquired data by the first device; the activity trajectory of the first device over a future period; the data preprocessing capability of the first device;
[0029] Receive a fifth instruction from the second device; the fifth instruction indicates one or more of the following: the second device configures the data acquisition volume for the first device based on the data acquisition capability of the first device; the second device configures the data acquisition reporting time for the first device based on the data acquisition reporting time suggested by the first device; the second device configures the data acquisition task on the activity trajectory of the first device based on the activity trajectory of the first device in the future; the second device configures the data type to be acquired for the first device based on the data preprocessing capability of the first device.
[0030] The data collected by the first device is used to perform the task.
[0031] In this implementation, the first device can send auxiliary information related to data acquisition to the second device. Based on this auxiliary information, the second device can configure the data acquisition task and the reporting time of the acquired data for the first device, which helps improve the scheduling efficiency on the network side. With the improved data acquisition efficiency, the task execution efficiency can also be improved.
[0032] In one possible implementation, the method further includes, before sending the first auxiliary information to the second device:
[0033] If the training latency of the first neural network is greater than or equal to a latency threshold and / or the load of the first device during training of the first neural network is greater than or equal to a third load threshold, a sixth auxiliary information is sent to the second device; the sixth auxiliary information is used to indicate the parameters to be adjusted for training the first neural network; the first neural network model is built based on the first neural network;
[0034] The parameters adjusted by the second device based on the training of the first neural network are the neural network training parameters configured by the first device.
[0035] In this implementation, the first device can send suggested adjustment parameters to the second device during model training. Based on the information sent by the first device, the second device can configure neural network training parameters for the first device, which helps to improve the training efficiency of the model and reduce the power consumption of the first device.
[0036] In one possible implementation, the sixth auxiliary information indicates one or more of the following:
[0037] Recommended unit computational cost when training the first neural network;
[0038] The number of parameters and network structure of the first neural network;
[0039] It is recommended to use a second neural network for training;
[0040] Recommended parameter format and precision;
[0041] Recommended learning rate;
[0042] When the first neural network is trained collaboratively by the first device and the second device, it is recommended that the time interval between two adjacent training rounds be specified for the first neural network.
[0043] The neural network training parameters configured for the second device indicate one or more of the following:
[0044] The unit computation cost or the adjustment value of the unit computation cost when training the first neural network;
[0045] The network structure and number of parameters that need to be adjusted for the first neural network;
[0046] Training is performed using a third neural network; the third neural network is either the second neural network or a neural network whose size differs from that of the second neural network by a size threshold.
[0047] The learning rate of the first neural network;
[0048] In the case where the first neural network is trained collaboratively by the first device and the second device, the time interval between two adjacent training rounds of the first neural network.
[0049] In this implementation, the parameters suggested by the first device are wide-ranging and comprehensive, and are highly compatible with AI scenarios, enabling the second device to configure refined neural network training parameters for the first device based on these parameters.
[0050] Secondly, embodiments of this application provide a configuration method based on auxiliary information, applied to a second device, the method comprising:
[0051] Receive first auxiliary information from a first device; the first auxiliary information is used to indicate computing resources in at least one time unit;
[0052] Send a first instruction message to the first device; the first instruction message is used to instruct the second device to allocate tasks to the first device based on computing resources in at least one time unit.
[0053] As can be seen from the embodiments of this application, the second device can receive computing resource information for at least one time unit sent by the first device, thereby allocating tasks to the first device based on the computing resources for at least one time unit. This allows the tasks on the first device to be scheduled for execution in time units with sufficient computing resources, thus improving task scheduling efficiency. Simultaneously, the first device can fully utilize the computing resources within the time unit to execute the allocated tasks, further improving task processing efficiency.
[0054] In one possible implementation, the first auxiliary information indicates one or more of the following:
[0055] The available load of computing resources over at least one time unit;
[0056] Whether the computing resources used in at least one time unit are less than or equal to the first load threshold;
[0057] Whether computing resources have been shut down for at least one time unit.
[0058] In this implementation, the second device can receive the computing resource usage information for at least one time unit sent by the first device, thereby enabling efficient task scheduling for the first device based on this auxiliary information.
[0059] In one possible implementation, when the task is allocated over M time units, the method further includes:
[0060] Receive second auxiliary information from the first device; the second auxiliary information is used to instruct the first device to aggregate tasks in M time units into N time units; where M is greater than N, and N is greater than or equal to 1;
[0061] Configure transmission resources for the task based on N time units;
[0062] Send a second instruction message to the first device; the second instruction message is used to indicate transmission resources.
[0063] In this implementation, the second device can determine that the first device will aggregate tasks into a smaller time unit for execution by the second auxiliary information of the first device. Based on the operation of the first device to aggregate tasks into a smaller time unit, the second device can schedule the transmission resources after the task is completed to the task on the first device side, thereby avoiding the waste of resources caused by scheduling transmission resources to the first device before the task is completed.
[0064] In one possible implementation, the task is performed by a first neural network model on the first device side; the method further includes:
[0065] Receive third auxiliary information from the first device; the third auxiliary information includes an update delay indication for the first neural network model;
[0066] Send a third instruction message to the first device; the third instruction message is used to instruct the first device to reduce the monitoring frequency of the first neural network model; the third instruction message is generated based on the update delay instruction.
[0067] In this implementation, the second device can receive an update delay instruction sent by the first device when the local load is high, thereby instructing the first device to reduce the monitoring frequency of the first neural network model and thus reduce the power consumption of the first device.
[0068] In one possible implementation, the method further includes:
[0069] Receive fourth auxiliary information from the first device; the fourth auxiliary information includes an identifier of the second neural network model to be used;
[0070] The third neural network model is determined based on the identifier of the second neural network model;
[0071] Send a fourth instruction message to the first device; the fourth instruction message is used to instruct the first device to start the third neural network model to perform the task; the third neural network model is the second neural network model or a neural network model whose performance difference from that of the second neural network model is less than or equal to a performance threshold.
[0072] In this implementation, the second device can receive the identifier of the second neural network model suggested by the first device when the communication environment changes. Based on this auxiliary information, the second device can instruct the first device to start the third neural network model to perform the task, so that the model can be adapted to the communication environment, thereby improving the execution efficiency of the task.
[0073] In one possible implementation, the method further includes:
[0074] Receive fifth auxiliary information from the first device; the fifth auxiliary information indicates one or more of the following: the data acquisition capability of the first device; the reporting time of the acquired data suggested by the first device; the activity trajectory of the first device in the future period; the data preprocessing capability of the first device;
[0075] Send a fifth instruction message to the first device; the fifth instruction message indicates one or more of the following: the second device configures the data acquisition volume for the first device based on the data acquisition capability of the first device; the second device configures the data acquisition reporting time for the first device based on the data acquisition reporting time suggested by the first device; the second device configures the data acquisition task on the activity trajectory of the first device based on the activity trajectory of the first device in the future; the second device configures the data type to be acquired for the first device based on the data preprocessing capability of the first device.
[0076] The data collected by the first device is used to perform the task.
[0077] In this implementation, the second device can receive auxiliary information related to data acquisition from the first device, and based on this auxiliary information, can configure data acquisition tasks and the reporting time of the acquired data for the first device, which helps improve the scheduling efficiency on the network side. With the improved data acquisition efficiency, the task execution efficiency can also be improved.
[0078] In one possible implementation, before receiving the first auxiliary information from the first device, the method further includes:
[0079] Receive sixth auxiliary information from the first device; the sixth auxiliary information is used to indicate the parameters to be adjusted for training the first neural network; the first neural network model is built based on the first neural network;
[0080] The parameters to be adjusted based on the training of the first neural network are used to configure the neural network training parameters for the first device;
[0081] Send the configured neural network training parameters to the first device.
[0082] In this implementation, the first device can send suggested adjustment parameters to the second device during model training. Based on the information sent by the first device, the second device can configure neural network training parameters for the first device, which helps to improve the training efficiency of the model and reduce the power consumption of the first device.
[0083] In one possible implementation, the sixth auxiliary information indicates one or more of the following:
[0084] Recommended unit computational cost when training the first neural network;
[0085] The number of parameters and network structure of the first neural network;
[0086] It is recommended to use a second neural network for training;
[0087] Recommended parameter format and precision;
[0088] Recommended learning rate;
[0089] When the first neural network is trained collaboratively by the first device and the second device, it is recommended that the time interval between two adjacent training rounds be specified for the first neural network.
[0090] The parameters suggested for adjustment based on training the first neural network are used to configure the neural network training parameters for the first device, including:
[0091] The unit computation or adjustment value of the unit computation when training the first neural network is based on the unit computation configuration suggested by the first device.
[0092] And / or configure the network structure and number of parameters of the first neural network to be adjusted based on the number of parameters and network structure of the first neural network;
[0093] And / or the third neural network is configured for training on the first device based on the second neural network recommended by the first device; the third neural network is the second neural network or a neural network whose size differs from that of the second neural network by a size threshold;
[0094] And / or configure the learning rate of the first neural network based on the learning rate suggested by the first device;
[0095] And / or, in the case where the first neural network is trained collaboratively by the first device and the second device, configure the time interval for the first neural network to participate in two adjacent rounds of training based on the time interval suggested by the first device.
[0096] In this implementation, the parameters suggested by the first device are wide-ranging and comprehensive, and are highly compatible with AI scenarios, enabling the second device to configure refined neural network training parameters for the first device based on these parameters.
[0097] Thirdly, embodiments of this application provide a communication device applied to a first device, the device including a first transceiver unit and a first processing unit; the first transceiver unit is used for:
[0098] Send first auxiliary information to the second device; the first auxiliary information is used to indicate computing resources at least in one time unit;
[0099] Receive first instruction information from the second device; the first instruction information is used to instruct the second device to allocate tasks to the first device based on computing resources in at least one time unit.
[0100] In one possible implementation, the first auxiliary information indicates one or more of the following:
[0101] The available load of computing resources over at least one time unit;
[0102] Whether the computing resources used in at least one time unit are less than or equal to the first load threshold;
[0103] Whether computing resources have been shut down for at least one time unit.
[0104] In one possible implementation, the first processing unit is configured to aggregate tasks from M time units to N time units if the tasks are allocated over M time units; where M is greater than N and N is greater than or equal to 1.
[0105] The first transceiver unit is also configured to send second auxiliary information to the second device; the second auxiliary information is configured to instruct the first device to aggregate tasks on M time units to N time units; and to receive second instruction information from the second device; the second instruction information is configured to instruct the second device to configure transmission resources for the tasks based on N time units.
[0106] In one possible implementation, the task is performed by a first neural network model on the first device side; the first transceiver unit is further configured to:
[0107] If the load on the first device is greater than or equal to the second load threshold, third auxiliary information is sent to the second device; the third auxiliary information includes an update delay indication for the first neural network model; third indication information is received from the second device; the third indication information is used to instruct the first device to reduce the monitoring frequency of the first neural network model; the third indication information is generated based on the update delay indication.
[0108] In one possible implementation, the first transceiver unit is also used for:
[0109] If the communication environment of the first device changes, a fourth auxiliary information is sent to the second device; the fourth auxiliary information includes an identifier of the second neural network model to be used.
[0110] The system receives a fourth instruction from the second device; the fourth instruction is used to instruct the first device to start the third neural network model to perform the task; the third neural network model is the second neural network model or a neural network model whose performance difference from that of the second neural network model is less than or equal to a performance threshold.
[0111] In one possible implementation, the first transceiver unit is also used for:
[0112] Send fifth auxiliary information to the second device; the fifth auxiliary information indicates one or more of the following: the data acquisition capability of the first device; the suggested reporting time for the acquired data by the first device; the activity trajectory of the first device over a future period; the data preprocessing capability of the first device;
[0113] Receive a fifth instruction from the second device; the fifth instruction indicates one or more of the following: the second device configures the data acquisition volume for the first device based on the data acquisition capability of the first device; the second device configures the data acquisition reporting time for the first device based on the data acquisition reporting time suggested by the first device; the second device configures the data acquisition task on the activity trajectory of the first device based on the activity trajectory of the first device in the future; the second device configures the data type to be acquired for the first device based on the data preprocessing capability of the first device.
[0114] The data collected by the first device is used to perform the task.
[0115] In one possible implementation, the first transceiver unit is also used for:
[0116] If the training latency of the first neural network is greater than or equal to a latency threshold and / or the load of the first device during training of the first neural network is greater than or equal to a third load threshold, a sixth auxiliary information is sent to the second device; the sixth auxiliary information is used to indicate the parameters to be adjusted for training the first neural network; the first neural network model is built based on the first neural network;
[0117] The parameters adjusted by the second device based on the training of the first neural network are the neural network training parameters configured by the first device.
[0118] In one possible implementation, the sixth auxiliary information indicates one or more of the following:
[0119] Recommended unit computational cost when training the first neural network;
[0120] The number of parameters and network structure of the first neural network;
[0121] It is recommended to use a second neural network for training;
[0122] Recommended parameter format and precision;
[0123] Recommended learning rate;
[0124] When the first neural network is trained collaboratively by the first device and the second device, it is recommended that the time interval between two adjacent training rounds be specified for the first neural network.
[0125] The neural network training parameters configured for the second device indicate one or more of the following:
[0126] The unit computation cost or the adjustment value of the unit computation cost when training the first neural network;
[0127] The network structure and number of parameters that need to be adjusted for the first neural network;
[0128] Training is performed using a third neural network; the third neural network is either the second neural network or a neural network whose size differs from that of the second neural network by a size threshold.
[0129] The learning rate of the first neural network;
[0130] In the case where the first neural network is trained collaboratively by the first device and the second device, the time interval between two adjacent training rounds of the first neural network.
[0131] It should be understood that since the method embodiments and the device embodiments are different presentations of the same technical concept, the content of the first aspect of the embodiments of this application should be adapted to the third aspect of the embodiments of this application simultaneously, and can achieve the same or similar beneficial effects, which will not be repeated here.
[0132] Fourthly, embodiments of this application provide a communication device applied to a second device or a chip within a second device. The device includes a second transceiver unit and a second processing unit; the second transceiver unit is used for:
[0133] Receive first auxiliary information from a first device; the first auxiliary information is used to indicate computing resources in at least one time unit;
[0134] Send a first instruction message to the first device; the first instruction message is used to instruct the second device to allocate tasks to the first device based on computing resources in at least one time unit.
[0135] In one possible implementation, the first auxiliary information indicates one or more of the following:
[0136] The available load of computing resources over at least one time unit;
[0137] Whether the computing resources used in at least one time unit are less than or equal to the first load threshold;
[0138] Whether computing resources have been shut down for at least one time unit.
[0139] In one possible implementation, when tasks are allocated over M time units, the second transceiver unit is further configured to receive second auxiliary information from the first device; the second auxiliary information is configured to instruct the first device to aggregate the tasks over M time units into N time units; wherein M is greater than N, and N is greater than or equal to 1.
[0140] The second processing unit is used to configure transmission resources for the task based on N time units;
[0141] The second transceiver unit is also used to send second indication information to the first device; the second indication information is used to indicate transmission resources.
[0142] In one possible implementation, the task is performed by a first neural network model on the first device side; the second transceiver unit is also used for:
[0143] Receive third auxiliary information from the first device; the third auxiliary information includes an update delay indication for the first neural network model;
[0144] Send a third instruction message to the first device; the third instruction message is used to instruct the first device to reduce the monitoring frequency of the first neural network model; the third instruction message is generated based on the update delay instruction.
[0145] In one possible implementation, the second transceiver unit is further configured to receive fourth auxiliary information from the first device; the fourth auxiliary information includes an identifier of a proposed second neural network model.
[0146] The second processing unit is also used to determine the third neural network model based on the identifier of the second neural network model;
[0147] The second transceiver unit is also used to send a fourth instruction message to the first device; the fourth instruction message is used to instruct the first device to start the third neural network model to perform the task; the third neural network model is the second neural network model or a neural network model whose performance difference from that of the second neural network model is less than or equal to a performance threshold.
[0148] In one possible implementation, the second transceiver unit is also used for:
[0149] Receive fifth auxiliary information from the first device; the fifth auxiliary information indicates one or more of the following: the first device's ability to collect various types of data; the first device's suggested reporting time for collecting various types of data; the first device's activity trajectory over a future period; the first device's preprocessing capabilities for various types of data;
[0150] Send a fifth instruction message to the first device; the fifth instruction message indicates one or more of the following: the second device configures the data acquisition volume for the first device based on the data acquisition capability of the first device; the second device configures the data acquisition reporting time for the first device based on the data acquisition reporting time suggested by the first device; the second device configures the data acquisition task on the activity trajectory of the first device based on the activity trajectory of the first device in the future; the second device configures the data type to be acquired for the first device based on the data preprocessing capability of the first device.
[0151] The data collected by the first device is used to perform the task.
[0152] In one possible implementation, the second transceiver unit is further configured to receive sixth auxiliary information from the first device; the sixth auxiliary information is used to indicate the parameters to be adjusted for training the first neural network; the first neural network model is built based on the first neural network.
[0153] The second processing unit is also used to configure neural network training parameters for the first device based on the parameters suggested for adjustment during the training of the first neural network.
[0154] The second transceiver unit is also used to send the configured neural network training parameters to the first device.
[0155] In one possible implementation, the sixth auxiliary information indicates one or more of the following:
[0156] Recommended unit computational cost when training the first neural network;
[0157] The number of parameters and network structure of the first neural network;
[0158] It is recommended to use a second neural network for training;
[0159] Recommended parameter format and precision;
[0160] Recommended learning rate;
[0161] When the first neural network is trained collaboratively by the first device and the second device, it is recommended that the time interval between two adjacent training rounds be specified for the first neural network.
[0162] The second processing unit configures the neural network training parameters for the first device based on the parameters suggested for training the first neural network. Specifically, the second processing unit is used to:
[0163] The unit computation or adjustment value of the unit computation when training the first neural network is based on the unit computation configuration suggested by the first device.
[0164] And / or configure the network structure and number of parameters of the first neural network to be adjusted based on the number of parameters and network structure of the first neural network;
[0165] And / or the third neural network is configured for training on the first device based on the second neural network recommended by the first device; the third neural network is the second neural network or a neural network whose size differs from that of the second neural network by a size threshold;
[0166] And / or configure the learning rate of the first neural network based on the learning rate suggested by the first device;
[0167] And / or, in the case where the first neural network is trained collaboratively by the first device and the second device, configure the time interval for the first neural network to participate in two adjacent rounds of training based on the time interval suggested by the first device.
[0168] It should be understood that since the method embodiments and the device embodiments are different presentations of the same technical concept, the content of the second aspect of the embodiments of this application should be adapted to the fourth aspect of the embodiments of this application simultaneously, and can achieve the same or similar beneficial effects, which will not be repeated here.
[0169] Fifthly, embodiments of this application provide a communication device, including a processor, a memory, a communication interface, and one or more programs, the one or more programs being stored in the memory and configured to, when executed by the processor, cooperate with the communication interface to implement the method in any of the embodiments of the first or second aspect described above.
[0170] In a sixth aspect, embodiments of this application provide a chip, including: a processor, configured to call and run a computer program from a memory, causing a device on which the chip is installed to perform the method as described in any of the embodiments of the first or second aspect above.
[0171] In a seventh aspect, embodiments of this application provide a computer-readable storage medium storing a computer program for execution by a device, wherein the computer program, when executed, implements the method as described in any of the embodiments of the first or second aspect above.
[0172] Eighthly, embodiments of this application provide a computer program product that, when run by a device, causes the device to perform the method as described in any of the embodiments of the first or second aspect above. Attached Figure Description
[0173] To more clearly illustrate the technical solutions in the embodiments of this application or the background art, the accompanying drawings used in the embodiments of this application or the background art will be described below.
[0174] Figure 1 is a schematic diagram of a UE reporting auxiliary information;
[0175] Figure 2 is a schematic diagram of a communication system provided in an embodiment of this application;
[0176] Figure 3 is a flowchart illustrating a configuration method based on auxiliary information provided in an embodiment of this application;
[0177] Figure 4 is a schematic diagram of the second device assigning AI tasks to the first device according to an embodiment of this application;
[0178] Figure 5 is a flowchart illustrating another configuration method based on auxiliary information provided in an embodiment of this application;
[0179] Figure 6 is a schematic diagram of a convergence of multiple tasks provided in an embodiment of this application;
[0180] Figure 7 is a flowchart illustrating another configuration method based on auxiliary information provided in an embodiment of this application;
[0181] Figure 8 is a flowchart illustrating another configuration method based on auxiliary information provided in an embodiment of this application;
[0182] Figure 9 is a flowchart illustrating another configuration method based on auxiliary information provided in an embodiment of this application;
[0183] Figure 10 is a flowchart illustrating another configuration method based on auxiliary information provided in an embodiment of this application;
[0184] Figure 11 is a schematic diagram of the structure of a communication device provided in an embodiment of this application;
[0185] Figure 12 is a schematic diagram of another communication device provided in an embodiment of this application;
[0186] Figure 13 is a schematic diagram of the structure of a communication device provided in an embodiment of this application;
[0187] Figure 14 is a schematic diagram of another communication device provided in an embodiment of this application. Detailed Implementation
[0188] The terms "first," "second," "third," and "fourth," etc., used in the specification, claims, and accompanying drawings of this application are used to distinguish different objects, not to describe a specific order. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products, or apparatuses.
[0189] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a mutually exclusive, independent, or alternative embodiment. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.
[0190] The terms “component,” “module,” “system,” etc., used in this specification are used to refer to computer-related entities, hardware, firmware, combinations of hardware and software, software, or software in execution. For example, a component can be, but is not limited to, a process running on a processor, a processor, an object, an executable file, an execution thread, a program, and / or a computer. As illustrated, an application running on a terminal device and the terminal device can both be components. One or more components may reside in a process and / or an execution thread, and components may be located on a single computer and / or distributed among two or more computers. Furthermore, these components can be executed from various computer-readable media on which various data structures are stored. Components can communicate, for example, via local and / or remote processes based on signals having one or more data packets (e.g., data from two components interacting with another component between a local system, a distributed system, and / or a network, such as the Internet interacting with other systems via signals).
[0191] First, a brief introduction to the relevant terms and technical background used in this application will be provided to facilitate understanding by those skilled in the art.
[0192] (1) Floating Point: FP;
[0193] (2) Integer data types: Integer, INT;
[0194] (3) Long Term Evolution (LTE);
[0195] (4) Machine Learning: ML;
[0196] (5) User Equipment (UE);
[0197] (6) User Equipment Assistance Information (UAI);
[0198] (7) New Radio (NR);
[0199] (8) Radio Resource Control (RRC);
[0200] (9) Operations, Administration, and Maintenance; OAM;
[0201] (10) Internet companies bypass operators and develop various video and data services based on the open Internet: Over The Top, OTT.
[0202] In NR networks, the protocol defines a method for terminals to report auxiliary information to the network side. After receiving the auxiliary information reported by the UE, the network side can perform subsequent scheduling and other tasks according to some configurations recommended by the UE. As shown in Figure 1, the overall process is as follows:
[0203] 1: The network sends an RRC reconfiguration signaling message to the UE;
[0204] 2: The UE reports UE assistance information to the network.
[0205] Currently, the standard supports the following auxiliary information:
[0206] (1) Delay budget report for adjusting the period length of Discontinuous Reception (DRX) in connected mode;
[0207] (2) Overheating auxiliary information;
[0208] (3) Recommended DRX parameters to save power;
[0209] (4) Recommended maximum total bandwidth;
[0210] (5) Recommended maximum number of secondary carriers.
[0211] In existing solutions, the auxiliary information reported by the terminal is usually static, meaning it's reported only once and doesn't change subsequently. This type of auxiliary information can be carried in the UE capability message, such as the UE's maximum number of Central Processing Units (CPUs), maximum number of threads, maximum memory, and maximum available computing power. However, this auxiliary information is not comprehensive, and static auxiliary information is not applicable to dynamically changing task scenarios. The network side cannot optimize user-side task scheduling based on this information. Furthermore, in scenarios where the terminal and base station jointly train neural network models, the terminal can report some current training state information to the base station via Layer 1 or Layer 2 signaling. However, this only informs the base station of this information; the base station does not take any action based on this information for scheduling optimization.
[0212] To overcome the shortcomings of existing technologies, this application provides a configuration method based on auxiliary information. This configuration method can be implemented based on the communication system shown in Figure 2. As shown in Figure 2, the communication system includes a terminal device, a network device, and an AI network element, wherein the AI network element can also be an AI module. When an AI network element is introduced into the communication system, the AI network element is an independent network element; when an AI module is introduced into the communication system, the AI module can be a module within a certain network element, and the corresponding network element can be a terminal device or a network device, etc.
[0213] The communication system can be a fifth-generation mobile network (5G) satellite communication, short-range communication, or other wireless communication systems. It should be noted that the wireless communication systems mentioned in this application include, but are not limited to, the following three application scenarios: Narrow Band-Internet of Things (NB-IoT), Global System for Mobile Communications (GSM), Enhanced Data Rate for GSM Evolution (EDGE), Wideband Code Division Multiple Access (WCDMA), Code Division Multiple Access 2000 (CDMA2000), Time Division-Synchronization Code Division Multiple Access (TD-SCDMA), LTE systems, and the next-generation 5G mobile communication system.
[0214] In this communication system, the network equipment can be any type of base station (BS), including various forms of macro base stations, micro base stations (also known as small stations), relay stations, access points, etc. In systems employing different wireless access technologies, the name of the equipment with base station functionality may differ. For example, in LTE systems, it is called an evolved Node B (eNB or eNodeB); in third-generation (3G) systems, it is called a Node B, etc. For ease of description, in all embodiments of this application, the aforementioned devices providing wireless communication functions for mobile stations (MS) are collectively referred to as network equipment or BS. The terminal equipment in this communication system includes, but is not limited to: UE, user unit, user station, mobile station, MS, remote station, remote terminal equipment, mobile terminal equipment, user terminal equipment, wireless communication equipment, user agent, user device, cellular phone, cordless phone, session initiation protocol (SIP) phone, wireless local loop (WLL) station, personal digital assistant (PDA), handheld device with wireless communication capabilities, computing device, processing device connected to a wireless modem, vehicle-mounted equipment, wearable device, terminal equipment in the Internet of Things, home appliances, virtual reality devices, terminal equipment in future 5G networks, or terminal equipment in future evolved public land mobile networks (PLMNs).
[0215] The technical solution provided in this application will be described in detail below with reference to specific implementation methods.
[0216] Please refer to Figure 3, which is a flowchart illustrating a configuration method based on auxiliary information provided in an embodiment of this application. As shown in Figure 3, the method includes steps 301-303:
[0217] 301: The first device sends the first auxiliary information to the second device.
[0218] The first auxiliary information is used to indicate computing resources at least one time unit (the computing resources may also include storage resources, such as in-memory computing resources), specifically indicating one or more of the following:
[0219] A. The available load of computing resources over at least one time unit.
[0220] B. Whether the computing resources used in at least one time unit are less than or equal to a first load threshold. That is, the first device can inform the second device of the time unit with lower computing resource consumption. The first load threshold can be predefined or configured by the network.
[0221] C. Whether computing resources have been turned off for at least one time unit. That is, the first device can choose to turn on or off computing resources for which time units based on its own load, and can inform the second device of the time units in which computing resources have been turned off.
[0222] For example, the auxiliary information in A and B above is usually auxiliary information in the time unit of computing resources that have been enabled.
[0223] In this implementation, the first device can send the usage of computing resources in at least one time unit as auxiliary information to the second device, thereby enabling the second device to perform efficient task scheduling for the first device based on the auxiliary information.
[0224] In this application, at least one time unit can be any of the time units that the first device can statistically analyze, or it can be a time unit within a specific statistical period. A time unit refers to a segment of time; for example, 1 microsecond can be considered a time unit, as can one or more time slots. It represents a division along the time dimension, and the specific method of division is not limited in this embodiment. For example, the time unit can also be called a time unit, time slice, etc. The first device can be a terminal device, such as a UE; it can also be a chip within the terminal device; or it can be a module within the terminal device, such as an AI module, etc.
[0225] 302: The second device assigns a task to the first device based on computing resources in at least one time unit.
[0226] In this embodiment of the application, the second device can allocate tasks (or perform task scheduling) for the first device based on the first auxiliary information sent by the first device. For example, the task can be allocated to a time unit with a high available load, the task can be allocated to a time unit with computing resources less than or equal to a first load threshold, or the task can be allocated to a time unit with computing resources not turned off.
[0227] The task can be one or more tasks, such as regular communication data processing services, or one or more AI tasks initiated by the first device. These AI tasks can be initiated autonomously by the first device, scheduled by other terminal devices, scheduled by the second device, or scheduled by the core network / OAM / OTT, etc. After initiation, the AI tasks are allocated and scheduled by the second device for execution by the first device. As shown in Figure 4, the second device can allocate three AI tasks (task 1, task 2, and task 3) across two time units.
[0228] The second device includes, but is not limited to: access network equipment, base station, core network equipment, independent AI network element, OAM equipment, OTT equipment, chips in the above devices, or AI modules in the above devices.
[0229] 303: The second device sends a first instruction message to the first device.
[0230] The first instruction information is used to instruct the second device to allocate tasks to the first device based on computing resources within at least one time unit, thereby enabling the first device to execute the allocated tasks within the corresponding time unit. If the task is an AI task, it can be either a training task or an inference task.
[0231] As can be seen, in this embodiment, the first device can send computing resources in at least one time unit as auxiliary information to the second device, thereby enabling the second device to allocate tasks to the first device based on computing resources in at least one time unit. This ensures that tasks on the first device are scheduled for execution in time units with sufficient computing resources, thus improving task scheduling efficiency. Simultaneously, the first device can fully utilize the computing resources in that time unit to execute the allocated tasks, further enhancing task processing efficiency.
[0232] Please refer to Figure 5, which is a flowchart illustrating another configuration method based on auxiliary information provided in this application embodiment. As shown in Figure 5, the method includes steps 501-507:
[0233] 501: The first device sends first auxiliary information to the second device;
[0234] 502: The second device assigns a task to the first device based on computing resources in at least one time unit;
[0235] 503: The second device sends a first instruction message to the first device;
[0236] Steps 501-503 can be referred to in the corresponding descriptions of steps 301-303 in Figure 3.
[0237] If the task is distributed over M time units, then:
[0238] 504: The first device aggregates tasks from M time units into N time units;
[0239] In this embodiment, the first device can aggregate tasks from M time units to N time units for execution, based on its own task execution status in each time unit. As shown in Figure 6, three tasks allocated to two time units are aggregated into one time unit. For other time units without tasks, the first device can shut down their computing resources. For example, if the first device takes too long to execute tasks from M time units and cannot meet the reporting time requirement of the second device, the first device can aggregate tasks from M time units to N time units. Here, M is greater than N, and N is greater than or equal to 1.
[0240] 505: The first device sends second auxiliary information to the second device;
[0241] The second auxiliary information is used to instruct the first device to aggregate tasks from M time units to N time units. That is, the first device can send the N time units obtained after task aggregation as auxiliary information to the second device.
[0242] 506: The second device configures transmission resources for the task based on N time units;
[0243] In this embodiment, once the second device learns that the task is concentrated in N time units, it can determine the task completion time and thus schedule transmission resources after the task completion to upload task-related information to the first device. For example, in an edge-end collaborative AI task, this information may be intermediate processing results output by the edge model, edge computing power, channel status, and other parameters.
[0244] In this implementation, the first device can aggregate tasks into smaller time units for execution and shut down computing resources in other time units, thereby reducing the power consumption of the first device. Based on the first device's operation of aggregating tasks into smaller time units, the second device can schedule transmission resources after the tasks have been completed to be allocated to tasks on the first device side, thus avoiding the resource waste caused by scheduling transmission resources to the first device before the tasks have been completed.
[0245] 507: The second device sends a second instruction message to the first device.
[0246] The second indication information is used to instruct the second device on the transmission resources configured for the task based on N time units. In other words, it informs the first device of the resources used for task transmission.
[0247] It should be understood that in AI task scenarios, the task assigned to the first device is executed by the first neural network model on the first device side. Please refer to Figure 7, which is a flowchart illustrating another configuration method based on auxiliary information provided in an embodiment of this application. As shown in Figure 7, the method includes steps 701-706:
[0248] 701: The first device sends first auxiliary information to the second device;
[0249] 702: The second device assigns a task to the first device based on computing resources in at least one time unit;
[0250] 703: The second device sends a first instruction message to the first device;
[0251] Steps 701-703 can be referred to in the corresponding descriptions of steps 301-303 in Figure 3.
[0252] If the load on the first device is greater than or equal to the second load threshold, then:
[0253] 704: The first device sends third auxiliary information to the second device;
[0254] The third auxiliary information includes an update delay indication for the first neural network model. This means the first device can monitor the local load during inference of the first neural network model. When the local load is high, the update delay indication informs the second device that the performance of the first neural network model is sufficient and that its own local load is high, therefore the first neural network model does not need frequent updates. The second load threshold can be predefined or configured by the network side.
[0255] 705: The second device generates a third indication based on the update delay indication;
[0256] The third instruction information is used to instruct the first device to reduce the monitoring frequency of the first neural network model. The third instruction information may include monitoring parameters for the first neural network model configured by the second device for the first device, such as a monitoring period or monitoring frequency. Typically, before sending the third auxiliary information, the first device has a monitoring period or frequency for the first neural network model. Each monitoring session triggers the second device to update the first neural network model. Frequent updates will consume resources for the first device. Therefore, the first device may suggest that the second device reduce or delay updates to the first neural network model. After receiving the third auxiliary information, the second device may configure a lower monitoring frequency or a longer monitoring period for the first device.
[0257] 706: The second device sends a third instruction message to the first device.
[0258] Accordingly, the first device receives third instruction information from the second device, thereby reducing the monitoring frequency of the first neural network model.
[0259] In this implementation, the first device can monitor the local load during the inference of the first neural network model. When the local load is high, it sends an update delay indication as auxiliary information to the second device. The second device can then instruct the first device to reduce the monitoring frequency of the first neural network model, thereby reducing the power consumption of the first device.
[0260] Please refer to Figure 8, which is a flowchart illustrating another configuration method based on auxiliary information provided in an embodiment of this application. As shown in Figure 8, the method includes steps 801-806:
[0261] 801: The first device sends first auxiliary information to the second device;
[0262] 802: The second device assigns a task to the first device based on computing resources in at least one time unit;
[0263] 803: The second device sends a first instruction message to the first device;
[0264] Steps 801-803 can be referred to in the corresponding descriptions of steps 301-303 in Figure 3.
[0265] If the communication environment of the first device changes, then:
[0266] 804: The first device sends fourth auxiliary information to the second device;
[0267] Accordingly, the second device receives fourth auxiliary information. This fourth auxiliary information includes an identifier of the suggested second neural network model. The communication environment can include factors such as channel environment, geographical location, and service type; that is, if the communication environment changes, the first device can suggest that the second device use the second neural network model to perform the task.
[0268] 805: The second device determines the third neural network model based on the identifier of the second neural network model;
[0269] The third neural network model is either the second neural network model or a neural network model whose performance difference from that of the second neural network model is less than or equal to a performance threshold.
[0270] 806: The second device sends a fourth instruction message to the first device.
[0271] The fourth instruction is used to instruct the first device to start the third neural network model to execute the task. That is, the second device can instruct the first device to start the second neural network model to execute the task, or it can instruct the first device to start a neural network model with similar performance to the second neural network model to execute the task. Specifically, the first device can use a new model to re-execute the task, or it can continue executing the task from where the first neural network model has already completed. The second device can send the first device the identifier of the third neural network model, or it can send the third neural network model itself, or it can send the parameters of the third neural network model, and so on.
[0272] In this implementation, when the communication environment changes, the first device can send the identifier of the suggested second neural network model to the second device. Based on this auxiliary information, the second device can instruct the first device to start the third neural network model to perform the task, so that the model can be adapted to the communication environment, thereby improving the execution efficiency of the task.
[0273] Please refer to Figure 9, which is a flowchart illustrating another configuration method based on auxiliary information provided in an embodiment of this application. As shown in Figure 9, the method includes steps 901-905:
[0274] 901: The first device sends the fifth auxiliary information to the second device;
[0275] The fifth auxiliary information indicates one or more of the following:
[0276] a. Data acquisition capability of the first device. This includes the first device's ability to acquire various types of data. Data type classification can be based on related tasks (e.g., image recognition requires image data acquisition, speech recognition requires speech data acquisition), the geographical location of the acquisition, the type of sensor used to acquire the data, etc. Data acquisition capability can be measured by the first device's acquisition volume per unit time or the volume acquired in a single session for various data types, etc.
[0277] b. The suggested reporting time for the collected data by the first device. This reporting time can be either a one-time reporting time or a periodic reporting time. For example, the first device estimates the time to complete data collection based on the amount of data to be collected configured by the second device and its own data collection capabilities. Based on this estimate, the first device sends a suggested one-time reporting time to the second device. In other words, the first device can suggest a scheduling time for the collected data to the second device, which is typically later than the time when the first device completes data collection. The first device can also suggest to the second device that it can periodically upload the collected data; for example, it can instruct the second device on a suggested upload cycle.
[0278] c. The activity trajectory of the first device over a future period of time. This activity trajectory can also refer to the activity range of the first device over a future period of time.
[0279] d. Data preprocessing capabilities of the first device. These capabilities include data filtering, data augmentation, and data transformation.
[0280] 902: The second device sends the fifth instruction information to the first device.
[0281] Accordingly, the first device receives the fifth indication information. The fifth indication information indicates one or more of the following:
[0282] (1) The second device configures the data acquisition volume for the first device based on the data acquisition capability of the first device. For example, it can be the data acquisition volume for different types of data.
[0283] (2) The second device configures the data reporting time for the first device based on the data reporting time suggested by the first device. Based on the suggested reporting time sent by the first device, the second device can indicate a one-time reporting time or a periodic reporting time to the first device. For example, it can configure a one-time reporting time for the collected data based on the suggested one-time reporting time, or a periodic reporting time for the collected data based on the suggested periodic reporting time, or a periodic reporting time for the collected data based on the suggested one-time reporting time (e.g., in scenarios with urgent data needs), or it can estimate the time required to complete data collection based on the suggested periodic reporting time and configure a one-time reporting time for the collected data (e.g., when there is no urgent data need). For example, the periodic reporting time configured by the second device for the first device can be indicated by the DRX period or Discontinuous Transmission (DTX) period configured by the second device.
[0284] (3) The second device configures data collection tasks on the activity trajectory of the first device based on the activity trajectory of the first device over a future period. For example, it instructs the first device to collect what kind of data and the amount of such data in a specific geographical location or geographical area. The second device may also combine the data preprocessing capabilities of the first device to determine the type of data to be collected.
[0285] (4) The second device configures the data type to be collected for the first device based on the data preprocessing capability of the first device. For example, if the data preprocessing capability of the first device is high, it can be instructed to collect data with high complexity (such as meteorological data), and if the data preprocessing capability of the first device is low, it can be instructed to collect some simple data.
[0286] The data collected by the first device is used to perform tasks on the first device side, such as performing model training or model inference.
[0287] 903: The first device sends first auxiliary information to the second device;
[0288] 904: The second device assigns a task to the first device based on computing resources in at least one time unit;
[0289] 905: The second device sends a first instruction message to the first device.
[0290] Steps 903-905 can be referred to in the corresponding descriptions of steps 301-303 in Figure 3.
[0291] It should be noted that steps 901 and 902 can be executed before steps 903-905, after steps 903-905, or simultaneously with steps 903-905. This application embodiment does not limit the scope of these steps.
[0292] In this implementation, the first device can send auxiliary information related to data acquisition to the second device. Based on this auxiliary information, the second device can configure the data acquisition task and the reporting time of the acquired data for the first device, which helps improve the scheduling efficiency on the network side. With the improved data acquisition efficiency, the task execution efficiency can also be improved.
[0293] Please refer to Figure 10, which is a flowchart illustrating another configuration method based on auxiliary information provided in an embodiment of this application. As shown in Figure 10, the method includes steps 1001-1007:
[0294] 1001: The first device determines that the training latency of the first neural network is greater than or equal to a latency threshold and / or the load of the first device during the training of the first neural network is greater than or equal to a third load threshold;
[0295] The latency threshold and the third load threshold can be predefined or configured by the network side. The training latency can be the latency of one or more training rounds.
[0296] The first neural network model is built upon a first neural network. Specifically, the first neural network can be the initial neural network used to build the first neural network model. The first device executes the training task of the first neural network. During training, the first device can monitor the training latency of the first neural network and / or the load of the first device. If the training latency of the first neural network is greater than or equal to a latency threshold and / or the load of the first device during training the first neural network is greater than or equal to a third load threshold, then:
[0297] 1002: The first device sends the sixth auxiliary information to the second device;
[0298] The sixth auxiliary information is used to indicate the parameters that the first neural network is suggested to be adjusted during training. For example, the sixth auxiliary information can indicate one or more of the following:
[0299] 1) Suggested computational cost per unit when training the first neural network. For example, it could be floating-point operations per second.
[0300] 2) The number of parameters and network structure of the first neural network. The network structure may include the number of network layers, the number of neurons, etc.
[0301] 3) It is recommended to use a second neural network for training;
[0302] 4) Recommended parameter format and precision. For example, the parameter format can be floating-point number, fixed-point number, etc., and the parameter precision can be a specific number of bits or a high or low precision level.
[0303] 5) Recommended learning rate. For example, if it is determined that the first neural network will continue to be used for training, it is recommended to adjust the learning rate of the first neural network. In some scenarios, such as when the first device recommends using a different neural network for training, the learning rate can also be the learning rate of the replaced neural network.
[0304] 6) When the first neural network is trained collaboratively by the first device and the second device, suggest the time interval between the first neural network's participation in two adjacent training rounds. For example, in a scenario where multiple terminal devices jointly train a neural network with a base station, each terminal device can suggest the time interval for its participation in training to the base station based on its own capabilities. Specifically, terminal devices with weaker capabilities may participate in training less frequently and have relatively longer time intervals, while terminal devices with stronger capabilities can participate in model training more frequently and have relatively shorter time intervals.
[0305] For example, the sixth auxiliary information may also indicate the training method of the first neural network suggested by the first device, such as: one-sided training, joint training, etc.
[0306] 1003: The second device adjusts the parameters suggested for training the first neural network to configure the neural network training parameters for the first device;
[0307] In this embodiment, the second device can configure the unit computational cost or its adjustment value when training the first neural network based on the unit computational cost suggested by the first device; and / or the second device can configure the network structure and number of parameters of the first neural network to be adjusted based on the number of parameters and network structure of the first neural network (e.g., reducing the number of network layers and parameters); and / or the second device can configure a third neural network for training the first device based on the second neural network suggested by the first device, wherein the third neural network is the second neural network or a neural network whose size differs from that of the second neural network by less than or equal to a size threshold (e.g., its size is similar to that of the second neural network); and / or the second device can configure the learning rate of the first neural network based on the learning rate suggested by the first device; and / or, when the first neural network is trained collaboratively by the first device and the second device, the second device can configure the time interval for the first neural network to participate in two adjacent training rounds based on the time interval suggested by the first device (e.g., increasing the time interval for the first device to participate in training, or decreasing the frequency of the first device participating in training). Based on the time intervals suggested by each of the first devices, the second device can configure a minimum time interval and a maximum time interval.
[0308] 1004: The second device sends the configured neural network training parameters to the first device;
[0309] In this embodiment, the first device trains a first neural network or a third neural network based on the neural network training parameters configured by the second device to obtain a first neural network model. After the first neural network model is constructed, the first device can perform related tasks through the first neural network model.
[0310] 1005: The first device sends first auxiliary information to the second device;
[0311] 1006: The task assigned by the second device to the first device based on computing resources in at least one time unit;
[0312] 1007: The second device sends the first instruction information to the first device.
[0313] Steps 1005-1007 can be referred to in the corresponding descriptions of steps 301-303 in Figure 3.
[0314] In this implementation, the first device can send suggested adjustment parameters to the second device during model training. Based on the information sent by the first device, the second device can configure neural network training parameters for the first device, thereby improving the training efficiency of the model and reducing the power consumption of the first device. In addition, the parameters suggested by the first device are broad and comprehensive, and highly compatible with AI scenarios, enabling the second device to configure refined neural network training parameters for the first device based on these parameters.
[0315] It should be noted that the embodiments shown in Figures 5 and 7-10 can be combined in different forms to obtain one or more embodiments, all of which are within the protection scope of this application.
[0316] The methods of the embodiments of this application have been described above, and the apparatus of the embodiments of this application is provided below.
[0317] Please refer to Figure 11, which is a schematic diagram of a communication device provided in an embodiment of this application. As shown in Figure 11, the device includes a first transceiver unit 1101 and a first processing unit 1102. The first transceiver unit 1101 is used for:
[0318] Send first auxiliary information to the second device; the first auxiliary information is used to indicate computing resources at least in one time unit;
[0319] Receive first instruction information from the second device; the first instruction information is used to instruct the second device to allocate tasks to the first device based on computing resources in at least one time unit.
[0320] As can be seen from the device shown in Figure 11, computing resources in at least one time unit can be sent as auxiliary information to the second device. This allows the second device to allocate tasks to the first device based on computing resources in at least one time unit, scheduling tasks on the first device to be executed in time units with sufficient computing resources, thereby improving task scheduling efficiency. Simultaneously, the first device can fully utilize the computing resources in that time unit to execute the allocated tasks, further improving task processing efficiency.
[0321] In one possible implementation, the first auxiliary information indicates one or more of the following:
[0322] The available load of computing resources over at least one time unit;
[0323] Whether the computing resources used in at least one time unit are less than or equal to the first load threshold;
[0324] Whether computing resources have been shut down for at least one time unit.
[0325] In one possible implementation, the first processing unit 1102 is configured to aggregate the tasks on M time units to N time units if the tasks are allocated on M time units; wherein M is greater than N and N is greater than or equal to 1.
[0326] The first transceiver unit 1101 is further configured to send second auxiliary information to the second device; the second auxiliary information is configured to instruct the first device to aggregate tasks on M time units to N time units; and to receive second instruction information from the second device; the second instruction information is configured to instruct the second device to configure transmission resources for the tasks based on N time units.
[0327] In one possible implementation, the task is performed by a first neural network model on the first device side; the first transceiver unit 1101 is further configured to:
[0328] If the load on the first device is greater than or equal to the second load threshold, third auxiliary information is sent to the second device; the third auxiliary information includes an update delay indication for the first neural network model; third indication information is received from the second device; the third indication information is used to instruct the first device to reduce the monitoring frequency of the first neural network model; the third indication information is generated based on the update delay indication.
[0329] In one possible implementation, the first transceiver unit 1101 is further configured to:
[0330] If the communication environment of the first device changes, a fourth auxiliary information is sent to the second device; the fourth auxiliary information includes an identifier of the second neural network model to be used.
[0331] The system receives a fourth instruction from the second device; the fourth instruction is used to instruct the first device to start the third neural network model to perform the task; the third neural network model is the second neural network model or a neural network model whose performance difference from that of the second neural network model is less than or equal to a performance threshold.
[0332] In one possible implementation, the first transceiver unit 1101 is further configured to:
[0333] Send fifth auxiliary information to the second device; the fifth auxiliary information indicates one or more of the following: the data acquisition capability of the first device; the suggested reporting time for the acquired data by the first device; the activity trajectory of the first device over a future period; the data preprocessing capability of the first device;
[0334] Receive a fifth instruction from the second device; the fifth instruction indicates one or more of the following: the second device configures the data acquisition volume for the first device based on the data acquisition capability of the first device; the second device configures the data acquisition reporting time for the first device based on the data acquisition reporting time suggested by the first device; the second device configures the data acquisition task on the activity trajectory of the first device based on the activity trajectory of the first device in the future; the second device configures the data type to be acquired for the first device based on the data preprocessing capability of the first device.
[0335] The data collected by the first device is used to perform the task.
[0336] In one possible implementation, the first transceiver unit 1101 is further configured to:
[0337] If the training latency of the first neural network is greater than or equal to a latency threshold and / or the load of the first device during training of the first neural network is greater than or equal to a third load threshold, a sixth auxiliary information is sent to the second device; the sixth auxiliary information is used to indicate the parameters to be adjusted for training the first neural network; the first neural network model is built based on the first neural network;
[0338] The parameters adjusted by the second device based on the training of the first neural network are the neural network training parameters configured by the first device.
[0339] In one possible implementation, the sixth auxiliary information indicates one or more of the following:
[0340] Recommended unit computational cost when training the first neural network;
[0341] The number of parameters and network structure of the first neural network;
[0342] It is recommended to use a second neural network for training;
[0343] Recommended parameter format and precision;
[0344] Recommended learning rate;
[0345] When the first neural network is trained collaboratively by the first device and the second device, it is recommended that the time interval between two adjacent training rounds be specified for the first neural network.
[0346] The neural network training parameters configured for the second device indicate one or more of the following:
[0347] The unit computation cost or the adjustment value of the unit computation cost when training the first neural network;
[0348] The network structure and number of parameters that need to be adjusted for the first neural network;
[0349] Training is performed using a third neural network; the third neural network is either the second neural network or a neural network whose size differs from that of the second neural network by a size threshold.
[0350] The learning rate of the first neural network;
[0351] In the case where the first neural network is trained collaboratively by the first device and the second device, the time interval between two adjacent training rounds of the first neural network.
[0352] It should be noted that the implementation of each unit described in FIG11 can also refer to the corresponding descriptions of the embodiments shown in FIG3 to FIG10. Furthermore, the beneficial effects of the communication device described in FIG11 can be described with reference to the corresponding descriptions of the embodiments shown in FIG3 to FIG10, and will not be repeated here.
[0353] Please refer to Figure 12, which is a schematic diagram of another communication device provided in an embodiment of this application. As shown in Figure 12, the device includes a second transceiver unit 1201 and a second processing unit 1202. The second transceiver unit 1201 is used for:
[0354] Receive first auxiliary information from a first device; the first auxiliary information is used to indicate computing resources in at least one time unit;
[0355] Send a first instruction message to the first device; the first instruction message is used to instruct the second device to allocate tasks to the first device based on computing resources in at least one time unit.
[0356] As can be seen, in the device shown in Figure 12, the device can receive computing resource information for at least one time unit from the first device. This allows for task allocation to the first device based on the computing resources within that time unit, scheduling tasks on the first device side to be executed within time units with sufficient computing resources, thereby improving task scheduling efficiency. Simultaneously, the first device can fully utilize the computing resources within that time unit to execute the allocated tasks, further enhancing task processing efficiency.
[0357] In one possible implementation, the first auxiliary information indicates one or more of the following:
[0358] The available load of computing resources over at least one time unit;
[0359] Whether the computing resources used in at least one time unit are less than or equal to the first load threshold;
[0360] Whether computing resources have been shut down for at least one time unit.
[0361] In one possible implementation, when tasks are allocated over M time units, the second transceiver unit 1201 is further configured to receive second auxiliary information from the first device; the second auxiliary information is configured to instruct the first device to aggregate tasks over M time units into N time units; wherein M is greater than N, and N is greater than or equal to 1.
[0362] The second processing unit 1202 is used to configure transmission resources for the task based on N time units;
[0363] The second transceiver unit 1201 is also used to send second indication information to the first device; the second indication information is used to indicate transmission resources.
[0364] In one possible implementation, the task is performed by a first neural network model on the first device side; the second transceiver unit 1201 is further configured to:
[0365] Receive third auxiliary information from the first device; the third auxiliary information includes an update delay indication for the first neural network model;
[0366] Send a third instruction message to the first device; the third instruction message is used to instruct the first device to reduce the monitoring frequency of the first neural network model; the third instruction message is generated based on the update delay instruction.
[0367] In one possible implementation, the second transceiver unit 1201 is further configured to receive fourth auxiliary information from the first device; the fourth auxiliary information includes an identifier of the second neural network model to be used.
[0368] The second processing unit 1202 is also used to determine the third neural network model based on the identifier of the second neural network model;
[0369] The second transceiver unit 1201 is also used to send a fourth instruction information to the first device; the fourth instruction information is used to instruct the first device to start a third neural network model to perform a task; the third neural network model is the second neural network model or a neural network model whose performance difference from that of the second neural network model is less than or equal to a performance threshold.
[0370] In one possible implementation, the second transceiver unit 1201 is further configured to:
[0371] Receive fifth auxiliary information from the first device; the fifth auxiliary information indicates one or more of the following: the first device's ability to collect various types of data; the first device's suggested reporting time for collecting various types of data; the first device's activity trajectory over a future period; the first device's preprocessing capabilities for various types of data;
[0372] Send a fifth instruction message to the first device; the fifth instruction message indicates one or more of the following: the second device configures the data acquisition volume for the first device based on the data acquisition capability of the first device; the second device configures the data acquisition reporting time for the first device based on the data acquisition reporting time suggested by the first device; the second device configures the data acquisition task on the activity trajectory of the first device based on the activity trajectory of the first device in the future; the second device configures the data type to be acquired for the first device based on the data preprocessing capability of the first device.
[0373] The data collected by the first device is used to perform the task.
[0374] In one possible implementation, the second transceiver unit 1201 is further configured to receive sixth auxiliary information from the first device; the sixth auxiliary information is used to indicate the parameters to be adjusted for training the first neural network; the first neural network model is built based on the first neural network.
[0375] The second processing unit 1202 is also used to configure neural network training parameters for the first device based on the parameters suggested for adjustment during the training of the first neural network.
[0376] The second transceiver unit 1201 is also used to send the configured neural network training parameters to the first device.
[0377] In one possible implementation, the sixth auxiliary information indicates one or more of the following:
[0378] Recommended unit computational cost when training the first neural network;
[0379] The number of parameters and network structure of the first neural network;
[0380] It is recommended to use a second neural network for training;
[0381] Recommended parameter format and precision;
[0382] Recommended learning rate;
[0383] When the first neural network is trained collaboratively by the first device and the second device, it is recommended that the time interval between two adjacent training rounds be specified for the first neural network.
[0384] The second processing unit 1202 configures the neural network training parameters for the first device based on the parameters suggested for training the first neural network. Specifically, it is used to:
[0385] The unit computation or adjustment value of the unit computation when training the first neural network is based on the unit computation configuration suggested by the first device.
[0386] And / or configure the network structure and number of parameters of the first neural network to be adjusted based on the number of parameters and network structure of the first neural network;
[0387] And / or the third neural network is configured for training on the first device based on the second neural network recommended by the first device; the third neural network is the second neural network or a neural network whose size differs from that of the second neural network by a size threshold;
[0388] And / or configure the learning rate of the first neural network based on the learning rate suggested by the first device;
[0389] And / or, in the case where the first neural network is trained collaboratively by the first device and the second device, configure the time interval for the first neural network to participate in two adjacent rounds of training based on the time interval suggested by the first device.
[0390] It should be noted that the implementation of each unit described in FIG12 can also correspond to the descriptions of the embodiments shown in FIG3 to FIG10. Furthermore, the beneficial effects of the communication device described in FIG12 can be described in the corresponding descriptions of the embodiments shown in FIG3 to FIG10, and will not be repeated here.
[0391] Based on the descriptions of the above method and device embodiments, this application also provides a communication device. Please refer to FIG13, which is a schematic diagram of the structure of a communication device provided in this application embodiment. The communication device includes at least a processor 1301, a memory 1302, and a communication interface 1303, which are interconnected via a bus 1304. This communication device can be used to execute relevant steps of a configuration method based on auxiliary information. This communication device can be a terminal device in a wireless communication system, such as the first device in the above method embodiments. The processor 1301 in the communication device is used to read the computer program code stored in the memory 1302 and execute the method of any one of the embodiments shown in FIG3 to FIG10.
[0392] The memory 1302 includes, but is not limited to, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), or compact disc read-only memory (CD-ROM), and is used to store related computer programs and data.
[0393] Processor 1301 can be one or more CPUs. When processor 1301 is a CPU, the CPU can be a single-core CPU or a multi-core CPU.
[0394] For example, the processor 1301 in the communication device can be used to read one or more programs stored in the memory 1302 described above, and perform the following operations:
[0395] Send first auxiliary information to the second device; the first auxiliary information is used to indicate computing resources at least in one time unit;
[0396] Receive first instruction information from the second device; the first instruction information is used to instruct the second device to allocate tasks to the first device based on computing resources in at least one time unit.
[0397] It should be noted that the implementation of each operation can also correspond to the description of the method in any of the embodiments shown in Figures 3 to 10.
[0398] It should be noted that although the communication device shown in Figure 13 only illustrates the processor 1301, memory 1302, communication interface 1303, and bus 1304, those skilled in the art should understand that in specific implementations, the communication device may also include other components necessary for normal operation. Furthermore, depending on specific needs, those skilled in the art should understand that the communication device may also include hardware components for implementing other additional functions. Moreover, those skilled in the art should understand that the communication device may only include the components necessary for implementing the embodiments of this application, and not necessarily all the components shown in Figure 13.
[0399] Please refer to Figure 14, which is a schematic diagram of another communication device provided in an embodiment of this application. This communication device includes at least a processor 1401, a memory 1402, and a communication interface 1403, which are interconnected via a bus 1404. This communication device can be used to execute relevant steps of a configuration method based on auxiliary information. This communication device can be a network device in a wireless communication system, such as the second device in the above method embodiments. The processor 1401 in this communication device is used to read the computer program code stored in the memory 1402 and execute the method of any one of the embodiments shown in Figures 3 to 10.
[0400] The memory 1402 includes, but is not limited to, RAM, ROM, EPROM, or CD-ROM, and is used to store related computer programs and data.
[0401] Processor 1401 can be one or more CPUs. When processor 1401 is a CPU, the CPU can be a single-core CPU or a multi-core CPU.
[0402] For example, the processor 1401 in the communication device can be used to read one or more programs stored in the memory 1402 described above, and perform the following operations:
[0403] Receive first auxiliary information from a first device; the first auxiliary information is used to indicate computing resources in at least one time unit;
[0404] Send a first instruction message to the first device; the first instruction message is used to instruct the second device to allocate tasks to the first device based on computing resources in at least one time unit.
[0405] It should be noted that the implementation of each operation can also correspond to the description of the method in any of the embodiments shown in Figures 3 to 10.
[0406] It should be noted that although the communication device shown in Figure 14 only illustrates the processor 1401, memory 1402, communication interface 1403, and bus 1404, those skilled in the art should understand that in specific implementations, the communication device may also include other devices necessary for normal operation. Furthermore, depending on specific needs, those skilled in the art should understand that the communication device may also include hardware devices for implementing other additional functions. Moreover, those skilled in the art should understand that the communication device may only include the devices necessary for implementing the embodiments of this application, and not necessarily all the devices shown in Figure 14.
[0407] This application also provides a chip, including: a processor for calling and running a computer program from a memory, causing a device with the chip installed to perform the method described in any of the embodiments shown in Figures 3 to 10 above. This chip may be a chip in a communication device.
[0408] This application also provides a computer-readable storage medium (memory) storing a computer program that, when executed, implements the method described in any of the embodiments shown in Figures 3 to 10. It is understood that the computer-readable storage medium here may include built-in storage media in a device, or it may include extended storage media supported by the device. The computer-readable storage medium provides storage space containing the device's operating system. Furthermore, one or more computer programs suitable for loading and execution by the device's processor are also stored in this storage space. It should be noted that the computer-readable storage medium here may be high-speed RAM or non-volatile memory, such as at least one disk storage device; optionally, it may also be at least one computer-readable storage medium located remotely from the aforementioned processor.
[0409] This application also provides a computer program product, which includes computer program code. When the computer program code is run by a communication device, the method flow described in any one of the embodiments in Figures 3 to 10 is implemented.
[0410] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions in other embodiments.
[0411] It should be understood that the processor mentioned in the embodiments of this application can be a CPU, or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor can be a microprocessor or any conventional processor.
[0412] It should also be understood that the memory mentioned in the embodiments of this application can be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. Non-volatile memory can be ROM, Programmable Read-Only Memory (PROM), EPROM, Electrically Erasable Programmable Read-Only Memory (EEPROM), or flash memory. Volatile memory can be RAM, which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDR SDRAM), Enhanced Synchronous Dynamic Random Access Memory (ESDRAM), Synchlink Dynamic Random Access Memory (SLDRAM), and Direct Rambus RAM (DR RAM).
[0413] It should be noted that when the processor is a general-purpose processor, DSP, ASIC, FPGA, or other programmable logic device, discrete gate or transistor logic device, or discrete hardware component, the memory (storage module) is integrated into the processor.
[0414] It should be noted that the memories described herein are intended to include, but are not limited to, these and any other suitable types of memories.
[0415] It should be understood that in the various embodiments of this application, the order of the above-mentioned processes does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0416] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely exemplary. For instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0417] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0418] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium.
[0419] In this application, "at least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. In the textual description of this application, the character " / " generally indicates that the preceding and following related objects have an "or" relationship.
[0420] The steps in the method of this application embodiment can be adjusted, combined, or deleted according to actual needs.
[0421] The modules in the device of this application embodiment can be merged, divided, and deleted according to actual needs.
[0422] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit it. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.
Claims
1. A configuration method based on auxiliary information, characterized in that, Applied to a first device; the method includes: Send first auxiliary information to the second device; the first auxiliary information is used to indicate computing resources in at least one time unit; Receive first instruction information from the second device; the first instruction information is used to instruct the second device to allocate tasks to the first device based on computing resources in the at least one time unit.
2. The method according to claim 1, characterized in that, The first auxiliary information indicates one or more of the following: The available load of computing resources over at least one time unit; Whether the computing resources used in at least one time unit are less than or equal to a first load threshold; Whether the computing resources in at least one time unit have been turned off.
3. The method according to claim 1 or 2, characterized in that, The method further includes: If the task is allocated over M time units, then the tasks over the M time units are aggregated into N time units; where M is greater than N, and N is greater than or equal to 1. Send second auxiliary information to the second device; the second auxiliary information is used to instruct the first device to aggregate the tasks in the M time units into N time units; Receive second indication information from the second device; the second indication information is used to indicate the transmission resources configured by the second device for the task based on the N time units.
4. The method according to any one of claims 1-3, characterized in that, The task is performed by a first neural network model on the first device side; the method further includes: If the load on the first device is greater than or equal to the second load threshold, third auxiliary information is sent to the second device; the third auxiliary information includes an update delay indication for the first neural network model. The first device receives a third indication message from the second device; the third indication message is used to instruct the first device to reduce the monitoring frequency of the first neural network model; the third indication message is generated based on the update delay indication.
5. The method according to any one of claims 1-3, characterized in that, The method further includes: If the communication environment of the first device changes, a fourth auxiliary information is sent to the second device; the fourth auxiliary information includes an identifier of the second neural network model to be used. The first device receives a fourth instruction from the second device; the fourth instruction is used to instruct the first device to start a third neural network model to execute the task; the third neural network model is the second neural network model or a neural network model whose performance difference from that of the second neural network model is less than or equal to a performance threshold.
6. The method according to any one of claims 1-5, characterized in that, The method further includes: Send fifth auxiliary information to the second device; the fifth auxiliary information indicates one or more of the following: the data acquisition capability of the first device; the suggested reporting time for the acquired data by the first device; the activity trajectory of the first device in the future; the data preprocessing capability of the first device; The system receives a fifth instruction from the second device; the fifth instruction indicates one or more of the following: the second device configures a data acquisition volume for the first device based on the data acquisition capability of the first device; the second device configures a data acquisition reporting time for the first device based on the data reporting time suggested by the first device; the second device configures a data acquisition task on the activity trajectory of the first device based on the activity trajectory of the first device within a future period; the second device configures a data type to be acquired based on the data preprocessing capability of the first device. The data collected by the first device is used to perform the task.
7. The method according to claim 4, characterized in that, Before sending the first auxiliary information to the second device, the method further includes: If the training latency of the first neural network is greater than or equal to a latency threshold and / or the load of the first device during training of the first neural network is greater than or equal to a third load threshold, a sixth auxiliary information is sent to the second device; the sixth auxiliary information is used to indicate parameters to be adjusted for training the first neural network; the first neural network model is built based on the first neural network; The second device receives parameters that it suggests adjusting based on training the first neural network, which are then used as the neural network training parameters configured by the first device.
8. The method according to claim 7, characterized in that, The sixth auxiliary information indicates one or more of the following: The recommended unit computational cost when training the first neural network; The number of parameters and network structure of the first neural network; It is recommended to use a second neural network for training; Recommended parameter format and precision; Recommended learning rate; When the first neural network is trained collaboratively by the first device and the second device, it is recommended that the time interval between two adjacent training rounds of the first neural network be specified. The neural network training parameters configured in the second device indicate one or more of the following: The unit computation cost or the adjustment value of the unit computation cost when training the first neural network; The network structure and number of parameters that need to be adjusted for the first neural network; Training is performed using a third neural network; the third neural network is either the second neural network or a neural network whose size differs from that of the second neural network by a size threshold. The learning rate of the first neural network; In the case where the first neural network is trained collaboratively by the first device and the second device, the time interval between two adjacent training rounds of the first neural network.
9. A configuration method based on auxiliary information, characterized in that, Applied to a second device; the method includes: Receive first auxiliary information from a first device; the first auxiliary information is used to indicate computing resources in at least one time unit; Send a first instruction message to the first device; the first instruction message is used to instruct the second device to allocate tasks to the first device based on computing resources in the at least one time unit.
10. The method according to claim 9, characterized in that, The first auxiliary information indicates one or more of the following: The available load of computing resources over at least one time unit; Whether the computing resources used in at least one time unit are less than or equal to a first load threshold; Whether the computing resources in at least one time unit have been turned off.
11. The method according to claim 9 or 10, characterized in that, When the task is assigned over M time units, the method further includes: Receive second auxiliary information from the first device; the second auxiliary information is used to instruct the first device to aggregate the tasks in the M time units into N time units; wherein, M is greater than N, and N is greater than or equal to 1; Configure transmission resources for the task based on the N time units; Send a second indication message to the first device; the second indication message is used to indicate the transmission resources.
12. The method according to any one of claims 9-11, characterized in that, The task is performed by a first neural network model on the first device side; the method further includes: Receive third auxiliary information from the first device; the third auxiliary information includes an update delay indication for the first neural network model; A third instruction message is sent to the first device; the third instruction message is used to instruct the first device to reduce the monitoring frequency of the first neural network model; the third instruction message is generated based on the update delay instruction.
13. The method according to any one of claims 9-11, characterized in that, The method further includes: Receive fourth auxiliary information from the first device; the fourth auxiliary information includes an identifier of a second neural network model to be used; The third neural network model is determined based on the identifier of the second neural network model; Send a fourth instruction message to the first device; the fourth instruction message is used to instruct the first device to start the third neural network model to execute the task; the third neural network model is the second neural network model or a neural network model whose performance difference from that of the second neural network model is less than or equal to a performance threshold.
14. The method according to any one of claims 9-13, characterized in that, The method further includes: The system receives fifth auxiliary information from the first device; the fifth auxiliary information indicates one or more of the following: the data acquisition capability of the first device; the suggested reporting time for the acquired data by the first device; the activity trajectory of the first device over a future period; and the data preprocessing capability of the first device. A fifth instruction message is sent to the first device; the fifth instruction message indicates one or more of the following: the second device configures the data acquisition volume for the first device based on the data acquisition capability of the first device; the second device configures the data acquisition reporting time for the first device based on the data acquisition reporting time suggested by the first device; the second device configures the data acquisition task on the activity trajectory of the first device based on the activity trajectory of the first device in the future; the second device configures the data type to be acquired for the first device based on the data preprocessing capability of the first device. The data collected by the first device is used to perform the task.
15. The method according to claim 12, characterized in that, Before receiving first auxiliary information from the first device, the method further includes: The system receives sixth auxiliary information from the first device; the sixth auxiliary information is used to indicate parameters to be adjusted during the training of the first neural network; the first neural network model is built based on the first neural network. The parameters suggested for adjustment based on training the first neural network are used to configure the neural network training parameters for the first device. The configured neural network training parameters are sent to the first device.
16. The method according to claim 15, characterized in that, The sixth auxiliary information indicates one or more of the following: The recommended unit computational cost when training the first neural network; The number of parameters and network structure of the first neural network; It is recommended to use a second neural network for training; Recommended parameter format and precision; Recommended learning rate; When the first neural network is trained collaboratively by the first device and the second device, it is recommended that the time interval between two adjacent training rounds of the first neural network be specified. The parameters adjusted based on the training of the first neural network are the neural network training parameters configured for the first device, including: The unit computation or adjustment value of the unit computation is configured based on the unit computation configuration suggested by the first device when training the first neural network. And / or configure the network structure and number of parameters of the first neural network to be adjusted based on the number of parameters and network structure of the first neural network; And / or train a third neural network for the first device based on the second neural network recommended by the first device; the third neural network is the second neural network or a neural network whose size differs from the size of the second neural network by less than or equal to a size threshold; And / or configure the learning rate of the first neural network based on the learning rate suggested by the first device; And / or, in the case where the first neural network is trained collaboratively by the first device and the second device, configure the time interval for the first neural network to participate in two adjacent training rounds based on the time interval suggested by the first device.
17. A communication device, characterized in that, It includes modules for performing the method as described in any one of claims 1-8, or modules for performing the method as described in any one of claims 9-16.
18. A communication device, characterized in that, The device includes a processor, a memory, a communication interface, and one or more programs stored in the memory and configured to, when executed by the processor, cooperate with the communication interface to implement the method as described in any one of claims 1-8 or 9-16.
19. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program for execution by the device, which, when executed, implements the method of any one of claims 1-8 or 9-16.
20. A computer program product, characterized in that, When the computer program product is run by the device, the device performs the method as claimed in any one of claims 1-8 or 9-16.
Citation Information
Patent Citations
Distributed computing resource allocation system and task processing method
CN105049268A
Wireless communication network equipment and system based on edge computing network
CN109298933A
Terminal and base station
CN111954206A
Instance allocation method, system and device
CN114461374A
Using a Multi-Task-Trained Neural Network to Guide Interaction with a Query-Processing System via Useful Suggestions
US20210326742A1