Network training method, and communication apparatus

By flexibly indicating the different bit widths of AI model parameters, the resource consumption problem caused by high-precision floating-point computing in 5G communication systems is solved, the balance between network training performance and resource saving is achieved, and the application of artificial intelligence in the wireless field is promoted.

WO2025161598A1PCT designated stage Publication Date: 2025-08-07HUAWEI TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/131251
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-02-01
Filing Date
2024-11-11
Publication Date
2025-08-07

AI Technical Summary

Technical Problem

In 5G communication system, during the network training of AI models, high-precision floating-point computing leads to high energy resource consumption and high transmission overhead, which limits the promotion of artificial intelligence in the wireless field.

Method used

By flexibly indicating different bit widths corresponding to different model parameters, such as float32, it is more applicable, reduces air interface, storage and computing overhead, and saves terminal hardware resources.

Benefits of technology

While ensuring network training performance, it saves resources and reduces terminal power consumption, which is conducive to the promotion of artificial intelligence in the wireless field.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024131251_07082025_PF_FP_ABST
    Figure CN2024131251_07082025_PF_FP_ABST
Patent Text Reader

Abstract

A network training method, and a communication apparatus, which are applied to a scenario where AI is combined with a wireless network. The method comprises: acquiring a first bit width of a first parameter, and sending first information, wherein the first information is used for indicating the first bit width. The first bit width belongs to a first bit width set, and the first parameter belongs to a first parameter set; there are correspondences between a plurality of bit widths in the first bit width set and a plurality of parameters in the first parameter set; the plurality of parameters are used for training a first model; and each parameter comprises one or more of the following: a model parameter and / or a gradient parameter. The method can save on resources while guaranteeing the network training performance.
Need to check novelty before this filing date? Find Prior Art

Description

A method and communication device for network training

[0001] This application claims priority to the Chinese patent application filed with the State Intellectual Property Office of China on February 1, 2024, with application number 202410149482.0, and invention name “A method and communication device for network training”, the entire contents of which are incorporated by reference into this application. Technical Field

[0002] The present application relates to the field of communication technology, and more particularly, to a method and a communication device for network training. Background Art

[0003] Currently, artificial intelligence (AI) has been introduced into the fifth generation (5G) communication system, and the training of AI models involves network training. During network training, such as neural network training, federated learning training, or knowledge distillation, model parameters, gradient parameters, or data sets of predetermined precision (such as 32-bit floating point type, float32) are transmitted between devices over the air interface to achieve network training and convergence. However, this network training may involve a large number of floating point value operations. At the same time, high-precision floating point calculations are usually slow and consume more power, which not only leads to greater energy resource consumption and transmission overhead, but may also inhibit the execution of network training in devices with less available computing resources or limited power, limiting the promotion of artificial intelligence in the wireless field.

[0004] Summary of the Invention

[0005] The present application provides a method and a communication device for network training, in order to save resources while ensuring network training performance.

[0006] In the first aspect, a communication method is provided. The method can be performed by a first device (e.g., a first terminal), or can be performed by a chip or circuit of the first device, and this application does not limit this. For ease of description, the following is an example of execution by the first device. The first device can be a terminal device, or a chip, chip system or circuit in the terminal device, or a functional module in the terminal device that can call and execute a program.

[0007] The method includes: obtaining the first bit width of the first parameter, the first bit width belongs to a first bit width set, the first parameter belongs to a first parameter set, multiple bit widths in the first bit width set have a corresponding relationship with multiple parameters in the first parameter set, multiple parameters are used to train the first model, each parameter includes one or more of the following: model parameters and / or gradient parameters; sending first information, the first information is used to indicate the first bit width.

[0008] In the present application, multiple bit widths in the first bit width set have a corresponding relationship with multiple parameters in the first parameter set, which can be understood as: multiple bit widths correspond one-to-one to multiple parameters, or multiple parameters correspond to one bit width, that is, the multiple bit widths corresponding to multiple parameters can be completely different, or the bit widths corresponding to some parameters can be the same.

[0009] According to the above scheme, the first device obtains the bit width of the first parameter and can transmit it to the second device through the air interface, so that the first bit width of the first parameter is aligned between the first device and the second device, so that after the subsequent local model training of the first device, the training result of the first parameter can be reported based on the first bit width, and the second device can send the merged training result of the first parameters based on the first bit width, that is, the first device can transmit different first bit widths corresponding to different first parameters through the air interface to achieve network training and convergence. In particular, compared with the single bit width corresponding to different model parameters in the network training process in the existing scheme (for example, 64-bit floating point type, double float64), this implementation method can flexibly indicate different bit widths corresponding to different model parameters (for example, float32), and is more applicable. It can not only ensure network training performance, but also save resources, such as reducing air interface overhead, reducing storage overhead and computing overhead, saving terminal hardware resource consumption, which is conducive to terminal training of other more complex models, and can also ensure the promotion of artificial intelligence in the wireless field.

[0010] In certain implementations of the first aspect, the first parameter set includes N second parameters, the second bit width corresponding to at least one of the N second parameters is different from the first bit width, the second bit width belongs to the first bit width set, and N is an integer greater than or equal to 1.

[0011] Optionally, the present application does not limit whether the second bit widths corresponding to the N second parameters are the same, as long as at least two of the multiple bit widths corresponding to the multiple parameters in the first parameter set are different. Based on the above scheme, the bit widths corresponding to different model parameters can be different, which is more applicable. It can not only ensure network training performance, but also reduce transmission overhead and computing overhead, save terminal hardware resource consumption, and ensure the promotion of artificial intelligence in the wireless field.

[0012] In certain implementations of the first aspect, the method further includes: obtaining a first training result, the first training result corresponding to the first parameter, the first training result being obtained based on training of the first model; and sending the first training result according to the first bit width.

[0013] In other words, the first device can locally train the first model to obtain a training result for the first parameter, and report it to the second device based on the first bit width. Specifically, the bit width of the first training result is the first bit width. Based on this solution, the bit widths of the training results corresponding to different parameters can be different, which enhances applicability. This not only ensures network training performance, but also reduces air interface transmission overhead and computational overhead, saving terminal power consumption, and thus helping the first device conserve resources.

[0014] In certain implementations of the first aspect, the method further includes: receiving a second training result, the bit width corresponding to the second training result being the first bit width, and the second training result being used by the first terminal to train the first model.

[0015] Exemplarily, the second training result is obtained by aggregating at least two first training results reported by at least two terminals, and the at least two terminals are used to jointly train the first model.

[0016] That is, the second device can merge the first training results for the first parameter from multiple terminals and send down the merged second training result, wherein the bit width of the second training result is the first bit width, that is, the bit width of the first training result of the first parameter reported by the terminal device is consistent with the bit width of the second training result of the merged first parameter sent down by the second device. Based on the above scheme, the bit widths of the first training results corresponding to the same parameter reported by different terminals can be different, so the bit widths of the second training results corresponding to the merged same parameter sent down by the second device to different terminals can also be different. This scheme has strong applicability and can not only ensure network training performance, but also reduce air interface transmission overhead and computing overhead, saving terminal power consumption.

[0017] In certain implementations of the first aspect, the method further includes: sending second information, where the second information is used to indicate that the bit width corresponding to the first parameter is updated to a third bit width, and the third bit width is different from the first bit width.

[0018] Based on the above scheme, the first device can update the first bit width of the first parameter to the second device. For example, the third bit width is greater than the first bit width. Assuming that during the network training of the first model, the battery capacity of the first device increases, or the accuracy of the first parameter required for the first model training is improved, the first device can instruct the second device to update the first bit width to the third bit width, such as the first bit width is float16 and the second bit width is (floating point type 32 bits, float32) to improve network training performance. For another example, the third bit width is smaller than the first bit width. Assuming that during the network training of the first model, the battery capacity of the first device drops sharply and cannot support the model training with a high-precision bit width, the first device can instruct the second device to update the first bit width to the third bit width, such as the first bit width is double float64 and the second bit width is float16. While ensuring network training performance, it can reduce transmission overhead and computing overhead and save power consumption of the terminal.

[0019] In certain implementations of the first aspect, the second information includes a first time unit, and the second information is used to indicate that within the first time unit, the bit width corresponding to the first parameter is updated to a third bit width.

[0020] Optionally, this application does not limit the update time and number of updates of the first bit width of the first parameter, which may depend on factors such as the terminal's capability information, the terminal's hardware conditions, the terminal's hardware power, the terminal's battery capacity, and the current network training status.

[0021] Based on the above scheme, the first device can instruct the second device to update the first bit width of the first parameter to the third bit width at a certain moment, or the first device can also instruct the second device to update the first bit width of the first parameter to the third bit width within a certain time period. It has strong flexibility and applicability, which helps to improve network training performance and convergence performance.

[0022] In certain implementations of the first aspect, obtaining the first bit width of the first parameter includes: receiving third information, where the third information is used to indicate the first bit width.

[0023] Based on the above scheme, the first device may obtain the first bit width of the first parameter through signaling instructions. Optionally, the first bit width of the first parameter may also be predefined or preconfigured. This application does not limit the implementation method of the first device obtaining the first bit width.

[0024] In certain implementations of the first aspect, before receiving the third information, the method further includes: sending a second bit width set, the first terminal supports bit widths in the second bit width set, and the first bit width belongs to the second bit width set.

[0025] Based on the above scheme, the first device can send a set of multiple bit widths supported by the first device, namely, a second bit width set, to the second device. For example, the second device can select the first bit width from the second bit width set based on time-frequency resources, the bit width requirement range of different terminals for the first parameter, the hardware conditions of different terminals, hardware power, battery capacity, or at least one of the data set quality of different terminals, and indicate the first bit width to the first device. In this implementation method, the second device allocates the first bit width to the first device in a targeted manner, which can save resources as much as possible while ensuring network training performance, reduce terminal power consumption, and reduce signaling overhead and computing overhead.

[0026] In certain implementations of the first aspect, before obtaining the first bit width of the first parameter, the method also includes: receiving fourth information, the fourth information is used to request training of the first model, the fourth information includes one or more of the following: structural parameters of the first model, parameter quantities of the first model, or a fourth bit width; wherein the fourth bit width is a bit width supported by the network side.

[0027] In certain implementations of the first aspect, the first bit width is less than or equal to the fourth bit width.

[0028] Based on the above scheme, the second device can send a reference bit width, that is, the fourth bit width, to the first device, so that the first device can determine the first bit width based on the fourth bit width, so that both the first device and the second device support the first bit width of the first parameter, which is beneficial to improving the network training performance and convergence performance. At the same time, by setting the first bit width to be less than or equal to the fourth bit width, resources can be saved as much as possible, the power consumption of the terminal can be reduced, and the signaling overhead and computing overhead can be reduced.

[0029] In a second aspect, a communication method is provided. The method can be performed by a second device, or by a chip or circuit of the second device, which is not limited in this application. For ease of description, the following description uses the second device as an example. The second device can be a network device, or a chip, chip system, or circuit in the network device, or a functional module in the network device that can call and execute a program.

[0030] The method includes: obtaining the first bit width of the first parameter, the first bit width belongs to a first bit width set, the first parameter belongs to a first parameter set, multiple bit widths in the first bit width set have a corresponding relationship with multiple parameters in the first parameter set, multiple parameters are used to train the first model, and each parameter includes one or more of the following: model parameters and / or gradient parameters.

[0031] In certain implementations of the second aspect, the first parameter set further includes N second parameters, the second bit width corresponding to at least one of the N second parameters is different from the first bit width, the second bit width belongs to the first bit width set, and N is an integer greater than or equal to 1.

[0032] In certain implementations of the second aspect, the method further includes: receiving at least two first training results reported by at least two terminals, where the at least two terminals are used to jointly train the first model; performing aggregation processing based on the at least two first training results to obtain a second training result, where the second training result is used to train the first model; and sending the second training result according to the first bit width.

[0033] In certain implementations of the second aspect, the method further includes: receiving second information, where the second information is used to indicate that the bit width corresponding to the first parameter is updated to a third bit width, and the third bit width is different from the first bit width.

[0034] In certain implementations of the second aspect, the second information includes a first time unit, and the second information is used to indicate that within the first time unit, the bit width corresponding to the first parameter is updated to a third bit width.

[0035] In certain implementations of the second aspect, obtaining the first bit width of the first parameter includes: receiving first information, where the first information is used to indicate the first bit width.

[0036] In certain implementations of the second aspect, obtaining the first bit width of the first parameter includes: receiving a second bit width set; selecting the first bit width from the second bit width set; and sending third information, where the third information is used to indicate the first bit width.

[0037] In certain implementations of the second aspect, before obtaining the first bit width of the first parameter, the method also includes: sending fourth information, the fourth information is used to request training of the first model, and the fourth information includes one or more of the following: structural parameters of the first model, parameter quantity of the first model, or a fourth bit width; wherein the fourth bit width is a bit width supported by the network side.

[0038] In certain implementations of the second aspect, the first bit width is less than or equal to the fourth bit width.

[0039] The beneficial effects of the above-mentioned second aspect and certain implementation methods of the second aspect can be referred to the corresponding description of the first aspect, and will not be repeated here.

[0040] In a third aspect, a communication method is provided. The method can be performed by a first device, or by a chip or circuit of the first device, which is not limited in this application. For ease of description, the following description is based on an example of execution by the first device. The first device can be a terminal device, or a chip, chip system, or circuit in the terminal device, or a functional module in the terminal device that can call and execute a program.

[0041] The method includes: obtaining a first bit width of first data, the first bit width belongs to a first bit width set, the first data belongs to a first data set, multiple bit widths in the first bit width set correspond to multiple data in the first data set, and the first data set is used to train a first model; sending first information, the first information is used to indicate the first bit width.

[0042] In the present application, the multiple bit widths in the first bit width set have a corresponding relationship with the multiple data in the first data set, which can be understood as: the multiple bit widths correspond one-to-one to the multiple data, or the multiple data correspond to one bit width, that is, the multiple bit widths corresponding to the multiple data may be completely different, or the bit widths corresponding to some data may be the same.

[0043] According to the above scheme, the first device obtains the bit width of the first data and can transmit it to the second device through the air interface, so that the first bit width of the first data is aligned between the first device and the second device, so that the second device can send the first data set based on the first bit width, so that the first device uses the first data set to train the first model to achieve network training and convergence. In particular, compared with the single bit width (for example, double float64) corresponding to multiple data in the first data set during the network training process in the existing scheme, this implementation method can flexibly indicate different bit widths (for example, float32) corresponding to different data in the same data set, and is more applicable. It can not only ensure network training performance, but also save resources, such as reducing air interface overhead, reducing storage overhead and computing overhead, saving terminal hardware resource consumption, which is conducive to the terminal training other more complex models, and can also ensure the promotion of artificial intelligence in the wireless field.

[0044] Among them, certain implementation methods and beneficial effects of the third aspect can refer to the corresponding description of the first aspect and will not be repeated here.

[0045] In a fourth aspect, a communication method is provided. The method can be performed by a second device, or by a chip or circuit of the second device, which is not limited in this application. For ease of description, the following description is based on an example of execution by a second device. The second device can be a network device, or a chip, chip system, or circuit in a network device, or a functional module in a network device that can call and execute a program.

[0046] The method includes: obtaining a first bit width of first data, the first bit width belongs to a first bit width set, the first data belongs to a first data set, multiple bit widths in the first bit width set correspond to multiple data in the first data set, and the first data set is used to train a first model.

[0047] Among them, certain implementation methods and beneficial effects of the fourth aspect can refer to the corresponding description of the second aspect and will not be repeated here.

[0048] In a fifth aspect, a communication device is provided, which includes: a processing unit for obtaining a first bit width of a first parameter, the first bit width belongs to a first bit width set, the first parameter belongs to a first parameter set, multiple bit widths in the first bit width set have a corresponding relationship with multiple parameters in the first parameter set, and multiple parameters are used to train a first model, each parameter including one or more of the following: model parameters and / or gradient parameters; a transceiver unit for sending first information, and the first information is used to indicate the first bit width.

