Ad-hoc machine learning training using constraints, predicted traffic load, and private end-to-end encryption

DE112023004236T5Pending Publication Date: 2025-08-21TEKTRONIX INC
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
DE112023004236
Authority / Receiving Office
DE · DE
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-10-06
Filing Date
2023-10-11
Publication Date
2025-08-21

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A machine learning network includes a plurality of test and measurement devices, one or more of the test and measurement devices including one or more communication interfaces configured to receive and process physical layer signals, memory, and one or more processors configured to execute code to cause the one or more processors to receive physical layer data, perform one or more operations on the physical layer data according to a machine learning model to generate modified physical layer data, and transmit the modified physical layer data to at least one other node in the machine neural learning network. The machine learning network may include a learning node.
Need to check novelty before this filing date? Find Prior Art

Description

CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This disclosure claims the benefit of U.S. Provisional Application No. 63 / 415,505, entitled "AD HOC MACHINE LEARNING TRAINING THROUGH CONSTRAINTS, PREDICTIVE TRAFFIC LOADING, AND PRIVATE END-TO-END ENCRYPTION," filed October 12, 2022, U.S. Provisional Application No. 63 / 429,508, entitled "AI.ML CELL COMPONENT OF A TEST, MEASUREMENT, AND SUSTAINMENT NETWORK FOR COMMUNICATIONS LINKS," filed December 1, 2022, and U.S. Non-Provisional Application No. No. 18 / 482,801, entitled “AD HOC MACHINE LEARNING TRAINING THROUGH CONSTRAINTS, PREDICTIVE TRAFFIC LOADING, AND PRIVATE END-TO-END ENCRYPTION,” filed October 6, 2023, the disclosures of which are incorporated herein by reference in their entirety FIELD OF TECHNOLOGY

[0002] This disclosure relates to test and measurement systems, and more particularly to systems for testing, measuring, and maintaining (TMS) physical layer signals, including but not limited to optical and electromagnetic signals, in a network. BACKGROUND

[0003] The increasing adoption of faster communication standards, Wi-Fi, 6G (6th generation), and the Internet of Things (IoT), offer opportunities for new technologies that are not only possible but also practical. Distributed computing, like machine learning, has become a widely used technology. However, the higher communication speeds and stability of communication links have sparked interest in distributed machine learning.

[0004] Federated learning is one such architecture. In federated learning, the learning process is distributed among edge devices in a network, where the edge devices train the models using their own local data. Typically, a common model resides on a central server or data center, with copies of the model distributed to the edge devices. The edge devices train the model using the local data. However, there is a lack of methods for implementing these types of systems.

[0005] One particular area where this type of system is lacking is the testing, measurement, and maintenance of physical layer signals, such as those used by the communications network itself to test, measure, and validate the network infrastructure. This contrasts with the use of federated learning, which relies on the network infrastructure for other tasks. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 shows a network diagram of a communication network with multiple nodes. Fig. Figure 2 shows a diagram of a cell tuple in a communication network. Fig. 3 shows a flowchart of an embodiment of a method for adding new nodes to a communication network using machine learning. DESCRIPTION

[0006] In the present embodiments, a network of nodes is used for testing and measurement, including testing and measurement of the network infrastructure itself. The nodes in the network operate as nodes of a machine learning neural network and process physical layer (PHY) signals by applying artificial intelligence (AI) / machine learning (ML) input vectors. The term "physical layer data" as used herein includes both physical layer signals and any data that may be contained within those signals.

[0007] Fig. Figure 1 shows an example of a communications network 10 with a plurality of test and measurement devices as nodes, such as 12. Each node includes a processing unit that can be trained on a machine learning and artificial intelligence model. In this discussion, the terms "artificial intelligence" and "machine learning" are used to refer to algorithms and processes that can receive information and act on it without human intervention. These algorithms and processes can be trained to cause the model to converge, meaning that no further training or input will increase the model's error / prediction rate.

[0008] Once the nodes are trained, they are deployed to test and monitor the network infrastructure, communication links, and nodes. In many machine learning systems, the machine learning model can process information from various input sources to perform specific tasks, such as image processing and recognition in a facial recognition system or the collection of assistance data in a telecommunications system.

