WO2025117988A1 - Neural processing unit and quality of service - Google Patents
Neural processing unit and quality of service Download PDFInfo
- Publication number
- WO2025117988A1 WO2025117988A1 PCT/US2024/058162 US2024058162W WO2025117988A1 WO 2025117988 A1 WO2025117988 A1 WO 2025117988A1 US 2024058162 W US2024058162 W US 2024058162W WO 2025117988 A1 WO2025117988 A1 WO 2025117988A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- access point
- traffic data
- machine learning
- learning model
- processing device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
- G06N3/0442—Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/147—Network analysis or design for predicting network behaviour
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/16—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N99/00—Subject matter not provided for in other groups of this subclass
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0888—Throughput
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/0268—Traffic management, e.g. flow control or congestion control using specific QoS parameters for wireless networks, e.g. QoS class identifier [QCI] or guaranteed bit rate [GBR]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/08—Access point devices
Definitions
- An access point is a networking hardware device that allows other Wi-Fi devices to connect to a wired network.
- the AP may have a wired connection to a router, but, in a wireless router, it can also be an integral component of the router itself.
- wireless data standards that have been introduced for wireless access point and wireless router technology such as 802.11a, 802.11b, 801.11g, 802.1 In (WiFi 4), 802.1 lac (Wi-Fi 5), 802.1 lax (WiFi 6), and so forth.
- a method may include: generating, at an access point, a machine learning model previously trained using training traffic data; identifying, at the access point, traffic data; providing, at the access point, the traffic data to the machine learning model; predicting, at the access point, service quality for the traffic data using the machine learning model; and prioritizing, at the access point, a data packet based on the service quality for the traffic data.
- An access point may include a processing device. The processing device may generate, at an access point, a machine learning model previously trained using training traffic data. The processing device may identify, at the access point, traffic data. The processing device may provide, at the access point, the traffic data to the machine learning model. The processing device may predict, at the access point, service quality for the traffic data using the machine learning model. The processing device may prioritize, at the access point, a data packet based on the service quality for the traffic data.
- a computer-readable storage medium may include computer executable instructions.
- the computer readable instructions when executed by one or more processors, may cause an access point (AP) to: generate, at an access point, a machine learning model previously trained using training traffic data; identify, at the access point, traffic data; provide, at the access point, the traffic data to the machine learning model; predict, at the access point, service quality for the traffic data using the machine learning model; and prioritize, at the access point, a data packet based on the service quality for the traffic data.
- AP access point
- FIG. 1 illustrates an example system for training a model.
- FIG. 2 illustrates an example process flow for enhancing quality of service.
- FIG. 3 illustrates a block diagram of an example system configured to enhance quality of service.
- FIG. 4 illustrates an example structure of a neural network.
- FIG. 5 illustrates an example structure of a convolutional neural network.
- FIG. 6 illustrates an example process flow of a convolutional neural network.
- FIG. 7 illustrates an example of analog deep learning.
- FIG. 8 illustrates an example of analog deep learning.
- FIG. 9 illustrates an example computing system that may be used for enhancing quality of service, all arranged in accordance with some examples of the present disclosure.
- Artificial Intelligence (Al) and Machine Learning (ML) may be integrated in WiFi® routers to enhance network performance and security, automate management, and enhance user experience by adapting to usage patterns.
- Al and ML may facilitate efficient device connectivity, offer predictive maintenance, and lead to cost savings through optimized resource utilization. The result may be more reliable, personalized, and efficient connectivity.
- CPUs central processing units
- NPUs neural processing units
- GPUs graphic processing units
- TPUs tensor processing units
- NNP neural network processors
- IPUs intelligent processing units
- VPUs vision processing units
- the CPU may be the core processor directing system operations, while the GPU may accelerate image and graphics rendering.
- the NPU may specifically boost artificial intelligence tasks by efficiently managing large-scale machine learning computations. While CPUs may provide computations on deep neural networks, CPUs perform at a slower pace compared to GPUs or NPUs. Since an NPU performs Al, it is recommended for Al standards over 1 trillion operations per second (TOPS) to combine a vector digital signal processor (DSP) with an NPU to provide maximum performance with additional programmability.
- TOPS vector digital signal processor
- the NPU may be used for deep learning.
- Regular programming is used to write specific instructions for computers to perform tasks, in which logic and algorithms may be defined by programmers.
- Statistics in programming may involve analyzing data to identify patterns and make predictions to support data-based decisions.
- Shallow learning may use algorithms to allow computers to learn from data and make informed decisions without complex analysis.
- Deep learning may employ neural networks to analyze large datasets and excel in tasks like image and speech recognition by learning features directly from the data. The evolution from traditional programming to deep learning signifies a change in computational strategies for solving problems.
- Deep learning algorithms may be used for a wide variety of applications including for artificial intelligence (Al) and/or for machine learning (ML).
- Al artificial intelligence
- ML machine learning
- Deployment of NPUs for Al and ML applications may be broadly applicable. For example, deployment of NPUs may be used to enhance quality of service in WiFi® access points.
- CNNs convoluted neural networks
- LSTMs long short-term memories
- VoIP voice over internal protocol
- VoIP voice over internal protocol
- streaming may be prioritized, thereby enhancing user experience.
- minimum latency and maximum throughput may be obtained relative to baseline values.
- Wi-Fi® access point is illustrated for using machine learning and artificial intelligence
- a passive optical network may also be used in conjunction with machine learning and artificial intelligence to enhance quality of service (QoS).
- QoS quality of service
- Wi-Fi® AP may optimize data flow across Access Categories to provide peak performance and reliability for many applications.
- a machine learning model may be trained by inputting training data 102 and an initial model 104 to a trainer 105 to generate a trained model 106.
- the trainer 105 may be any combination of hardware and software for training a machine learning model or a neural network.
- the trainer 105 may receive the type of model that is to be used for training.
- the trainer 105 may use any appropriate model for training such as a deep learning neural network.
- the trained model 106 may be used in supervised learning, unsupervised learning, or reinforcement learning.
- the trained model 106 may be used by the classifier 108 to generate inferences 110.
- the trained model 106 may be used to generate predictions using data that the trained model has not previously trained on.
- the training process may be controlled using various parameters such as the maximum model size, the maximum number of passes over the training data, the shuffle type, the regularization type, the learning rate, and the regularization amount.
- the machine learning model may be used in conjunction with an access point
- An AP may include a processing device.
- the processing device may be a neural processing unit (NPU).
- the processing device may perform one or more of: (i) generating, at an access point, a machine learning model previously trained using training traffic data, (ii) identifying, at the access point, traffic data, (iii) providing, at the access point, the traffic data to the machine learning model, (iv) predicting, at the access point, service quality for the traffic data using the machine learning model, or (v) prioritizing, at the access point, a data packet based on the service quality for the traffic data.
- NPU neural processing unit
- the machine learning model may use different algorithms.
- the machine learning model may use a deep neural network which may include one or more of a convolutional neural network, a recurrent neural network, or the like.
- the machine learning model may use analog deep learning.
- the traffic data may include various data such as one or more of packet size, flow duration, protocol behavior, or the like.
- Low latency optimization may be performed. That is, data packets may be prioritized to minimize latency relative to a baseline latency and maximize throughput relative to a baseline throughput. By minimizing the latency and maximizing the throughput, a higher quality of service may be facilitated relative to a baseline quality of service.
- the processing device may be used to enhance gaming over Wi-Fi® by identifying and prioritizing gaming traffic using machine learning (e.g., supervised and reinforcement learning).
- the processing device may adjust resources, balance multiple users, and adapt to different games for consistent low-latency performance relative to a baseline latency. Jitter may also be minimized relative to baseline jitter.
- the processing device may perform one or more of: (i) detect an application type
- the processing device may generate, at an access point, a machine learning model previously trained using training traffic data. This may be implemented by using offline supervised learning to analyze and train on traffic patterns.
- the traffic patterns may include one or more of packet size, flow duration, protocol behavior, or the like to recognize signatures of specific games.
- the processing device may identify traffic data (e.g., gaming traffic), provide the traffic data (e.g., gaming traffic) to the machine learning model, predict service quality for the traffic data (e.g., gaming traffic) using the machine learning model, and prioritize a data packet (e.g., gaming traffic) based on the service quality for the traffic data. That is, the processing device may classify traffic and dynamically prioritize gaming packets over other non-latency sensitive activities.
- traffic data e.g., gaming traffic
- the processing device may classify traffic and dynamically prioritize gaming packets over other non-latency sensitive activities.
- reinforcement learning may be performed.
- a user may provide feedback and/or label specific traffic as belonging to an unclassified game. This feedback and/or labeling may allow the processing device to refine its detection and prioritization to enhance performance over time.
- Resource balancing algorithms may be used when multiple users and/or devices are running multiple games which may be different games.
- the processing device may apply a resource-balancing algorithm which may facilitate a fair distribution of bandwidth and/or scheduling to maintain a smooth gaming experience for users.
- the scheduler may dynamically adjust various parameters (e.g., channel selection, band assignment, packet aggregation, or the like) based on the proximity of gaming devices and network conditions.
- the processing device may monitor network usage trends and redistribute resources proactively when congestion is present. Bulk traffic (e.g., file downloads) may be deprioritized to preserve bandwidth for gaming. This predictive and context-aware optimization may allow consistent low latency performance even during peak usage periods. [0038] Therefore, the combination of pre-trained models, real-time inference, and adaptive learning may be used to facilitate a robust and scalable way to provide enhanced gaming QoS over Wi-Fi®.
- Bulk traffic e.g., file downloads
- the type of data packets that may be prioritized is not limited to gaming data packets. Any suitable data packet may be prioritized.
- the processing device may prioritize a data packet based on a specific event.
- the processing device may prioritize live traffic (e.g., audio, video, or the like) from a secured place (e.g., a dwelling or place of business) during a specific event to minimize jitter and ensure high-quality streaming.
- a Wi-Fi® connected video doorbell may have video streams that are prioritized during specific events.
- the Wi-Fi® connected video doorbell may handle motion detection and/or disturbance recognition.
- the Wi-Fi® connected video doorbell may rely on an access point to maintain reliable communication with a user’s app.
- the Wi-Fi® connected video doorbell may send a notification to a user’s app.
- the processing device may prioritize this live video traffic. Allocating a higher priority to these latency-sensitive packets allows the system to minimize jitter and enhance QoS for video and audio streams.
- the processing device may classify the Wi-Fi® connected video doorbell traffic in real-time and adjust resource allocation for the live interaction phase. Other traffic, such as background device updates or bulk data transfers, may be deprioritized to maintain bandwidth for the live interaction phase.
- the processing device may enhance QoS when multiple high-priority application are used at the same time.
- the processing device may allocate, at the access point, resources using one or more of orthogonal frequency division multiple access (OFDMA) or multi-user multiple input multiple output (MU-MIMO).
- the processing device may assign, at the access point, one or more of subcarriers, time slots, or spatial streams to minimize interference.
- OFDMA orthogonal frequency division multiple access
- MU-MIMO multi-user multiple input multiple output
- WiFi® QoS may be enhanced.
- the processing device may identify, at the access point, traffic data (e.g., latency-sensitive or bandwidth-heavy applications such as video conferencing (e.g., Microsoft® Teams®) or high-definition streaming (e.g., Netflix®, YouTube®, or the like)), (iii) providing, at the access point, the traffic data to the machine learning model, (iv) predicting, at the access point, service quality for the traffic data using the machine learning model, or (v) prioritizing, at the access point, a data packet based on the service quality for the traffic data.
- traffic data e.g., latency-sensitive or bandwidth-heavy applications such as video conferencing (e.g., Microsoft® Teams®) or high-definition streaming (e.g., Netflix®, YouTube®, or the like)
- video conferencing e.g., Microsoft® Teams®
- high-definition streaming e.g., Netflix®, YouTube®, or the like
- Multi-user capabilities may be used to dynamically allocate resources.
- OFDMA orthogonal frequency division multiple access
- MU-MIMO multi-user multiple-input multiple-output
- Subcarriers, time slots, spatial streams, or the like may be assigned to minimize interference and facilitate consistent performance across prioritized applications.
- the processing device may allow that applications such as a video conference and a streaming session can coexist without quality degradation. If network conditions change, the processing device may adapt by redistributing resources to maintain a balanced experience for the prioritized applications.
- the processing device may enhance QoS when specific connections are present. For example, a virtual private network (VPN) connection may indicate that the user of the VPN is engaged in work-related tasks.
- the processing device may identify traffic using VPN connections using protocol analysis and classification, to prioritize the VPN connection.
- the scheduler may allocate bandwidth and airtime specifically for VPN traffic, to facilitate minimal latency and interruptions. This approach is particularly useful in environments with multiple users, where work-related activities may have higher priority compared to recreational traffic.
- the processing device may prioritize a data packet based on the identity of the user associated with the data packet. For example, when the traffic patterns indicate that User A is using bandwidth and User B is using bandwidth, the processing device may prioritize traffic by User A when User A has a higher priority than User B.
- FIG. 2 illustrates a process flow of an example method 200 of enhancing QoS, in accordance with at least one example described in the present disclosure.
- the method 200 may be arranged in accordance with at least one example described in the present disclosure.
- the method 200 may be performed by processing logic that may include hardware (circuitry, dedicated logic, etc.), software (such as is run on a computer system or a dedicated machine), or a combination of both, which processing logic may be included in the processing device 902 of FIG. 9, the communication system 300 of FIG. 3, or another device, combination of devices, or systems.
- the method 200 may begin at block 205 where the processing logic may generate, at an access point, a machine learning model previously trained using training traffic data. [0051] At block 210, the processing logic may identify, at the access point, traffic data.
- the processing logic may provide, at the access point, the traffic data to the machine learning model.
- the processing logic may predict, at the access point, service quality for the traffic data using the machine learning model.
- the processing logic may prioritize, at the access point, a data packet based on the service quality for the traffic data.
- the processing logic may further allocate, at the access point, resources using one or more of orthogonal frequency division multiple access (OFDMA) or multi-user multiple input multiple output (MU-MIMO).
- the processing logic may further assign, at the access point, one or more of subcarriers, time slots, or spatial streams to minimize interference.
- the processing logic may further prioritize, at the access point, the data packet based on a user associated with the data packet.
- the machine learning model may use a deep neural network including one or more of a convolutional neural network or a recurrent neural network.
- the machine learning model may use analog deep learning.
- prioritizing the data packet may minimize latency and maximize throughput.
- the traffic data may include one or more of packet size, flow duration, or protocol behavior.
- FIG. 3 illustrates a block diagram of an example communication system 300 configured for coordinated scheduling, in accordance with at least one example described in the present disclosure.
- the communication system 300 may include a digital transmitter 302, a radio frequency circuit 304, a device 314, a digital receiver 306, and a processing device 308.
- the digital transmitter 302 and the processing device may be configured to receive a baseband signal via connection 310.
- a transceiver 316 may comprise the digital transmitter 302 and the radio frequency circuit 304.
- the communication system 300 may include a system of devices that may be configured to communicate with one another via a wired or wireline connection.
- a wired connection in the communication system 300 may include one or more Ethernet cables, one or more fiber-optic cables, and/or other similar wired communication mediums.
- the communication system 300 may include a system of devices that may be configured to communicate via one or more wireless connections.
- the communication system 300 may include one or more devices configured to transmit and/or receive radio waves, microwaves, ultrasonic waves, optical waves, electromagnetic induction, and/or similar wireless communications.
- the communication system 300 may include combinations of wireless and/or wired connections.
- the communication system 300 may include one or more devices that may be configured to obtain a baseband signal, perform one or more operations to the baseband signal to generate a modified baseband signal, and transmit the modified baseband signal, such as to one or more loads.
- the communication system 300 may include one or more communication channels that may communicatively couple systems and/or devices included in the communication system 300.
- the transceiver 316 may be communicatively coupled to the device 314.
- the transceiver 316 may be configured to obtain a baseband signal. For example, as described herein, the transceiver 316 may be configured to generate a baseband signal and/or receive a baseband signal from another device. In some examples, the transceiver 316 may be configured to transmit the baseband signal. For example, upon obtaining the baseband signal, the transceiver 316 may be configured to transmit the baseband signal to a separate device, such as the device 314. Alternatively, or additionally, the transceiver 316 may be configured to modify, condition, and/or transform the baseband signal in advance of transmitting the baseband signal.
- the transceiver 316 may include a quadrature up-converter and/or a digital to analog converter (DAC) that may be configured to modify the baseband signal.
- the transceiver 316 may include a direct radio frequency (RF) sampling converter that may be configured to modify the baseband signal.
- DAC digital to analog converter
- RF radio frequency
- the digital transmitter 302 may be configured to obtain a baseband signal via connection 310.
- the digital transmitter 302 may be configured to up-convert the baseband signal.
- the digital transmitter 302 may include a quadrature up-converter to apply to the baseband signal.
- the digital transmitter 302 may include an integrated digital to analog converter (DAC).
- the DAC may convert the baseband signal to an analog signal, or a continuous time signal.
- the DAC architecture may include a direct RF sampling DAC.
- the DAC may be a separate element from the digital transmitter 302.
- the transceiver 316 may include one or more subcomponents that may be used in preparing the baseband signal and/or transmitting the baseband signal.
- the transceiver 316 may include an RF front end (e.g., in a wireless environment) which may include a power amplifier (PA), a digital transmitter (e.g., 302), a digital front end, an Institute of Electrical and Electronics Engineers (IEEE) 1588v2 device, a Long-Term Evolution (LTE) physical layer (L-PHY), an (S-plane) device, a management plane (M-plane) device, an Ethernet media access control (MAC)/personal communications service (PCS), a resource controller/scheduler, and the like.
- a radio e.g., a radio frequency circuit 304 of the transceiver 316 may be synchronized with the resource controller via the S-plane device, which may contribute to high-accuracy timing with respect to a reference clock.
- the transceiver 316 may be configured to obtain the baseband signal for transmission.
- the transceiver 316 may receive the baseband signal from a separate device, such as a signal generator.
- the baseband signal may come from a transducer configured to convert a variable into an electrical signal, such as an audio signal output of a microphone picking up a speaker’s voice.
- the transceiver 316 may be configured to generate a baseband signal for transmission.
- the transceiver 316 may be configured to transmit the baseband signal to another device, such as the device 314.
- the device 314 may be configured to receive a transmission from the transceiver 316.
- the transceiver 316 may be configured to transmit a baseband signal to the device 314.
- the radio frequency circuit 304 may be configured to transmit the digital signal received from the digital transmitter 302.
- the radio frequency circuit 304 may be configured to transmit the digital signal to the device 314 and/or the digital receiver 306.
- the digital receiver 306 may be configured to receive a digital signal from the RF circuit and/or send a digital signal to the processing device 308.
- the processing device 308 may be a standalone device or system, as illustrated. Alternatively, or additionally, the processing device 308 may be a component of another device and/or system. For example, in some examples, the processing device 308 may be included in the transceiver 316. In instances in which the processing device 308 is a standalone device or system, the processing device 308 may be configured to communicate with additional devices and/or systems remote from the processing device 308, such as the transceiver 316 and/or the device 314. For example, the processing device 308 may be configured to send and/or receive transmissions from the transceiver 316 and/or the device 314. In some examples, the processing device 308 may be combined with other elements of the communication system 300.
- Example 1A Deep Neural Network - Inference
- the number of input features may be three neurons and the number of output layers may be two neurons.
- the input features may include a red neuron 410, a green neuron 420, and a blue neuron 430.
- the red neuron 410 may be connected to a Stop Bl neuron via a weight Wl_l and to a Go B2 neuron via a weight W 1 2, with values provided in Table 1.
- the green neuron 420 may be connected to a Stop B 1 neuron 440 via a weight W2_l and a Go B2 neuron 450 via a weight W2_2, with values provided in Table 1.
- the blue neuron 430 may be connected to a Stop Bl neuron 440 via a weight W3_l and a Go B2 neuron 450 via a weight W3_2, with values provided in Table 1. Weights and biases are hardcoded for simplicity. Each neuron may use a sigmoid/tanh and/or rectified linear unit (ReLU) as its activation function. There may not be training but there may be a forward pass.
- the EPOCH may be 5000.
- Values may be provided by multiplying and adding (i.e., a dot product).
- a ‘stop’ value may be provided by (Red*W 1 1) + (Green*W2_l) + (Blue*W3_l) + Bl .
- a ‘go’ value may be provided by (Red*Wl_2) + (Green*W2_2) + (Blue*W3_2) + B2.
- a ‘stop’ value operated on by the rectified linear unit may be provided by max(iStop, 0).
- a ‘go’ value operated on by the rectified linear unit may be provided by max(iGo, 0).
- Regular DNN may be used with more layers and neurons.
- training algorithms may be used (e.g., with gradient descent with backpropagation) to adjust the weights and biases based on a dataset.
- Example IB Deep Neural Network - Traffic Lights for Japan
- the previous example may be used to model traffic lights in Japan.
- the weights for stop and go may be as shown in Table 3.
- Example 2 Convolutional Neural Networks (CNNs) for Image
- CNNs Convolutional Neural Networks
- An input layer 501 i.e. receives the input image
- a hidden layer 510 may include weights Hl 1 512, H12 514, and Hix 516.
- Another hidden layer k 520 may include weights Hkl 522, Hk2 524, and Hky 526.
- An output layer 530 i.e. produces the final output
- an input image 610 may be subject to convolution and ReLU 620 in a convolutional layer.
- the convolutional layer may apply a learned filter to extract features from the image.
- the ReLU may be applied to introduce nonlinearity to allow the network to handle the complex patterns.
- the resulting output may be subject to pooling 630 in a pooling layer.
- the pooling layer may reduce the spatial dimensions of the feature maps, which may summarize the features.
- the resulting output may be subject to convolution and ReLU 640 and pooling 650.
- the resulting output may be flattened in a flatten 660 operation.
- the resulting output may be a fully connected 670 layer which may integrate the learned features and assist in making a final decision or classification.
- the final output may be a class label in classification tasks using an activation function (e.g., softmax 680) appropriate for the operation.
- Analog deep learning may use analog hardware (e.g., programmable resistors) for neural network computations, offering advantages in energy efficiency and processing speed due to its ability to handle continuous signals directly.
- analog hardware e.g., programmable resistors
- an input layer 710 having inputs xl 712, x2 714, and xm 716 may be used with weights wl 722, w2 724, wm 726 to provide a sum 730 with a bias 740.
- the sum 730 may be subject to an activation function 750 to produce an output Y 760.
- the weights may be modeled using memristors or transistors for synaptic weights, operational amplifiers for summing inputs, and diodes for non-linear activation functions which may allow the analog deep learning structure to process signals using electrical currents and voltages for faster and more energy efficient computations when compared to digital approaches.
- an operational amplifier 850 may be used to model a deep neural network.
- a first voltage VI 802 may provide a first current II 812 to a first resistor Rin 822.
- a second voltage 804 may provide a second current 12 814 to a second resistor Rin 824.
- a third voltage 806 may provide a third current 13 816 to a third resistor Rin 826.
- a feedback current If 818 from Rf 842 may be provided to a virtual earth summing point 830 along with currents II 812, 12 814, and 13 816.
- the virtual earth summing point 830 may be input to the negative terminal of the operational amplifier 840.
- the positive terminal of the operational amplifier 840 may be connected to ground 850.
- the output terminal of the operational amplifier 840 may be vout 860. Therefore, the device 800 may include inputs, weights, sums, biases, and outputs which may be used to model a deep neural network.
- the input and output may use analog to digital converters and/or digital to analog converters to interface.
- the weights and/or biases may be controlled using the analog to digital converters and/or digital to analog converters.
- Capacitors may be used to store the weights and to store the biases derived during backpropagation.
- Figure 9 illustrates a diagrammatic representation of a machine in the example form of a computing device 900 within which a set of instructions, for causing the machine to perform any one or more of the methods discussed herein, may be executed.
- the computing device 900 may include a rackmount server, a router computer, a server computer, a mainframe computer, a laptop computer, a tablet computer, a desktop computer, or any computing device with at least one processor, etc., within which a set of instructions, for causing the machine to perform any one or more of the methods discussed herein, may be executed.
- the machine may be connected (e.g., networked) to other machines in a local area network (LAN), an intranet, an extranet, or the Internet.
- LAN local area network
- the machine may operate in the capacity of a server machine in client-server network environment. Further, while only a single machine is illustrated, the term “machine” may also include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methods discussed herein.
- the example computing device 900 includes a processing device (e.g., a processor) 902, a main memory 904 (e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM) such as synchronous DRAM (SDRAM)), a static memory 906 (e.g., flash memory, static random access memory (SRAM)) and a data storage device 916, which communicate with each other via a bus 908.
- a processing device e.g., a processor
- main memory 904 e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM) such as synchronous DRAM (SDRAM)
- DRAM dynamic random access memory
- SDRAM synchronous DRAM
- static memory 906 e.g., flash memory, static random access memory (SRAM)
- SRAM static random access memory
- Processing device 902 represents one or more general -purpose processing devices such as a microprocessor, central processing unit, or the like. More particularly, the processing device 902 may include a complex instruction set computing (CISC) microprocessor, reduced instruction set computing (RISC) microprocessor, very long instruction word (VLIW) microprocessor, or a processor implementing other instruction sets or processors implementing a combination of instruction sets. The processing device 902 may also include one or more special-purpose processing devices such as an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), network processor, or the like. The processing device 902 is configured to execute instructions 926 for performing the operations and steps discussed herein.
- CISC complex instruction set computing
- RISC reduced instruction set computing
- VLIW very long instruction word
- ASIC application specific integrated circuit
- FPGA field programmable gate array
- DSP digital signal processor
- network processor or the like.
- the computing device 900 may further include a network interface device 922 which may communicate with a network 918.
- the computing device 900 also may include a display device 910 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)), an alphanumeric input device 912 (e.g., a keyboard), a cursor control device 914 (e.g., a mouse) and a signal generation device 920 (e.g., a speaker).
- the display device 910, the alphanumeric input device 912, and the cursor control device 914 may be combined into a single component or device (e.g., an LCD touch screen).
- the data storage device 916 may include a computer-readable storage medium 924 on which is stored one or more sets of instructions 926 embodying any one or more of the methods or functions described herein.
- the instructions 926 may also reside, completely or at least partially, within the main memory 904 and/or within the processing device 902 during execution thereof by the computing device 900, the main memory 904 and the processing device 902 also constituting computer-readable media.
- the instructions may further be transmitted or received over a network 918 via the network interface device 922.
- computer-readable storage medium 924 is shown in an example to be a single medium, the term “computer-readable storage medium” may include a single medium or multiple media (e.g., a centralized or distributed database and/or associated caches and servers) that store the one or more sets of instructions.
- the term “computer-readable storage medium” may also include any medium that is capable of storing, encoding or carrying a set of instructions for execution by the machine and that cause the machine to perform any one or more of the methods of the present disclosure.
- the term “computer-readable storage medium” may accordingly be taken to include, but not be limited to, solid-state memories, optical media and magnetic media.
- modules configured to perform operations.
- One or more of the modules may include code and routines configured to enable a computing system to perform one or more of the operations described therewith. Additionally or alternatively, one or more of the modules may be implemented using hardware including any number of processors, microprocessors (e.g., to perform or control performance of one or more operations), DSPs, FPGAs, ASICs or any suitable combination of two or more thereof. Alternatively or additionally, one or more of the modules may be implemented using a combination of hardware and software. In the present disclosure, operations described as being performed by a particular module may include operations that the particular module may direct a corresponding system (e.g., a corresponding computing system) to perform.
- a corresponding system e.g., a corresponding computing system
- the delineating between the different modules is to facilitate explanation of concepts described in the present disclosure and is not limiting. Further, one or more of the modules may be configured to perform more, fewer, and/or different operations than those described such that the modules may be combined or delineated differently than as described.
- Example implementations may also relate to an apparatus for performing the operations herein.
- This apparatus may be specially constructed for the required purposes, or it may include one or more general -purpose computers selectively activated or reconfigured by one or more computer programs.
- Such computer programs may be stored in a computer readable medium, such as a computer-readable storage medium or a computer-readable signal medium.
- Computer- executable instructions may include, for example, instructions and data which cause a general- purpose computer, special-purpose computer, or specialpurpose processing device (e.g., one or more processors) to perform or control performance of a certain function or group of functions.
- first,” “second,” “third,” etc. are not necessarily used herein to connote a specific order or number of elements.
- the terms “first,” “second,” “third,” etc. are used to distinguish between different elements as generic identifiers. Absence a showing that the terms “first,” “second,” “third,” etc., connote a specific order, these terms should not be understood to connote a specific order. Furthermore, absence a showing that the terms first,” “second,” “third,” etc., connote a specific number of elements, these terms should not be understood to connote a specific number of elements.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Technology disclosed herein may include an access point (AP) including a processing device. The processing device may generate, at an access point, a machine learning model previously trained using training traffic data. The processing device may identify, at the access point, traffic data. The processing device may provide, at the access point, the traffic data to the machine learning model. The processing device may predict, at the access point, service quality for the traffic data using the machine learning model. The processing device may prioritize, at the access point, a data packet based on the service quality for the traffic data
Description
NEURAL PROCESSING UNIT AND QUALITY OF SERVICE
RELATED APPLICATION
[0001] This application claims the benefit of U.S. Provisional Application No. 63/604,896, filed December 1, 2023, the disclosure of which is incorporated herein by reference in its entirety.
[0002] The examples discussed in the present disclosure are related to neural processing units and quality of service.
BACKGROUND
[0003] Unless otherwise indicated herein, the materials described herein are not prior art to the claims in the present application and are not admitted to be prior art by inclusion in this section.
[0004] An access point (AP), is a networking hardware device that allows other Wi-Fi devices to connect to a wired network. As a standalone device, the AP may have a wired connection to a router, but, in a wireless router, it can also be an integral component of the router itself. There are many wireless data standards that have been introduced for wireless access point and wireless router technology such as 802.11a, 802.11b, 801.11g, 802.1 In (WiFi 4), 802.1 lac (Wi-Fi 5), 802.1 lax (WiFi 6), and so forth.
[0005] The subject matter claimed in the present disclosure is not limited to examples that solve any disadvantages or that operate only in environments such as those described above. Rather, this background is only provided to illustrate one example technology area where some examples described in the present disclosure may be practiced.
SUMMARY
[0006] A method may include: generating, at an access point, a machine learning model previously trained using training traffic data; identifying, at the access point, traffic data; providing, at the access point, the traffic data to the machine learning model; predicting, at the access point, service quality for the traffic data using the machine learning model; and prioritizing, at the access point, a data packet based on the service quality for the traffic data. [0007] An access point (AP) may include a processing device. The processing device may generate, at an access point, a machine learning model previously trained using training traffic data. The processing device may identify, at the access point, traffic data. The processing device may provide, at the access point, the traffic data to the machine learning model. The processing device may predict, at the access point, service quality for the traffic data using the machine learning model. The processing device may prioritize, at the access point, a data packet based on the service quality for the traffic data.
[0008] A computer-readable storage medium may include computer executable instructions. The computer readable instructions, when executed by one or more processors, may cause an access point (AP) to: generate, at an access point, a machine learning model previously trained using training traffic data; identify, at the access point, traffic data; provide, at the access point, the traffic data to the machine learning model; predict, at the access point, service quality for the traffic data using the machine learning model; and prioritize, at the access point, a data packet based on the service quality for the traffic data. [0009] The objects and advantages of the embodiments will be realized and achieved at least by the elements, features, and combinations particularly pointed out in the claims. [0010] Both the foregoing general description and the following detailed description are given as examples and are explanatory and are not restrictive of the invention, as claimed.
BRIEF DESCRIPTION OF THE DRAWINGS
[0011] Examples will be described and explained with additional specificity and detail through the use of the accompanying drawings in which:
[0012] FIG. 1 illustrates an example system for training a model.
[0013] FIG. 2 illustrates an example process flow for enhancing quality of service.
[0014] FIG. 3 illustrates a block diagram of an example system configured to enhance quality of service.
[0015] FIG. 4 illustrates an example structure of a neural network.
[0016] FIG. 5 illustrates an example structure of a convolutional neural network.
[0017] FIG. 6 illustrates an example process flow of a convolutional neural network.
[0018] FIG. 7 illustrates an example of analog deep learning.
[0019] FIG. 8 illustrates an example of analog deep learning.
[0020] FIG. 9 illustrates an example computing system that may be used for enhancing quality of service, all arranged in accordance with some examples of the present disclosure.
DETAILED DESCRIPTION
[0021] Artificial Intelligence (Al) and Machine Learning (ML) may be integrated in WiFi® routers to enhance network performance and security, automate management, and enhance user experience by adapting to usage patterns. Al and ML may facilitate efficient device connectivity, offer predictive maintenance, and lead to cost savings through optimized resource utilization. The result may be more reliable, personalized, and efficient connectivity.
[0022] There are various other kinds of processing units including central processing units (CPUs), neural processing units (NPUs), graphic processing units (GPUs), tensor
processing units (TPUs), neural network processors (NNP), intelligent processing units (IPUs), vision processing units (VPUs). The CPU may be the core processor directing system operations, while the GPU may accelerate image and graphics rendering. The NPU may specifically boost artificial intelligence tasks by efficiently managing large-scale machine learning computations. While CPUs may provide computations on deep neural networks, CPUs perform at a slower pace compared to GPUs or NPUs. Since an NPU performs Al, it is recommended for Al standards over 1 trillion operations per second (TOPS) to combine a vector digital signal processor (DSP) with an NPU to provide maximum performance with additional programmability.
[0023] The NPU may be used for deep learning. Regular programming is used to write specific instructions for computers to perform tasks, in which logic and algorithms may be defined by programmers. Statistics in programming may involve analyzing data to identify patterns and make predictions to support data-based decisions. Shallow learning may use algorithms to allow computers to learn from data and make informed decisions without complex analysis. Deep learning may employ neural networks to analyze large datasets and excel in tasks like image and speech recognition by learning features directly from the data. The evolution from traditional programming to deep learning signifies a change in computational strategies for solving problems.
[0024] Deep learning algorithms may be used for a wide variety of applications including for artificial intelligence (Al) and/or for machine learning (ML). Deployment of NPUs for Al and ML applications may be broadly applicable. For example, deployment of NPUs may be used to enhance quality of service in WiFi® access points.
[0025] For Wi-Fi service quality, convoluted neural networks (CNNs) may be used for traffic classification and long short-term memories (LSTMs) may be used for predicting quality over time to learn from data to enhance network performance. These methods
facilitate the intelligent classification and prediction of service quality so that data packets for applications like voice over internal protocol (VoIP) and streaming may be prioritized, thereby enhancing user experience. In some instances, minimum latency and maximum throughput may be obtained relative to baseline values.
[0026] Although a Wi-Fi® access point is illustrated for using machine learning and artificial intelligence, a passive optical network may also be used in conjunction with machine learning and artificial intelligence to enhance quality of service (QoS). In addition, Wi-Fi® AP may optimize data flow across Access Categories to provide peak performance and reliability for many applications.
[0027] As illustrated in the process flow 100 in FIG. 1, a machine learning model may be trained by inputting training data 102 and an initial model 104 to a trainer 105 to generate a trained model 106. The trainer 105 may be any combination of hardware and software for training a machine learning model or a neural network. The trainer 105 may receive the type of model that is to be used for training. The trainer 105 may use any appropriate model for training such as a deep learning neural network. The trained model 106 may be used in supervised learning, unsupervised learning, or reinforcement learning. The trained model 106 may be used by the classifier 108 to generate inferences 110. For example, the trained model 106 may be used to generate predictions using data that the trained model has not previously trained on. The training process may be controlled using various parameters such as the maximum model size, the maximum number of passes over the training data, the shuffle type, the regularization type, the learning rate, and the regularization amount.
[0028] The machine learning model may be used in conjunction with an access point
(AP). An AP may include a processing device. The processing device may be a neural processing unit (NPU). The processing device may perform one or more of: (i) generating, at
an access point, a machine learning model previously trained using training traffic data, (ii) identifying, at the access point, traffic data, (iii) providing, at the access point, the traffic data to the machine learning model, (iv) predicting, at the access point, service quality for the traffic data using the machine learning model, or (v) prioritizing, at the access point, a data packet based on the service quality for the traffic data.
[0029] The machine learning model may use different algorithms. For example, the machine learning model may use a deep neural network which may include one or more of a convolutional neural network, a recurrent neural network, or the like. Alternatively or in addition, the machine learning model may use analog deep learning. The traffic data may include various data such as one or more of packet size, flow duration, protocol behavior, or the like.
[0030] Low latency optimization may be performed. That is, data packets may be prioritized to minimize latency relative to a baseline latency and maximize throughput relative to a baseline throughput. By minimizing the latency and maximizing the throughput, a higher quality of service may be facilitated relative to a baseline quality of service.
[0031] For example, the processing device may be used to enhance gaming over Wi-Fi® by identifying and prioritizing gaming traffic using machine learning (e.g., supervised and reinforcement learning). The processing device may adjust resources, balance multiple users, and adapt to different games for consistent low-latency performance relative to a baseline latency. Jitter may also be minimized relative to baseline jitter.
[0032] The processing device may perform one or more of: (i) detect an application type
(e.g., a gaming application), (ii) allocate traffic resources based on the application type (e.g., a gaming application), and (iii) adjust the traffic resources based on different games by using supervised and reinforcement learning techniques.
[0033] The processing device may generate, at an access point, a machine learning model previously trained using training traffic data. This may be implemented by using offline supervised learning to analyze and train on traffic patterns. The traffic patterns may include one or more of packet size, flow duration, protocol behavior, or the like to recognize signatures of specific games.
[0034] The processing device may identify traffic data (e.g., gaming traffic), provide the traffic data (e.g., gaming traffic) to the machine learning model, predict service quality for the traffic data (e.g., gaming traffic) using the machine learning model, and prioritize a data packet (e.g., gaming traffic) based on the service quality for the traffic data. That is, the processing device may classify traffic and dynamically prioritize gaming packets over other non-latency sensitive activities.
[0035] For unclassified games, reinforcement learning may be performed. A user may provide feedback and/or label specific traffic as belonging to an unclassified game. This feedback and/or labeling may allow the processing device to refine its detection and prioritization to enhance performance over time.
[0036] Resource balancing algorithms may be used when multiple users and/or devices are running multiple games which may be different games. The processing device may apply a resource-balancing algorithm which may facilitate a fair distribution of bandwidth and/or scheduling to maintain a smooth gaming experience for users. The scheduler may dynamically adjust various parameters (e.g., channel selection, band assignment, packet aggregation, or the like) based on the proximity of gaming devices and network conditions.
[0037] The processing device may monitor network usage trends and redistribute resources proactively when congestion is present. Bulk traffic (e.g., file downloads) may be deprioritized to preserve bandwidth for gaming. This predictive and context-aware optimization may allow consistent low latency performance even during peak usage periods.
[0038] Therefore, the combination of pre-trained models, real-time inference, and adaptive learning may be used to facilitate a robust and scalable way to provide enhanced gaming QoS over Wi-Fi®.
[0039] The type of data packets that may be prioritized is not limited to gaming data packets. Any suitable data packet may be prioritized. For example, the processing device may prioritize a data packet based on a specific event. For a surveillance application, the processing device may prioritize live traffic (e.g., audio, video, or the like) from a secured place (e.g., a dwelling or place of business) during a specific event to minimize jitter and ensure high-quality streaming.
[0040] For example a Wi-Fi® connected video doorbell may have video streams that are prioritized during specific events. The Wi-Fi® connected video doorbell may handle motion detection and/or disturbance recognition. The Wi-Fi® connected video doorbell may rely on an access point to maintain reliable communication with a user’s app.
[0041] For example, when the Wi-Fi® connected video doorbell detects a person and/or disturbance, the Wi-Fi® connected video doorbell may send a notification to a user’s app. When the user opts to view the live video feed and interact (e.g., using two-way audio and/or video), the processing device may prioritize this live video traffic. Allocating a higher priority to these latency-sensitive packets allows the system to minimize jitter and enhance QoS for video and audio streams.
[0042] To enhance the QoS for video and audio streams, the processing device, at the access point, may classify the Wi-Fi® connected video doorbell traffic in real-time and adjust resource allocation for the live interaction phase. Other traffic, such as background device updates or bulk data transfers, may be deprioritized to maintain bandwidth for the live interaction phase.
[0043] In addition or alternatively, the processing device may enhance QoS when multiple high-priority application are used at the same time. The processing device may allocate, at the access point, resources using one or more of orthogonal frequency division multiple access (OFDMA) or multi-user multiple input multiple output (MU-MIMO). The processing device may assign, at the access point, one or more of subcarriers, time slots, or spatial streams to minimize interference.
[0044] For example, when handling multiple high-priority applications, WiFi® QoS may be enhanced. The processing device may identify, at the access point, traffic data (e.g., latency-sensitive or bandwidth-heavy applications such as video conferencing (e.g., Microsoft® Teams®) or high-definition streaming (e.g., Netflix®, YouTube®, or the like)), (iii) providing, at the access point, the traffic data to the machine learning model, (iv) predicting, at the access point, service quality for the traffic data using the machine learning model, or (v) prioritizing, at the access point, a data packet based on the service quality for the traffic data.
[0045] Multi-user capabilities may be used to dynamically allocate resources. For example, orthogonal frequency division multiple access (OFDMA) and/or multi-user multiple-input multiple-output (MU-MIMO) may be used to dynamically allocate resources. Subcarriers, time slots, spatial streams, or the like may be assigned to minimize interference and facilitate consistent performance across prioritized applications.
[0046] For scenarios with multiple high-priority users, the processing device may allow that applications such as a video conference and a streaming session can coexist without quality degradation. If network conditions change, the processing device may adapt by redistributing resources to maintain a balanced experience for the prioritized applications. [0047] In addition or alternatively, the processing device may enhance QoS when specific connections are present. For example, a virtual private network (VPN) connection may
indicate that the user of the VPN is engaged in work-related tasks. The processing device may identify traffic using VPN connections using protocol analysis and classification, to prioritize the VPN connection. The scheduler may allocate bandwidth and airtime specifically for VPN traffic, to facilitate minimal latency and interruptions. This approach is particularly useful in environments with multiple users, where work-related activities may have higher priority compared to recreational traffic.
[0048] In addition or alternatively, the processing device may prioritize a data packet based on the identity of the user associated with the data packet. For example, when the traffic patterns indicate that User A is using bandwidth and User B is using bandwidth, the processing device may prioritize traffic by User A when User A has a higher priority than User B.
[0049] FIG. 2 illustrates a process flow of an example method 200 of enhancing QoS, in accordance with at least one example described in the present disclosure. The method 200 may be arranged in accordance with at least one example described in the present disclosure. The method 200 may be performed by processing logic that may include hardware (circuitry, dedicated logic, etc.), software (such as is run on a computer system or a dedicated machine), or a combination of both, which processing logic may be included in the processing device 902 of FIG. 9, the communication system 300 of FIG. 3, or another device, combination of devices, or systems.
[0050] The method 200 may begin at block 205 where the processing logic may generate, at an access point, a machine learning model previously trained using training traffic data. [0051] At block 210, the processing logic may identify, at the access point, traffic data.
[0052] At block 215, the processing logic may provide, at the access point, the traffic data to the machine learning model.
[0053] At block 220, the processing logic may predict, at the access point, service quality for the traffic data using the machine learning model.
[0054] At block 225, the processing logic may prioritize, at the access point, a data packet based on the service quality for the traffic data.
[0055] The processing logic may further allocate, at the access point, resources using one or more of orthogonal frequency division multiple access (OFDMA) or multi-user multiple input multiple output (MU-MIMO). The processing logic may further assign, at the access point, one or more of subcarriers, time slots, or spatial streams to minimize interference. The processing logic may further prioritize, at the access point, the data packet based on a user associated with the data packet.
[0056] The machine learning model may use a deep neural network including one or more of a convolutional neural network or a recurrent neural network. The machine learning model may use analog deep learning. In one example, prioritizing the data packet may minimize latency and maximize throughput. In another example, the traffic data may include one or more of packet size, flow duration, or protocol behavior.
[0057] Modifications, additions, or omissions may be made to the method 200 without departing from the scope of the present disclosure. For example, in some examples, the method 200 may include any number of other components that may not be explicitly illustrated or described.
[0058] For simplicity of explanation, methods and/or process flows described herein are depicted and described as a series of acts. However, acts in accordance with this disclosure may occur in various orders and/or concurrently, and with other acts not presented and described herein. Further, not all illustrated acts may be used to implement the methods in accordance with the disclosed subject matter. In addition, those skilled in the art will understand and appreciate that the methods may alternatively be represented as a series of
interrelated states via a state diagram or events. Additionally, the methods disclosed in this specification are capable of being stored on an article of manufacture, such as a non- transitory computer-readable medium, to facilitate transporting and transferring such methods to computing devices. The term article of manufacture, as used herein, is intended to encompass a computer program accessible from any computer-readable device or storage media. Although illustrated as discrete blocks, various blocks may be divided into additional blocks, combined into fewer blocks, or eliminated, depending on the desired implementation. [0059] FIG. 3 illustrates a block diagram of an example communication system 300 configured for coordinated scheduling, in accordance with at least one example described in the present disclosure. The communication system 300 may include a digital transmitter 302, a radio frequency circuit 304, a device 314, a digital receiver 306, and a processing device 308. The digital transmitter 302 and the processing device may be configured to receive a baseband signal via connection 310. A transceiver 316 may comprise the digital transmitter 302 and the radio frequency circuit 304.
[0060] In some examples, the communication system 300 may include a system of devices that may be configured to communicate with one another via a wired or wireline connection. For example, a wired connection in the communication system 300 may include one or more Ethernet cables, one or more fiber-optic cables, and/or other similar wired communication mediums. Alternatively, or additionally, the communication system 300 may include a system of devices that may be configured to communicate via one or more wireless connections. For example, the communication system 300 may include one or more devices configured to transmit and/or receive radio waves, microwaves, ultrasonic waves, optical waves, electromagnetic induction, and/or similar wireless communications. Alternatively, or additionally, the communication system 300 may include combinations of wireless and/or wired connections. In these and other examples, the communication system 300 may include
one or more devices that may be configured to obtain a baseband signal, perform one or more operations to the baseband signal to generate a modified baseband signal, and transmit the modified baseband signal, such as to one or more loads.
[0061] In some examples, the communication system 300 may include one or more communication channels that may communicatively couple systems and/or devices included in the communication system 300. For example, the transceiver 316 may be communicatively coupled to the device 314.
[0062] In some examples, the transceiver 316 may be configured to obtain a baseband signal. For example, as described herein, the transceiver 316 may be configured to generate a baseband signal and/or receive a baseband signal from another device. In some examples, the transceiver 316 may be configured to transmit the baseband signal. For example, upon obtaining the baseband signal, the transceiver 316 may be configured to transmit the baseband signal to a separate device, such as the device 314. Alternatively, or additionally, the transceiver 316 may be configured to modify, condition, and/or transform the baseband signal in advance of transmitting the baseband signal. For example, the transceiver 316 may include a quadrature up-converter and/or a digital to analog converter (DAC) that may be configured to modify the baseband signal. Alternatively, or additionally, the transceiver 316 may include a direct radio frequency (RF) sampling converter that may be configured to modify the baseband signal.
[0063] In some examples, the digital transmitter 302 may be configured to obtain a baseband signal via connection 310. In some examples, the digital transmitter 302 may be configured to up-convert the baseband signal. For example, the digital transmitter 302 may include a quadrature up-converter to apply to the baseband signal. In some examples, the digital transmitter 302 may include an integrated digital to analog converter (DAC). The DAC may convert the baseband signal to an analog signal, or a continuous time signal. In
some examples, the DAC architecture may include a direct RF sampling DAC. In some examples, the DAC may be a separate element from the digital transmitter 302.
[0064] In some examples, the transceiver 316 may include one or more subcomponents that may be used in preparing the baseband signal and/or transmitting the baseband signal. For example, the transceiver 316 may include an RF front end (e.g., in a wireless environment) which may include a power amplifier (PA), a digital transmitter (e.g., 302), a digital front end, an Institute of Electrical and Electronics Engineers (IEEE) 1588v2 device, a Long-Term Evolution (LTE) physical layer (L-PHY), an (S-plane) device, a management plane (M-plane) device, an Ethernet media access control (MAC)/personal communications service (PCS), a resource controller/scheduler, and the like. In some examples, a radio (e.g., a radio frequency circuit 304) of the transceiver 316 may be synchronized with the resource controller via the S-plane device, which may contribute to high-accuracy timing with respect to a reference clock.
[0065] In some examples, the transceiver 316 may be configured to obtain the baseband signal for transmission. For example, the transceiver 316 may receive the baseband signal from a separate device, such as a signal generator. For example, the baseband signal may come from a transducer configured to convert a variable into an electrical signal, such as an audio signal output of a microphone picking up a speaker’s voice. Alternatively, or additionally, the transceiver 316 may be configured to generate a baseband signal for transmission. In these and other examples, the transceiver 316 may be configured to transmit the baseband signal to another device, such as the device 314.
[0066] In some examples, the device 314 may be configured to receive a transmission from the transceiver 316. For example, the transceiver 316 may be configured to transmit a baseband signal to the device 314.
[0067] In some examples, the radio frequency circuit 304 may be configured to transmit the digital signal received from the digital transmitter 302. In some examples, the radio frequency circuit 304 may be configured to transmit the digital signal to the device 314 and/or the digital receiver 306. In some examples, the digital receiver 306 may be configured to receive a digital signal from the RF circuit and/or send a digital signal to the processing device 308.
[0068] In some examples, the processing device 308 may be a standalone device or system, as illustrated. Alternatively, or additionally, the processing device 308 may be a component of another device and/or system. For example, in some examples, the processing device 308 may be included in the transceiver 316. In instances in which the processing device 308 is a standalone device or system, the processing device 308 may be configured to communicate with additional devices and/or systems remote from the processing device 308, such as the transceiver 316 and/or the device 314. For example, the processing device 308 may be configured to send and/or receive transmissions from the transceiver 316 and/or the device 314. In some examples, the processing device 308 may be combined with other elements of the communication system 300.
Examples
[0069] The following provide examples of machine learning algorithms according to embodiments of the present disclosure.
Example 1A: Deep Neural Network - Inference
[0070] As illustrated in the neural network 400 in FIG. 4, the number of input features may be three neurons and the number of output layers may be two neurons. The input features may include a red neuron 410, a green neuron 420, and a blue neuron 430. The red neuron 410 may be connected to a Stop Bl neuron via a weight Wl_l and to a Go B2 neuron via a weight W 1 2, with values provided in Table 1. The green neuron 420 may be connected to a Stop B 1
neuron 440 via a weight W2_l and a Go B2 neuron 450 via a weight W2_2, with values provided in Table 1. The blue neuron 430 may be connected to a Stop Bl neuron 440 via a weight W3_l and a Go B2 neuron 450 via a weight W3_2, with values provided in Table 1. Weights and biases are hardcoded for simplicity. Each neuron may use a sigmoid/tanh and/or rectified linear unit (ReLU) as its activation function. There may not be training but there may be a forward pass. The EPOCH may be 5000.
[0071] Values may be provided by multiplying and adding (i.e., a dot product). A ‘stop’ value may be provided by (Red*W 1 1) + (Green*W2_l) + (Blue*W3_l) + Bl . A ‘go’ value may be provided by (Red*Wl_2) + (Green*W2_2) + (Blue*W3_2) + B2. A ‘stop’ value operated on by the rectified linear unit may be provided by max(iStop, 0). A ‘go’ value operated on by the rectified linear unit may be provided by max(iGo, 0).
[0072] The results of the deep neural network (DNN) are provided in Table 2.
[0073] In some examples, Regular DNN may be used with more layers and neurons. Alternatively or in addition, training algorithms may be used (e.g., with gradient descent with backpropagation) to adjust the weights and biases based on a dataset.
Example IB: Deep Neural Network - Traffic Lights for Japan
[0074] The previous example may be used to model traffic lights in Japan. The weights for stop and go may be as shown in Table 3.
[0075] The results of the deep neural network are shown in Table 4.
Example 2: Convolutional Neural Networks (CNNs) for Image
[0076] As illustrated in the convolutional neural network 500 in FIG. 5 and the corresponding process flow 600 in FIG. 6, an image 610 may be processed using a convolutional neural network 500. An input layer 501 (i.e. receives the input image) may include inputs II 502, 12 504, 13 506, and In 508. A hidden layer 510 may include weights Hl 1 512, H12 514, and Hix 516. Another hidden layer k 520 may include weights Hkl 522, Hk2 524, and Hky 526. An output layer 530 (i.e. produces the final output) may include an output 01 532 and an output Oz 534.
[0077] As illustrated in the process flow 600 in FIG. 6, an input image 610 may be subject to convolution and ReLU 620 in a convolutional layer. The convolutional layer may apply a learned filter to extract features from the image. The ReLU may be applied to introduce nonlinearity to allow the network to handle the complex patterns. The resulting output may be subject to pooling 630 in a pooling layer. The pooling layer may reduce the spatial dimensions of the feature maps, which may summarize the features. The resulting output may be subject to convolution and ReLU 640 and pooling 650. The resulting output may be flattened in a flatten 660 operation. The resulting output may be a fully connected 670 layer which may integrate the learned features and assist in making a final decision or classification. The final output may be a class label in classification tasks using an activation function (e.g., softmax 680) appropriate for the operation.
Example 3: Analog Deep Learning
[0078] Analog deep learning may use analog hardware (e.g., programmable resistors) for neural network computations, offering advantages in energy efficiency and processing speed due to its ability to handle continuous signals directly.
[0079] As illustrated in the diagram 700 in FIG. 7, an input layer 710 having inputs xl 712, x2 714, and xm 716 may be used with weights wl 722, w2 724, wm 726 to provide a sum 730 with a bias 740. The sum 730 may be subject to an activation function 750 to
produce an output Y 760. The weights may be modeled using memristors or transistors for synaptic weights, operational amplifiers for summing inputs, and diodes for non-linear activation functions which may allow the analog deep learning structure to process signals using electrical currents and voltages for faster and more energy efficient computations when compared to digital approaches.
[0080] As illustrated in the device 800 in FIG. 8, an operational amplifier 850 may be used to model a deep neural network. A first voltage VI 802 may provide a first current II 812 to a first resistor Rin 822. A second voltage 804 may provide a second current 12 814 to a second resistor Rin 824. A third voltage 806 may provide a third current 13 816 to a third resistor Rin 826. A feedback current If 818 from Rf 842 may be provided to a virtual earth summing point 830 along with currents II 812, 12 814, and 13 816. The virtual earth summing point 830 may be input to the negative terminal of the operational amplifier 840. The positive terminal of the operational amplifier 840 may be connected to ground 850. The output terminal of the operational amplifier 840 may be vout 860. Therefore, the device 800 may include inputs, weights, sums, biases, and outputs which may be used to model a deep neural network.
[0081] Therefore, deep neural networks may be used with little computational delay. The input and output may use analog to digital converters and/or digital to analog converters to interface. The weights and/or biases may be controlled using the analog to digital converters and/or digital to analog converters. Capacitors may be used to store the weights and to store the biases derived during backpropagation.
[0082] Figure 9 illustrates a diagrammatic representation of a machine in the example form of a computing device 900 within which a set of instructions, for causing the machine to perform any one or more of the methods discussed herein, may be executed. The computing device 900 may include a rackmount server, a router computer, a server computer, a mainframe
computer, a laptop computer, a tablet computer, a desktop computer, or any computing device with at least one processor, etc., within which a set of instructions, for causing the machine to perform any one or more of the methods discussed herein, may be executed. In alternative examples, the machine may be connected (e.g., networked) to other machines in a local area network (LAN), an intranet, an extranet, or the Internet. The machine may operate in the capacity of a server machine in client-server network environment. Further, while only a single machine is illustrated, the term “machine” may also include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methods discussed herein.
[0083] The example computing device 900 includes a processing device (e.g., a processor) 902, a main memory 904 (e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM) such as synchronous DRAM (SDRAM)), a static memory 906 (e.g., flash memory, static random access memory (SRAM)) and a data storage device 916, which communicate with each other via a bus 908.
[0084] Processing device 902 represents one or more general -purpose processing devices such as a microprocessor, central processing unit, or the like. More particularly, the processing device 902 may include a complex instruction set computing (CISC) microprocessor, reduced instruction set computing (RISC) microprocessor, very long instruction word (VLIW) microprocessor, or a processor implementing other instruction sets or processors implementing a combination of instruction sets. The processing device 902 may also include one or more special-purpose processing devices such as an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), network processor, or the like. The processing device 902 is configured to execute instructions 926 for performing the operations and steps discussed herein.
[0085] The computing device 900 may further include a network interface device 922 which may communicate with a network 918. The computing device 900 also may include a display device 910 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)), an alphanumeric input device 912 (e.g., a keyboard), a cursor control device 914 (e.g., a mouse) and a signal generation device 920 (e.g., a speaker). In at least one example, the display device 910, the alphanumeric input device 912, and the cursor control device 914 may be combined into a single component or device (e.g., an LCD touch screen).
[0086] The data storage device 916 may include a computer-readable storage medium 924 on which is stored one or more sets of instructions 926 embodying any one or more of the methods or functions described herein. The instructions 926 may also reside, completely or at least partially, within the main memory 904 and/or within the processing device 902 during execution thereof by the computing device 900, the main memory 904 and the processing device 902 also constituting computer-readable media. The instructions may further be transmitted or received over a network 918 via the network interface device 922.
[0087] While the computer-readable storage medium 924 is shown in an example to be a single medium, the term “computer-readable storage medium” may include a single medium or multiple media (e.g., a centralized or distributed database and/or associated caches and servers) that store the one or more sets of instructions. The term “computer-readable storage medium” may also include any medium that is capable of storing, encoding or carrying a set of instructions for execution by the machine and that cause the machine to perform any one or more of the methods of the present disclosure. The term “computer-readable storage medium” may accordingly be taken to include, but not be limited to, solid-state memories, optical media and magnetic media.
[0088] Some portions of the detailed description refer to different modules configured to perform operations. One or more of the modules may include code and routines configured to
enable a computing system to perform one or more of the operations described therewith. Additionally or alternatively, one or more of the modules may be implemented using hardware including any number of processors, microprocessors (e.g., to perform or control performance of one or more operations), DSPs, FPGAs, ASICs or any suitable combination of two or more thereof. Alternatively or additionally, one or more of the modules may be implemented using a combination of hardware and software. In the present disclosure, operations described as being performed by a particular module may include operations that the particular module may direct a corresponding system (e.g., a corresponding computing system) to perform. Further, the delineating between the different modules is to facilitate explanation of concepts described in the present disclosure and is not limiting. Further, one or more of the modules may be configured to perform more, fewer, and/or different operations than those described such that the modules may be combined or delineated differently than as described.
[0089] Some portions of the detailed description are presented in terms of algorithms and symbolic representations of operations within a computer. These algorithmic descriptions and symbolic representations are the means used by those skilled in the data processing arts to convey the essence of their innovations to others skilled in the art. An algorithm is a series of configured operations leading to a desired end state or result. In example implementations, the operations carried out require physical manipulations of tangible quantities for achieving a tangible result.
[0090] Unless specifically stated otherwise, as apparent from the discussion, it is appreciated that throughout the description, discussions utilizing terms such as detecting, determining, analyzing, identifying, scanning or the like, can include the actions and processes of a computer system or other information processing device that manipulates and transforms data represented as physical (electronic) quantities within the
computer system’s registers and memories into other data similarly represented as physical quantities within the computer system’s memories or registers or other information storage, transmission or display devices.
[0091] Example implementations may also relate to an apparatus for performing the operations herein. This apparatus may be specially constructed for the required purposes, or it may include one or more general -purpose computers selectively activated or reconfigured by one or more computer programs. Such computer programs may be stored in a computer readable medium, such as a computer-readable storage medium or a computer-readable signal medium. Computer- executable instructions may include, for example, instructions and data which cause a general- purpose computer, special-purpose computer, or specialpurpose processing device (e.g., one or more processors) to perform or control performance of a certain function or group of functions.
[0092] Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter configured in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.
[0093] Unless specific arrangements described herein are mutually exclusive with one another, the various implementations described herein can be combined in whole or in part to enhance system functionality and/or to produce complementary functions. Likewise, aspects of the implementations may be implemented in standalone arrangements. Thus, the above description has been given by way of example only and modification in detail may be made within the scope of the present disclosure.
[0094] With respect to the use of substantially any plural or singular terms herein, those having skill in the art can translate from the plural to the singular or from the singular to the
plural as is appropriate to the context or application. The various singular/plural permutations may be expressly set forth herein for sake of clarity. A reference to an element in the singular is not intended to mean “one and only one” unless specifically stated, but rather “one or more.” Moreover, nothing disclosed herein is intended to be dedicated to the public regardless of whether such disclosure is explicitly recited in the above description.
[0095] In general, terms used herein, and especially in the appended claims (e.g., bodies of the appended claims) are generally intended as “open” terms (e.g., the term “including” should be interpreted as “including but not limited to,” the term “having” should be interpreted as “having at least,” the term “includes” should be interpreted as “includes but is not limited to,” etc.). Furthermore, in those instances where a convention analogous to “at least one of A, B, and C, etc.” is used, in general, such a construction is intended in the sense one having skill in the art would understand the convention (e.g., “a system having at least one of A, B, and C” would include but not be limited to systems that include A alone, B alone, C alone, A and B together, A and C together, B and C together, or A, B, and C together, etc.). Also, a phrase presenting two or more alternative terms, whether in the description, claims, or drawings, should be understood to include one of the terms, either of the terms, or both terms. For example, the phrase “A or B” will be understood to include the possibilities of “A” or “B” or “A and B.”
[0096] Additionally, the use of the terms “first,” “second,” “third,” etc., are not necessarily used herein to connote a specific order or number of elements. Generally, the terms “first,” “second,” “third,” etc., are used to distinguish between different elements as generic identifiers. Absence a showing that the terms “first,” “second,” “third,” etc., connote a specific order, these terms should not be understood to connote a specific order. Furthermore, absence a showing that the terms first,” “second,” “third,” etc., connote a
specific number of elements, these terms should not be understood to connote a specific number of elements.
[0097] The present disclosure may be embodied in other specific forms without departing from its spirit or essential characteristics. The described implementations are to be considered in all respects only as illustrative and not restrictive. The scope of the disclosure is, therefore, indicated by the appended claims rather than by the foregoing description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope.
Claims
1. A method, comprising: generating, at an access point, a machine learning model previously trained using training traffic data; identifying, at the access point, traffic data; providing, at the access point, the traffic data to the machine learning model; predicting, at the access point, service quality for the traffic data using the machine learning model; and prioritizing, at the access point, a data packet based on the service quality for the traffic data.
2. The method of claim 1, wherein the machine learning model uses a deep neural network including one or more of a convolutional neural network or a recurrent neural network.
3. The method of claim 1, wherein the machine learning model uses analog deep learning.
4. The method of claim 1, wherein prioritizing the data packet minimizes latency and maximizes throughput.
5. The method of claim 1, wherein the traffic data includes one or more of packet size, flow duration, or protocol behavior.
6. The method of claim 1, further comprising: allocating, at the access point, resources using one or more of orthogonal frequency division multiple access (OFDMA) or multi-user multiple input multiple output (MU-MIMO).
7. The method of claim 6, further comprising: assigning, at the access point, one or more of subcarriers, time slots, or spatial streams to minimize interference.
8. The method of claim 1, further comprising: prioritizing, at the access point, the data packet based on a user associated with the data packet.
9. An access point (AP), comprising: a processing device operable to: generate, at an access point, a machine learning model previously trained using training traffic data; identify, at the access point, traffic data; provide, at the access point, the traffic data to the machine learning model; predict, at the access point, service quality for the traffic data using the machine learning model; and prioritize, at the access point, a data packet based on the service quality for the traffic data.
10. The AP of claim 9, wherein the machine learning model uses a deep neural network including one or more of a convolutional neural network or a recurrent neural network.
11. The AP of claim 9, wherein the machine learning model uses analog deep learning.
12. The AP of claim 9, wherein prioritizing the data packet minimizes latency and maximizes throughput.
13. The AP of claim 9, wherein the traffic data includes one or more of packet size, flow duration, or protocol behavior.
14. The AP of claim 9, wherein the processing device is further operable to: allocate, at the access point, resources using one or more of orthogonal frequency division multiple access (OFDMA) or multi-user multiple input multiple output (MU-MIMO).
15. The AP of claim 14, wherein the processing device is further operable to: assign, at the access point, one or more of subcarriers, time slots, or spatial streams to minimize interference.
16. The AP of claim 9, wherein the processing device is further operable to: prioritize, at the access point, the data packet based on a user associated with the data packet.
17. A computer-readable storage medium including computer executable instructions that, when executed by one or more processors, cause an access point (AP) to:
generate, at an access point, a machine learning model previously trained using training traffic data; identify, at the access point, traffic data; provide, at the access point, the traffic data to the machine learning model; predict, at the access point, service quality for the traffic data using the machine learning model; and prioritize, at the access point, a data packet based on the service quality for the traffic data.
18. The computer-readable storage medium of claim 17, wherein the instructions, when executed by the one or more processors, further cause the AP to: allocate, at the access point, resources using one or more of orthogonal frequency division multiple access (OFDMA) or multi-user multiple input multiple output (MU-MIMO).
19. The computer-readable storage medium of claim 17, wherein the instructions, when executed by the one or more processors, further cause the AP to: assign, at the access point, one or more of subcarriers, time slots, or spatial streams to minimize interference.
0. The computer-readable storage medium of claim 17, wherein the instructions, when executed by the one or more processors, further cause the AP to: prioritize, at the access point, the data packet based on a user associated with the data packet.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US202363604896P | 2023-12-01 | 2023-12-01 | |
| US63/604,896 | 2023-12-01 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025117988A1 true WO2025117988A1 (en) | 2025-06-05 |
Family
ID=95898260
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2024/058163 Pending WO2025117989A1 (en) | 2023-12-01 | 2024-12-02 | Neural processing unit and wi-fi scheduling |
| PCT/US2024/058162 Pending WO2025117988A1 (en) | 2023-12-01 | 2024-12-02 | Neural processing unit and quality of service |
Family Applications Before (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2024/058163 Pending WO2025117989A1 (en) | 2023-12-01 | 2024-12-02 | Neural processing unit and wi-fi scheduling |
Country Status (1)
| Country | Link |
|---|---|
| WO (2) | WO2025117989A1 (en) |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20220150760A1 (en) * | 2020-11-09 | 2022-05-12 | Celona, Inc. | Method and Apparatus for Load Control of an Enterprise Network on a Campus Based Upon Observations of Busy Times and Service Type |
| US20220248457A1 (en) * | 2015-01-09 | 2022-08-04 | Interdigital Patent Holdings, Inc. | Methods, apparatuses and systems for supporting multi-user transmissions in a wireless local area network (wlan) system |
| WO2023128792A1 (en) * | 2021-12-30 | 2023-07-06 | PolyN Technology Limited | Transformations, optimizations, and interfaces for analog hardware realization of neural networks |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10573144B2 (en) * | 2016-10-10 | 2020-02-25 | Netgear, Inc. | Changing topology in a wireless network |
| US11080619B2 (en) * | 2018-01-08 | 2021-08-03 | Cisco Technology, Inc. | Predicting wireless access point radio failures using machine learning |
| US20200413255A1 (en) * | 2019-06-27 | 2020-12-31 | Qualcomm Incorporated | User identification in radio frequency environments |
| US11917527B2 (en) * | 2020-05-05 | 2024-02-27 | Intel Corporation | Resource allocation and activation/deactivation configuration of open radio access network (O-RAN) network slice subnets |
| WO2022060264A1 (en) * | 2020-09-18 | 2022-03-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and systems for updating machine learning models |
| US11451983B2 (en) * | 2020-11-10 | 2022-09-20 | At&T Intellectual Property I, L.P. | Dynamic capacity management of a wireless network |
-
2024
- 2024-12-02 WO PCT/US2024/058163 patent/WO2025117989A1/en active Pending
- 2024-12-02 WO PCT/US2024/058162 patent/WO2025117988A1/en active Pending
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20220248457A1 (en) * | 2015-01-09 | 2022-08-04 | Interdigital Patent Holdings, Inc. | Methods, apparatuses and systems for supporting multi-user transmissions in a wireless local area network (wlan) system |
| US20220150760A1 (en) * | 2020-11-09 | 2022-05-12 | Celona, Inc. | Method and Apparatus for Load Control of an Enterprise Network on a Campus Based Upon Observations of Busy Times and Service Type |
| WO2023128792A1 (en) * | 2021-12-30 | 2023-07-06 | PolyN Technology Limited | Transformations, optimizations, and interfaces for analog hardware realization of neural networks |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2025117989A1 (en) | 2025-06-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Chen et al. | DNNOff: Offloading DNN-based intelligent IoT applications in mobile edge computing | |
| Cao et al. | Intelligent offloading in multi-access edge computing: A state-of-the-art review and framework | |
| JP7383803B2 (en) | Federated learning using heterogeneous model types and architectures | |
| Liu et al. | Hastening stream offloading of inference via multi-exit dnns in mobile edge computing | |
| Hossain et al. | A deep-tree-model-based radio resource distribution for 5G networks | |
| Tan et al. | Deep learning on mobile devices through neural processing units and edge computing | |
| Ren et al. | Fine-grained elastic partitioning for distributed DNN towards mobile web AR services in the 5G era | |
| Liu et al. | Enhancing federated learning with intelligent model migration in heterogeneous edge computing | |
| Xu et al. | ReCARL: Resource allocation in cloud RANs with deep reinforcement learning | |
| Yu et al. | Collaborative computation offloading for multi-access edge computing | |
| Yu et al. | Multi-agent proximal policy optimization-based dynamic client selection for federated AI in 6G-oriented internet of vehicles | |
| Yu et al. | Energy-aware dynamic computation offloading for video analytics in multi-UAV systems | |
| Zhang et al. | On-device intelligence for 5G RAN: Knowledge transfer and federated learning enabled UE-centric traffic steering | |
| Koek et al. | Content-centric data and computation offloading in AI-supported fog networks for next generation IoT | |
| Wang et al. | Joint device scheduling and resource allocation for iscc-based multi-view-multi-task inference | |
| Zeng et al. | Generative AI-Aided Multimodal Parallel Offloading for AIGC Metaverse Service in IoT Networks | |
| CN117693009A (en) | A scheduling method and system for communication drone groups | |
| WO2025117988A1 (en) | Neural processing unit and quality of service | |
| Bellavista et al. | A support infrastructure for machine learning at the edge in smart city surveillance | |
| Rodoshi et al. | A survey on applications of deep learning in cloud radio access network | |
| Li et al. | DNN inference acceleration with partitioning and early exiting in edge computing | |
| US20240232645A9 (en) | Zone gradient diffusion (zgd) for zone-based federated learning | |
| Zhou et al. | Resource allocation for time-triggered federated learning over wireless networks | |
| CN120218123A (en) | Distributed training method, device, system, chip module and storage medium | |
| CN117499950A (en) | A rapid optimization method for collaborative business multi-dimensional resources based on a generalized business model |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 24898924 Country of ref document: EP Kind code of ref document: A1 |