[0049] The transceiver unit may perform the reception and transmission processing in the aforementioned first aspect, and the processing unit of the communication device may perform other processing except the reception and transmission in the aforementioned first aspect.

[0050] In a sixth aspect, a communication device is provided, comprising: a processing unit for obtaining a first bit width of a first parameter, the first bit width belonging to a first bit width set, the first parameter belonging to a first parameter set, multiple bit widths in the first bit width set corresponding to multiple parameters in the first parameter set, multiple parameters being used to train a first model, each parameter including one or more of the following: model parameters and / or gradient parameters.

[0051] The transceiver unit may perform the reception and transmission processing in the aforementioned second aspect, and the processing unit of the communication device may perform other processing except reception and transmission in the aforementioned second aspect.

[0052] In the seventh aspect, a communication device is provided, which includes: a processing unit for obtaining a first bit width of first data, the first bit width belongs to a first bit width set, the first data belongs to a first data set, the multiple bit widths in the first bit width set have a corresponding relationship with the multiple data in the first data set, and the first data set is used to train a first model; a transceiver unit for sending first information, and the first information is used to indicate the first bit width.

[0053] The transceiver unit can perform the reception and transmission processing in the aforementioned third aspect, and the processing unit of the communication device can perform other processing except reception and transmission in the aforementioned third aspect.

[0054] In an eighth aspect, a communication device is provided, comprising: a processing unit for obtaining a first bit width of first data, the first bit width belongs to a first bit width set, the first data belongs to a first data set, multiple bit widths in the first bit width set correspond to multiple data in the first data set, and the first data set is used to train a first model.

[0055] The transceiver unit can perform the reception and transmission processing in the aforementioned fourth aspect, and the processing unit of the communication device can perform other processing except reception and transmission in the aforementioned fourth aspect.

[0056] In a ninth aspect, a communication device is provided, comprising a processing circuit for executing a computer program so that the device executes the method of the first to fourth aspects above and any possible implementation thereof.

[0057] Optionally, the processing circuit is one or more processors, or all or part of the circuits in one or more processors used for processing functions.

[0058] Optionally, the communication device further includes a memory, which is used to store the computer program, and the memory is one or more.

[0059] Optionally, the memory may be integrated with the processor, or the memory may be set separately from the processor, or the memory may be located within the processor.

[0060] Optionally, the communication device further includes a transceiver circuit, such as a transceiver or an input / output circuit.

[0061] In the tenth aspect, a communication system is provided, including: a terminal device and a network device, the terminal device is used to execute the method in the above-mentioned first aspect or third aspect and any possible implementation thereof, and the network device is used to execute the method in the above-mentioned second aspect or fourth aspect and any possible implementation thereof.

[0062] In the eleventh aspect, a communication system is provided, comprising: a first device and a second device, the first device being used to execute the method in the above-mentioned first aspect or third aspect and any possible implementation thereof, and the second device being used to execute the method in the above-mentioned second aspect or fourth aspect and any possible implementation thereof.

[0063] In the twelfth aspect, a computer-readable storage medium is provided, which stores a computer program or code. When the computer program or code is run on a computer, the computer executes the method in the above-mentioned first to fourth aspects and any possible implementation thereof.

[0064] In the thirteenth aspect, a chip or chip system is provided, comprising at least one processing circuit, which is used to run a computer program so that the chip executes the methods in the above-mentioned first to fourth aspects and any possible implementation thereof.

[0065] The chip may include an output circuit or interface for sending information or data, and an input circuit or interface for receiving information or data.

[0066] In a fourteenth aspect, a computer program product is provided, comprising: a computer program code, which, when the computer program code is run on the computer, executes the method in the above-mentioned first to fourth aspects and any possible implementation thereof. BRIEF DESCRIPTION OF THE DRAWINGS

[0067] 1 and 2 are schematic diagrams of a communication system applicable to an embodiment of the present application;

[0068] FIG3 is a schematic diagram of the structure of a neuron;

[0069] FIG4 is a schematic diagram of the structure of a neural network;

[0070] FIG5 is a schematic block diagram of an autoencoder;

[0071] FIG6 is a schematic diagram of an AI application framework;

[0072] FIG7 is a schematic interactive flow chart of a communication method provided in an embodiment of the present application;

[0073] FIG8 is a schematic interaction flow chart of another communication method provided in an embodiment of the present application;

[0074] FIG9 is a schematic interaction flow chart of another communication method provided in an embodiment of the present application;

[0075] FIG10 is a schematic interaction flow chart of another communication method provided in an embodiment of the present application;

[0076] FIG11 is a schematic block diagram of a communication device provided in an embodiment of the present application;

[0077] FIG12 is a schematic block diagram of another communication device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0078] The technical solution in this application will be described below with reference to the accompanying drawings.

[0079] The technical solutions provided in this application can be applied to various communication systems, such as: fifth-generation 5G or new radio (NR) systems, long-term evolution (LTE) systems, LTE frequency division duplex (FDD) systems, LTE time division duplex (TDD) systems, wireless local area networks (WLAN) systems, satellite communication systems, future communication systems, such as sixth-generation mobile communication systems, or a fusion system of multiple systems. The technical solutions provided in this application can also be applied to device-to-device (D2D) communication, vehicle-to-everything (V2X) communication, machine-to-machine (M2M) communication, machine type communication (MTC), and Internet of Things (IoT) communication systems or other communication systems.

[0080] A device in a communication system can send signals to or receive signals from another device. The signals may include information, signaling, or data. The term "device" may also be replaced by an entity, a network entity, a communication device, a communication module, a node, a communication node, and the like. This application uses devices as examples for description. For example, a communication system may include at least one terminal device and at least one network device. A network device may send downlink signals to a terminal device, and / or a terminal device may send uplink signals to a network device. It is understood that the term "terminal device / network device" in this application may be replaced by a terminal device that performs the corresponding communication method in this application with the network device.

[0081] The terminal devices in the embodiments of the present application include various devices with wireless communication functions, which can be used to connect people, objects, machines, etc. The terminal devices can be widely used in various scenarios, such as: cellular communication, D2D, V2X, peer to peer (P2P), M2M, MTC, IoT, virtual reality (VR), augmented reality (AR), industrial control, autonomous driving, telemedicine, smart grid, smart furniture, smart office, smart wearable, smart transportation, smart city drones, robots, remote sensing, passive sensing, positioning, navigation and tracking, autonomous delivery, etc. The terminal device can be a terminal in any of the above scenarios, such as an MTC terminal, an IoT terminal, etc. The terminal device may be a user equipment (UE) of the third generation partnership project (3GPP) standard, a terminal, a fixed device, a mobile station device or a mobile device, a subscriber unit, a handheld device, a vehicle-mounted device, a wearable device, a cellular phone, a smart phone, a session initialization protocol (SIP) phone, a wireless data card, a personal digital assistant (PDA), a computer, a tablet computer, a notebook computer, a wireless modem, a handheld device (handset), a laptop computer, a computer with wireless transceiver function, a smart book, a vehicle, a satellite, a global positioning system (GPS) device, a target tracking device, an aircraft (such as a drone, a helicopter, a multi-copter, a quadcopter, or an airplane), a ship, a remote control device, a smart home device, an industrial device, or a device built into the above-mentioned device (such as a communication module, a modem or a chip in the above-mentioned device), or other processing devices connected to a wireless modem. For the sake of convenience of description, the terminal device will be described below by taking the terminal or UE as an example.

[0082] It should be understood that in some scenarios, a UE can also be used to act as a base station. For example, a UE can act as a scheduling entity that provides sidelink signals between UEs in scenarios such as V2X, D2D, or P2P.

[0083] In the embodiments of the present application, the device for implementing the function of the terminal device can be the terminal device, or it can be a device that can support the terminal device to implement the function, such as a chip system or chip, which can be installed in the terminal device. In the embodiments of the present application, the chip system can be composed of a chip, or it can include a chip and other discrete devices.

[0084] The network device in the embodiment of the present application may be a device for communicating with a terminal device, and the network device may include an access network device or a wireless access network device, such as a network device may be a base station. The access network device in the embodiment of the present application may refer to a radio access network (RAN) node (or device) that accesses the terminal device to a wireless network. The above-mentioned RAN may be a cellular system related to the third generation partnership project (3GPP), such as a 5G mobile communication system, or a future-oriented evolution system (such as a sixth generation (6G) mobile communication system). RAN may also be an open radio access network (open RAN, O-RAN or ORAN), a cloud radio access network (CRAN), or a wireless fidelity (WiFi) system. RAN may also be a communication system that is a fusion of two or more of the above systems. The network device may broadly cover various names as follows, or replace the following names, such as: NodeB, evolved NodeB (eNB), next generation NodeB (gNB), relay station, access point, transmitting and receiving point (TRP), transmitting point (TP), master station, secondary station, multi-standard radio (motor slide retainer, MSR) node, home base station, network controller, access node, wireless node, access point (AP), transmission node, transceiver node, building base band unit (BBU), remote radio unit (RRU), active antenna unit (AAU), remote radio head (RRH), central unit (CU), distributed unit (DU), positioning node, etc. The base station may be a macro base station, a micro base station, a relay node, a donor node, or the like, or a combination thereof. A base station can also refer to a communication module, modem, or chip used within the aforementioned devices or apparatuses. A base station can also refer to a mobile switching center, a device that performs base station functions in D2D, V2X, and M2M communications, a network-side device in 6G networks, or a device that performs base station functions in future communication systems. A base station can support networks with the same or different access technologies.The embodiments of the present application do not limit the specific technology and specific device form adopted by the network device.

[0085] Base stations can be fixed or mobile. For example, a helicopter or drone can be configured to act as a mobile base station, and one or more cells can move based on the location of the mobile base station. In other examples, a helicopter or drone can be configured to act as a device that communicates with another base station.

[0086] In some deployments, multiple RAN nodes collaborate to assist terminals in achieving wireless access, with different RAN nodes implementing portions of the base station's functionality. For example, a RAN node can be a CU, DU, central unit-control plane (CU-CP), central unit-user plane (CU-UP), or RU. The CU and DU can be separate or included in the same network element, such as a BBU. A radio unit (RU) can be included in a radio frequency device or radio frequency unit, such as an RRU, AAU, or RRH.

[0087] The RAN node may support one or more types of fronthaul interfaces, and different fronthaul interfaces correspond to DUs and RUs with different functions. If the fronthaul interface between the DU and the RU is a common public radio interface (CPRI), the DU is configured to implement one or more baseband functions, and the RU is configured to implement one or more radio frequency functions. If the fronthaul interface between the DU and the RU is another interface, relative to the CPRI, part of the downlink and / or uplink baseband functions, such as, for downlink, one or more of precoding, digital beamforming (BF), or inverse fast Fourier transform (IFFT) / cyclic prefix (CP) are moved from the DU to the RU for implementation; for uplink, one or more of digital beamforming (BF), or fast Fourier transform (FFT) / cyclic prefix removal (CP) are moved from the DU to the RU for implementation. In one possible implementation, the interface may be an enhanced common public radio interface (eCPRI). In the eCPRI architecture, the division between the DU and RU is different, corresponding to different types (category, Cat) of eCPRI, such as eCPRI Cat A, B, C, D, E, and F.

[0088] Taking eCPRI Cat A as an example, for downlink transmission, based on layer mapping, the DU is configured to implement layer mapping and one or more functions preceding it (i.e., coding, rate matching, scrambling, modulation, or one or more of layer mapping), while other functions after layer mapping (e.g., resource element (RE) mapping, digital beamforming (BF), or one or more of inverse fast Fourier transform (IFFT) / cyclic prefix addition) are moved to the RU for implementation. For uplink transmission, based on RE demapping, the DU is configured to implement demapping and one or more functions preceding it (i.e., decoding, rate matching, descrambling, demodulation, inverse discrete Fourier transform (IDFT), channel equalization, or one or more of RE demapping), while other functions after demapping (e.g., one or more of digital BF or FFT / CP removal) are moved to the RU for implementation. It is understandable that for the functional description of DU and RU corresponding to various types of eCPRI, reference can be made to the eCPRI protocol, which will not be described in detail here.

[0089] In one possible design, the processing unit for implementing baseband functions in the BBU is called a baseband high layer (BBH) unit, and the processing unit for implementing baseband functions in the RRU / AAU / RRH is called a baseband low layer (BBL) unit.

[0090] In different systems, CU (or CU-CP and CU-UP), DU or RU may also have different names, but those skilled in the art can understand their meanings. For example, the radio access network may also be an open radio access network (O-RAN / ORAN) architecture. In the ORAN system, CU may also be called O-CU (open CU), DU may also be called O-DU, CU-CP may also be called O-CU-CP, CU-UP may also be called O-CU-UP, and RU may also be called O-RU. Any unit of CU (or CU-CP, CU-UP), DU and RU in this application may be implemented by a software module, a hardware module, or a combination of a software module and a hardware module.

[0091] In the embodiments of the present application, the device for implementing the function of the network device can be the network device, or it can be a device that can support the network device to implement the function, such as a chip system or chip, which can be installed in the network device. In the embodiments of the present application, the chip system can be composed of a chip, or it can include a chip and other discrete devices.

[0092] Network devices and terminal devices can be deployed on land, including indoors or outdoors, handheld or vehicle-mounted; they can also be deployed on the water surface; they can also be deployed on aircraft, balloons and satellites in the air. The embodiments of this application do not limit the scenarios in which network devices and terminal devices are located. In addition, terminal devices and network devices can be hardware devices, or they can be software functions running on dedicated hardware, software functions running on general-purpose hardware, such as virtualization functions instantiated on a platform (e.g., a cloud platform), or entities including dedicated or general-purpose hardware devices and software functions. This application does not limit the specific forms of terminal devices and network devices.

[0093] Network equipment may also include core network equipment, such as access and mobility management function (AMF), or operations, administration and maintenance equipment (OAM), or third-party equipment, such as over the top (OTT) equipment or cloud servers, or equipment equipped with an AI module, such as a RAN intelligent controller (RIC).

[0094] In the embodiment of the present application, the terminal device may be a terminal device or a component of the terminal device (such as a chip or circuit).

[0095] Optionally, the network device may be a network device equipped with one or more AI modules. For example, the network device may be a core network device, an access network node (RAN node), or one or more devices in the OAM. For example, the AI ​​module may be a RIC, such as a near-real-time RIC or a non-real-time RIC. For example, the near-real-time RIC is provided in a RAN node (e.g., a CU or DU), and the non-real-time RIC is provided in the OAM, a cloud server, a core network device, or other network devices.

[0096] First, a communication system applicable to the embodiments of the present application is briefly introduced as follows.

[0097] Figure 1 is a schematic diagram of a wireless communication system 100 applicable to an embodiment of the present application. As shown in Figure 1, the wireless communication system includes a wireless access network 100. The wireless access network 100 can be a next-generation (e.g., 6G or higher) wireless access network, or a traditional (e.g., 5G, 4G, 3G, or 2G) wireless access network. One or more terminal devices (120a-120j, collectively referred to as 120) can be connected to each other or to one or more network devices (110a, 110b, collectively referred to as 110) in the wireless access network 100. Figure 1 is only a schematic diagram, and the wireless communication system may also include other devices, such as core network devices, wireless relay devices, and / or wireless backhaul devices, which are not shown in Figure 1.

[0098] In practical applications, the wireless communication system may include multiple network devices and multiple terminal devices simultaneously, without limitation. A network device may serve one or more terminal devices simultaneously. A terminal device may also access one or more network devices simultaneously. The embodiments of the present application do not limit the number of terminal devices and network devices included in the wireless communication system.

[0099] Figure 2 is a schematic diagram of a wireless communication system 200 applicable to an embodiment of the present application. As shown in Figure 2, the wireless communication system 200 may include at least one network device, such as the network device 210 shown in Figure 2. The wireless communication system 200 may also include at least one terminal device, such as the terminal device 220 and the terminal device 230 shown in Figure 2. The wireless communication system 200 may also include an AI network element (also known as an AI entity), such as the AI ​​network element 240 shown in Figure 2, for performing AI-related operations, such as constructing a training data set or training an AI model.