[0009] The nodes are hundreds of thousands, if not millions, of distributed sensors. These sensors may include test and measurement instruments, antennas, broadcast centers, signal sensors such as spectrum sensors, retunable intelligent surfaces (RIS), etc. Different nodes may have different capabilities, resulting in different trained models, such as non-independent and non-identically distributed (non-IID) models. Some nodes may include simple sensors with a limited-capacity processing element and memory. More powerful sensors may include computing devices, such as general-purpose computing devices, servers, and test and measurement instruments such as spectrum analyzers, oscilloscopes, multimeters, etc.

[0010] Furthermore, each trained model, as a whole, forms fundamental component signatures, nodes (cores) that form cells with a specific, predetermined purpose, comprising a corpus for efficient monitoring of the target system. In one embodiment, the target system comprises a 6G telecommunications system. In the case of measuring vital signs necessary for basic operations, the embodiments focus on methods and devices for systematically testing, measuring, and maintaining these systems.

[0011] Back to Fig. 1: Each node, such as 12, is connected to other nodes, such as 14 and 16. The connections between nodes shown here are only a representation of the connectivity of the nodes in the network. In some embodiments, a data center or central hub 18 provides overall control of the network and, as explained in more detail below, may provide a common machine learning model or algorithm to the nodes in the network.

[0012] Each node or device in the network contains an AI / ML convergence engine capable of receiving prescribed information and acting on that information, ideally by executing the ML model. The node may determine modification parameters for the prescribed data based on the status of the communication links on which it resides, which are returned to the node that submitted the task. The node may also establish a bidirectional connection, allowing the transmission of learning data (vectors) through the network and the forwarding (back into the network) of PHY layer data for correlating cause and effect and characterizing the system state over time.

[0013] In some embodiments, the nodes may ingest or receive data that is processed by a more capable node (sensor). In some embodiments, the system uses a predictive assessment of traffic load along with knowledge of sensor capabilities, routing delays, and security requirements to determine the optimal distribution of learning vectors (training data) across the network, such as the TekCloud® network, enabling correlation of measured physical parameters and supplied AI / ML learning data (training data).

[0014] The various nodes may use a UDP (User Datagram Protocol) routing approach, which avoids IP routing because it offers the best speed (i.e., multicast), and utilizes zero-proof knowledge of the connection before transmission. In some cases, the connections may also utilize blockchain validation as an additional layer of security to protect data integrity and owner-controlled distribution of the data through fungible tokens, proprietary keys, or a combination of both.

[0015] The network can leverage the organized delivery of AI / ML learning data (training data) to target nodes and their corresponding physical measurements to create a "living" history of the system, enabling, among other benefits, version control of changes. Systems leveraging the disclosed technology can be identified by the system owner's ability to restore a system to a previous state without having to notify end users of a failure.

[0016] In some embodiments, a node is added to the network. As mentioned above, the node can comprise one of many different types of devices. "Adding" a node involves retraining a node where the model has "collapsed," i.e., the model no longer operates within a certain error range / precision of predictions.

[0017] The node, referred to here as a "learning node," operates according to similar principles to federated learning in machine learning. In federated learning, edge devices—that is, devices at the edge of a network—are given a base model that may or may not have been trained to some extent. The edge device then trains the model running on the device using datasets derived from the device's local data. This may result in different devices having slightly different trained models, for example, the weights assigned to different outcomes. In large networks, this has the advantage that devices across the network operate in different environments, including differences in available transmission media, different devices forming nearby nodes, etc.

[0018] The embodiments include the fundamentals of messaging between nodes of such a network to perform actions related to machine learning. The embodiments define a group or tuple of nodes willing to participate in determining the resolution of an ML model desired by the learning node. Fig. Figure 2 shows one embodiment of a tuple. The tuple includes the learning node, a neighbor node, and at least one validator node. The neighbor node may be one of many nodes selected by the learner, as explained in more detail below.

