Network leakage detection is an integral aspect of system maintenance. Damage to network infrastructure resulting in a network leak(s) may cause a variety of service issues related to the network. Existing solutions for detecting network leakages do not adequately identify a leak type(s). These and other considerations are discussed herein.
It is to be understood that both the following general description and the following detailed description are exemplary and explanatory only and are not restrictive. Methods, systems, and apparatuses for identifying network leaks are described herein. Data associated with network leaks may be collected and analyzed to determine a network leak type(s) associated with each network leak. Each network leak type may be associated with a particular radio frequency (RF) radiation pattern. For example, an RF radiation pattern associated with a particular network leak type may be indicative of a number of features that may be used to identify that network leak type. RF radiation patterns and corresponding features associated with different network leak types may be stored in a database and/or library. A classification model may use the database and/or library to classify an unknown RF radiation pattern as being associated with one or more of the network leak types.
Other examples are possible as well. This summary is not intended to identify critical or essential features of the disclosure, but merely to summarize certain features and variations thereof. Other details and features will be described in the sections that follow.
The accompanying drawings, which are incorporated in and constitute a part of this specification, together with the description, serve to explain the principles of the present methods, systems, and apparatuses:
As used in the specification and the appended claims, the singular forms “a,” “an,” and “the” include plural referents unless the context clearly dictates otherwise. Ranges may be expressed herein as from “about” one particular value, and/or to “about” another particular value. When such a range is expressed, another configuration includes from the one particular value and/or to the other particular value. When values are expressed as approximations, by use of the antecedent “about,” it will be understood that the particular value forms another configuration. It will be further understood that the endpoints of each of the ranges are significant both in relation to the other endpoint, and independently of the other endpoint.
“Optional” or “optionally” means that the subsequently described event or circumstance may or may not occur, and that the description includes cases where said event or circumstance occurs and cases where it does not.
Throughout the description and claims of this specification, the word “comprise” and variations of the word, such as “comprising” and “comprises,” means “including but not limited to,” and is not intended to exclude other components, integers or steps. “Exemplary” means “an example of” and is not intended to convey an indication of a preferred or ideal configuration. “Such as” is not used in a restrictive sense, but for explanatory purposes.
It is understood that when combinations, subsets, interactions, groups, etc. of components are described that, while specific reference of each various individual and collective combinations and permutations of these may not be explicitly described, each is specifically contemplated and described herein. This applies to all parts of this application including, but not limited to, steps in described methods. Thus, if there are a variety of additional steps that may be performed it is understood that each of these additional steps may be performed with any specific configuration or combination of configurations of the described methods.
As will be appreciated by one skilled in the art, hardware, software, or a combination of software and hardware may be implemented. Furthermore, a computer program product on a computer-readable storage medium (e.g., non-transitory) having processor-executable instructions (e.g., computer software) embodied in the storage medium. Any suitable computer-readable storage medium may be utilized including hard disks, CD-ROMs, optical storage devices, magnetic storage devices, memrsistors, Non-Volatile Random Access Memory (NVRAM), flash memory, or a combination thereof.
Throughout this application reference is made to block diagrams and flowcharts. It will be understood that each block of the block diagrams and flowcharts, and combinations of blocks in the block diagrams and flowcharts, respectively, may be implemented by processor-executable instructions. These processor-executable instructions may be loaded onto a general-purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the processor-executable instructions which execute on the computer or other programmable data processing apparatus create a device for implementing the functions specified in the flowchart block or blocks.
These processor-executable instructions may also be stored in a computer-readable memory that may direct a computer or other programmable data processing apparatus to function in a particular manner, such that the processor-executable instructions stored in the computer-readable memory produce an article of manufacture including processor-executable instructions for implementing the function specified in the flowchart block or blocks. The processor-executable instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the processor-executable instructions that execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart block or blocks.
Accordingly, blocks of the block diagrams and flowcharts support combinations of devices for performing the specified functions, combinations of steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each block of the block diagrams and flowcharts, and combinations of blocks in the block diagrams and flowcharts, may be implemented by special purpose hardware-based computer systems that perform the specified functions or steps, or combinations of special purpose hardware and computer instructions.
This detailed description may refer to a given entity performing some action. It may be understood that this language may in some cases mean that a system (e.g., a computer) owned and/or controlled by the given entity is actually performing the action.
The device 102 may comprise one or more computing devices, such as user devices, electronic devices such as computers, smartphones, laptops, tablets, set top boxes, display devices, or other devices capable of communicating with the network devices 116A-116D and/or the computing device 104. The device 102 may comprise a communication element 106 for providing an interface to a user to interact with the device 102 and/or the computing device 104. The communication element 106 may be any interface for presenting and/or receiving information to/from the user, such as user feedback. An example interface may be a communication interface such as a web browser (e.g., Internet Explorer®, Mozilla Firefox®, Google Chrome®, Safari®, or the like). Other software, hardware, and/or interfaces may be used to provide communication between the user and one or more of the device 102, the network devices 116A-116D, and/or the computing device 104. As an example, the communication element 106 may request or query various files from a local source and/or a remote source. As a further example, the communication element 106 may transmit data to a local or remote device such as the network devices 116A-116D and/or the computing device 104.
The device 102 may be associated with a user identifier or a device identifier 108. As an example, the device identifier 108 may be any identifier, token, character, string, or the like, for differentiating one user or user device from another user or user device. As a further example, the device identifier 108 may identify a user or user device as belonging to a particular class of users or user devices. As a further example, the device identifier 108 may comprise information relating to the device 102 such as a manufacturer, a model or type of device, a service provider associated with the device 102, a state of the device 102, a locator, and/or a label or classifier. Other information may be represented by the device identifier 108.
The device identifier 108 may comprise an address element 110 and a service element 112. The address element 110 may comprise or provide an internet protocol address, a network address, a media access control (MAC) address, international mobile equipment identity (IMEI) number, international portable equipment identity (IPEI) number, an Internet address, or the like. As an example, the address element 110 may be relied upon to establish a communication session between the device 102 and the network devices 116A-116D and/or the computing device 104 or other devices and/or networks. As a further example, the address element 110 may be used as an identifier or locator of the device 102. In an example, the address element 110 may be persistent for a particular network.
The service element 112 may comprise identification of the service providers associated with the device 102, with the class of device 102, and/or with a particular network 105 with which the device 102 is currently accessing services associated with the service providers. The class of the device 102 may be related to a type of device, capability of device, type of service being provided, and/or a level of service (e.g., business class, service tier, service package, etc.). As an example, the service element 112 may comprise information relating to or provided by a communication service provider (e.g., Internet service provider) that is providing or enabling data flow such as communication services to the device 102. As a further example, the service element 112 may comprise information relating to a preferred service provider for one or more particular services relating to the device 102. In an example, the address element 110 may be used to identify or retrieve data from the service element 112, or vice versa. As a further example, one or more of the address element 110 and the service element 112 may be stored remotely from the device 102 and retrieved by one or more devices such as the device 102 and the computing device 104. Other information may be represented by the service element 112.
The device 102, the network devices 116A-116D, and the computing device 104 may communicate between each other via network 105. The network 105, may include a packet-switched network (e.g., an Internet protocol-based network), a non-packet switched network (e.g., quadrature amplitude modulation-based network), and/or the like. The network 105 may include network adapters, switches, routers, modems, and the like connected through wireless links (e.g., radio frequency, satellite, etc.) and/or physical links (e.g., fiber optic cable, coaxial cable, Ethernet cable, or a combination thereof). The network 105 may include public networks, private networks, wide area networks (e.g., Internet), local area networks, and/or the like. The network 105 may include a content access network, a content distribution network, and/or the like. The network 105 may be configured to provide communication from telephone, cellular, modem, and/or other electronic devices to and throughout the system 100.
The system 100 may comprise a hybrid fiber-coaxial (HFC) network, or a component thereof. For example, the network 105 may employ and/or facilitate various methods for sending desired signals over a coaxial cable such as any version of Data Over Cable Service Interface Specification (DOCSIS). The network 105 may support and/or facilitate low-split, mid-split, high-split, Full Duplex DOCSIS (FDX), and Extended Spectrum DOCSIS (ESD) configurations. For a low-split configuration, the network 105 may support/facilitate upstream frequencies below 42 MHz and/or the like. For a mid-split configuration, the network 105 may support/facilitate frequency division schemes that facilitate bi-directional traffic on a single coaxial cable, where reverse channel signals propagate to a headend (e.g., computing device 104), for example, from 5 to 85 MHZ, and where forward path signals go from the headend (e.g., computing device 104) from 102 MHz to the upper frequency limit. A duplex crossover band may be located from 85 to 102 MHz. For a high-split configuration, the network 105 may support/facilitate downstream frequencies of 258-1002 MHZ and upstream frequencies of 5-204 MHZ. With the increased bandwidth of the high-split configuration in the upstream direction, the Aeronautical Frequency Band (108-137 MHZ) that was in the downstream direction in low-split and mid-split networks may reside in the upstream spectrum. For FDX and ESD configurations, the network 105 may support/facilitate downstream frequencies up to 1800 MHZ and upstream frequencies up to 684 MHZ.
The computing device 104 may comprise a server for communicating with the device 102 and/or the network devices 116A-116D. As an example, the computing device 104 may communicate with the device 102 and/or network devices 116A-116D for providing data and/or services. As an example, the computing device 104 may provide services, such as network (e.g., Internet) connectivity, network printing, media management (e.g., media server), content services, streaming services, broadband services, or other network-related services. The computing device 104 may allow the device 102 to interact with remote resources, such as data, devices, and files. As an example, the computing device 104 may be configured as (or disposed at) a central location (e.g., a headend, or processing facility), which may receive content (e.g., data, input programming) from multiple sources. The computing device 104 may combine the content from the multiple sources and may distribute the content to user (e.g., subscriber) locations via a distribution system. For example, the computing device 104 may be configured to receive, process, and distribute content and/or media signals, such as video signals, audio signals, and data signals within the network 105.
The computing device 104 may be maintained and/or managed by a content and/or a media service provider, such as a cable television (CATV) provider or an Internet service provider (ISP). The computing device 104 may include any reasonably suitable electrical equipment for receiving, storing, and/or re-transmitting content/media signals, such as content/media servers, satellite receivers, modulators/demodulators, edge decoders, and/or the like. For example, the computing device 104 may include a cable modem termination system (CMTS) 124.
The CMTS 124 may be configured as an intermediary between the network devices 116A-116D (e.g., cable modems, multimedia terminal adapters (MTA), set-top boxes, network terminals, etc.) and a backbone network/portion (e.g. the Internet) of the network 105. The CMTS 124 may forward/send data received from a backbone network to the network devices 116A-116D and forward data received from the network devices 116A-116D onto the backbone network. The CMTS 124 may comprise an optical transmitter and an optical receiver for transmitting and/or receiving messages from the network devices 116A-116D. The CMTS 124 may include transmitters and/or receivers for communicating with the backbone network. The CMTS 124 may include a converter that may convert any protocol used within the backbone network to a protocol suitable for data communication with the network devices 116A-116D. For example, the CMTS 124 may send/transmit signals (e.g., media signals, broadband signals, content signals, etc.) downstream to the network devices 116A-116D via a fiber-optic connection/communication link to a fiber optic node supporting the network devices 116A-116D. The fiber optic node may, for example, receive and convert optical signals sent from the computing device 104 to RF signals that are sent to the network devices 116A-116D via distributed taps (e.g., subscriber taps, etc.) distributed via coaxial cables to the network devices 116A-116D, respectively.
The computing device 104 may be configured to manage the communication between the device 102 and network devices 116A-116D. The computing device 104 may comprise a database 114 for storage of data sent/received to/from the device 102 and/or network devices 116A-116D. As an example, the database 114 may store a plurality of files (e.g., web pages), user identifiers or records, or other information. As a further example, the device 102 may request and/or retrieve a file from the database 114. The database 114 may store information relating to the device 102 such as the address element 110 and/or the service element 112. As an example, the computing device 104 may obtain a device identifier 108 from the device 102 and retrieve information from the database 114 such as the address element 110 and/or the service element 112. As a further example, the computing device 104 may obtain the address element 110 from the device 102 and may retrieve the service element 112 from the database 114, or vice versa. Any information may be stored in and retrieved from the database 114. The database 114 may be disposed remotely from the computing device 104 and accessed via direct or indirect connection. The database 114 may be integrated with the computing device 104 and/or with any other device or entity within the system 100.
The computing device 104 may be configured to send instructions to the device 102. The instructions may cause (e.g., via the device 102) one or more user devices (e.g., network devices 116A-116D) to send one or more upstream transmissions. The device 102 may be configured, as further described herein, to detect one or more signals associated with the one or more user devices sending the one or more upstream transmissions. The one or more signals detected by the device 102 may be associated with one or more of a type, a classification, or a location(s) of one or network leaks as further described herein.
The network devices 116A-116D may be any device configured to communicate with the computing device 104, including the CMTS 124, for example, within a local network of the respective users/subscribers premises. For example, the network devices 116A-116D may be configured to interface with a display, an Internet of Things (IoT) device, a mobile device, one or more sensors, and/or the like. For example, the network devices 116A-116D may comprise user premises devices such as set top boxes, cable boxes, routers, cable modems, multimedia terminal adapters (MTA), network terminals, or any combination thereof. The network devices 116A-116D may be configured to interface with any local network device with an Internet Protocol (IP) and/or Media Access Control (MAC) address, such as a local computer, a wired and/or wireless router, a local content server, and/or the like. The network devices 116A-116D may forward data/information received from the computing device 104/CMTS 124 to any devices, for example, within a local network of the respective users/subscribers premises, and may forward data received from any device to the computing device 104/CMTS 124. The specific configuration of the network devices 116A-116D may vary. Each of the network devices 116A-116D may include a converter that may convert signals and/or data/information to signals and/or data/information suitable for any devices, for example, within a local network of the respective users/subscribers premises.
The network devices 116A-116D may be configured to facilitate the connection of a user device (e.g., devices within a user's home) to the network 105. For example, the network devices 116A-116D may be configured as wireless access points (WAPs). The network devices 116A-116D may be configured to allow one or more wireless devices to connect to a wired and/or wireless network using Wi-Fi, Bluetooth®, Zigbee®, or any desired method or standard. The network devices 116A-116D may comprise identifiers 118A-118D. As an example, one or more identifiers may be, or relate to, an Internet Protocol (IP) Address IPV4/IPV6 or a media access control address (MAC address) or the like. As a further example, the identifiers 118A-118D may be unique identifiers for facilitating communications on the physical network segment. Each of the network devices 116A-116D may comprise an identifier 118A-118D that is distinct. As an example, the identifiers 118A-118D may be associated with a physical location of the network devices 116A-116D.
The vehicle 202 and/or the device 102 may travel along a path 206. The path 206 may be, for example, a service area of and/or supported by the CMTS 124. The device 102 may be configure with a global positioning system (GPS) sensor/antenna configured to, either periodically or consistently, determine and/or record the location (e.g., current GPS coordinates, etc.) of the device 102. The device 102 may also be synchronized to a GPS clock to establish timing consistent with the timing communicated with the computing device 104. The device 102 may include a velocity meter, an accelerometer, a positioning sensor, and/or the like configured to, either periodically or consistently, determine the velocity, speed, and/or orientation of the device 102. The device 102 may send the computing device 104 location information that includes a location (e.g., GPS coordinates, etc.) of the device 102 and a travel speed (e.g., velocity, etc.) of the device 102 and timing information associated with one or more determined/detected network leaks.
The device 102 may be configured to communicate with the computing device 104 to receive location information (e.g., GPS coordinates, etc.) associated with the network devices 116A-116D along the path 206. For example, the device 102, based on the location information associated with the device 102, may determine that the computing device 104 (and/or the device 102) is in proximity to and/or services the network devices 116A-116D along the path 206. The device 102 may receive information from the computing device 104 that includes, for example, the number of network devices 116A-116D along the path 206, the type of network devices 116A-116D, configuration details associated with the network devices 116A-116D, the location information associated with the network devices 116A-116D, and/or any other information associated with the network devices 116A-116D.
Network leak location information may be determined by, for example, the device 102 as the device 102 travels along the path 206. The device 102 may be configured to cause one or more network devices 116A-116BD to output one or more signals for locating one or more network leaks. As an example, the device 102 may be configured to send instructions for upstream transmissions to the computing device 104 for the computing device 104 to cause the one or more network devices 116A-116D to output the one or more signals. The one or more signals may be based on an orthogonal frequency division multiple access upstream data profile (OUDP) test burst. Each signal of the one or more signals may comprise a pulse signal of two or more pulses output at an interval over a period of time.
The device 102 may determine one or more parameters of the one or more signals to be output by the one or more network devices 116A-116D based on a velocity of the device 102 and a quantity of the one or more network devices 116A-116D within a communication range of the device 102. The one or more parameters may comprise at least one of an interval each signal is output over a period of time, a pulse width of each signal, a pulse repetition period of each signal, or a number of pulses of each signal to output. The interval each signal is output over the period of time may be determined based on a velocity associated with the device 102. For example, the interval may be proportional to the velocity or may be adjusted based on the velocity. The device 102 may determine the one or more network devices 116A-116D to output the one or more signals based on location information comprising a location associated with the one or more devices.
The device 102 may cause the one or more network devices 116A-116D to output the one or more signals based on the one or more parameters. The device 102 may determine one or more locations of one or more network leaks based on a detection of the one or more signals. For example, as the device travels along the path 206, the device 102 may determine a location associated with each detection of a plurality of detections of each signal of the one or more signals over a period of time (e.g., based on a velocity of the device 102 over the period of time associated with each detection). The device 102 may determine the one or more locations of one or more network leaks based on a correlation of each location associated with each detection of each signal over the period of time. For example, each detection of a plurality of detections of each signal, over the period of time, may be correlated to each other. Thus, the accuracy of the location of each signal (and thus, each network leak) increases with each detection.
As the vehicle 202 and/or the device 102 travels along the path 206, the device 102 may capture signals associated the network leaks. For example, to capture the signals associated the network leaks, the device 102 may comprise or be in communication with an electromagnetic field (EMF) meter, a radio frequency (RF) spectrum analyzer, an RF field strength meter, a combination thereof, and/or the like. For example, the system 200 may comprise a hybrid fiber-coaxial (HFC) network, or a component thereof. In HFC networks, which may combine fiber optic and coaxial cable technologies, network leaks may emanate from various sources (e.g., network infrastructure) that cause unintended electromagnetic radiation or signal leakage, leading to potential signal integrity issues, service disruptions, security concerns, interference, etc. The device 102 may capture signals associated with such leaks so those signals may be analyzed to determine a cause(s)/source(s) of the corresponding network leak(s), as further described herein.
Each of the network leaks may be associated with at least one network leak type of a plurality of network leak types. Each network leak type may be associated with a cause(s)/source(s). For example, a first network leak type may be related to a loose connector/cable, which may be caused by poorly connected or loose coaxial cable connectors that lead to signal leakage. Another network leak type may be related to a damaged cable(s). For example, physical damage to coaxial cables, such as cuts, bends, and/or crushed sections, may damage shielding and expose a core of the cable and lead to signal leakage. Physical damage may be caused by digging, weather events, animal intrusion, etc. A further network leak type may be related to deterioration of coaxial cables, which may have shielding that weakened over time, as well as aging connectors and cables and/or poor cable quality. Further examples of network leak types may be related to improper grounding, improper installation, equipment malfunction (e.g., faulty amplifiers and/or distribution components, interference from a nearby device(s) (e.g., external sources of interference, such as wireless devices), environmental factors, and the like.
Leakage data related to the signals captured by the device 102 may be stored for further analysis to determine the cause(s)/source(s) of the corresponding network leak(s), as further described herein. For example, the device 102 may comprise or be in communication with a database 103 to store the leakage data. The database 103 may, in some examples, comprise or be associated with the database 114 and/or one or more storage media in communication with the device 102 (not shown).
The CMTS 124 may be an intermediary between the network devices 116A-116D (e.g., cable modems, multimedia terminal adapters (MTA), set-top boxes, network terminals, etc.) and a backbone network/portion (e.g. the Internet) of the network 105. The CMTS 124 may forward/send data received from a backbone network to the network devices 116A-116D and forward data received from the network devices 116A-116D onto the backbone network. The CMTS 124 may comprise an optical transmitter and an optical receiver for transmitting and/or receiving messages from the network devices 116A-116D. The CMTS 124 may include transmitters and/or receivers for communicating with the backbone network. The CMTS 124 may include a converter that may convert any protocol used within the backbone network to a protocol suitable for data communication with the network devices 116A-116D. For example, the CMTS 124 may, send/transmit signals (e.g., media signals, broadband signals, content signals, etc.) downstream to users/subscribers 210A-210D, via a fiber-optic connection/communication link to a fiber optic node 204 supporting the users/subscribers 210A-210D. The fiber optic node 204 may, for example, receive and convert optical signals sent from the computing device 104 to RF signals that are sent to the users/subscribers 210A-210D via distributed taps 208A-208D (e.g., subscriber taps, etc.) distributed via coaxial cables to the network devices 116D-116D, respectively.
As the vehicle 202 travels along the path 206 and collects data associated with detected signal(s) emanating from with a network leak source (e.g., the network leak source 402), multiple samples may be accumulated by traversing different directions (e.g., vectors) through the radiation field in space. For example, the vehicle 202 may drive past the network leak source leak in multiple directions on a same street, around a corner, and/or through an alley, which may result in multiple samples/signals being detected along with corresponding data that may indicate a location, a speed, a direction, and/or a magnitude of the network leak. Such data along with the multiple samples/signals may be captured by the device 102 within the vehicle 202 and stored in the database 103. A network leak may essentially function, albeit unintentionally, as an antenna that produces a particularly-shaped radiation pattern based on the corresponding network leak type (referred to herein as an “RF radiation pattern”). Therefore, a particular network leak type may be identified according to its corresponding RF radiation pattern, which may be based on physical characteristics of the network leak source(s).
The RF radiation pattern 602 may be analyzed to determine a cause(s)/source(s) of the corresponding network leak(s). For example, as shown in
To normalize the RF radiation pattern 602 with respect to the known radiation pattern(s) stored in the database 103, a magnitude and/or a shape of the RF radiation pattern 602 may be adjusted. For example, an amplitude of the RF radiation pattern 602 may be scaled to match an amplitude of the known radiation pattern(s) (e.g., using a scaling factor). As another example, a phase of the RF radiation pattern 602 may be adjusted/scaled to match a phase of the known radiation pattern(s) (e.g., by a certain amount and/or using a phase correction technique(s)). As a further example, a frequency of the RF radiation pattern 602 may be normalized to match a frequency of the known radiation pattern(s). Other normalization techniques may be used as well.
The RF radiation pattern 602 (e.g., once normalized) may be rotated along the x, y and/or z axis a number of times each as shown in
The frequency of the RF radiation pattern 602 determined at each orientation/position of may be indicative of a signal type(s) being emitted and/or a frequency band associated with the signal(s). The strength of the RF radiation pattern 602 determined at each orientation/position of may be indicative of a severity of damage to the corresponding network infrastructure component, such as a cable/wire, etc., and/or an amount of leakage that is occurring. The polarization of the RF radiation pattern 602 determined at each orientation/position of may be indicative of an orientation of the corresponding network infrastructure component (e.g., cable/wire, etc.) as well as, in some examples, a type of the corresponding network infrastructure component (e.g., a type of a cable/wire, etc.). The shape of the RF radiation pattern 602 at each orientation/position of may be indicative of a location and/or an orientation of the damaged area(s) of the corresponding network infrastructure component (e.g., orientation of a cable/wire, etc.). The distortion associated with the RF radiation pattern 602 determined at each orientation/position of may be indicative of interference from a nearby object(s)/device(s) and/or a change(s) in an impedance of the corresponding network infrastructure component (e.g., impedance of a cable/wire, etc.).
The value(s) for each feature of the plurality of features associated with the RF radiation pattern 602 may vary depending on the particular orientation/position, and those value(s) may be compared against corresponding value(s) associated the known radiation pattern(s) (e.g., at each orientation/position). Such a comparison may be used to determine a known radiation pattern that best fits the RF radiation pattern 602. The best-fitting known radiation pattern may be associated with a particular network leak source(s) and/or a particular network leak type(s) (e.g., based on the mapping in the database 103). The particular network leak source(s) and/or the particular network leak type(s) may be determined to be associated with the RF radiation pattern 602 based on the comparison/best fit determination.
For example, the device 102 and/or another device(s) in communication therewith may comprise a multiclass classification model (e.g., a machine learning model). As further described herein, the multiclass classification model may receive an unknown RF radiation pattern (e.g., the RF radiation pattern 602) and/or value(s) for each feature of a plurality of features associated with the unknown RF radiation pattern as an input(s). The multiclass classification model may determine a best-fitting known radiation pattern based on the input(s). For example, the multiclass classification model may comprise a plurality of classification models that are each associated with a particular network leak source(s) and/or a particular network leak type(s), and the multiclass classification model may output a confidence score associated with the unknown RF radiation pattern and each classification model of the plurality of classification models. For example, each confidence score may indicate a corresponding level of confidence that the unknown RF radiation pattern is associated with a particular model of the plurality of classification models, and each particular model may be associated with a particular network leak source(s) and/or a particular network leak type(s).
Turning now to
Each RF radiation pattern, as well as the plurality of features derived/extracted therefrom, in the training datasets 810A, 810B may be labeled to indicate a particular network leak type(s) associated with that RF radiation pattern/features. The training datasets 810A, 810B may be based on, or comprise, the data stored in the database 103 described herein. Such data may be randomly assigned to the training dataset 810A, the training dataset 810B, and/or to a testing dataset. In some implementations, assignment may not be completely random and one or more criteria may be used during the assignment, such as ensuring that similar numbers of RF radiation patterns and corresponding features are in each of the training and testing datasets. In general, any suitable method may be used to assign the data to the training and/or testing datasets.
The training module 820 may train the classification model 830 by determining/extracting the features from the training dataset 810A and/or the training dataset 810B in a variety of ways. For example, the training module 820 may determine/extract a feature set from the training dataset 810A and/or the training dataset 810B by performing a 3D orbital analysis of each RF radiation pattern as described herein. The training module 820 may use the feature sets to generate classification models 840A-840N that are each associated with a particular network leak source(s) and/or a particular network leak type(s).
The training dataset 810A and/or the training dataset 810B may be analyzed to determine any dependencies, associations, and/or correlations between features in the training dataset 810A and/or the training dataset 810B. The identified correlations may have the form of a list of features that are associated with different labeled predictions. The term “feature,” as used herein, may refer to any characteristic of an item of data that may be used to determine whether the item of data falls within one or more specific categories or within a range. By way of example, the features described herein may comprise one or more features that may be correlative (or not correlative as the case may be) with a particular network leak type. A feature selection technique may comprise one or more feature selection rules. The one or more feature selection rules may comprise a feature occurrence rule. The feature occurrence rule may comprise determining which features in the training dataset 810A occur over a threshold number of times and identifying those features that satisfy the threshold as candidate features. For example, any features that appear greater than or equal to 5 times in the training dataset 810A may be considered as candidate features. Any features appearing less than 5 times may be excluded from consideration as a feature. Other threshold numbers may be used as well.
A single feature selection rule may be applied to select features or multiple feature selection rules may be applied to select features. The feature selection rules may be applied in a cascading fashion, with the feature selection rules being applied in a specific order and applied to the results of the previous rule. For example, the feature occurrence rule may be applied to the training dataset 810A to generate a first list of features. A final list of candidate features may be analyzed according to additional feature selection techniques to determine one or more candidate feature groups (e.g., groups of features that may be used to determine a prediction). Any suitable computational technique may be used to identify the candidate feature groups using any feature selection technique such as filter, wrapper, and/or embedded methods. One or more candidate feature groups may be selected according to a filter method. Filter methods include, for example, Pearson's correlation, linear discriminant analysis, analysis of variance (ANOVA), chi-square, combinations thereof, and the like. The selection of features according to filter methods are independent of any machine learning algorithms used by the system 800. Instead, features may be selected on the basis of scores in various statistical tests for their correlation with the outcome variable (e.g., a prediction).
As another example, one or more candidate feature groups may be selected according to a wrapper method. A wrapper method may be configured to use a subset of features and train the classification model 830 using the subset of features. Based on the inferences that may be drawn from a previous model, features may be added and/or deleted from the subset. Wrapper methods include, for example, forward feature selection, backward feature elimination, recursive feature elimination, combinations thereof, and the like. For example, forward feature selection may be used to identify one or more candidate feature groups. Forward feature selection is an iterative method that begins with no features. In each iteration, the feature which best improves the model is added until an addition of a new variable does not improve the performance of the model. As another example, backward elimination may be used to identify one or more candidate feature groups. Backward elimination is an iterative method that begins with all features in the model. In each iteration, the least significant feature is removed until no improvement is observed on removal of features. Recursive feature elimination may be used to identify one or more candidate feature groups. Recursive feature elimination is a greedy optimization algorithm which aims to find the best performing feature subset. Recursive feature elimination repeatedly creates models and keeps aside the best or the worst performing feature at each iteration. Recursive feature elimination constructs the next model with the features remaining until all the features are exhausted. Recursive feature elimination then ranks the features based on the order of their elimination.
As a further example, one or more candidate feature groups may be selected according to an embedded method. Embedded methods combine the qualities of filter and wrapper methods. Embedded methods include, for example, Least Absolute Shrinkage and Selection Operator (LASSO) and ridge regression which implement penalization functions to reduce overfitting. For example, LASSO regression performs L1 regularization which adds a penalty equivalent to absolute value of the magnitude of coefficients and ridge regression performs L2 regularization which adds a penalty equivalent to square of the magnitude of coefficients.
After the training module 820 has generated a feature set(s), the training module 820 may generate the classification models 840A-840N based on the feature set(s). A machine learning-based classification model (e.g., any of the classification models 840A-840N) may refer to a complex mathematical model for data classification that is generated using machine-learning techniques as described herein. In one example, a machine learning-based prediction model may include a map of support vectors that represent boundary features. By way of example, boundary features may be selected from, and/or represent the highest-ranked features in, a feature set. The training module 820 may use the feature sets extracted from the training dataset 810A and/or the training dataset 810B to build the classification models 840A-840N for each classification category (e.g., a particular network leak type). In some examples, the classification models 840A-840N may be combined into a single classification model 840 (e.g., an ensemble model). Similarly, the classification model 830 may represent a single classifier containing a single or a plurality of classification models 840 and/or multiple classifiers containing a single or a plurality of classification models 840 (e.g., an ensemble classifier).
The extracted features (e.g., one or more candidate features) may be combined in the classification models 840A-840N that are trained using a machine learning approach such as discriminant analysis; decision tree; a nearest neighbor (NN) algorithm (e.g., k-NN models, replicator NN models, etc.); statistical algorithm (e.g., Bayesian networks, etc.); clustering algorithm (e.g., k-means, mean-shift, etc.); neural networks (e.g., reservoir networks, artificial neural networks, etc.); support vector machines (SVMs); logistic regression algorithms; linear regression algorithms; Markov models or chains; principal component analysis (PCA) (e.g., for linear models); multi-layer perceptron (MLP) ANNs (e.g., for non-linear models); replicating reservoir networks (e.g., for non-linear models, typically for time series); random forest classification; a combination thereof and/or the like. The resulting classification model 830 may comprise a decision rule or a mapping for each candidate feature in order to assign a prediction to a class.
The classification model 830 may be trained to receive an unknown RF radiation pattern (e.g., the RF radiation pattern 602) and/or a value(s) for each feature of a plurality of features associated with the unknown RF radiation pattern and subsequently determine a best-fitting known radiation pattern based on the input(s). For example, the classification model 830 may comprise the classification models 840A-840N that are each associated with a particular network leak source(s) and/or a particular network leak type(s), and the classification model 830 may output a confidence score associated with the unknown RF radiation pattern and each classification model of the classification models 840A-840N. For example, each confidence score may indicate a corresponding level of confidence that the unknown RF radiation pattern is associated with a particular model.
At step 910, the training method 900 may determine (e.g., access, receive, retrieve, etc.) first training data and second training data (e.g., the training datasets 810A-810B). The first training data and the second training data may each comprise one or more RF radiation patterns and corresponding features and labels. The training method 900 may generate, at step 920, a training dataset and a testing dataset. The training dataset and the testing dataset may be generated by randomly assigning data from the first training data and/or the second training data to either the training dataset or the testing dataset. In some implementations, the assignment of data as training or test data may not be completely random. As an example, only the data for a specific network leak type(s) may be used to generate the training dataset and the testing dataset. The training method 900 may determine (e.g., extract, select, etc.), at step 930, one or more features that may be used by, for example, a classifier to differentiate among different classifications (e.g., predictions). The one or more features may comprise a set of features. As an example, the training method 900 may determine a set features from the first training data. As another example, the training method 900 may determine a set of features from the second training data.
The training method 900 may train one or more machine learning models (e.g., one or more prediction models, neural networks, deep-learning models, etc.) using the one or more features at step 940. In one example, the machine learning models may be trained using supervised learning. In another example, other machine learning techniques may be used, including unsupervised learning and semi-supervised. The machine learning models trained at step 940 may be selected based on different criteria depending on the problem to be solved and/or data available in the training dataset. For example, machine learning models may suffer from different degrees of bias. Accordingly, more than one machine learning model may be trained at 940, and then optimized, improved, and cross-validated at step 950.
The training method 900 may select one or more machine learning models to build the classification model 830 at step 960. The classification model 830 may be evaluated using the testing dataset. The classification model 830 may analyze the testing dataset and generate classification values and/or predicted values (e.g., predictions) at step 970. Classification and/or prediction values may be evaluated at step 980 to determine whether such values have achieved a desired accuracy level. Performance of the classification model 830 may be evaluated in a number of ways based on a number of true positives, false positives, true negatives, and/or false negatives classifications of the plurality of data points indicated by the classification model 830. Related to these measurements are the concepts of recall and precision. Generally, recall refers to a ratio of true positives to a sum of true positives and false negatives, which quantifies a sensitivity of the classification model 830. Similarly, precision refers to a ratio of true positives a sum of true and false positives. When such a desired accuracy level is reached, the training phase ends and the classification model 830 may be output at step 990; when the desired accuracy level is not reached, however, then a subsequent iteration of the training method 900 may be performed starting at step 910 with variations such as, for example, considering a larger collection of RF radiation patterns for one or more network leak types. The classification model 830 may be output at step 990.
The classification model 830, once trained according the method 900, may receive an unknown RF radiation pattern (e.g., the RF radiation pattern 602) and/or value(s) for each feature of a plurality of features associated with the unknown RF radiation pattern as an input(s). The classification model 830 may analyze/process the input(s) to determine a level of confidence that the unknown RF radiation pattern is associated with a particular network leak type (e.g., a confidence score). For example, as shown in
At step 1120, the computing device may determine a first plurality of features associated with the first RF radiation pattern and the first network leak. For example, the computing device may determine the first plurality of features based on the first representation of the first RF radiation pattern. The first plurality of features associated with the first RF radiation pattern may comprise at least one of: a maximum radiation power associated with first RF radiation pattern; a minimum radiation power associated with first RF radiation pattern; a direction of the maximum radiation; a direction of the minimum radiation power; a width of a main lobe of the first representation; a level of power associated with at least one side lobe of the first representation; a polarization of the first RF radiation pattern; a frequency of the first RF radiation pattern; an impedance of the first RF radiation pattern; and/or the like.
In some examples, determining the first plurality of features associated with the first RF radiation pattern and the first network leak may comprise normalizing a scale of the first representation based on a scale of at least one representation, of the plurality of representations of radiation patterns of a multiclass classification model, associated with the leak type associated with the first network leak. The multiclass classification model may comprise at least one of: a neural network, a support vector machine, a decision tree, or a random forest. Additionally, or in the alternative, determining the first plurality of features associated with the first RF radiation pattern and the first network leak may comprise determining a three-dimensional orbital analysis of the first RF radiation pattern. For example, the three-dimensional orbital analysis may be based on or comprise a series of rotations of the first representation.
At step 1120, the computing device may determine a leak type associated with the first network leak. For example, the computing device may determine the leak type based on the first plurality of features and the multiclass classification model. The multiclass classification model may comprise a plurality of representations of radiation patterns associated with a plurality of leak types. Each leak type of the plurality of leak types may be associated with at least one representation of the plurality of representations of radiation patterns of the multiclass classification model.
Determining the leak type associated with the first network leak may comprise determining a best fit representation, of the plurality of representations of radiation patterns of the multiclass classification model, associated with the first representation. For example, determining the best fit representation may be based on a plurality of features associated with each representation of the plurality of representations of radiation patterns of the multiclass classification model. Based on the radiation pattern associated with the best fit representation, the leak type associated with the first network leak may be determined. The radiation pattern associated with the best fit representation may be one of the plurality of leak types. At step 1130, the computing device output may an indication of the leak type associated with the first network leak. For example, the multiclass classification model may output the indication as a confidence score.
At step 1220, the computing device may determine a plurality of features defining a corresponding RF radiation pattern for each representation of the plurality of representations. Each representation of the plurality of representations may comprise a three-dimensional plot indicative of a distribution of RF energy in space as a function of direction with respect to a source of a network leak corresponding to one of the plurality of network leak types. The plurality of features associated with the each RF radiation pattern may comprise at least one of: a maximum radiation power associated with the first RF radiation pattern; a minimum radiation power associated with the first RF radiation pattern; a direction of the maximum radiation; a direction of the minimum radiation power; a width of a main lobe of the first representation; a level of power associated with at least one side lobe of the first representation; a polarization of the first RF radiation pattern; a frequency of the first RF radiation pattern; an impedance of the first RF radiation pattern; and/or the like.
At step 1220, the computing device may generate a multiclass classification model. For example, the computing device may generate the multiclass classification model based on the plurality of features for each representation of the plurality of representations. The multiclass classification model may comprise at least one of: a neural network, a support vector machine, a decision tree, or a random forest. At step 1220, the computing device may output (e.g., via the multiclass classification model) an indication of a network leak type of the plurality of network leak types. The indicated network leak type may be associated with a first network leak. The first network leak may comprise a first plurality of features. The first plurality of features may be associated with the plurality of features defining the corresponding RF radiation pattern associated with the network leak type.
At step 1320, the computing device may normalize a scale of the first representation. For example, the scale of the first representation may be normalized based on a scale of at least one representation of a plurality of representations of radiation patterns of a multiclass classification model. The plurality of representations of radiation patterns may be associated with the leak type associated with the first network leak. The multiclass classification model may comprise at least one of: a neural network, a support vector machine, a decision tree, or a random forest.
At step 1330, the computing device may determine a three-dimensional orbital analysis of the first RF radiation pattern. For example, the three-dimensional orbital analysis may be based on or comprise a series of rotations of the first representation. At step 1340, the computing device may determine a first plurality of features associated with the first RF radiation pattern and the first network leak. For example, each rotation of the series of rotations may be indicative of at least one feature of the first plurality of features. The first plurality of features associated with the first RF radiation pattern may comprise at least one of: a maximum radiation power associated with first RF radiation pattern; a minimum radiation power associated with first RF radiation pattern; a direction of the maximum radiation; a direction of the minimum radiation power; a width of a main lobe of the first representation; a level of power associated with at least one side lobe of the first representation; a polarization of the first RF radiation pattern; a frequency of the first RF radiation pattern; an impedance of the first RF radiation pattern; and/or the like.
At step 1350, the computing device may determine a leak type associated with the first network leak. For example, the computing device may determine the leak type based on the first plurality of features and the multiclass classification model. Determining the leak type associated with the first network leak may comprise determining a best fit representation, of the plurality of representations of radiation patterns of the multiclass classification model, associated with the first representation. For example, determining the best fit representation may be based on a plurality of features associated with each representation of the plurality of representations of radiation patterns of the multiclass classification model. Based on the radiation pattern associated with the best fit representation, the leak type associated with the first network leak may be determined. The radiation pattern associated with the best fit representation may be one of the plurality of leak types. At step 1360, the computing device may output an indication of the leak type associated with the first network leak. For example, the multiclass classification model may output the indication as a confidence score.
In an example, the methods and systems may be implemented on a computer 1401 as shown in
The present methods and systems may be operational with numerous other general purpose or special purpose computing system environments or configurations. Examples of well-known computing systems, environments, and/or configurations that may be suitable for use with the systems and methods comprise, but are not limited to, personal computers, server computers, laptop devices, and multiprocessor systems. Additional examples comprise set top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments that comprise any of the above systems or devices, and the like.
The processing of the disclosed methods and systems may be performed by software components. The disclosed systems and methods may be described in the general context of computer-executable instructions, such as program modules, being executed by one or more computers or other devices. Generally, program modules comprise computer code, routines, programs, objects, components, data structures, and/or the like that perform particular tasks or implement particular abstract data types. The disclosed methods may also be practiced in grid-based and distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in local and/or remote computer storage media such as memory storage devices.
Further, one skilled in the art will appreciate that the systems and methods disclosed herein may be implemented via a general-purpose computing device in the form of a computer 1401. The computer 1401 may comprise one or more components, such as one or more processors 1403, a system memory 1412, and a bus 1413 that couples various components of the computer 1401 comprising the one or more processors 1403 to the system memory 1412. In the case of multiple processors 1403, the computer 1401 may utilize parallel computing.
The bus 1413 may comprise one or more of several possible types of bus structures, such as a memory bus, memory controller, a peripheral bus, an accelerated graphics port, or local bus using any of a variety of bus architectures. By way of example, such architectures may comprise an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MCA) bus, an Enhanced ISA (EISA) bus, a Video Electronics Standards Association (VESA) local bus, an Accelerated Graphics Port (AGP) bus, and a Peripheral Component Interconnects (PCI), a PCI-Express bus, a Personal Computer Memory Card Industry Association (PCMCIA), Universal Serial Bus (USB) and the like. The bus 1413, and all buses specified in this description may also be implemented over a wired or wireless network connection and one or more of the components of the computer 1401, such as the one or more processors 1403, a mass storage device 1404, an operating system 1405, leakage testing software 1406, leakage testing data 1407, a network adapter 1408, the system memory 1412, an Input/Output Interface 1410, a display adapter 1409, a display device 1411, and a human machine interface 1402, may be contained within one or more remote computing devices 1414A-1014C at physically separate locations, connected through buses of this form, in effect implementing a fully distributed system.
The computer 1401 may operate on and/or comprise a variety of computer-readable media (e.g., non-transitory). Computer-readable media may be any available media that is accessible by the computer 1401 and comprises non-transitory, volatile, and/or non-volatile media, removable and non-removable media. The system memory 1412 has computer-readable media in the form of volatile memory, such as random access memory (RAM), and/or non-volatile memory, such as read-only memory (ROM). The system memory 1412 may comprise data such as the leakage testing data 1407 and/or program modules such as the operating system 1405 and the leakage testing software 1406 that are accessible to and/or are operated on by the one or more processors 1403.
The computer 1401 may also comprise other removable/non-removable, volatile/non-volatile computer storage media. The mass storage device 1404 may provide non-volatile storage of computer code, computer-readable instructions, data structures, program modules, and other data for the computer 1401. The mass storage device 1404 may be a hard disk, a removable magnetic disk, a removable optical disk, magnetic cassettes or other magnetic storage devices, flash memory cards, CD-ROM, digital versatile disks (DVD) or other optical storage, random access memories (RAM), read-only memories (ROM), electrically erasable programmable read-only memory (EEPROM), and the like.
Any number of program modules may be stored on the mass storage device 1404, such as, by way of example, the operating system 1405 and the leakage testing software 1406. One or more of the operating system 1405 and the leakage testing software 1406 (or some combination thereof) may comprise elements of the programming and the leakage testing software 1406. The leakage testing data 1407 may also be stored on the mass storage device 1404. The leakage testing data 1407 may be stored in any of one or more databases known in the art. Examples of such databases comprise, DB2®, Microsoft® Access, Microsoft® SQL Server, Oracle®, mySQL, PostgreSQL, and the like. The databases may be centralized or distributed across multiple locations within the network 1415.
A user may enter commands and information into the computer 1401 via an input device (not shown). Such input devices may comprise, but are not limited to, a keyboard, pointing device (e.g., a computer mouse, remote control), a microphone, a joystick, a scanner, tactile input devices such as gloves, and other body coverings, motion sensor, and the like These and other input devices may be connected to the one or more processors 1403 via a human-machine interface 1402 that is coupled to the bus 1413, but may be connected by other interface and bus structures, such as a parallel port, game port, an IEEE 1394 Port (also known as a Firewire port), a serial port, network adapter 1408, and/or a universal serial bus (USB).
A display device 1411 may also be connected to the bus 1413 via an interface, such as a display adapter 1409. It is contemplated that the computer 1401 may have more than one display adapter 1409 and the computer 1401 may have more than one display device 1411. A display device 1411 may be a monitor, an LCD (Liquid Crystal Display), light-emitting diode (LED) display, television, smart lens, smart glass, and/or a projector. In addition to the display device 1411, other output peripheral devices may comprise components such as speakers (not shown) and a printer (not shown) which may be connected to the computer 1401 via Input/Output Interface 1410. Any step and/or result of the methods may be output (or caused to be output) in any form to an output device. Such output may be any form of visual representation, including, but not limited to, textual, graphical, animation, audio, tactile, and the like. The display 1411 and computer 1401 may be part of one device, or separate devices.
The computer 1401 may operate in a networked environment using logical connections to one or more remote computing devices 1414A-1014C. By way of example, a remote computing device 1414A-1014C may be a personal computer, computing station (e.g., workstation), portable computer (e.g., laptop, mobile phone, tablet device), smart device (e.g., smartphone, smart watch, activity tracker, smart apparel, smart accessory), security and/or monitoring device, a server, a router, a network computer, a peer device, edge device or other common network node, and so on. Logical connections between the computer 1401 and a remote computing device 1414A-1014C may be made via a network 1415, such as a local area network (LAN) and/or a general wide area network (WAN). Such network connections may be through the network adapter 1408. The network adapter 1408 may be implemented in both wired and wireless environments. Such networking environments are conventional and commonplace in dwellings, offices, enterprise-wide computer networks, intranets, and the Internet.
Application programs and other executable program components such as the operating system 1405 are illustrated herein as discrete blocks, although it is recognized that such programs and components may reside at various times in different storage components of the computing device 1401, and are executed by the one or more processors 1403 of the computer 1401. An implementation of the leakage testing software 1406 may be stored on or transmitted across some form of computer readable media. Any of the disclosed methods may be performed by computer readable instructions embodied on computer readable media. Computer readable media may be any available media that may be accessed by a computer. By way of example and not meant to be limiting, computer readable media may comprise “computer storage media” and “communications media.” “Computer storage media” may comprise volatile and non-volatile, removable and non-removable media implemented in any methods or technology for storage of information such as computer readable instructions, data structures, program modules, or other data. Exemplary computer storage media may comprise RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which may be used to store the desired information and which may be accessed by a computer.
The methods and systems may employ artificial intelligence (AI) techniques such as machine learning and iterative learning. Examples of such techniques comprise, but are not limited to, expert systems, case based reasoning. Bayesian networks, behavior based AI, neural networks, fuzzy systems, evolutionary computation (e.g. genetic algorithms), swarm intelligence (e.g. ant algorithms), and hybrid intelligent systems (e.g. Expert inference rules generated through a neural network or production rules from statistical learning).
While specific configurations have been described, it is not intended that the scope be limited to the particular configurations set forth, as the configurations herein are intended in all respects to be possible configurations rather than restrictive.
Unless otherwise expressly stated, it is in no way intended that any method set forth herein be construed as requiring that its steps be performed in a specific order. Accordingly, where a method claim does not actually recite an order to be followed by its steps or it is not otherwise specifically stated in the claims or descriptions that the steps are to be limited to a specific order, it is no way intended that an order be inferred, in any respect. This holds for any possible non-express basis for interpretation, including: matters of logic with respect to arrangement of steps or operational flow; plain meaning derived from grammatical organization or punctuation; the number or type of configurations described in the specification.
It will be apparent to those skilled in the art that various modifications and variations may be made without departing from the scope or spirit. Other configurations will be apparent to those skilled in the art from consideration of the specification and practice described herein. It is intended that the specification and described configurations be considered as exemplary only, with a true scope and spirit being indicated by the following claims.