[0100] In one possible implementation, the network device 210 may send data related to the training of the AI ​​model to the AI ​​network element 240, which constructs a training data set and trains the AI ​​model. For example, the data related to the training of the AI ​​model may include data reported by the terminal device. The AI ​​network element 240 may send the results of the operations related to the AI ​​model to the network device 210, and forward them to the terminal device through the network device 210. For example, the results of the operations related to the AI ​​model may include at least one of the following: an AI model that has completed training, an evaluation result or a test result of the model, etc. Exemplarily, a portion of the trained AI model may be deployed on the network device 210, and another portion may be deployed on the terminal device. Alternatively, the trained AI model may be deployed on the network device 210. Alternatively, the trained AI model may be deployed on the terminal device.

[0101] It should be understood that Figure 2 illustrates only the example of a direct connection between AI network element 240 and network device 210. In other scenarios, AI network element 240 may also be connected to a terminal device. Alternatively, AI network element 240 may be connected to both network device 210 and a terminal device simultaneously. Alternatively, AI network element 240 may be connected to network device 210 through a third-party network element. This embodiment of the present application does not limit the connection relationship between the AI ​​network element and other network elements.

[0102] The AI ​​network element 240 may also be provided as a module in a network device and / or a terminal device, for example, in the network device 110b or the terminal device shown in FIG1 .

[0103] Optionally, the AI ​​network element 240 and the network device 210 may be different modules of the same device, or may be separate different devices. It should be noted that Figures 1 and 2 are simplified schematic diagrams for ease of understanding. For example, the communication system may also include other devices, such as wireless relay devices and / or wireless backhaul devices, which are not shown in Figures 1 and 2. In actual applications, the communication system may include multiple network devices, multiple terminal devices, or AI nodes. The embodiment of the present application does not limit the number of network devices and terminal devices included in the communication system.

[0104] To facilitate understanding of the embodiments of the present application, the terms involved in the embodiments of the present application are briefly explained below.

[0105] (1) AI model;

[0106] An AI model is an algorithm or computer program that can implement AI functions. An AI model represents the mapping relationship between the model's input and output. In other words, an AI model is a function model that maps inputs of a certain dimension to outputs of a certain dimension. The parameters of the function model can be obtained through machine learning training. For example, f(x) = mx 2 +n is a quadratic function model, which can be regarded as an AI model, and m and n are parameters of the AI ​​model, which can be obtained through machine learning training. For example, the AI ​​models mentioned in the embodiments below are not limited to neural networks, linear regression models, decision tree models, support vector machines (SVMs), Bayesian networks, Q learning models, or other machine learning (ML) models.

[0107] It is understood that the AI ​​model can be implemented as a hardware circuit, software, or a combination of software and hardware, without limitation. Non-limiting examples of software include: program code, program, subroutine, instruction, instruction set, code, code segment, software module, application, or software application.

[0108] (2) Machine Learning (ML);

[0109] ML is an implementation of artificial intelligence. Machine learning is a method that empowers machines to learn, enabling them to perform tasks that cannot be accomplished through direct programming. In practical terms, machine learning involves training models using data and then using these models to make predictions. There are many machine learning methods, such as neural networks (NNs), decision trees, and support vector machines. Machine learning theory primarily involves the design and analysis of algorithms that enable computers to learn automatically. Machine learning algorithms automatically analyze data to identify patterns and use these patterns to make predictions about unknown data.

[0110] (3) Neural Network (NN);

[0111] Neural networks are a specific implementation of AI or machine learning. According to the universal approximation theorem, neural networks can theoretically approximate any continuous function, enabling them to learn arbitrary mappings. Neural networks are mathematical models that mimic the behavioral characteristics of animal neural networks for information processing. The concept of neural networks is derived from the neuronal structure of the brain. Each neuron performs a weighted sum operation on its input values ​​and passes the result of this weighted sum operation through an activation function to produce an output.

[0112] A neural network can be composed of neural units, which can be a computational unit that takes xs and an intercept 1 as input. A neural network is formed by connecting many of these single neural units, meaning that the output of one neural unit can be the input of another. The input of each neural unit can be connected to the local receptive field of the previous layer to extract features from that local receptive field, which can be an area consisting of several neural units.

[0113] Taking the AI ​​model type as a neural network as an example, the AI ​​model of this application can be a deep neural network (DNN). Depending on the network construction method, DNN can include feedforward neural networks (FNN), convolutional neural networks (CNN), and recurrent neural networks (RNN).

[0114] Figure 3 is a schematic diagram of the neuron structure. As shown in Figure 3, assume that the input of the neuron is x = [x0, x1, ..., x n ], and the weights corresponding to each input are w=[w,w1,…,w n ], the weighted summation bias is b. Where b can be an integer, a decimal, or a complex number, etc. The activation function can be diversified. As an example, assuming that the activation function of a neuron is: y = f(z) = max(0,z), then the output of the neuron is: As another example, suppose the activation function of a neuron is: y = f(z) = z, then the output of the neuron is: As shown in Figure 3. The activation functions of different neurons in a neural network can be the same or different.

[0115] Neural networks generally have a multi-layer structure, with each layer containing one or more logic-based decision-making units, known as neurons. Increasing the depth and / or width of a neural network can improve its expressive power, providing more powerful information extraction and abstract modeling capabilities for complex systems. The depth of a neural network can be understood as the number of layers, while the number of neurons in each layer can be referred to as the width of that layer.

[0116] FIG4 is a schematic diagram of the layer relationship of a neural network.

[0117] In one possible implementation, a neural network includes an input layer and an output layer. The input layer processes the input through neurons and then passes the result to the output layer, which then generates the output of the neural network.

[0118] Another possible implementation involves a neural network consisting of an input layer, hidden layers, and an output layer, as shown in Figure 4. The input layer processes the input through neurons and then passes the result to the intermediate hidden layer. The hidden layer then passes the calculation result to the output layer or an adjacent hidden layer. Finally, the output layer generates the neural network's output. A neural network can consist of one or more sequentially connected hidden layers, without limitation.

[0119] During neural network training, a loss function can be defined. This function measures the difference between the model's predicted value and the actual value. During neural network training, the loss function describes the gap or discrepancy between the neural network's output and the ideal target value. Neural network training involves adjusting neural network parameters to ensure that the loss function's value is below a threshold or meets the target requirement. Neural network parameters can include at least one of the following: the number of neural network layers, their width, neuron weights, and parameters in the neuron activation function.

[0120] (4) Federated learning;

[0121] Federated learning (FL) is a distributed machine learning method in which multiple participants exchange model parameters through a secure mechanism without sharing the original training data, thereby achieving the effect of collaborative AI training. Its original intention was to effectively help multiple institutions use data and conduct machine learning modeling while meeting the requirements of user privacy protection and data security. Within the federated learning framework, what is transmitted between nodes is not the data itself, but the intermediate results obtained during training, such as model parameters or gradients.

[0122] Federated learning can be categorized into three types based on the distribution of data sources among the participating parties: horizontal federated learning, vertical federated learning, and federated transfer learning. Horizontal federated learning, also known as feature-aligned federated learning, involves splitting the dataset horizontally (i.e., along the user dimension) when two datasets have significant overlap in user features but minimal overlap in users. Training is performed on the data that contains the same user features but not identical users. Vertical federated learning, also known as sample-aligned federated learning, involves splitting the dataset vertically (i.e., along the feature dimension) when two datasets have significant overlap in users but minimal overlap in user features. Training is performed on the data that contains the same users but not identical user features. Federated transfer learning involves using transfer learning to overcome data or label shortages without data splitting when both datasets have minimal overlap in users and user features.

[0123] Taking high-frequency beam management as an example, when the base station performs beam scanning of the synchronization signal block (SSB) or channel state information reference signal (CSI-RS) based on the codebook, the channels between users at different locations and the base station are different. The user measures the received SSB or CSI-RS beam, such as measuring the physical layer reference signal receiving power (L1-reference signal receiving power, L1-RSRP), and feeds back the beam identity (ID) corresponding to the maximum RSRP value. AI / ML can be used to train a model, using the received SSB / CSI-RS signal, or the strength of the received SSB / CSI-RS signal, or the estimated channel as input to infer the optimal beam ID and feed it back to the base station. Each user can collect their own receive beam / channel information and the corresponding optimal beam ID as samples (i.e., local samples) for training the aforementioned AI / ML models. However, the number of samples each user can collect is limited, and the performance of the model trained using only local data is limited. Specifically, due to the user's location, the optimal beam ID may only be a subset of the SSB / CSI-RS codebook. If the user sends local data to the server, the server aggregates the data of each user for model training. While this can improve model performance, it also carries the risk of leaking user privacy information, such as inferring the user's current location through the channel. To address this issue, federated learning can be used. The central node distributes a global model to each participating user. Each user trains the global model using local data to obtain a local model. The local model parameter information, such as gradients and weights, is then sent (encrypted) to the server. The server performs model aggregation (MA) to update the global model and then sends the global model to each user. The user then continues to update the local model and sends it to the central node. This process repeats multiple times until convergence.

[0124] In the FL architecture, different users train a common model based on their local data. This local model can better fit the characteristics of the local data. After aggregation at the central node, the generalization of the entire model is improved, but the ability to "overfit" various local data characteristics is "lost", requiring similar personalized FL enhancement.

[0125] (5) Auto-encoders (AE);

[0126] An autoencoder (AE) is a neural network for unsupervised learning. Its characteristic is that it uses input data as label data, so AE can also be understood as a neural network for self-supervised learning. AE can be used for data compression and recovery. For example, the encoder in AE can compress (encode) data A to obtain data B, and the decoder in AE can decompress (decode) data B to recover data A. Alternatively, it can be understood that the decoder is the inverse operation of the encoder.

[0127] For example, the AI ​​model in the embodiments of the present application may include an encoder and a decoder. The encoder and decoder are used in combination, and it can be understood that the encoder and decoder are a matching AI model. The encoder and decoder can be deployed on a terminal device and a network device, respectively. Optionally, the AI ​​model in the embodiments of the present application can be a single-ended model, which can be deployed on a terminal device or a network device.

[0128] (6) Two-side model;

[0129] The two-end model can also be called a bilateral model, a collaborative model, or a dual model. A two-end model is a model composed of multiple sub-models. The sub-models that make up the model must match each other. These sub-models can be deployed on different nodes.

[0130] The embodiments of the present application relate to an encoder for compressing CSI and a decoder for recovering compressed CSI. The encoder and decoder are used in combination, and it can be understood that the encoder and decoder are matching AI models. An encoder may include one or more AI models, and the decoder matched with the encoder also includes one or more AI models. The number of AI models included in the matching encoder and decoder is the same and corresponds one to one.

[0131] In one possible design, a set of matched encoders and decoders can be specifically two parts of the same AE. As shown in Figure 5, the encoder and decoder are deployed on different nodes respectively. The AE model is a typical bilateral model. The encoder and decoder of the AE model are usually trained together and can be used in matching ways. For example, the encoder can process the input V to obtain the processed result z, and the decoder can decode the encoder output z into the desired output V'. In other words, CSI feedback can be implemented based on the AI ​​model of AE. For example, the UE side compresses and quantizes the CSI through the encoder, and the base station recovers the CSI through the decoder. For the base station, the input of the model is the CSI fed back by the UE, and the output is the recovered CSI. The training of the model requires the CSI fed back by the UE as the true value label of the recovered CSI.

[0132] (7) Model training;

[0133] The process of selecting a suitable loss function and using an optimization algorithm to train the model parameters so that the value of the loss function is less than the threshold, or the value of the loss function meets the target requirements.

[0134] (8) Training data set and inference data;

[0135] In the field of machine learning, ground truth usually refers to data that is believed to be accurate or real.

[0136] A dataset refers to data used for model training, model validation, or model testing in machine learning. The quantity and quality of the data will affect the effectiveness of machine learning. A training dataset is used to train an AI model. The training dataset may include the input of the AI ​​model, or the input and target output of the AI ​​model. A training dataset includes one or more training data. The training data may include training samples input to the AI ​​model, or the target output of the AI ​​model. The target output is the target value of the output of the AI ​​model, and may also be referred to as the output true value, comparison true value, label, sample label, or label sample. The label is the true value.

[0137] In the communications field, training datasets can include simulated data collected through simulation platforms, experimental data collected in experimental scenarios, or measured data collected in actual communication networks. Because the geographical environments and channel conditions in which data are generated vary, such as indoor and outdoor locations, mobile speeds, frequency bands, or antenna configurations, the collected data can be categorized during acquisition. For example, data with the same channel propagation environment and antenna configuration can be grouped together.