[0019] In the embodiments, an ML-enabled cell is generally used. Fig. Figure 2 shows an embodiment of a learning node 20, assuming that all other nodes in the tuple or in the entire network can have the same structure. Fig. 2, the learning node has a processing element of some kind. This could be, for example, a general-purpose processor, a graphics processing unit, a digital signal processor, a microcontroller, or a field-programmable gate array (FPGA). In this discussion, any device capable of executing code, including code as part of a machine learning model, is referred to as a "processor" 30. The nodes also have at least one, but typically multiple, interfaces for communication connections, e.g., 34, 36, and 38. These may include wired, wireless, including Wi-Fi, other radio protocols, and near-field communication, as well as optical interfaces. Each node has at least some form of memory 32. As explained in more detail below, model versions and histories may be stored in each node's memory.

[0020] The following describes the Fig. 2 shown tuples with the flowchart of Fig. 3. First, the learning node 20 is added to the network of nodes at 40 in Fig. 3 added. As mentioned earlier, the learning node may be an existing node that needs to be retrained, meaning it essentially starts from scratch. The learning node receives the general model at 42. For existing nodes undergoing retraining, this may mean accessing memory to retrieve the original model with which it was trained. Using local data as training data, the node undergoes training to create a trained model at 44. The node must then discover its neighbors.

[0021] All nodes can discover each other in one of two ways. A new node can receive information through a signal or other communication over one of the communication interfaces, which it can then store in its memory. For example, when the learning node finishes training the general model with its local data, the learning node discovers the neighboring node(s) by accessing the previously obtained information and sending requests to one of those nodes, or possibly to many nodes, and then waiting for responses. In a second way, the learning node could send a broadcast message to all neighboring nodes and then receive responses. The learning node can select the neighbor based either on the responses or on the previously obtained information, based on the information obtained about that node and the connection between the two nodes.

[0022] The information may include an analysis of the available connections between the two nodes. Some communication links may be high-speed but low-accuracy, or low-speed but high-accuracy. Some communication links may be unavailable; for example, a device may not have an optical communication channel. The node may also analyze the time the other node estimates it will take to operate with the learning node, possibly taking into account a total time specified for the learning node. All participants—learning nodes, neighbor nodes, and validation nodes—may share their respective contributions to the total time.

[0023] Based on this information, the node selects a node as a neighbor node that is in Fig. 2 is shown as 22. The two nodes then perform a comparison between their models, e.g., the weights, error levels, etc. at 46. If there are no differences, or no differences outside a threshold tolerance for differences, the process can be terminated, the network identifies the node as trained, and the node goes into operation at 52. If there are differences that need to be reconciled, the third node in the tuple, a validation node, enters Fig. 2 as one of the nodes 24, 26, or 28, enters the process at 48. The discovery process of the available validation nodes may take the form of the previous discovery process, or the information collected during this process may enable the identification and selection of the validation node.

[0024] The learning node or the neighbor node sends the results of the comparison, i.e., the difference(s), to the validation node. The validation node analyzes the differences and possibly adjusts the weights, etc., of the trained model on the learning node and sends these changes back to the learning node. The learning node then adjusts its trained model at 50 and goes live at 52. In a secondary process, the validator can also communicate changes to the neighbor node. Once the new node is live, it can become available as a neighbor node or validator for new nodes or those being retrained.

[0025] In this way, all participants in the process know the ML task time for each node, and their resources to complete their task are determined by the overall parameters granted to each node. These may include power consumption, maximum wake-up time, etc., to name a few. This results in policy parameters for products / equipment / nodes that collaborate to perform a required ML task.

[0026] Embodiments of the disclosure include the methods, attributes, and interplay between components that form the minimum architecture required to support shared intelligence for ML in a distributed sensing, wired, or wireless environment. Embodiments of the disclosure further include using this architecture in conjunction with PHY layer measurements to establish a measurement standard to which other third-party ML engines can align.

[0027] Some non-limiting embodiments include using a calibrated RF channel sounding measurement or pre-determining optimal beam alignments resulting in reduced codebook dimensions for a 6G use case, and determining a time-invariant channel (TIV) between 6G users participating in a point-to-point communication link. In some embodiments, the data is pre-transmitted to enable better and faster data transmission. This is typically done by calibrating the link adjacent to the main communication protocols either during or before the initiation of the 6G connection. ML techniques will determine this channel, with the results obtained using the architecture discussed herein.