[0138] Model training essentially involves learning certain characteristics from training data. When training an AI model (such as a neural network), the goal is to ensure that the model's output is as close as possible to the desired predicted value. This is done by comparing the network's predictions with the desired target values. The weight vectors of each layer of the AI ​​model are then updated based on the difference between the two. (Of course, before the first update, there's usually an initialization process, which pre-configures the parameters for each layer of the AI ​​model.) For example, if the network's prediction is too high, the weight vectors are adjusted to predict a lower value. This adjustment is repeated until the AI ​​model predicts the desired target value, or a value very close to it. Therefore, it's necessary to predefine how to compare the difference between the predicted and target values. This is known as the loss function, or objective function. These are important equations used to measure the difference between the predicted and target values. For example, a higher loss function indicates a greater difference. Therefore, training an AI model becomes a process of minimizing this loss, keeping the loss function below a threshold or ensuring that the loss function meets the target requirement. For example, the AI ​​model is a neural network, and adjusting the model parameters of the neural network includes adjusting at least one of the following parameters: the number of layers, width, weights of neurons, or parameters in the activation function of neurons of the neural network.

[0139] Inference data can be used as input to a trained AI model for inference. During the inference process, the inference data is input into the AI ​​model, and the corresponding output is the inference result.

[0140] The design of an AI model primarily involves data collection (e.g., collecting training data and / or inference data), model training, and model inference. Furthermore, it can also include the application of inference results.

[0141] Figure 6 is an AI application framework.

[0142] In the aforementioned data collection phase, the data source is used to provide training datasets and inference data. In the model training phase, an AI model is obtained by analyzing or training the training data provided by the data source. The AI ​​model represents the mapping relationship between the model's input and output. Learning the AI ​​model through the model training node is equivalent to learning the mapping relationship between the model's input and output using the training data. In the model inference phase, the AI ​​model trained in the model training phase is used to perform inference based on the inference data provided by the data source, obtaining an inference result. This phase can also be understood as inputting the inference data into the AI ​​model and obtaining an output from the AI ​​model, which is the inference result. The inference result can indicate the configuration parameters used (executed) by the execution object and / or the operations performed by the execution object. In the inference result application phase, the inference result is published. For example, the inference result can be centrally planned by the execution (actor) entity, for example, the execution entity can send the inference result to one or more execution objects (e.g., access network equipment or terminal devices) for execution. Alternatively, the execution entity can provide feedback on the model's performance to the data source to facilitate subsequent model update and training.

[0143] It is understood that a communication system may include network elements with artificial intelligence capabilities. The aforementioned AI model design-related steps may be performed by one or more network elements with artificial intelligence capabilities. In one possible design, AI capabilities (such as AI modules or AI entities) may be configured within existing network elements in the communication system to implement AI-related operations, such as AI model training and / or inference. For example, the existing network element may be an access network device or a terminal device. Alternatively, in another possible design, an independent network element may be introduced into the communication system to perform AI-related operations, such as AI model training. The independent network element may be referred to as an AI network element (or AI node, AI entity), etc., and the embodiments of this application are not limited to these names. For example, the AI ​​network element may be directly connected to an access network device in the communication system, or indirectly connected to the access network device through a third-party network element. The third-party network element may be a network device such as an authentication management function (AMF) network element or a user plane function (UPF) network element, an OAM, a server (such as a cloud server), or other network element, without limitation. Exemplarily, the independent AI network element can be deployed on one or more of the following: access network equipment, terminal equipment, or core network. Alternatively, it can be deployed on a server, such as a cloud server, or on an over-the-top (OTT) device. For example, AI network element 240 in the communication system shown in FIG2 is shown.

[0144] The training process of different models can be deployed in different devices or nodes, or in the same device or node. The inference process of different models can be deployed in different devices or nodes, or in the same device or node. Taking the completion of the model training phase of a terminal device as an example, the terminal device can train the matching encoder and decoder, and then send the model parameters of the decoder to the network device. Taking the completion of the model training phase of a network device as an example, after the network device trains the matching encoder and decoder, it can indicate the model parameters of the encoder to the terminal device. Taking the completion of the model training phase of an independent AI network element as an example, the AI ​​network element can train the matching encoder and decoder, and then send the model parameters of the encoder to the terminal device and the model parameters of the decoder to the network device. Then, the model inference phase corresponding to the encoder is performed in the terminal device, and the model inference phase corresponding to the decoder is performed in the network device.

[0145] Among them, the model parameters may include one or more of the following structural parameters of the model (such as the number of layers and / or weights of the model, etc.), the input parameters of the model (such as input dimension, number of input ports), or the output parameters of the model (such as output dimension, number of output ports). It can be understood that the input dimension may refer to the size of an input data. For example, when the input data is a sequence, the input dimension corresponding to the sequence may indicate the length of the sequence. The number of input ports may refer to the number of input data. Similarly, the output dimension may refer to the size of an output data. For example, when the output data is a sequence, the output dimension corresponding to the sequence may indicate the length of the sequence. The number of output ports may refer to the number of output data.

[0146] (9) Knowledge distillation / model distillation;

[0147] Generally, large models are often single complex networks or collections of networks, boasting excellent performance and generalization capabilities. Small models, however, have limited expressive power due to their smaller size. Therefore, knowledge learned from the large model can be used to guide the training of the small model, resulting in comparable performance with significantly fewer parameters, thus achieving model compression and acceleration. This is how knowledge distillation and transfer learning are applied to model optimization.

[0148] Knowledge distillation uses a teacher-student model, where a complex and large model serves as the teacher, while the student model, with a simpler structure, assists in the training of the student model. The teacher, with its strong learning ability, can transfer its acquired knowledge to the less capable student model, thereby enhancing the student model's generalization capabilities. The complex, cumbersome, but effective teacher model is not deployed online and serves merely as a mentor. The flexible and lightweight student model is the one that is actually deployed online for prediction tasks.

[0149] In model distillation, a common practice is to transfer the teacher model's input and output as a dataset to the student model, which then trains the model based on the dataset. Similarly, during dual-end model training, the dataset must be transferred to the peer end to ensure that the peer end trains the network based on the received dataset.

[0150] (10) bit width;

[0151] Bit width can be understood as the number of bits that data occupies in a computer system. Alternatively, bit width refers to the amount of data that can be transferred at once by memory or video memory. Simply put, it's the width of data that can be transferred at once. The larger the bit width, the more data can be transferred at once, significantly improving graphics card performance.

[0152] Below, the training process and reasoning process of the AI ​​model in the embodiment of the present application are further illustrated.

[0153] The training data used to train AI models includes training samples and sample labels. For example, the training samples are channel information determined by the terminal device, and the sample labels are the actual channel information, i.e., the true value CSI. If the encoder and decoder belong to the same autoencoder, the training data can only include the training samples, or the training samples are the sample labels.

[0154] In the field of wireless communications, true CSI can be understood as high-precision CSI. The specific training process includes: the model training node uses the encoder to process the channel information, that is, the training sample, to obtain CSI feedback information, and uses the decoder to process the feedback information to obtain the recovered channel information, that is, the CSI recovery information, and then calculates the difference between the CSI recovery information and the corresponding sample label, that is, the value of the loss function, and updates the parameters of the encoder and decoder according to the value of the loss function, so that the difference between the recovered channel information and the corresponding sample label is minimized, that is, the loss function is minimized. Exemplarily, the loss function can be the minimum mean square error (MSE) or cosine similarity. Repeat the above operations to obtain an encoder and decoder that meet the target requirements. The above-mentioned model training node can be a terminal device, a network device or other network elements with AI functions in a communication system.

[0155] It should be understood that the above description uses the AI ​​model for CSI compression as an example. The AI ​​model can also be used in other scenarios within CSI feedback. For example, the AI ​​model can be used for CSI prediction, i.e., predicting channel information at one or more future moments based on channel information measured at one or more historical moments. The embodiments of this application do not limit the specific use of the AI ​​model in CSI feedback scenarios.

[0156] In communication systems, such as neural network training, federated learning training, or knowledge distillation processes, a network training scheme with predetermined accuracy is usually adopted, that is, network model parameters, network gradient parameters, or data sets of the same bit width (for example, floating point type 32 bits, or larger) are transmitted over the air interface to achieve network training and convergence. However, the above network training may involve a large number of floating-point value operations, and high-precision floating-point calculations are usually slow and power-consuming. At the same time, floating-point data is usually 32 bits or larger, requiring a large storage space and time. In addition, high-bit-width floating-point values ​​may inhibit the execution of neural networks on devices with less available computing resources or limited power. At the same time, training neural networks with high-bit-width floating points will result in higher hardware consumption.

[0157] In summary, in the current network training process, transmitting network model parameters, network gradient parameters, or data sets over the air interface using the same bit width not only results in high energy resource consumption and air interface transmission overhead, but also limits the promotion of artificial intelligence in the wireless field.

[0158] Based on this, the embodiments of the present application provide a communication method and a communication device that can effectively improve network training performance.

[0159] The communication method provided by the embodiment of the present application will be described in detail below with reference to the accompanying drawings. The embodiment provided in the present application can be applied to the communication system shown in Figure 1 or Figure 2 above, without limitation. The present application proposes the following methods shown in Figures 7 to 10. It should be understood that the method embodiments shown in Figures 7 to 10 can be combined with each other, and the steps in the method embodiments shown in Figures 7 to 10 can be referenced to each other. In the embodiment of the present application, the method embodiments shown in Figures 8 to 10 can be regarded as possible implementation methods for realizing the functions of the method embodiment shown in Figure 7.

[0160] Figure 7 is a flow chart of a communication method 700 provided in an embodiment of the present application. As shown in Figure 7, the method flow can be executed by a first device and a second device. Among them, the first device (for example, the first terminal) can be a terminal device, or a chip or circuit in the terminal device, or a functional module in the terminal device that can call and execute a program, and the second device can be a network device, or a chip or circuit in the network device, or a functional module in the network device that can call and execute a program. Optionally, the first device or the second device can also be an AI entity (also called an AI network element), such as a model training network element, a model storage network element, or a model inference network element, such as an OAM, OTT, or a third-party device such as a cloud server. The method includes the following multiple steps.

[0161] S710: The first device obtains a first bit width of a first parameter.

[0162] Among them, the first bit width belongs to the first bit width set, the first parameter belongs to the first parameter set, the multiple bit widths in the first bit width set have a corresponding relationship with the multiple parameters in the first parameter set, the multiple parameters are used to train the first model, and each parameter includes one or more of the following: model parameters and / or gradient parameters.

[0163] Optionally, the present application does not specifically limit the number of bit widths in the first bit width set and the number of parameters in the first parameter set.

[0164] It should be understood that the first bit width can represent the number of bits occupied by the first parameter, and the multiple bit widths in the first bit width set represent the number of bits occupied by the multiple parameters in the first parameter set. Exemplarily, the bit width can be float16, float32, double float64, or (floating point type 128 bits, complex 128), etc. The bit width can be indicated by bits, for example, bit "00" is used to represent float16, bit "01" is used to represent float32, bit "10" is used to represent double float64, and bit "11" is used to represent complex 128. This application does not specifically limit the value and representation of the bit width.

[0165] In the present application, the first parameter may include a first model parameter and / or a first gradient parameter, wherein the first model may be a neural network, a Gaussian mixture model (GMM), a variational autoencoder (VAE), or a generative adversarial network (GAN). It should be understood that this solution is applicable to network training such as neural network training, federated learning training, or knowledge distillation process.

[0166] Exemplarily, if the first model is an AI model and the AI ​​model is a neural network, the model parameters of the neural network (i.e., the first parameters) may include one or more of the following: the number of layers of the neural network, the width of the neural network, the weights or biases of the neurons, the parameters in the activation function of the neurons, the input parameters of the model (such as input dimension, number of input ports), the output parameters of the model (such as output dimension, number of output ports), or identification information of the first parameter, etc. For specific interpretations, please refer to the above relevant descriptions.

[0167] Exemplarily, if the first model is an AI model, and the AI ​​model is a neural network, the gradient parameter of the neural network (i.e., the first parameter) may include one or more of the following: the number of layers of the neural network, the width of the neural network, the gradient corresponding to the weight or bias of the neuron, or the identification information of the first parameter, etc. For specific interpretations, please refer to the above relevant description.

[0168] It should be understood that the gradient is a vector that can represent the partial derivative of an n-dimensional function f with respect to n variables. The gradient indicates the point at which the directional derivative of a function reaches its maximum value along that direction. In other words, the function changes most rapidly along that direction (the direction of the gradient) at that point, with the highest rate of change (the modulus of the gradient). In other words, the gradient parameter is a parameter used to describe the rate of change of a function at a particular point.

[0169] In the present application, multiple bit widths in the first bit width set have a corresponding relationship with multiple parameters in the first parameter set, which can be understood as: multiple bit widths correspond one-to-one to multiple parameters, or multiple parameters correspond to one bit width. For example, the first bit width set includes bit width #1 and bit width #2, and the multiple parameters in the first parameter set include parameter #1 and parameter #2. Then bit width #1 can correspond to parameter #1, indicating that the number of bits occupied by parameter #1 is bit width #1, and bit width #2 can correspond to parameter #2, indicating that the number of bits occupied by parameter #2 is bit width #2. For another example, the first bit width set includes bit width #1 and bit width #2, and the multiple parameters in the first parameter set include parameter #1, parameter #2, bit width #3, and bit width #4. Then bit width #1 can correspond to parameter #1 and parameter #2, indicating that the number of bits occupied by parameter #1 and parameter #2 is both bit width #1, and bit width #2 can correspond to parameter #3 and bit width #4, indicating that the number of bits occupied by parameter #3 and parameter #4 is both bit width #2.

[0170] In one possible design, the first parameter set includes N second parameters, the second bit width corresponding to at least one of the N second parameters is different from the first bit width, the second bit width belongs to the first bit width set, and N is an integer greater than or equal to 1.

[0171] Optionally, the present application does not limit whether the second bit widths corresponding to the N second parameters are the same, as long as at least two of the multiple bit widths corresponding to the multiple parameters in the first parameter set are different. For example, assuming that N is equal to 1, it means that the first parameter set includes two parameters, namely the first parameter and the second parameter, wherein the first bit width corresponding to the first parameter is different from the second bit width corresponding to the second parameter; for another example, assuming that N is an integer greater than or equal to 2, such as N=3, it means that the first parameter set includes four parameters, such as the first parameter, the second parameter #1, the second parameter #2, and the second parameter #3, the second parameter #1 corresponds to the bit width #1, the second parameter #2 corresponds to the bit width #2, and the second parameter #3 corresponds to the bit width #3, wherein the bit width #1, the bit width #2, and the bit width #3 can be all the same, partially the same, or different from each other, and the present application does not limit this. That is, the bit widths corresponding to the multiple second parameters can be the same or different. It should be noted that when bit width #1, bit width #2, and bit width #3 are the same, the first bit width corresponding to the first parameter is different from the bit width #1, bit width #2, and bit width #3.

[0172] In the present application, the correspondence between multiple bit widths in the first bit width set and multiple parameters in the first parameter set can be predefined, and the predefinition can include pre-definition, such as protocol definition; or, the correspondence can be configured or pre-configured through signaling, and the preconfiguration can be achieved by pre-saving corresponding codes, tables or other methods that can be used to indicate the correspondence in the first device and / or the second device. This application does not limit its specific implementation method.

[0173] Optionally, the correspondence may exist in the form of a table, function, text, or string, such as for storage or transmission.

[0174] The following table illustrates the correspondence between the multiple bit widths in the first bit width set and the multiple parameters in the first parameter set. The correspondence between the multiple bit widths in the first bit width set and the multiple model parameters in the first parameter set can satisfy the following Tables 1 and 2, and the correspondence between the multiple bit widths in the first bit width set and the multiple gradient parameters in the first parameter set can satisfy the following Tables 3 and 4.

[0175] Table 1

[0176] As shown in Table 1, the first bit width set includes bit width #1, bit width #2, bit width #3, and bit width #4. Taking the multiple parameters in the first parameter set as model parameters as an example, the first parameter set includes model parameter #1, model parameter #2, model parameter #3, and model parameter #4, where bit width #1 corresponds to model parameter #1, bit width #2 corresponds to model parameter #2, bit width #3 corresponds to model parameter #3, and bit width #4 corresponds to model parameter #4, that is, one bit width corresponds to one model parameter, or in other words, each model parameter has a different bit width. If the first parameter is model parameter #1, the first bit width is bit width #1. In addition, the second parameter includes model parameter #2, model parameter #3, and model parameter #4 (N=3), and the corresponding second bit widths are bit width #2, bit width #3, and bit width #4, respectively. For example, assuming that bit width #1 is float16, bit width #2 is float32, bit width #3 is double float64, and bit width #4 is complex 128, model parameter #1 is the number of layers of the neural network, model parameter #2 is the width of the neural network, model parameter #3 is the input dimension of the model, and model parameter #4 is the output dimension of the model, then the bit widths of the model parameters (such as the number of layers, width, input dimension, and output dimension of the neural network) obtained by network training reported by the first device and the bit widths of the merged model parameters (such as the number of layers, width, input dimension, and output dimension of the neural network) sent by the second device are float16, float32, double float64, and complex 128, respectively. Optionally, bit width #1, bit width #2, bit width #3, and bit width #4 in Table 1 above can be represented by bits, for example, using bits "00", "01", "10", or "11" to represent bit width #1, bit width #2, bit width #3, and bit width #4, respectively.

[0177] Table 2

[0178] As shown in Table 2, the first bit width set includes bit width #1 and bit width #2. Taking the multiple parameters in the first parameter set as model parameters as an example, the first parameter set includes model parameter #1, model parameter #2, model parameter #3 and model parameter #4, where bit width #1 corresponds to model parameter #1, and bit width #2 corresponds to model parameter #2, model parameter #3 and model parameter #4. That is, one bit width can correspond to one model parameter, or one bit width corresponds to multiple model parameters, or different model parameters can have the same bit width or different bit widths. For example, assuming that bit width #1 is float16, bit width #2 is float32, model parameter #1 is the number of layers of the neural network, model parameter #2 is the width of the neural network, model parameter #3 is the input dimension of the model, and model parameter #4 is the output dimension of the model, then the bit width of the model parameters (such as the number of layers of the neural network) obtained by network training reported by the first device, and the bit width of the merged model parameters (such as the number of layers of the neural network) sent by the second device are both float16, and the bit width of the model parameters (such as width, input dimension, and output dimension) obtained by network training reported by the first device, and the bit width of the merged model parameters (such as width, input dimension, and output dimension) sent by the second device are float32, double float64, and complex 128, respectively. Optionally, bit width #1 and bit width #2 in Table 2 above can be represented by bits, for example, using bits "0" and "1" to represent bit width #1 and bit width #2, respectively.

[0179] Table 3

[0180] As shown in Table 3, the first bit width set includes bit width #1, bit width #2, bit width #3, and bit width #4. Taking the multiple parameters in the first parameter set as gradient parameters as an example, the first parameter set includes gradient parameter #1, gradient parameter #2, gradient parameter #3, and gradient parameter #4. Bit width #1 corresponds to gradient parameter #1, bit width #2 corresponds to gradient parameter #2, bit width #3 corresponds to gradient parameter #3, and bit width #4 corresponds to gradient parameter #4. That is, one bit width corresponds to one gradient parameter, or in other words, each gradient parameter has a different bit width. If the first parameter is gradient parameter #1, the first bit width is bit width #1. If the second parameter includes gradient parameter #2, gradient parameter #3, and gradient parameter #4 (N=3), the corresponding second bit widths are bit width #2, bit width #3, and bit width #4, respectively. For example, assuming that bit width #1 is float16, bit width #2 is float32, bit width #3 is double float64, and bit width #4 is complex 128, then the bit widths of the gradient parameters (such as gradient parameter #1, gradient parameter #2, gradient parameter #3, and gradient parameter #4) obtained by network training reported by the first device, and the bit widths of the merged gradient parameters (such as gradient parameter #1, gradient parameter #2, gradient parameter #3, and gradient parameter #4) sent down by the second device are float16, float32, double float64, and complex 128, respectively. Optionally, bit width #1, bit width #2, bit width #3, and bit width #4 in Table 3 above can be represented by bits, for example, using bits "00", "01", "10", or "11" to represent bit width #1, bit width #2, bit width #3, and bit width #4, respectively.

[0181] Table 4

[0182] As shown in Table 4, the first bit width set includes bit width #1, bit width #2, and bit width #3. Taking the multiple parameters in the first parameter set as gradient parameters as an example, the first parameter set includes gradient parameter #1, gradient parameter #2, gradient parameter #3, and gradient parameter #4. Bit width #1 corresponds to gradient parameter #1 and gradient parameter #2, bit width #2 corresponds to gradient parameter #3, and bit width #3 corresponds to gradient parameter #4. That is, one bit width can correspond to one gradient parameter, or one bit width can correspond to multiple gradient parameters. In other words, different gradient parameters can have the same bit width or different bit widths. For example, assuming that bit width #1 is float16, bit width #2 is float32, and bit width #3 is double float64, then the bit widths of the gradient parameters (such as gradient parameters #1 and gradient parameters #2) obtained by network training reported by the first device, and the bit widths of the merged gradient parameters (such as gradient parameters #1 and gradient parameters #2) sent by the second device are both float16, and the bit widths of the model parameters (such as gradient parameters #3 and gradient parameters #4) obtained by network training reported by the first device, and the bit widths of the merged gradient parameters (such as gradient parameters #3 and gradient parameters #4) sent by the second device are double float64 and complex 128, respectively. Optionally, bit width #1, bit width #2, and bit width #3 in Table 4 above can be represented by bits, for example, using bits "0", "1", and "default" to represent bit width #1, bit width #2, and bit width #3, respectively.

[0183] It should be noted that Tables 1 to 4 above are merely examples given for ease of understanding and do not exclude other solutions.

[0184] Optionally, the present application does not specifically limit the number of parameters in the first parameter set involved in Tables 1 to 4, and the number of bit widths in the first bit width set, or in other words, the present application does not limit the number of corresponding relationships between multiple bit widths and multiple parameters involved in Tables 1 to 4 (for example, a row in a table). For example, bit width #1 to bit width #3, and bit width #4 in Table 1 can be independently formed into new tables, and for another example, bit width #1 and bit width #2, and bit width #3 and bit width #4 in Table 4 can be independently formed into new tables, that is, Tables 1 to 4 can be split into multiple other tables for examples, and the present application does not limit this, nor does it limit the splitting method.

[0185] Optionally, the present application does not limit the values ​​of the bit width involved in Tables 1 to 4 above, and the model parameters and / or gradient parameters corresponding to the bit width, wherein the values ​​of the bit width and the parameters corresponding to the bit width can be predefined or preconfigured, or can be configured by signaling.

[0186] Optionally, the above Tables 1 to 4 can be implemented independently or in combination. For example, the above Tables 1 and 3 can be combined into one table, and this application does not limit this. For example, for a specific bit width, one or more rows in Table 1 can be reflected in one table with one or more corresponding rows in Table 3. Optionally, for example, the corresponding relationship shown in the first two rows of Table 1 and the corresponding relationship shown in the first two rows of Table 3 can be combined into one table, and the corresponding relationship shown in the last two rows of Table 1 and the corresponding relationship shown in the last two rows of Table 3 can be combined into one table, and this application does not limit this.

[0187] The following is an example of a specific implementation method in which the first device obtains the first bit width of the first parameter.

[0188] In the first example, the first bit width of the first parameter can be determined autonomously by the first device. For example, the first device can determine the first bit width based on its own capability information, hardware conditions, hardware power, or battery capacity. For example, if the current memory of the first device cannot support network training with a large number of model parameters, or the current power of the first device cannot support high-precision bit width model training, the first device can selectively determine the first bit width. For example, the first bit width can be a bit width with lower precision, such as float16.

[0189] In the second example, the first bit width can be predefined or preconfigured. The predefinition can include predefinition, such as protocol definition. The preconfiguration can be achieved by pre-saving the corresponding code, table or other methods that can be used to indicate the first bit width in the first device. This application does not limit its specific implementation method.

[0190] In a third example, the first bit width can be configured via signaling. For example, the first bit width of the first parameter can be determined by a second device (e.g., a base station) and indicated to the first communication device. For example, the second device sends third information to the first device, where the third information indicates the first bit width. Accordingly, the first device receives the third information from the second device and determines the first bit width of the first parameter based on the third information.

[0191] Optionally, before the second device sends the third information to the first device, the method further includes: the first device sending a second bit width set to the second device, wherein the second bit width set includes the first bit width. It should be understood that the first device supports the bit widths in the second bit width set. Accordingly, the second device receives the second bit width set from the first device and selects the first bit width from the second bit width set.

[0192] Exemplarily, the second bit width set may be a set including multiple bit widths supported by the first device. For example, the second bit width set includes float16, float32, and double float64, indicating that the first bit width corresponding to the first parameter supported by the first device may be float16, float32, or double float64. Alternatively, the second bit width set may include the upper and lower limits of the bit widths supported by the first device. For example, the second bit width set includes float16 and float32, indicating that the first bit width corresponding to the first parameter supported by the first device may be any bit width between float16 and float32. This application does not limit the representation of the second bit width set.

[0193] It should be understood that one or more bit widths in the second bit width set are relative to the first bit width. That is, the first bit width corresponding to the first parameter reported by the first device can be any bit width in the second bit width set. For example, the second bit width set can include one or more of the following: float16, float32, double float64, or complex 128. That is, the first bit width corresponding to the first parameter can be any one of float16, float32, double float64, or complex 128.

[0194] It should be noted that the multiple bit widths in the aforementioned first bit width set refer to the multiple bit widths corresponding to the multiple model parameters and / or multiple gradient parameters of the first model. For example, the first bit width sets of float16, float32, and double float64 correspond to model parameters #1, model parameter #2, and model parameter #3, respectively. It should be understood that the multiple bit widths in the first bit width set and the multiple bit widths in the second bit width set can be the same or different, and this application does not impose any restrictions on this.

[0195] Regarding the second device selecting a first bit width from the second bit width set, in one example, the second device may select the first bit width from the second bit width set based on at least one of time-frequency resources, a range of bit width requirements for the first parameter by different terminals, hardware conditions of different terminals, hardware power, battery capacity, or data set quality of different terminals, and indicate the first bit width to the first device. For example, terminal #1 and terminal #2 report second bit width set #1 and second bit width set #2 to the second device, respectively, where second bit width set #1 includes float16 and float32, and second bit width set #2 includes float32 and double float64. The second device may comprehensively consider factors such as the size of currently available time-frequency resources, the relatively low battery capacity of terminal #1, the relatively good hardware conditions of terminal #2, and the relatively high accuracy requirement of terminal #2 for the first parameter, and ultimately determine to allocate a bit width of float16 to terminal #1 and a bit width of double float64 to terminal #2, and indicate to terminal #1 that the first bit width corresponding to the first parameter is float16, and to terminal #2 that the first bit width corresponding to the first parameter is double float64. It should be understood that the present application does not limit the specific implementation manner in which the second device selects the first bit width from the second bit width set.

[0196] In one possible design, before the first device obtains the first bit width of the first parameter, the second device may send a reference bit width (e.g., an example of the fourth bit width) to the first device. Exemplarily, the second device sends fourth information to the first device, the fourth information being used to request training of the first model, the fourth information including the fourth bit width. It should be understood that the fourth bit width is a bit width supported by the second device. Accordingly, the first device receives the fourth information from the second device and determines the first bit width.

[0197] Exemplarily, the fourth message may be a broadcast message, for example, the second device may send a fourth request message to multiple first devices; or, the fourth message may be high-layer signaling, such as radio resource control (RRC) signaling.

[0198] Optionally, the first device determines the first bit width based on the fourth bit width, in which case the first bit width is typically less than or equal to the fourth bit width. For example, if the fourth bit width is float32, the first bit width may be float16 or float32. Alternatively, if the fourth bit width is float16, the first bit width determined by the first device may be float32. In other words, the fourth bit width serves as a reference bit width provided by the second device to the first device, and the first bit width determined by the first device may be less than or equal to the fourth bit width, or may be greater than the fourth bit width, and this application does not impose any limitations on this.

[0199] Optionally, the fourth information may further include structural parameters of the first model and / or parameter quantities of the first model. The structural parameters of the first model may include one or more of the following: fully connected, CNN, RNN, or Transformer (e.g., encoder-decoder), and the parameter quantities of the first model include floating-point operations and / or addition and multiplication operations.

[0200] Exemplarily, the fourth bit width may be a bit width supported by the second device, may be the maximum bit width, such as double float64, may be a bit width range supported by the second device, such as float16 to double float64, or may be a bit width set supported by the second device, such as float32, double float64, and complex 128. In other words, the fourth bit width may be a specific bit width value supported by the second device, may be replaced by a bit width set supported by the second device, or may be replaced by the upper and lower limits of the bit width supported by the second device (corresponding to the bit width range). It should be understood that the present application does not limit the specific implementation of the fourth bit width.

[0201] S720: The first device sends first information to the second device. Correspondingly, the second device receives the first information from the first device.

[0202] The first information is used to indicate the first bit width.

[0203] In the first example, the first device can send the bit widths corresponding to multiple parameters in the first parameter set to the second device, where the multiple parameters include the first parameter, or in other words, the first device can report multiple bit widths corresponding to all model parameters and / or gradient parameters used for first model training to the second device, where the multiple bit widths include the first bit width, for example, the first device sends the above-mentioned Table 1 and / or Table 3 to the second device.

[0204] In the second example, the first device may send only the first bit width corresponding to the first parameter to the second device, such as the bit width #1 corresponding to the model parameter #1 in Table 1 above, or the bit width #2 corresponding to the gradient parameter #3 in Table 4 above.

[0205] For the above Table 1, it is assumed that the values ​​of bit width #2, bit width #3 and bit width #4 in the first bit width set are predefined or preconfigured. For example, bit width #2, bit width #3 and bit width #4 can be regarded as a default value such as float32. Since the bit width #1 corresponding to model parameter #1 adopts a non-default value, the first device can only report the bit width #1 corresponding to model parameter #1 to the second device, such as float16, and report Table 1 is not required at this time; alternatively, the first device can also report the complete Table 1 to the second device, including model parameters #1 to model parameters #4 and their corresponding bit widths #1 to bit width #4; alternatively, the first device can also report Table 1, and only mark model parameter #1 and its bit width #1 separately in Table 1, etc.

[0206] Optionally, the first information may exist in the form of bits, for example, bit "00" represents float16, "01" represents float32, "10" represents double float64, "11" represents complex 128, and so on.

[0207] Based on the above steps, the first device and the second device align multiple model parameters and their corresponding bit widths for training the first model. Subsequently, the first device can train the first model and report the training results of the multiple model parameters to the second device, and the second device can perform aggregation processing based on the training results of the multiple model parameters reported by different first devices, and send the aggregated training results of the multiple model parameters to different first devices, so that multiple first devices can update local models until the training of the first model is completed.

[0208] In one possible design, at least two first devices obtain a first training result, where the first training result corresponds to the first parameter and is obtained based on training of the first model. The at least two first devices then transmit the first training result to the second device based on the first bit width. In other words, the bit width of the first training results reported by the at least two first devices is the first bit width.

[0209] Exemplarily, assuming that there are multiple first devices (for example, terminal #1 and terminal #2) for jointly training the first model, the first parameter includes model parameter #1, model parameter #2 or model parameter #3, wherein the first bit width of the first parameter obtained by terminal #1 corresponds to float16, float32 or double float64, respectively, and the first bit width of the first parameter obtained by terminal #2 corresponds to float32, float32 or complex 128, respectively. Then, the first training result sent by terminal #1 to the second device includes the training results of model parameter #1, model parameter #2 or model parameter #3, and the corresponding bit widths are float16, float32 or double float64, respectively. In other words, terminal #1 reports the training results of model parameter #1, model parameter #2 or model parameter #3 with a bit width of float16, float32 or double float64, respectively. Similarly, the first training result sent by terminal #2 to the second device includes the training results of model parameter #1, model parameter #2 or model parameter #3, and the corresponding bit widths are float32, float32 or complex 128, respectively. In other words, terminal #2 reports the training results of model parameter #1, model parameter #2 or model parameter #3 with a bit width of float32, float32 or complex 128, respectively.

[0210] In one possible design, a second device receives at least two first training results from at least two first devices, aggregates the at least two first training results to obtain a second training result, and then sends the second training result to the at least two first devices based on the first bit width. Accordingly, the at least two first devices each receive the second training results and train or update the first model based on the second training results. In other words, the bit width of the second training result sent by the second device is the first bit width.

[0211] For example, it is assumed that the first training result sent by terminal #1 to the second device includes the training results of model parameter #1, model parameter #2 or model parameter #3, and the corresponding bit widths are float16, float32 or float32, respectively. In other words, terminal #1 reports the training results of model parameter #1, model parameter #2 or model parameter #3 with a bit width of float16, float32 or float32, respectively, and the first training result sent by terminal #2 to the second device includes the training results of model parameter #1, model parameter #2 or model parameter #3, and the corresponding bit widths are float16, float32 or float32. are float16, float16 or float32 respectively, or in other words, terminal #2 reports the training results of model parameter #1, model parameter #2 or model parameter #3 with a bit width of float16, float16 or float32 respectively, then the second device can merge the training results of model parameter #1, model parameter #2 or model parameter #3 reported by terminal #1 and terminal #2 according to rule #1 to obtain a second training result, that is, the second training result includes the training result of model parameter #1, model parameter #2 or model parameter #3 after being merged.

[0212] Optionally, rule #1 may be to merge according to the standard of the maximum bit width that can be reached. For example, since the bit widths corresponding to the model parameters are all float16 or float32, the second device may merge the model parameters corresponding to float16 or float32 into double float64 model parameters. Furthermore, the second device converts the merged double float64 model parameters #1, model parameters #2, or model parameters #3 into float16, float32, or float32 model parameters #1, model parameters #2, and model parameters #3 in sequence, and sends them to terminal #1 for terminal #1 to update or train the first model. Similarly, the second device converts the merged double float64 model parameters #1, model parameters #2, or model parameters #3 into float16, float16, or float32 model parameters #1, model parameters #2, and model parameters #3 in sequence, and sends them to terminal #2 for terminal #2 to update or train the first model.

[0213] Optionally, rule #1 can be to merge according to the standard of the maximum bit width currently used. For example, since the bit widths corresponding to the model parameters are all float16 or float32, the second device can merge the model parameters corresponding to float16 or float32 into float32 model parameters. Furthermore, the second device converts the merged float32 model parameter #1, model parameter #2 or model parameter #3 into float16, float32 or float32 model parameter #1, model parameter #2 and model parameter #3 in sequence, and sends them to terminal #1 for terminal #1 to update or train the first model. Similarly, the second device converts the merged float32 model parameter #1, model parameter #2 or model parameter #3 into float16, float16 or float32 model parameter #1, model parameter #2 and model parameter #3 in sequence, and sends them to terminal #2 for terminal #2 to update or train the first model.

[0214] In one possible design, one or more bit widths in the first parameter set can be updated at any time. For example, the first device can send second information to the second device, where the second information is used to indicate that the first bit width corresponding to the first parameter is updated to a third bit width, which is different from the first bit width.

[0215] Exemplarily, the third bit width is greater than the first bit width. Assuming that during the network training of the first model, the battery capacity of the first device increases, or the accuracy of the first parameter required for the first model training is improved, the first device can instruct the second device to update the first bit width to the third bit width, for example, the first bit width is float16 and the second bit width is float32, so as to improve the network training performance.

[0216] Exemplarily, the third bit width is smaller than the first bit width. Assuming that during the network training of the first model, the battery capacity of the first device drops sharply and cannot support the model training of high-precision bit width, the first device can instruct the second device to update the first bit width to the third bit width, for example, the first bit width is double float64 and the second bit width is float16, thereby reducing overhead while ensuring network training performance.

[0217] Optionally, the second information may include a first time unit, which is used to indicate that within the first time unit, the first bit width corresponding to the first parameter is updated to the third bit width. The first time unit may be a certain moment or a certain time period. For example, if the first time unit is 15:00, the second information is used to indicate that the first bit width of the first parameter is updated to the third bit width at 15:00, that is, before 15:00, the bit width of the training result or the merged result of the model parameters interacting between the first device and the second device is the first bit width, and after 15:00, the bit width of the training result or the merged result of the model parameters interacting between the first device and the second device is the third bit width. For another example, if the first time unit is 10:00-14:00, the second information is used to indicate that the first bit width of the first parameter is updated to the third bit width during 10:00-14:00, that is, within 10:00-14:00, the bit width of the training result or the merged result of the model parameters interacting between the first device and the second device is the third bit width, and before 10:00 or after 14:00, the bit width of the training result or the merged result of the model parameters interacting between the first device and the second device is the first bit width.

[0218] It should be understood that the above solution is exemplified for the bit width of transmitting model parameters and / or gradient parameters over the air interface. It should be understood that the present application is also applicable to the bit width of transmitting data sets over the air interface.

[0219] In one example, a first device obtains a first bit width of first data and sends first information to a second device. The first information indicates the first bit width. It should be understood that the first bit width belongs to a first bit width set, the first data belongs to a first data set, multiple bit widths in the first bit width set correspond to multiple data (e.g., samples) in the first data set, and the first data set is used to train a first model.

[0220] A dataset may also be referred to as a data group. The first data is data in the first dataset, and the first dataset corresponds to the first model. Alternatively, multiple data in the first dataset are used to train the first model. Alternatively, the first data may be part of the data in the first dataset. For example, if the first dataset includes four data, the first data may be one, two, or three of the data.

[0221] It can be understood that the first data in this implementation method can correspond to the above-mentioned first parameter, the first data set can correspond to the above-mentioned first parameter set, and multiple data correspond to multiple parameters. Therefore, the implementation method of the first device obtaining the first bit width of the first data in this implementation method, the implementation method of the first device sending the first information, the specific interpretation of the first bit width, the correspondence between the multiple bit widths in the first bit width set and the multiple data in the first data set, etc. The specific interpretations and expressions can be referred to the above-mentioned relevant descriptions. For the sake of brevity, they will not be explained here.

[0222] Based on the above solution, the bit width corresponding to the multiple parameters for training the first model or the training results of the data set transmitted by the first device over the air interface, as well as the bit width corresponding to the multiple parameters or training results of the data set after the merger sent by the second device, can be non-single and variable to achieve network training and convergence. This implementation method not only saves resources, such as reducing air interface overhead, storage overhead and computing overhead, saving hardware resource consumption of the terminal, and helping the first device to train more complex models, but also can update the model parameters, gradient parameters and / or bit width corresponding to the data set of the first model in real time and flexibly. While improving network training performance, it can ensure the promotion of artificial intelligence in the wireless field.

[0223] Figure 8 is a flow chart of a communication method 800 provided in an embodiment of the present application. As shown in Figure 8, the method is illustrated by taking the first device as a terminal device and the second device as a network device as the execution subjects, and taking the first parameter as a model parameter, and the terminal device and the network device transmitting model parameters of different bit widths over the air interface as an example. The method includes the following steps.

[0224] S810: The network device sends fourth information to the terminal device. Correspondingly, the terminal device receives the fourth information from the network device.

[0225] The fourth information includes one or more of the following: model structure, model parameter quantity, or model reference bit width (i.e., fourth bit width). For specific explanations, please refer to the relevant description of the above method 700. For example, the model structure is CNN, the model parameter quantity is floating-point operation quantity, and the model reference bit width is double float64.

[0226] Exemplarily, the network device determines the model structure, model parameter quantity, or model reference bit width based on the training task of the first model, and sends fourth information to the terminal device that may potentially participate in the model training. Optionally, the training task of the first model, such as a horizontal federated learning training task or a vertical federated learning task, can be initiated by the terminal device, or it can also be initiated by the network device, which is not limited in this application.

[0227] S820: The terminal device sends a model bit width table to the network device. Correspondingly, the network device receives the model bit width table from the terminal device.

[0228] Among them, the model bit width table indicates the correspondence between the first parameter set and the first bit width set. For example, the model bit width table can refer to Table 1 or Table 2 in the above method 700. For example, the model bit width table includes model parameters #1 to model parameters #4 (for example, the first parameter set), and the corresponding bit widths include bit width #1 to bit width #4 (for example, the first bit width set).

[0229] For example, a terminal device can determine whether to participate in the training of a federated learning task based on its own hardware conditions, hardware power, battery capacity, and other factors. For example, if the current memory of the terminal device cannot support network training with a large number of model parameters, or the current battery of the terminal device cannot support high-precision bit-width model training, the terminal device can selectively report a model bit-width table, that is, at least two model parameters among the multiple model parameters included in the model bit-width table have different bit-widths (or precisions).

[0230] Optionally, if multiple parameters in the first parameter set all use default values, such as float32, which can be predefined or preconfigured, then the model bit width table reported by the terminal device can only reflect non-default values ​​and their corresponding model parameters to reduce air interface transmission overhead.

[0231] Optionally, in the model bit width table, each bit width of the multiple bit widths (for example, bit width #1 to bit width #4) included in the first bit width set can be a specific bit width value (such as float16), or a bit width range (such as float16 to Double float64), or the upper limit of the bit width (such as Double float64) and the lower limit of the bit width (such as float16) supported by the terminal device, or a combination of the bit width value and the bit width range. This application does not limit its expression form.

[0232] It should be pointed out that the model bit width tables reported by different terminal devices may be the same or different, that is, for the same model parameter, the bit widths supported by different terminal devices may be the same or different. In addition, the bit widths of the model parameters of different layers under the first model may be the same or different. For example, in the model bit width table #1 reported by UE1, the first model includes model parameter #1 corresponding to bit width #1, and model parameter #2 corresponding to bit width #2; in the model bit width table #2 reported by UE2, the first model includes model parameter #1 corresponding to bit width #1, and model parameter #2 corresponding to bit width #3. For another example, the first model is a neural network, which includes two layers, the model parameter #1 of the first layer corresponds to bit width #1, and the model parameter #2 corresponds to bit width #2, and the model parameter #1 of the second layer corresponds to bit width #2, and the model parameter #2 corresponds to bit width #3.

[0233] Optionally, if each bit width in the model bit width table reported by the terminal device is a specific bit width value, the following step S840 does not need to be executed. On the contrary, if the model bit width table reported by the terminal device includes a bit width range, the following step S840 needs to be executed, that is, the specific bit width is specified by the network device.

[0234] S830: The network device confirms that the terminal device participates in federated learning.

[0235] Exemplarily, the network device may send a signaling to the terminal device to determine whether the terminal device supports participation in federated learning. Furthermore, the network device sends a detailed model structure to the terminal device that confirms participation in federated learning training, which may include one or more of the number of model layers, the number of model features, the method of using the normalization layer, or the method of using the activation function. It should be understood that the detailed model structure can be any relevant information that can indicate the structure of the first model. It should be noted that if the model structure of the first model adopts Transformer, the detailed model structure sent by the network device may also include information such as the Head and / or position encoding number. Optionally, the detailed model structure may also be sent to the terminal device in step S810, and this application does not specifically limit this.

[0236] S840, optionally, the network device allocates model bit width #1 to the terminal device, and accordingly, the terminal device receives model bit width #1 (eg, first bit width) from the network device.

[0237] Exemplarily, if the model bit width table reported by the terminal device in step S820 above includes a bit width range, the network device determines a specific model bit width #1 based on the bit width range and notifies the terminal device. For example, the network device may determine model bit width #1 from the bit width range based on at least one of time-frequency resources, bit width requirements of different terminal devices, hardware conditions of different terminal devices, hardware power, or battery capacity, and indicate model bit width #1 to the terminal device. For specific implementation methods, reference may be made to the relevant description of method 700 above. Optionally, the network device may indicate model bit width #1 using bits.

[0238] Based on the above steps, the terminal device and the network device are aligned with each other in the first parameter set and the corresponding bit widths of the model parameters.

[0239] S850: The terminal device sends model parameters to the network device according to the model bit width table and / or model bit width #1.

[0240] Accordingly, the network device receives the model parameters from the terminal device.

[0241] Exemplarily, the terminal device locally trains the network according to the detailed model structure sent by the network device, obtains a training result (e.g., a first training result) based on the local data, and performs one or more forward and backward transfers. For example, the terminal device adjusts the bit width of each model parameter according to the reported model bit width table, and uploads the training results of the model parameters with the corresponding bit width. For example, the terminal device reports the training results of the locally trained model parameters #1 and model parameters #2 in float16 and float32 respectively.

[0242] S860: The network device sends the combined model parameters to the terminal device according to the model bit width table and / or model bit width #1.

[0243] Accordingly, the terminal device receives the model parameters from the network device.

[0244] It should be understood that each model parameter has its own corresponding bit width.

[0245] Exemplarily, the network device receives multiple model parameters (such as model parameter #1 and model parameter #2) reported by different terminal devices, and merges the multiple model parameters respectively to obtain a merged training result (such as a second training result), and then sends the training results of the merged model parameters to different terminal devices according to the model bit width table reported by different terminal devices, or the model bit width #1 allocated by the network device. For example, the network device sends the training results of the merged model parameters #1 and model parameters #2 to terminal device #1 in float16 and float32 respectively, and the network device sends the training results of the merged model parameters #1 and model parameters #2 to terminal device #2 in float32 and double float64 respectively. It should be noted that the bit width corresponding to the training results of the merged model parameters #1 and model parameters #2 sent by the network device is consistent with the bit width in the model bit width table, or the model bit width #1 allocated by the network device. For example, if the training result of model parameter #1 reported by the terminal device corresponds to float16, and the training result of the merged model parameter #1 corresponds to float32, the network device needs to convert the training result of the merged model parameter #1 to float16 before executing step S850 and then send it to the terminal device. The implementation method of the network device merging model parameters #1 or model parameters #2 reported by different terminal devices can refer to the relevant description of method 700 above.

[0246] Furthermore, the terminal device updates or trains the model based on the training results of the merged model parameters.

[0247] Optionally, during the federated learning process, the terminal device can update the bit width corresponding to at least one model parameter in the above-mentioned model bit width table. The specific implementation method can refer to the relevant description of the above-mentioned method 700. This application does not limit the update time and number of updates of the bit width of at least one model parameter.

[0248] Based on this solution, the bit widths of the multiple model parameters used for model training transmitted over the air interface by terminal devices, as well as the bit widths of the multiple model parameters combined and sent down by network devices, can be variable and non-single, ensuring the generalization and convergence capabilities of the network. This implementation reduces the number of bits exchanged, lowering air interface transmission overhead, conserving resources, and saving hardware resources on terminal devices. It also allows for flexible updating of the bit widths of model parameters during federated learning, improving network training performance while ensuring the widespread adoption of AI in the wireless field.

[0249] Figure 9 is a flow chart of a communication method 900 provided in an embodiment of the present application. As shown in Figure 9, the method is illustrated by taking the first device as a terminal device and the second device as a network device as the execution entities, and taking the first parameter as a gradient parameter, and the terminal device and the network device transmitting gradient parameters of different bit widths over the air interface as an example. The method includes the following steps.

[0250] S910: The network device sends fourth information to the terminal device. Correspondingly, the terminal device receives the fourth information from the network device.

[0251] Among them, the fourth information includes one or more of the following: model structure, model parameter quantity, or gradient reference bit width (i.e., fourth bit width). For specific interpretations, please refer to the relevant description of the above method 700. For example, the model structure is CNN, the model parameter quantity is floating-point operation quantity, and the gradient reference bit width is float32. Optionally, the training task of the first model, such as a horizontal federated learning training task or a vertical federated learning task, can be initiated by a terminal device, or it can be initiated by a network device, and this application does not limit this.

[0252] S920: The terminal device sends the gradient bit width table to the network device. Correspondingly, the network device receives the gradient bit width table from the terminal device.

[0253] The gradient bit width table indicates the correspondence between the first parameter set and the first bit width set. For example, the gradient bit width table may refer to Table 3 or Table 4 in the above method 700. For example, the gradient bit width table includes gradient parameters #1 to gradient parameters #4 (for example, the first parameter set), and the corresponding bit widths include bit widths #1 to #4 (for example, the first bit width set).

[0254] Regarding the implementation method of the terminal device determining and reporting the gradient bit width table and the expression form of the gradient bit width table, reference may be made to the relevant description of the model bit width table involved in step S820 of the above method 800 .

[0255] It should be noted that the gradient bit width tables reported by different terminal devices can be the same or different. That is, for the same model parameter, the bit widths supported by different terminal devices can be the same or different. In addition, the bit widths of the gradient parameters for different layers under the first model can be the same or different. For specific examples, please refer to the description of the model parameter bit width involved in step S820 of method 800 above.

[0256] Optionally, if each bit width in the gradient bit width table reported by the terminal device is a specific bit width value, the following step S940 does not need to be executed. On the contrary, if the gradient bit width table reported by the terminal device includes a bit width range, the following step S940 needs to be executed, that is, the specific bit width is specified by the network device.

[0257] S930: The network device confirms that the terminal device participates in federated learning.

[0258] S940, optionally, the network device allocates gradient bit width #1 to the terminal device, and accordingly, the terminal device receives the gradient bit width #1 (eg, the first bit width) from the network device.

[0259] For the implementation of the above steps S930 and S940, reference may be made to the relevant descriptions in steps S830 and S840 of the above method 800.

[0260] Based on the above steps, the terminal device and the network device are aligned with each other in the first parameter set and the corresponding bit widths thereof.

[0261] S950: The terminal device sends gradient parameters to the network device according to the gradient bit width table and / or gradient bit width #1.

[0262] Accordingly, the network device receives the gradient parameters from the terminal device.

[0263] Exemplarily, in vertical federated learning, the terminal device locally trains the network according to the gradient detailed structure issued by the network device, obtains the Bottom network training result (e.g., the first training result) based on the local data, and performs one or more forward and backward passes. For example, the terminal device adjusts the bit width of each gradient parameter according to the reported gradient bit width table, and uploads the training results of the gradient parameters with the corresponding bit width. For example, the terminal device reports the Bottom training results of the locally trained gradient parameter #1 and gradient parameter #2 in float16 and float32 respectively.

[0264] S960: The network device sends the combined gradient parameters to the terminal device according to the gradient bit width table and / or gradient bit width #1.

[0265] Accordingly, the terminal device receives the gradient parameters from the network device.

[0266] Exemplarily, the network device receives multiple gradient parameters (e.g., gradient parameter #1 and gradient parameter #2) reported by different terminal devices, and converts the bit widths of the multiple gradient parameters to the bit width required by the TOP network using the gradient bit width table reported by the terminal device. The multiple gradient parameters are then merged to obtain a merged training result (e.g., a second training result). The reverse gradient is then calculated based on the loss, and the training results of the merged gradient parameters are sent to different terminal devices based on the gradient bit width table reported by different terminal devices or the gradient bit width #1 allocated by the network device. For example, the network device sends the training results of the merged gradient parameter #1 and gradient parameter #2 to terminal device #1 in float16 and float32, respectively, and the network device sends the training results of the merged gradient parameter #1 and gradient parameter #2 to terminal device #2 in float32 and double float64, respectively. For example, if the training result of gradient parameter #1 reported by the terminal device corresponds to float16, and the training result of the merged gradient parameter #1 corresponds to float32, the network device needs to convert the training result of the merged gradient parameter #1 to float16 before executing step S950 and then send it to the terminal device. The implementation method of the network device merging gradient parameters #1 or gradient parameters #2 reported by different terminal devices can be referred to the relevant description of method 700 above.

[0267] Furthermore, the terminal device updates or trains the model based on the training results of the merged gradient parameters.

[0268] Optionally, during the federated learning process, the terminal device may update the bit width corresponding to at least one gradient parameter in the above-mentioned gradient bit width table. For specific implementation methods, reference may be made to the relevant description of the above-mentioned method 700. This application does not limit the update time and number of updates of the bit width of at least one gradient parameter.

[0269] Based on this solution, the bit widths of the multiple gradient parameters used for model training transmitted over the air interface by terminal devices, as well as the bit widths of the combined gradient parameters sent down by network devices, can be variable and non-single, ensuring the generalization and convergence capabilities of the network. This implementation reduces the number of bits exchanged, lowering air interface transmission overhead, conserving resources, and saving hardware resources on terminal devices. It also allows for flexible updating of the gradient parameter bit widths during federated learning, improving network training performance while ensuring the widespread adoption of AI in the wireless field.

[0270] Figure 10 is a flow chart of a communication method 1000 provided in an embodiment of the present application. As shown in Figure 10 , the method is executed by a first device, which is a terminal device, and a second device, which is a network device. The method is described using an example in which the terminal device and the network device transmit first data sets of different bit widths over an air interface. The method includes the following steps.

[0271] S1010: The terminal device sends a data set bit width table to the network device. Correspondingly, the network device receives the data set bit width table from the terminal device.

[0272] Among them, the data set bit width table indicates the correspondence between the first data set and the first bit width set. For example, the data set bit width table includes data #1 to data #4 (for example, the first data set), and the corresponding bit widths include bit width #1 to bit width #4 (for example, the first bit width set), that is, each bit width corresponds to a bit width, and at least two bit widths among the bit width #1 to bit width #4 are different.

[0273] Regarding the implementation method of the terminal device determining and reporting the dataset bit width table, the representation of the dataset bit width table can refer to the model bit width table involved in step S820 of the above method 800, or the relevant description of the gradient bit width table involved in step S920 of the above method 900.

[0274] Optionally, if each bit width in the data set bit width table reported by the terminal device is a specific bit width value, the following step S1020 does not need to be executed. On the contrary, if the data set bit width table reported by the terminal device includes a data range, for example, the first data set includes multiple data (for example, sample#1, sample#2 and sample#3), and the bit width range corresponding to sample#1 reported by the terminal device is float16 to float32, then the following step S1020 needs to be executed, that is, the specific bit width of sample#1 is specified by the network device.

[0275] S1020, optionally, the network device allocates data bit width #1 to the terminal device, and accordingly, the terminal device receives data bit width #1 (eg, the first bit width) from the network device.

[0276] Exemplarily, the network device may determine data bit width #1 from the data range based on at least one of the time-frequency resources and the bit width requirement range of each data contained in the first data set (or the importance of each data), and indicate data bit width #1 to the terminal device. For example, if the bit width range corresponding to sample #1 reported by the terminal device is float16 to float32, the bit width of sample #1 allocated by the network device may be float32. Optionally, the network device may indicate data bit width #1 in a bit manner. For specific implementation methods, please refer to the relevant description of the above method 700.

[0277] S1030: The network device sends a first data set to the terminal device according to the data set bit width table and / or data bit width #1.

[0278] Accordingly, the terminal device receives the first data set from the network device.

[0279] For example, during model distillation, a network device can send a data set to a terminal device based on a data set bit width table and / or data bit width #1. Each data in the data set has its own corresponding bit width, and at least two data have different bit widths. After receiving the data set, the terminal device implements model training based on the data set. Similarly, during dual-end model training, the network device transmits the data set to the terminal device based on the data set bit width table and / or data bit width #1, so that the terminal device performs network training based on the received data set.

[0280] Optionally, during the network training process, the terminal device can update the bit width corresponding to at least one data in the above data set table. The specific implementation method can refer to the relevant description of the above method 700. This application does not limit the update time and number of updates of the bit width of at least one data.

[0281] Based on the above solution, the terminal device transmits the data set for model training over the air interface with the corresponding bit width, allowing the network device to distribute the data set based on the bit width of each data point. At least two data points in the data set have variable bit widths, ensuring the network's generalization and convergence capabilities. This implementation reduces the number of bits exchanged, lowering air interface transmission overhead, conserving resources, and saving hardware resources on the terminal device. The bit width of any data point in the data set can also be flexibly updated during network training, improving network training performance while ensuring the widespread adoption of artificial intelligence in the wireless field.

[0282] The method provided in the embodiment of the present application is described in detail above in conjunction with Figures 1 to 10. Below, the device provided in the embodiment of the present application is described in detail in conjunction with Figures 11 and 12. It should be understood that the description of the device embodiment corresponds to the description of the method embodiment. Only the main structure of the device is given below. For details of the scheme not described in detail, please refer to the method embodiment above. For the sake of brevity, they are not repeated here.

[0283] Figure 11 is a schematic diagram of a communication device 2000 provided in an embodiment of the present application. As shown in Figure 11, the communication device 2000 includes a processing module 2001 and a communication module 2002. In one example, the communication device 2000 can be a first device, including a terminal device, or a communication device applied to a terminal device, or used in conjunction with a terminal device and capable of implementing a method executed by the terminal device, such as a chip, a chip system or a circuit. In another example, the communication device 2000 can be a second device, including a network device, or a communication device applied to a network device, or used in conjunction with a network device and capable of implementing a method executed by the network device, such as a chip, a chip system or a circuit.

[0284] The communication module may also be referred to as a transceiver module, transceiver, transceiver, or transceiver device. The processing module may also be referred to as a processor, processing board, processing unit, or processing device. Optionally, the communication module is used to perform the sending and receiving operations of the terminal device or network device in the above method. The device used to implement the receiving function in the communication module can be considered a receiving unit, and the device used to implement the sending function in the communication module can be considered a sending unit. That is, the communication module includes a receiving unit and a sending unit.

[0285] When the communication device 2000 is applied to the first device, the processing module 2001 can be used to implement the processing function of the first device in the above embodiments, and the communication module 2002 can be used to implement the transceiver function of the first device in the above embodiments.

[0286] Exemplarily, the processing module 2001 is used to obtain the first bit width of the first parameter, the first bit width belongs to the first bit width set, the first parameter belongs to the first parameter set, the multiple bit widths in the first bit width set have a corresponding relationship with the multiple parameters in the first parameter set, the multiple parameters are used to train the first model, and each parameter includes one or more of the following: model parameters and / or gradient parameters; the communication module 2002 is used to send the first information, and the first information is used to indicate the first bit width.

[0287] Exemplarily, the first parameter set includes N second parameters, the second bit width corresponding to at least one of the N second parameters is different from the first bit width, the second bit width belongs to the first bit width set, and N is an integer greater than or equal to 1.

[0288] Exemplarily, the processing module 2001 is further configured to obtain a first training result, the first training result corresponds to the first parameter, and the first training result is obtained based on training of the first model; the communication module 2002 is further configured to send the first training result according to the first bit width.

[0289] Exemplarily, the communication module 2002 is further configured to receive a second training result, the bit width corresponding to the second training result being the first bit width, and the second training result is used by the first terminal to train the first model.

[0290] Exemplarily, the second training result is obtained by aggregating at least two first training results reported by at least two terminals, and the at least two terminals are used to jointly train the first model.

[0291] Exemplarily, the communication module 2002 is further configured to send second information, where the second information is used to indicate that the bit width corresponding to the first parameter is updated to a third bit width, which is different from the first bit width.

[0292] Exemplarily, the second information includes a first time unit, and the second information is used to indicate that within the first time unit, the bit width corresponding to the first parameter is updated to a third bit width.

[0293] Exemplarily, the communication module 2002 is further configured to receive third information, where the third information is used to indicate the first bit width.

[0294] Exemplarily, the communication module 2002 is further configured to send a second bit width set, the first terminal supports bit widths in the second bit width set, and the first bit width belongs to the second bit width set.

[0295] Exemplarily, the communication module 2002 is also used to receive fourth information, which is used to request training of the first model, and the fourth information includes one or more of the following: structural parameters of the first model, parameter quantity of the first model, or a fourth bit width; wherein the fourth bit width is the bit width supported by the network side.

[0296] Exemplarily, the first bit width is less than or equal to the fourth bit width.

[0297] When the communication device 2000 is applied to the first device, the processing module 2001 can be used to implement the processing function of the first device in the above embodiments, and the communication module 2002 can be used to implement the transceiver function of the first device in the above embodiments.

[0298] Exemplarily, the processing module 2001 is used to obtain the first bit width of the first data, the first bit width belongs to a first bit width set, the first data belongs to a first data set, the multiple bit widths in the first bit width set correspond to the multiple data in the first data set, and the first data set is used to train the first model; the communication module 2002 is used to send the first information, and the first information is used to indicate the first bit width.

[0299] When the communication device 2000 is applied to the second device, the processing module 2001 can be used to implement the processing function of the second device in the above embodiments, and the communication module 2002 can be used to implement the transceiver function of the second device in the above embodiments.

[0300] Exemplarily, the processing module 2001 is used to obtain the first bit width of the first parameter, the first bit width belongs to the first bit width set, the first parameter belongs to the first parameter set, the multiple bit widths in the first bit width set correspond to the multiple parameters in the first parameter set, the multiple parameters are used to train the first model, and each parameter includes one or more of the following: model parameters and / or gradient parameters.

[0301] Exemplarily, the first parameter set further includes N second parameters, at least one of the N second parameters corresponds to a second bit width different from the first bit width, the second bit width belongs to the first bit width set, and N is an integer greater than or equal to 1.

[0302] Exemplarily, the communication module 2002 is used to receive at least two first training results reported by at least two terminals, and the at least two terminals are used to jointly train the first model; the processing module 2001 is used to perform aggregation processing based on the at least two first training results to obtain a second training result, and the second training result is used to train the first model; the communication module 2002 is also used to send the second training result according to the first bit width.

[0303] Exemplarily, the communication module 2002 is further configured to receive second information, where the second information is used to indicate that the bit width corresponding to the first parameter is updated to a third bit width, and the third bit width is different from the first bit width.

[0304] Exemplarily, the second information includes a first time unit, and the second information is used to indicate that within the first time unit, the bit width corresponding to the first parameter is updated to a third bit width.

[0305] Exemplarily, the communication module 2002 is further configured to receive first information, where the first information is used to indicate a first bit width.

[0306] Exemplarily, the communication module 2002 is further configured to receive a second bit width set; the processing module 2001 is further configured to select a first bit width from the second bit width set; and the communication module 2002 is further configured to send third information, where the third information is configured to indicate the first bit width.

[0307] Exemplarily, the communication module 2002 is also used to send fourth information, which is used to request training of the first model. The fourth information includes one or more of the following: structural parameters of the first model, parameter quantities of the first model, or a fourth bit width; wherein the fourth bit width is the bit width supported by the network side.

[0308] Exemplarily, the first bit width is less than or equal to the fourth bit width.

[0309] When the communication device 2000 is applied to the second device, the processing module 2001 can be used to implement the processing function of the second device in the above embodiments, and the communication module 2002 can be used to implement the transceiver function of the second device in the above embodiments.

[0310] Exemplarily, the processing module 2001 is used to obtain the first bit width of the first data, the first bit width belongs to a first bit width set, the first data belongs to a first data set, multiple bit widths in the first bit width set correspond to multiple data in the first data set, and the first data set is used to train the first model.

[0311] In addition, it should be noted that the aforementioned communication module and / or processing module can be implemented by a virtual module, for example, the processing module can be implemented by a software functional unit or a virtual device, and the communication module can be implemented by a software function or a virtual device. Alternatively, the processing module or the communication module can also be implemented by a physical device, for example, if the device is implemented using a chip / circuit (such as an integrated circuit or a logic circuit, etc.). The communication module can be an input and output circuit and / or a communication interface, performing input operations (corresponding to the aforementioned receiving operations) and output operations (corresponding to the aforementioned sending operations); the processing module is an integrated processor or microprocessor or circuit (such as an integrated circuit or a logic circuit, etc.).

[0312] The division of modules in this application is illustrative and represents only a logical functional division. In actual implementation, other division methods may be used. Furthermore, the functional modules in the examples of this application may be integrated into a single processor, exist physically as separate modules, or two or more modules may be integrated into a single module. The aforementioned integrated modules may be implemented in either hardware or software functional modules.

[0313] FIG12 is a schematic diagram of another communication device 3000 provided in an embodiment of the present application. As shown in FIG12 , optionally, the communication device 3000 may be the aforementioned first device or second device, or a chip or chip system for the aforementioned first device or second device. Optionally, the communication device 3000 may be the aforementioned terminal device or network device, or a chip or chip system for the aforementioned terminal device or network device. Optionally, in the present application, the chip system may be composed of a chip, or may include a chip and other discrete devices.

[0314] The communication device 3000 can be used to implement the functions of any device (e.g., the first device or the second device) in the communication system described in the above examples. The communication device 3000 may include at least one processing circuit 3010. Optionally, the processing circuit 3010 is coupled to a memory, and the memory may be located within the device, or the memory may be integrated with the processor, or the memory may be located outside the device. For example, the communication device 3000 may also include at least one memory 3020. The memory 3020 stores the necessary computer programs, computer programs or instructions and / or data for implementing any of the above examples; the processing circuit 3010 may execute the computer program stored in the memory 3020 to complete the method in any of the above examples.

[0315] The communication device 3000 may also include a transceiver circuit 3030, and the communication device 3000 can exchange information with other devices through the transceiver circuit 3030. Exemplarily, the transceiver circuit 3030 can be a transceiver, a circuit, a bus, a module, a pin, or other types of transceiver circuits. When the communication device 3000 is a chip-type device or circuit, the transceiver circuit 3030 in the device 3000 can also be an input-output circuit, or an interface circuit, which can input information (or receive information) and output information (or send information). When the communication device 3000 is a first device, a second device, a terminal device, or a network device, the transceiver circuit 3030 can be a transmitter, a receiver, a transceiver, or a communication interface, which is not limited here.

[0316] The processing circuit 3010 may be one or more processors, or all or part of the processing circuits in one or more processors. The processing circuit 3010 may be an integrated processor, microprocessor, integrated circuit, or logic circuit, and the processor may determine output information based on input information.

[0317] Coupling in this application refers to an indirect coupling or communication connection between devices, units, or modules, which can be electrical, mechanical, or other forms, and is used for information exchange between devices, units, or modules. The processing circuit 3010 may operate in conjunction with the memory 3020 and the transceiver circuit 3030. The specific connection medium between the processing circuit 3010, memory 3020, and transceiver circuit 3030 is not limited in this application.

[0318] Optionally, as shown in FIG12 , the processing circuit 3010, the memory 3020, and the transceiver circuit 3030 are interconnected via a bus 3040. Optionally, the bus may include an address bus, a data bus, a control bus, or other types of buses. Furthermore, for ease of illustration, FIG12 shows one bus 3040, but this does not mean that there is only one bus or only one type of bus.

[0319] It should be understood that the processors mentioned in the embodiments of the present application may be the following devices or the circuit portions of the following devices used for processing functions: a central processing unit (CPU), other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor.

[0320] It should also be understood that the memory mentioned in the embodiments of the present application may be a volatile memory and / or a non-volatile memory. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM). For example, RAM can be used as an external cache. By way of example and not limitation, RAM includes the following forms: 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), synchronous link dynamic random access memory (SLDRAM), and direct rambus RAM (DR RAM).

[0321] 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, discrete hardware component, the memory (storage module) can be integrated into the processor.

[0322] It should also be noted that the memory described herein is intended to include, but is not limited to, these and any other suitable types of memory.

[0323] In an embodiment of the present application, the method described in the above embodiment can be executed by the terminal device and the network device, or can be executed by the chip, chip system or circuit of the terminal device and the network device, and the chip, chip system or circuit can be installed in the terminal device and the network device.

[0324] An embodiment of the present application provides a computer-readable storage medium on which computer instructions for implementing the methods executed by a device (such as a terminal device or a network device) in the above-mentioned method embodiments are stored.

[0325] For example, when the computer program is executed by a computer, the computer can implement the methods performed by a device (such as a terminal device, or a network device, etc.) in each embodiment of the above method.

[0326] An embodiment of the present application provides a computer program product comprising instructions, which, when executed by a computer, implement the methods performed by a device (such as a terminal device, or a network device (or a positioning device), etc.) in the above-mentioned method embodiments.

[0327] An embodiment of the present application provides a communication system, which includes the terminal device and / or network device described in each of the above embodiments. For example, the system includes the terminal device and / or network device described in the above embodiments. For another example, the system includes the terminal device and / or network device described in the above embodiments.

[0328] The explanation of the relevant contents and beneficial effects of any of the above-mentioned devices can be referred to the corresponding method embodiments provided above, which will not be repeated here.

[0329] To facilitate understanding of the above embodiments provided in this application, the following points are explained:

[0330] In this application, unless otherwise specified or there is a logical conflict, the terms and / or descriptions between different embodiments are consistent and can be referenced to each other, and the technical features in different embodiments can be combined to form new embodiments according to their internal logical relationships.

[0331] In the present application, "at least one" means one or more, and "more" means two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. In the text description of the present application, the character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b and c can mean: a, or b, or c, or a and b, or a and c, or b and c, or a, b and c. Wherein a, b and c can be single or multiple, respectively.

[0332] In this application, the terms "first," "second," and various numerical references are used for descriptive purposes only and are not intended to limit the scope of the embodiments of this application. For example, they are used to distinguish between different messages, rather than to describe a specific order or precedence. It should be understood that the terms described in this manner are interchangeable, where appropriate, to allow for the description of scenarios beyond the embodiments of this application.

[0333] In this application, the terms "comprises" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or apparatus that includes a series of steps or elements is not necessarily limited to those steps or elements explicitly listed, but may include other steps or elements not explicitly listed or inherent to such process, method, product or apparatus.

[0334] In this application, "used for indication" can include direct indication and indirect indication. When describing a certain indication information as indicating A, it can include whether the indication information directly indicates A or indirectly indicates A, and it does not necessarily mean that the indication information carries A. Direct indication of information A means including information A; implicit indication of information A means indicating information A through the correspondence between information A and information B and the direct indication of information B. The correspondence between information A and information B can be predefined, pre-stored, pre-burned, or pre-configured.

[0335] In this application, information C is used to determine information D, which includes both information D being determined solely based on information C and information D being determined based on information C and other information. Furthermore, information C can also be used to determine information D indirectly, for example, where information D is determined based on information E, and information E is determined based on information C.

[0336] In the present application, "network element A sends information A to network element B" can be understood as the destination end of the information A or the intermediate network element in the transmission path between the destination end and the network element B, which may include directly or indirectly sending information to network element B. "Network element B receives information A from network element A" can be understood as the source end of the information A or the intermediate network element in the transmission path between the source end and the network element A, which may include directly or indirectly receiving information from network element A. The information may be processed as necessary between the source end and the destination end of the information transmission, such as format changes, but the destination end can understand the valid information from the source end. Similar expressions in this application can be understood similarly and will not be elaborated here.

[0337] It can be understood that some optional features in the various embodiments of the present application may not depend on other features in certain scenarios, and may also be combined with other features in certain scenarios, without limitation.

[0338] It can also be understood that in some of the above embodiments, sending information is mentioned multiple times. For example, "network element A sends information A to network element B", which can be understood as the destination end of the information A or the intermediate network element in the transmission path between the destination end and the network element B, and can include directly or indirectly sending information to network element B. "Network element B receives information A from network element A" can be understood as the source end of the information A or the intermediate network element in the transmission path between the source end and the network element A, and can include directly or indirectly receiving information from network element A. The information may be processed as necessary between the source end and the destination end of the information transmission, such as format changes, etc., but the destination end can understand the valid information from the source end. Similar expressions in this application can be understood similarly and will not be repeated here.

[0339] It can also be understood that in some of the above embodiments, the AI ​​model is mainly used as an example for illustrative description. It can be understood that the above AI model can also be used for other purposes.

[0340] It can also be understood that the solutions in the various embodiments of the present application can be reasonably combined and used, and the explanations or descriptions of the various terms appearing in the embodiments can be referenced or explained with each other in the various embodiments, without limitation to this.

[0341] It can also be understood that in the above-mentioned various method embodiments, the methods and operations implemented by the terminal device or positioning device can also be implemented by components (such as chips or circuits) that can be implemented by the terminal device or positioning device, without limitation.

[0342] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0343] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

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

[0345] The units described as separate components may or may not be physically separate, and 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 these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0346] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0347] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0348] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.

Claims

1. A method for network training, characterized in that include: Obtaining a first bit width of a first parameter, where the first bit width belongs to a first bit width set, the first parameter belongs to a first parameter set, multiple bit widths in the first bit width set correspond to multiple parameters in the first parameter set, the multiple parameters are used to train a first model, each parameter including one or more of the following: a model parameter and / or a gradient parameter; First information is sent, where the first information is used to indicate the first bit width.

2. The method according to claim 1, characterized in that The first parameter set includes N second parameters, a second bit width corresponding to at least one second parameter of the N second parameters is different from the first bit width, the second bit width belongs to the first bit width set, and N is an integer greater than or equal to 1.

3. The method according to claim 1 or 2, characterized in that The method further comprises: Obtaining a first training result, where the first training result corresponds to the first parameter and the first training result is obtained based on training of the first model; The first training result is sent according to the first bit width.

4. The method according to claim 3, characterized in that The method further comprises: A second training result is received, where the bit width corresponding to the second training result is the first bit width, and the second training result is used by the first terminal to train the first model.

5. The method according to claim 4, characterized in that The second training result is obtained by aggregating at least two first training results reported by at least two terminals, and the at least two terminals are used to jointly train the first model.

6. The method according to any one of claims 1 to 5, characterized in that The method further comprises: Second information is sent, where the second information is used to indicate that the bit width corresponding to the first parameter is updated to a third bit width, where the third bit width is different from the first bit width.