[0028] Aspects of the disclosure may operate on specially designed hardware, firmware, digital signal processors, or on a specially programmed general-purpose computer having a processor that operates according to programmed instructions. As used herein, the terms "controller" or "processor" are intended to encompass microprocessors, microcomputers, application-specific integrated circuits (ASICs), and special-purpose hardware controllers. One or more aspects of the disclosure may be embodied in computer-usable data and computer-executable instructions, such as one or more program modules executed by one or more computers (including supervisory modules) or other devices. Generally, program modules include routines, programs, objects, components, data structures, etc.that perform specific tasks or implement specific abstract data types when executed by a processor in a computer or other device. The computer-executable instructions may be stored on a non-transitory, computer-readable medium such as a hard disk, an optical disk, a removable storage medium, solid-state memory, random access memory (RAM), etc. As will be apparent to one skilled in the art, the functionality of the program modules may be arbitrarily combined or distributed in various aspects. Furthermore, the functionality may be embodied in whole or in part in firmware or hardware equivalents such as integrated circuits, FPGAs, and the like.Certain data structures may be used to more effectively implement one or more aspects of the disclosure, and such data structures are contemplated as part of the computer-executable instructions and computer-usable data described herein.

[0029] The disclosed aspects may, in some cases, be implemented in hardware, firmware, software, or a combination thereof. The disclosed aspects may also be implemented in the form of instructions stored on one or more non-transferable computer-readable media that can be read and executed by one or more processors. Such instructions may be referred to as a computer program product. Computer-readable media, as described herein, is any media accessible by a computer. Computer-readable media may include, for example, but is not limited to, computer storage media and communications media.

[0030] Computer storage media is any media that can be used to store computer-readable information. Examples of computer storage media include RAM, ROM, EEPROM (Electrically Erasable Programmable Read-Only Memory), flash memory or other storage technologies, CD-ROM (Compact Disc Read-Only Memory), DVD (Digital Video Disc) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, and any other volatile or non-volatile, removable or non-removable media employed in any technology. Computer storage media excludes signals as such and transient forms of signal transmission.

[0031] Communication media refers to any medium that can be used to transmit computer-readable information. Examples of communication media include coaxial cable, fiber optic cable, air, or any other medium suitable for transmitting electrical, optical, radio frequency (RF), infrared, acoustic, or other signals. EXAMPLES

[0032] Examples of the disclosed technologies are listed below. An embodiment of the technologies may include one or more, and any combination, of the examples described below.

[0033] Example 1 is a machine learning network comprising: a plurality of test and measurement devices; one or more of the test and measurement devices comprising: one or more communication interfaces configured to enable the device to receive and process physical layer signals; memory; and one or more processors configured to execute code to cause the one or more processors to receive physical layer data; perform one or more operations on the physical layer data according to a machine learning model to generate modified physical layer data; and communicate the modified physical layer data to at least one other node in the machine neural learning network.

[0034] Example 2 is the machine learning network of claim 1, wherein the test and measurement devices comprise one or more of the following: test and measurement instruments, sensors, antennas, re-formable intelligent surfaces, general-purpose computing devices, and servers.

[0035] Example 3 is the machine learning network of any one of examples 1 or 2, wherein the physical layer signals include a transmission rate, an encoding, a transmission medium, and an interface.

[0036] Example 4 is the machine learning network of any of Examples 1 to 3, wherein the code that causes the one or more processors to perform operations comprises code that causes the one or more processors to perform at least one of the following actions: determining change parameters for returning data to a node that sent the physical layer data, determining beam alignment, interference cancellation, and channel estimation.

[0037] Example 5 is the machine learning network from any of Examples 1 to 4, where signals in the network use User Datagram Protocol (UDP) for the signals sent between nodes.

[0038] Example 6 is a learning node comprising: one or more communication interfaces; a memory; and one or more processors, each processor configured to execute code to cause the processor to: receive a general machine learning model via one of the one or more communication interfaces; use local data of the learning node to train the model; discover one or more neighbor nodes; communicate with the one or more neighbor nodes to compare the trained model to a neighbor node; determine a difference between the trained model and the neighbor node model; discover one or more validation nodes; send the difference to the one or more validation nodes; receive input from the one or more validation nodes;and adjust the trained model based on the inputs as needed to complete the trained model.;