7. The method according to claim 6, characterized in that The second information includes a first time unit, and the second information is used to indicate that within the first time unit, the bit width corresponding to the first parameter is updated to the third bit width.

8. The method according to any one of claims 1 to 7, characterized in that The obtaining of the first bit width of the first parameter includes: Third information is received, where the third information is used to indicate the first bit width.

9. The method according to claim 8, characterized in that Before receiving the third information, the method further includes: A second bit width set is sent, the first terminal supports bit widths in the second bit width set, and the first bit width belongs to the second bit width set.

10. The method according to any one of claims 1 to 9, characterized in that Before obtaining the first bit width of the first parameter, the method further includes: receiving fourth information, where the fourth information is used to request training of the first model, and the fourth information includes one or more of the following: a structural parameter of the first model, a parameter quantity of the first model, or a fourth bit width; The fourth bit width is a bit width supported by the network side.

11. The method according to claim 10, characterized in that The first bit width is smaller than or equal to the fourth bit width.

12. A method for network training, characterized in that include: Obtain a first bit width of a first parameter, where the first bit width belongs to a first bit width set, the first parameter belongs to a first parameter set, multiple bit widths in the first bit width set correspond to multiple parameters in the first parameter set, and the multiple parameters are used to train a first model, where each parameter includes one or more of the following: a model parameter and / or a gradient parameter.

13. The method according to claim 12, characterized in that The first parameter set also includes N second parameters, at least one of the N second parameters corresponds to a second bit width that is different from the first bit width, the second bit width belongs to the first bit width set, and N is an integer greater than or equal to 1.

14. The method according to claim 12 or 13, characterized in that The method further comprises: receiving at least two first training results reported by at least two terminals, where the at least two terminals are used to jointly train the first model; Performing aggregation processing based on the at least two first training results to obtain a second training result, where the second training result is used to train the first model; The second training result is sent according to the first bit width.

15. The method according to any one of claims 12 to 14, characterized in that The method further comprises: Second information is received, where the second information is used to indicate that a bit width corresponding to the first parameter is updated to a third bit width, where the third bit width is different from the first bit width.

16. The method according to claim 15, characterized in that The second information includes a first time unit, and the second information is used to indicate that within the first time unit, the bit width corresponding to the first parameter is updated to the third bit width.

17. The method according to any one of claims 12 to 16, characterized in that The obtaining of the first bit width of the first parameter includes: First information is received, where the first information is used to indicate the first bit width.

18. The method according to any one of claims 12 to 17, characterized in that The obtaining of the first bit width of the first parameter includes: receiving a second bit width set; selecting the first bit width from the second bit width set; The method further includes sending third information, where the third information is used to indicate the first bit width.