[0039] Example 7 is the learning node of Example 6, wherein the one or more processors are further configured to execute code to receive, via one of the one or more communication interfaces, information about one or more neighbor nodes and information about each connection to each neighbor node before executing the code that causes the one or more processors to discover the one or more neighbor nodes.

[0040] Example 8 is the learning node of Example 7, wherein the code executed by the one or more processors to cause the one or more processors to discover the one or more neighbor nodes comprises code to cause the one or more processors to access the memory to retrieve data about the one or more neighbor nodes and a connection between the learning node and the one or more neighbor nodes.

[0041] Example 9 is the learning node of any one of examples 6 to 8, wherein the code executed by the one or more processors to cause the one or more processors to discover the one or more neighbor nodes comprises code to cause the one or more processors to send a request and receive at least one response from at least one of the one or more neighbor nodes, the response including information about at least one communication link between the learning node and the at least one of the one or more neighbor nodes and the job processing time for the at least one of the one or more neighbor nodes.

[0042] Example 10 is the learning node of any of Examples 6 to 9, wherein the code that causes the one or more processors to execute code to communicate with the one or more neighbor nodes causes the one or more processors to communicate with the neighbor node based on the information about the communication link and the job completion time.

[0043] Example 11 is the learning node of Example 10, wherein the information about the communication link comprises at least one of the following elements: time duration for a response, a selected one of the one or more communication interfaces, a required accuracy, power consumption of the neighbor node, and maximum wake-up time of the neighbor node.

[0044] Example 12 is the learning node of any of Examples 6 to 11, wherein the code executed by the one or more processors to send the difference to a validation node comprises code that causes the one or more processors to send the differences to one of the one or more validation nodes based on information about a communication link between the learning node and the one validation node.

[0045] Example 13 is the learning node of any of Examples 6 to 12, wherein the code that causes the one or more processors to adjust the trained model comprises code that causes the one or more processors to adjust weights in the trained model based on the inputs.

[0046] Example 14 is the learning node of any of Examples 6 to 13, wherein the one or more processors are further configured to execute code to obtain a maximum time to complete the trained model.

[0047] Example 15 is the learning node of any of Examples 6 to 14, wherein the learning node becomes at least one neighbor node or a validation node upon completion of the trained model.

[0048] Example 16 is the learning node of any of Examples 6 to 15, wherein the one or more processors are further configured to execute code to store in memory one or more trained model histories and versions, completion times for the one or more neighbor nodes, and the one or more validation nodes.

[0049] Example 17 is the learning node of any one of Examples 6 to 16, wherein the one or more processors are further configured to participate in a communication network as a sensor node that operates the trained model upon completion of the trained model.

[0050] Furthermore, this written description refers to specific features. It is understood that the disclosure in this specification encompasses all possible combinations of these particular features. Where a particular feature is disclosed in connection with a particular aspect or example, that feature may, where possible, also be used in connection with other aspects and examples.

[0051] Although this application refers to a method comprising two or more defined steps or operations, the defined steps or operations may be performed in any order or simultaneously, unless the context precludes such possibilities.

[0052] All features disclosed in the description, including the claims, the abstract, and the drawings, and all steps in any disclosed method or process may be combined in any combination, except for combinations in which at least some of those features and / or steps are mutually exclusive. Any feature disclosed in the description, including the claims, the abstract, and the drawings, may be replaced by alternative features serving the same, equivalent, or similar purpose, unless expressly stated otherwise.

[0053] Although specific examples of the invention have been shown and described for purposes of illustration, various modifications may be made without departing from the spirit and scope of the invention. Accordingly, the invention should not be limited except as by the appended claims. QUOTES CONTAINED IN THE DESCRIPTION

[0000] This list of documents submitted by the applicant was generated automatically and is included solely for the convenience of the reader. This list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions. Cited patent literature

[0000] US 63 / 415,505

[0001] US 63 / 429,508

[0001] US 18 / 482,801

[0001]

Claims

[1] A machine learning network comprising: a variety of test and measurement devices; one or more of the test and measurement devices comprising: one or more communication interfaces configured to enable the device to receive and process physical layer signals; a memory; and one or more processors configured to execute code that causes the one or more processors to receive physical layer data; perform one or more operations on the physical layer data according to a machine learning model to generate modified physical layer data; and transmit the changed physical layer data to at least one other node in the machine learning neural network. [2] The machine learning network of claim 1, wherein the test and measurement devices comprise one or more of the following: test and measurement instruments, sensors, antennas, retunable smart surfaces, general-purpose computing devices, and servers. [3] The machine learning network of claim 1, wherein the physical layer signals comprise a transmission rate, an encoding, a transmission medium, and an interface. [4] The machine learning network of claim 1, wherein the code that causes the one or more processors to perform operations comprises code that causes the one or more processors to perform at least one of the following actions: determining change parameters for returning data to a node that sent the physical layer data, determining beam alignment, interference cancellation, and channel estimation. [5] The machine learning network of claim 1, wherein the signals in the network use the User Datagram Protocol (UDP) for the signals sent between the nodes. [6] A learning node that includes: one or more communication interfaces; a memory; and one or more processors, each processor configured to execute code that causes the processor to: receive a general machine learning model via one of the one or more communication interfaces; to train the model using local data from the learning node; to discover one or more neighboring nodes; to communicate with one or more neighboring nodes to compare the trained model with a neighboring node to determine a difference between the trained model and the neighboring model; discover one or more validation nodes; send the difference to the one or more validation nodes; receive inputs from the one or more validation nodes; and adjust the trained model as needed based on the inputs to complete the trained model. [7] The learning node of claim 6, wherein the one or more processors are further configured to execute code to receive, via one of the one or more communication interfaces, information about one or more neighbor nodes and information about each connection to each neighbor node before executing the code that causes the one or more processors to discover the one or more neighbor nodes. [8] The learning node of claim 7, wherein the code executed by the one or more processors to cause the one or more processors to discover the one or more neighbor nodes comprises code to cause the one or more processors to access the memory to retrieve data about the one or more neighbor nodes and a connection between the learning node and the one or more neighbor nodes. [9] The learning node of claim 6, wherein the code executed by the one or more processors to cause the one or more processors to determine the one or more neighbor nodes comprises code to cause the one or more processors to send a request and receive at least one response from at least one of the one or more neighbor nodes, the response including information about at least one communication link between the learning node and the at least one of the one or more neighbor nodes and the job processing time for the at least one of the one or more neighbor nodes. [10] The learning node of claim 6, wherein the code that causes the one or more processors to execute code to communicate with the one or more neighbor nodes causes the one or more processors to communicate with the neighbor node based on the information about the communication link and the job processing time. [11] The learning node of claim 10, wherein the information about the communication link comprises at least one of the following: time for a response, a selected one of the one or more communication interfaces, a required accuracy, power consumption of the neighbor node, and maximum wake-up time of the neighbor node. [12] The learning node of claim 6, wherein the code executed by the one or more processors to send the difference to a validation node comprises code that causes the one or more processors to send the differences to one of the one or more validation nodes based on information about a communication link between the learning node and the one validation node. [13] The learning node of claim 6, wherein the code that causes the one or more processors to adjust the trained model comprises code that causes the one or more processors to adjust weights in the trained model based on the inputs. [14] The learning node of claim 6, wherein the one or more processors are further configured to execute code to obtain a maximum time to complete the trained model. [15] The learning node of claim 6, wherein the learning node becomes at least one of a neighbor node and a validation node after completion of the trained model. [16] The learning node of claim 6, wherein the one or more processors are further configured to execute code to store in the memory one or more trained model histories and versions, completion times for the one or more neighbor nodes, and the one or more validation nodes. [17] The learning node of claim 6, wherein the one or more processors are further configured to participate in a communication network as a sensor node that operates the trained model after completion of the trained model.

Citation Information

Patent Citations

  • 18/482,801

  • 63/415,505

  • 63/429,508