19. The method according to any one of claims 12 to 18, characterized in that Before obtaining the first bit width of the first parameter, the method further includes: Sending fourth information, where the fourth information is used to request training of the first model, and the fourth information includes one or more of the following: a structural parameter of the first model, a parameter quantity of the first model, or a fourth bit width; The fourth bit width is a bit width supported by the network side.

20. The method according to claim 19, characterized in that The first bit width is smaller than or equal to the fourth bit width.

21. A method for network training, characterized in that include: Obtaining a first bit width of first data, where the first bit width belongs to a first bit width set, the first data belongs to a first data set, multiple bit widths in the first bit width set correspond to multiple data in the first data set, and the first data set is used to train a first model; First information is sent, where the first information is used to indicate the first bit width.

22. The method according to claim 21, characterized in that The first data set includes N second data, the second bit width corresponding to at least one of the N second data is different from the first bit width, the second bit width belongs to the first bit width set, and N is an integer greater than or equal to 1.

23. The method according to claim 21 or 22, characterized in that The method further comprises: Obtaining a first training result, where the first training result corresponds to the first data and is obtained based on training of the first model; The first training result is sent according to the first bit width.

24. The method according to claim 23, wherein The method further comprises: A second training result is received, where the bit width corresponding to the second training result is the first bit width, and the second training result is used by the first terminal to train the first model.

25. The method according to claim 24, characterized in that The second training result is obtained by aggregating at least two first training results reported by at least two terminals, and the at least two terminals are used to jointly train the first model.

26. The method according to any one of claims 21 to 25, characterized in that The method further comprises: Second information is sent, where the second information is used to indicate that a bit width corresponding to the first data is updated to a third bit width, where the third bit width is different from the first bit width.

27. The method according to claim 26, characterized in that The second information includes a first time unit, and the second information is used to indicate that within the first time unit, the bit width corresponding to the first data is updated to the third bit width.

28. The method according to any one of claims 21 to 27, characterized in that The obtaining of the first bit width of the first data includes: Third information is received, where the third information is used to indicate the first bit width.

29. The method according to claim 28, characterized in that Before receiving the third information, the method further includes: A second bit width set is sent, the first terminal supports bit widths in the second bit width set, and the first bit width belongs to the second bit width set.

30. The method according to any one of claims 21 to 29, characterized in that Before obtaining the first bit width of the first data, the method further includes: receiving fourth information, where the fourth information is used to request training of the first model, and the fourth information includes one or more of the following: a structural parameter of the first model, a parameter quantity of the first model, or a fourth bit width; The fourth bit width is a bit width supported by the network side.

31. The method according to claim 30, wherein The first bit width is smaller than or equal to the fourth bit width.

32. A method for network training, characterized in that include: Obtain a first bit width of first data, where the first bit width belongs to a first bit width set, the first data belongs to a first data set, multiple bit widths in the first bit width set correspond to multiple data in the first data set, and the first data set is used to train a first model.

33. The method according to claim 32, characterized in that The first data set also includes N second data, at least one of the N second data corresponds to a second bit width different from the first bit width, the second bit width belongs to the first bit width set, and N is an integer greater than or equal to 1.

34. The method according to claim 32 or 33, characterized in that The method further comprises: receiving at least two first training results reported by at least two terminals, where the at least two terminals are used to jointly train the first model; Performing aggregation processing based on the at least two first training results to obtain a second training result, where the second training result is used to train the first model; The second training result is sent according to the first bit width.

35. The method according to any one of claims 32 to 34, characterized in that The method further comprises: Second information is received, where the second information is used to indicate that a bit width corresponding to the first data is updated to a third bit width, where the third bit width is different from the first bit width.

36. The method according to claim 35, characterized in that The second information includes a first time unit, and the second information is used to indicate that within the first time unit, the bit width corresponding to the first data is updated to the third bit width.

37. The method according to any one of claims 32 to 36, characterized in that The obtaining of the first bit width of the first data includes: First information is received, where the first information is used to indicate the first bit width.

38. The method according to any one of claims 32 to 37, characterized in that The obtaining of the first bit width of the first data includes: receiving a second bit width set; selecting the first bit width from the second bit width set; The method further includes sending third information, where the third information is used to indicate the first bit width.

39. The method according to any one of claims 32 to 38, characterized in that Before obtaining the first bit width of the first data, the method further includes: Sending fourth information, where the fourth information is used to request training of the first model, and the fourth information includes one or more of the following: a structural parameter of the first model, a parameter quantity of the first model, or a fourth bit width; The fourth bit width is a bit width supported by the network side.

40. The method according to claim 39, wherein The first bit width is smaller than or equal to the fourth bit width.

41. A communication device, characterized in that The method comprises a module or a unit for executing the method according to any one of claims 1 to 11, 21 to 31.

42. A communication device, characterized in that The method comprises a module or a unit for performing the method according to any one of claims 12 to 20, 32 to 40.

43. A communication device, characterized in that The communication device comprises at least one processor coupled to a memory and configured to execute computer instructions stored in the memory, so as to enable the communication device to perform the method according to any one of claims 1 to 11 and 21 to 31.

44. A communication device, characterized in that The device comprises at least one processor configured to execute computer instructions so as to cause the communication device to perform the method according to any one of claims 12 to 20 and 32 to 40.

45. The communication device according to claim 43 or 44, characterized in that The communication device further comprises a memory for storing the computer program or instructions; and / or, The communication device further includes a communication interface coupled to the at least one processor, wherein the communication interface is configured to input and / or output information.

46. The communication device according to any one of claims 43 to 45, characterized in that The communication device is a chip or a chip system.

47. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program or instructions. When the computer program or the instructions are executed on a computer, the method according to any one of claims 1 to 11, 21 to 31 is executed, or the method according to any one of claims 12 to 20, 32 to 40 is executed.

48. A computer program product, characterized in that The invention comprises instructions which, when executed on a computer, cause the method according to any one of claims 1 to 11, 21 to 31 to be executed, or cause the method according to any one of claims 12 to 20, 32 to 40 to be executed.

Citation Information

Patent Citations

  • Neural network training method and device

    CN108021981A

  • Fixed point method and apparatus, and computer device

    CN108596328A

  • Data processing method, machine learning training method and related device and equipment

    CN114611705A

  • Model training method and device, storage medium and electronic equipment

    CN115034396A

  • Method, system and apparatus for federated learning

    US20220245459A1