obtaining a label of a data cluster of events detected in the rf measurement data
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- KONINK KPN NV
- Filing Date
- 2024-12-02
- Publication Date
- 2026-08-07
AI Technical Summary
[0008]使用经预先训练的分类器的缺陷在于:针对所有潜在信道测量进行预先训练在技术上是困难的,需要站点特定信道测量数据以及该数据将与哪些设备相关这二者的先验知识或估计;并且预先训练由于站点特定变化而带来不太准确的分类
Smart Images

Figure CN122536178A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a system and sensing device for acquiring tags of multiple data clusters that describe events.
[0002] The present invention further relates to a method for acquiring tags for multiple data clusters and a method for determining whether a sensing device has detected an event, the data describing the event.
[0003] The present invention also relates to one or more computer program products that enable a computer system to perform such methods. Background Technology
[0004] Integrated / Joint Sensing and Communication (ISAC / JSAC) is expected to become a core capability of 5G+ networks, which are expected to orchestrate sensing functions and communication between devices on the network.
[0005] As part of research in this field, some focus has been placed on extracting sensing data from existing communication signals, with the goal of avoiding the requirements of dedicated sensing signals, such as radar. These systems have been referred to as “passive” or “environmental” radio sensing systems. The paper “Radio Sensing Using 5G Signals: Concepts, State-of-the-art and Challenges” by Chen, Y., Zhang, J., Feng, W., and Alouini, M.-S., published in IEEE Internet of Things Journal 1-1 (2021) (doi:10.1109 / jiot.2021.3132494), provides a comprehensive overview of radio sensing using the latest fifth-generation (5G) signals.
[0006] Such passive radio sensing systems can rely on features derived from channel or signal metrics (such as Channel State Information (CSI), Received Signal Strength (RSS), and Cellular Signal Quality (CSQ)) that are typically measured at the base station or UE during routine communication tasks. Other data used include Raw Signal Samples (RRRS), packet error rate, time delay, Doppler shift, and link quality information. Features can then be derived from these channel and signal metrics to train the learning system to recognize the occurrence of specific events. Commonly used features include changes in data mean, variance, or entropy measurements.
[0007] To identify the occurrence of a specific event, a learning system must be trained to assign patterns in sensed data to categories. This typically requires a large dataset of extracted features or example channel or signal measurements that have already been labeled with categories. Unless sensed data is classified using a pre-trained classifier, the sensed data derived from channel or signal measurements will initially have unknown relevance to devices in the environment.
[0008] The drawbacks of using a pre-trained classifier are: pre-training for all potential channel measurements is technically difficult, requiring prior knowledge or estimates of both site-specific channel measurement data and which devices that data will be associated with; and pre-training can lead to less accurate classifications due to site-specific variations. Therefore, a learning system trained on a general dataset may lack accuracy due to the specific variations in the environment in which it is installed. Furthermore, this requires prior knowledge of the types of events to be sensed in the environment, which may not be fully known. Summary of the Invention
[0009] The primary objective is to provide a system capable of detecting and classifying specific events in radio frequency measurement data without requiring a pre-trained classifier.
[0010] The second objective is to provide a method for detecting and classifying specific events in radio frequency measurement data without the need for a pre-trained classifier.
[0011] In a first aspect, a system for acquiring tags for multiple data clusters includes at least one processor describing events, the processor being configured to acquire radio frequency measurement data associated with multiple communication links, each of the multiple communication links being between two network devices of a plurality of network devices, the multiple network devices including multiple sensing devices, detecting events occurring in the environment of the multiple sensing devices by analyzing the radio frequency measurement data, acquiring data describing the events from the radio frequency measurement data, clustering the data describing the events into multiple clusters based on the similarity of the data describing the events, and acquiring tags for the multiple clusters by querying one or more of the multiple sensing devices whether one or more of the detected events were also detected and / or based on passive monitoring timing of transmissions from one or more of the multiple sensing devices at one or more of the detected events.
[0012] By using radio frequency measurement data to detect and classify specific events, there is no need for sensing devices to share raw data, meaning data privacy is always maintained. Labels are acquired through passive monitoring timing based on the transmissions from one or more sensing devices at the time of one or more detected events, without the need for a pre-trained classifier, and training is performed in situ. A cluster can have a single label or multiple labels.
[0013] For example, the timing of transmissions from low-capability edge nodes (LCNs) can be passively monitored. LCNs are typically devices consisting only of low-power sensors and basic hardware for communication, and they typically transmit sensor data almost immediately upon detection, allowing the correlation between the occurrence of an event and the transmission of traffic from the sensor device. Using this passive approach, there is no need to change the communication or behavior of the sensing device.
[0014] There is a growing interest in battery-powered, high-performance edge nodes (HCNs). HCNs are IoT devices that include advanced hardware such as power-dense sensors and an internal MCU for data preprocessing, and typically transmit data only periodically, making it uncorrelated between the time a sensor device broadcasts data and the time it detects something the sensor is "interested in." These HCNs can be queried about one or more detected events. To maintain privacy, sensing devices are not required to request indications of whether sensed RF events are relevant to them, meaning their functionality or capabilities cannot be learned if they are not involved. Utilizing this proactive approach, tags can be acquired with minimal messaging.
[0015] Clustering can be performed in a manner similar to that described by Jason Wu et al. in their paper "Automatic Class Discovery and One-Shot Interactions for Acoustic Activity Recognition," published in the proceedings of the 2020 CHI Conference on Human Factors in Computing Systems, pp. 1-14 (April 2020) (https: / / doi.org / 10.1145 / 3313831.3376875). This paper describes a low-user-burden method for class assignment. This method involves collecting acoustic data over time from the environment, which can indicate the occurrence of initially unknown events. The data is automatically clustered based on statistical similarity.
[0016] The paper further describes how, once a high-quality cluster has been formed, the system searches for labels from human users the next time an acoustic event matching that cluster occurs. This is done by verbally asking questions such as "What's that sound?", allowing users to respond with answers like "It's a microwave oven." This response can then be used as the category label for the entire cluster. This labeling method still requires input from human users and is therefore not ideal.
[0017] Each tag in a given cluster can identify one or more sensing devices among multiple sensing devices and indicate the relevance of data in the given cluster to said one or more sensing devices. For some applications, such as wake-up and data sharing, knowing the relevance of an event to a sensing device is sufficient.
[0018] Each tag can specify whether the relevance is positive or negative for each sensing device identified in the tag. For example, this can be used to more reliably determine the confidence level of cluster tags. Alternatively, the fact that a sensing device is identified in the tag can indicate a positive relevance, while the fact that no sensing device is identified in the tag can indicate a negative relevance or that the relevance has not yet been determined.
[0019] At least one processor can be configured to acquire new radio frequency measurement data, detect new events occurring in an environment with multiple sensing devices by analyzing the new radio frequency measurement data, acquire new data describing the new events from the new radio frequency measurement data, classify the new data into clusters of multiple clusters, and identify one or more sensing devices identified in the labels of the clusters.
[0020] For certain applications, such as wake-up and data sharing, the sensing device needs to be identified first. New events can be detected using one or more cluster classifiers trained with acquired labels. For example, a cluster classifier can be trained on a cluster basis, such as a Support Vector Machine (SVM).
[0021] Recent research has developed "event-driven" self-wake-up for HCNs via basic sensors that are continuously supplied with low power to trigger the wake-up of the rest of the HCN in the event of a detected event. However, these "low-power" sensing modes still drain a significant amount of power. When the sensing device can be woken up by the system based on RF measurement data, it can remain in extremely low-power modes for longer periods, thus conserving resources.
[0022] At least one processor may be configured to transmit one or more wake-up messages to at least one or more identified sensing devices to notify the identified one or more sensing devices that a relevant event has been detected and to allow the identified one or more sensing devices to decide whether to transition from a low-power mode to a high-power mode. The wake-up messages may be sent only to the identified one or more sensing devices along with one or more unicast messages, or along with broadcast messages identifying the identified one or more sensing devices.
[0023] At least one processor may be configured to transmit one or more data sharing messages to at least one or more identified sensing devices and / or one or more additional systems associated with the one or more identified sensing devices, each of the one or more data sharing messages including radio frequency data or a proposal to share radio frequency data. The data sharing messages may be sent only to the one or more identified sensing devices along with one or more unicast messages, or along with broadcast messages identifying the one or more identified sensing devices.
[0024] Additional RF sensing data can be provided to the sensing device or its associated systems (e.g., the sensor device's supplier) to increase their existing data flow with little or no additional overhead. The sensing device may even prefer to remain in a low-power state (e.g., sleep) for longer periods rather than recording and reporting all sensing data itself.
[0025] At least one processor can be configured to determine at least one of cluster accuracy and cluster tag confidence, and to include at least one of cluster accuracy and cluster tag confidence in one or more wake-up messages and / or in one or more data sharing messages. This allows the sensing device (or associated system) itself to determine whether waking up and / or receiving RF sensing data from the system is beneficial.
[0026] At least one processor can be configured to determine the accuracy of a cluster and / or the tag confidence of a cluster, compare the cluster accuracy with a first threshold and / or compare the cluster tag confidence with a second threshold, and transmit one or more wake-up messages and / or one or more data-sharing messages if the cluster accuracy exceeds the first threshold and / or the cluster tag confidence exceeds the second threshold. Thus, the system determines whether it is beneficial to wake up the sensing device (or associated system) and / or receive RF sensing data from the system. This results in fewer messages compared to when only the sensing device makes this decision. However, the system may not always be able to make the optimal decision on behalf of the sensing device (or associated system).
[0027] At least one processor can be configured to acquire tags by querying one or more sensing devices in a first group to see if they also detected one or more events in the first group, and based on the passive monitoring timing of transmissions from one or more sensing devices in a second group when one or more events are detected in the second group, wherein the first and second groups of sensing devices are disjoint. By combining active and passive methods, tag accuracy can be improved.
[0028] At least one processor can be configured to determine whether one or more criteria have been met, and if so, to query one or more sensing devices to see if they have also detected one or more detected events. This can be used to reduce the number of message transmissions. For example, sensing devices may only be queried about an event if their response would likely be useful.
[0029] At least one processor can be configured to determine whether one or more criteria have been met by determining the accuracy of a cluster, comparing the accuracy of the cluster to a threshold, and determining whether one or more criteria have been met based on the accuracy of the cluster exceeding the threshold. If the accuracy of the cluster is low, the responses from one or more sensing devices may be less useful.
[0030] In a second aspect, a sensing device includes at least one processor configured to receive from a system a message querying an event, the message specifying the time of the event, determining whether the sensing device detected the event at the specified time based on the specified time and sensing data collected by the sensing device, and transmitting a response message to the system in response to the message, the response message including information about the detected event if the sensing device detected the event at the specified time. For example, if the sensing device detected the event at the specified time, the response message may indicate "relevant," and otherwise indicate "irrelevant." The message may further specify the location, direction, and / or heading of the event.
[0031] In a third aspect, a sensing device includes at least one processor configured to receive a wake-up message from a system, the wake-up message including cluster accuracy and / or cluster tag confidence, and if the sensing device is in a low-power mode, to compare the cluster accuracy of the cluster with a first threshold and / or the cluster tag confidence with a second threshold, and if it is determined that the cluster accuracy exceeds the first threshold and / or the cluster tag confidence exceeds the second threshold, to decide to enter a high-power mode.
[0032] In a fourth aspect, a method for acquiring tags for multiple data clusters describing events includes acquiring radio frequency (RF) measurement data associated with multiple communication links, each of which is between two network devices of multiple network devices, the multiple network devices including multiple sensing devices; detecting events occurring in the environment of the multiple sensing devices by analyzing the RF measurement data; acquiring data describing the events from the RF measurement data; clustering the data describing the events into multiple clusters based on the similarity of the data describing the events; and acquiring tags for the multiple clusters by querying one or more of the multiple sensing devices whether one or more of the detected events were also detected and / or based on passive monitoring timing of transmissions from one or more of the multiple sensing devices at the time of one or more of the detected events. This method can be executed by software running on a programmable device. The software can be provided as a computer program product.
[0033] In a fifth aspect, a method for determining whether a sensing device has detected an event includes receiving a message from a system querying for an event, the message specifying the time of the event; determining, based on the specified time and sensing data collected by the sensing device, whether the sensing device detected the event at the specified time; and, in response to the message, transmitting a response message to the system, the response message including information about the detected event if the sensing device detected the event at the specified time. This method can be executed by software running on a programmable device. The software can be provided as a computer program product.
[0034] In addition, a computer program for performing the methods described herein is provided, as well as a non-transitory computer-readable storage medium for storing the computer program. For example, the computer program may be downloaded or uploaded to an existing device, or stored during the manufacture of these systems.
[0035] A non-transitory computer-readable storage medium stores at least a first software code portion that, when executed or processed by a computer, is configured to perform executable operations for acquiring tags of a plurality of data clusters describing events.
[0036] The executable operations include acquiring radio frequency measurement data associated with multiple communication links, each of which is between two network devices in a plurality of network devices, including multiple sensing devices; detecting events occurring in the environment of the multiple sensing devices by analyzing the radio frequency measurement data; acquiring data describing the events from the radio frequency measurement data; clustering the data describing the events into multiple clusters based on the similarity of the data describing the events; and acquiring labels for the multiple clusters by querying one or more of the multiple sensing devices whether one or more of the detected events were also detected and / or based on the passive monitoring timing of transmissions from one or more of the multiple sensing devices at one or more of the detected events.
[0037] A non-transitory computer-readable storage medium stores at least a second software code portion, which, when executed or processed by a computer, is configured to perform executable operations for determining whether a sensing device has detected an event.
[0038] The executable operations include receiving a message from the system that queries about an event, specifying the time of the event; determining, based on the specified time and sensing data collected by the sensing device, whether the sensing device detected the event at the specified time; and, in response to the message, transmitting a response message to the system, which includes information about the detected event if the sensing device detected the event at the specified time.
[0039] As will be appreciated by those skilled in the art, some aspects of the invention can be embodied as an apparatus, method, or computer program product. Therefore, some aspects of the invention can take the form of a completely hardware embodiment, a completely software embodiment (including firmware, resident software, microcode, etc.), or an embodiment combining software and hardware aspects, which are generally referred to herein as “circuit,” “module,” or “system.” The functionality described in this disclosure can be implemented as an algorithm executed by a computer’s processor / microprocessor. Furthermore, some aspects of the invention can take the form of a computer program product embodied in one or more computer-readable media having computer-readable program code embodied, for example, stored thereon.
[0040] Any combination of one or more computer-readable media can be used. A computer-readable medium can be a computer-readable signal medium or a computer-readable storage medium. A computer-readable storage medium can be, for example, but not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatuses, or devices, or any suitable combination thereof. More specific examples of computer-readable storage media may include, but are not limited to, electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disc read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In the context of this invention, a computer-readable storage medium can be any tangible medium capable of containing or storing a program for use by or in connection with an instruction execution system, apparatus, or device.
[0041] A computer-readable signal medium may include propagated data signals of computer-readable program code embodied therein, for example, embodied in baseband or as part of a carrier wave. Such propagated signals may take any of a variety of forms, including but not limited to electromagnetic, optical, or any suitable combination thereof. A computer-readable signal medium may be any computer-readable medium that is not a computer-readable storage medium and may be transmitted, propagated, or transported for use by or in connection with an instruction execution system, apparatus, or device.
[0042] Program code embodied on a computer-readable medium may be transmitted using any suitable medium, including but not limited to wireless, wired, fiber optic, cable, RF, or any suitable combination thereof. Computer program code used to perform operations of some aspects of this invention may be written in any combination of one or more programming languages, including object-oriented programming languages such as Java™, Smalltalk, C++, etc., and traditional procedural programming languages such as the "C" programming language or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a stand-alone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0043] Some aspects of the invention are described below with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be appreciated that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, particularly a microprocessor or central processing unit (CPU), to produce a machine such that the instructions, executable via the processor of the computer, other programmable data processing apparatus, or other device, create means for implementing the functions / actions specified in one or more blocks of the flowchart illustrations and / or block diagrams.
[0044] These computer program instructions may also be stored in a computer-readable medium that can instruct a computer, other programmable data processing apparatus or other device to operate in a particular manner, such that the instructions stored in the computer-readable medium produce an article of writing comprising instructions that implement the functions / actions specified in one or more boxes of a flowchart and / or block diagram.
[0045] Computer program instructions may also be loaded onto a computer, other programmable data processing apparatus or other equipment to cause a series of operational steps to be performed on the computer, other programmable apparatus or other equipment, thereby producing a computer-implemented process, such that the instructions, which execute on the computer or other programmable apparatus, provide a process for implementing the functions / actions specified in one or more boxes of a flowchart and / or block diagram.
[0046] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of devices, methods, and computer program products according to various embodiments of the present invention. In this respect, each block in the flowchart or block diagram may represent a module, segment, or code portion comprising one or more executable instructions for implementing one or more specified logical functions.
[0047] It should also be noted that in some alternative implementations, the functions marked in the boxes may not appear in the order shown in the diagram. For example, two boxes shown consecutively may actually be executed substantially simultaneously, or these boxes may sometimes be executed in reverse order, depending on the functionality involved. It will also be noted that each box in the block diagram and / or flowchart, as well as combinations of boxes in the block diagram and / or flowchart, may be implemented by a dedicated hardware system or a combination of dedicated hardware and computer instructions that performs the specified function or action. Attached Figure Description
[0048] These and other aspects of the invention are apparent from the figures, and are further illustrated by way of example with reference to the figures, in which: Figure 1 A flowchart of a first embodiment of a method for obtaining tags; Figure 2 A flowchart of a second embodiment of the method for obtaining tags; Figure 3 A flowchart of a third embodiment of the method for obtaining tags; Figure 4 A flowchart of the fourth embodiment of the method for obtaining tags; Figure 5 A flowchart of a fifth embodiment of the method for obtaining tags; Figure 6 A flowchart of a portion of a sixth embodiment of a method for obtaining tags; Figure 7 A flowchart of the seventh embodiment of the method for obtaining tags; Figure 8 A flowchart of the eighth embodiment of the method for obtaining tags; Figure 9 Block diagrams of embodiments of the system and embodiments of the sensing device; and Figure 10This is a block diagram of an exemplary data processing system for performing the methods of the present invention.
[0049] The corresponding components in the diagram are represented by the same reference numbers.
[0050] Detailed description of the attached figures Figure 1 The image illustrates a first embodiment of a method for obtaining labels for multiple data clusters. The data describes events. For example, the method can be derived from... Figure 9 The system 1 is executed. Step 101 includes acquiring radio frequency measurement data associated with multiple communication links. Each of the multiple communication links is between two network devices in a plurality of network devices. The multiple network devices include multiple sensing devices. The multiple network devices may, for example, include a base station (BS) and its UE. In this case, for example, it can be performed individually for each of the multiple cells. Figure 1 The method.
[0051] Step 103 involves detecting events occurring in the environment of multiple sensing devices by analyzing the radio frequency measurement data acquired in step 101. An event is a physical event in that environment, the occurrence of which can be inferred from fluctuations in the RF channel / signal measurements of network devices involved in normal communication. Events may include environmental changes, such as a door opening or closing, a vehicle parking in an area, or someone entering a room. Events may include any repetitive actions that produce consistent, measurable changes in the RF channel / signal measurements.
[0052] Step 104 includes obtaining data describing the event detected in step 103 from the radio frequency measurement data obtained in step 101. Step 105 includes clustering the data describing the event, as obtained in step 104, into multiple clusters based on the similarity of the data describing the event. For example, clustering can be performed in a manner similar to that described in the aforementioned paper, “Automatic Class Discovery and One-Shot Interactions for Acoustic Activity Recognition”.
[0053] Step 107 includes acquiring tags for multiple clusters by querying one or more of the multiple sensing devices to see if they have also detected one or more detected events and / or based on passive monitoring timing of transmissions from one or more of the multiple sensing devices at the time of one or more detected events. The sensing devices also detect events. For example: Smart security cameras can monitor room occupancy, where room occupancy can be one of the detected events; An environmental control system can monitor the open / closed status of windows or doors, where changes in the status of windows or doors can be detected events. Parking space occupancy sensors can monitor the occupied / unoccupied status of parking spaces, where changes in occupancy can be detected as events.
[0054] Once sensing devices detect an event, they can transmit data and / or indicate whether they detected the event at a certain time. Each tag in a corresponding cluster of multiple clusters can identify one or more sensing devices among the multiple sensing devices and indicate the relevance of data in the corresponding cluster to said one or more sensing devices. In this case, for example, each tag can specify whether the relevance is positive or negative for each sensing device identified in the tag. Therefore, any given cluster tag assigned to a cluster can, for example, include only the sensing device ID associated with that cluster, and an optional "positive" or "negative" tag (i.e., confirming relevance or confirming no relevance). This will refer to Figure 2 To describe in more detail.
[0055] Instead of sensing devices, or in addition to sensing devices, tags can also identify events and directly indicate what the event is described by the corresponding data cluster. For example, a cluster tag can indicate that a given cluster contains data describing the "door open" event. In this case, the cluster tag is not specific to a given sensing device. Such cluster tags can be requested from one or more sensing devices when one or more sensing devices are queried in step 107 whether they have also detected one or more detected events.
[0056] When tags are acquired in step 107 based on the passive monitoring timing of transmissions from one or more sensing devices at one or more detected events, the correlation between the event and the sensing device can be determined with high certainty; however, the true nature of the event (what is actually happening) will typically be unknown at any given time. Furthermore, Figure 2-8 One or more steps of one or more embodiments can be added Figure 1 In the embodiments described above.
[0057] Figure 2 The image illustrates a second embodiment of a method for obtaining labels for multiple data clusters. The data describes events. For example, the method can be derived from... Figure 9 System 1 executes.
[0058] Step 101 includes acquiring radio frequency measurement data associated with multiple communication links. Each of the multiple communication links is between two network devices in a plurality of network devices. The plurality of network devices includes multiple sensing devices.
[0059] Multiple network devices may include a group of UEs in a given cell and a base station serving the UEs in that cell. For example, multiple network devices may include a single base station that communicates with one UE at a time, depending on the current schedule. In this case, at any given time, a communication link may be active, and that active communication link is between the base station and the UE with which it is communicating.
[0060] Alternatively, if device-to-device communication is employed, multiple communication links may be active at any given time. In addition to the communication link between the base station and the UE communicating with it, active communication links also involve any UE-UE pairs currently in communication. Therefore, communication links may include BS-UE, UE-BS, and / or direct UE-UE communication links.
[0061] Network devices include the hardware required to communicate with each other via RF communication channels. Network devices communicate according to standard communication schemes. During normal communication operation, network devices record and report communication signals on the communication link or RF measurement data on the channel.
[0062] For example, as part of standard communication protocols, RF measurement data is periodically measured for each communication link and then reported. For instance, RF measurement data may include one or more of the following types of data: Channel State Information (CSI), for a single antenna pair, consists of a single measurement of channel gain. In the case of multiple antennas (e.g., MIMO), CSI consists of a matrix of channel gains for each antenna pair. In the case of multiple antennas, each channel gain in the matrix can be processed as a separate item in the RF measurement data in the same way that, for example, CSI and RSS can usually be processed separately. This will only affect the dimensionality of the data.
[0063] Received signal strength (RSS) can be measured at the UE and expressed as a single dB value.
[0064] Cellular signal quality (CSQ) or reference signal received power (RSRP) can be measured at the UE and expressed as a single dB value.
[0065] Other types of data, such as packet error rate, time delay, Doppler, and link quality information.
[0066] In a BS-UE scenario, RF measurement data can be measured at the UE or base station, on the downlink, uplink, or both. It can also depend on the specific type of RF measurement data being measured: RSS can be measured at the UE or BS, CSI can be measured at the UE or BS, and CSQ can be measured at the UE (typically when it is in idle mode). RF measurement data is timestamped (this is done using the communication standards used for most types of RF measurement data).
[0067] Typically, only physically static RF measurement data is used, i.e., RF measurements of communication links between network devices that are fixed in the environment. This is because the physical movement of network devices will produce changes in the RF measurement data, even though no events (necessarily) occur in the environment.
[0068] Multiple sensing devices can collect sensor data and may include, for example: High-performance edge node (HCN): The device may include A. High-power sensors (such as cameras and LiDAR) operate when the HCN is in high-power mode; B. Optionally and additionally, a low-power sensor (e.g., an optical sensor) operates when the HCN is in a low-power mode; C. Optionally and additionally, a wake-up circuit switches the HCN from a low-power mode to a high-power mode. This can be triggered when an event is detected by a low-power sensor; D. Optionally and additionally, hardware and software enable some degree of preprocessing or classification of the data collected by high-energy-consuming sensors. Due to this preprocessing, it is assumed that the HCN will not immediately transmit sensor data upon detecting an event.
[0069] Lower-performing edge nodes (LCNs): These are devices that consist only of low-power sensors and basic hardware for communication. Therefore, it is assumed that the LCN will transmit sensor data when an event is detected, leading to a correlation between the occurrence of events of interest to the sensors and communication traffic from the sensors.
[0070] Sensing devices typically have a unique identifier.
[0071] Step 121 involves generating an RF time series for each communication link from the RF measurement data and associated timestamps obtained in step 101. Therefore, the RF time series represents the RF measurement data for each communication link over time. If the RF measurement data includes multiple data types (RSS, CSI, CSQ, etc.), the RF time series can be multidimensional, tracking multiple metrics (each metric corresponding to a data type) on a single timeline. If an RF time series has already been generated, newly reported RF measurement data can be appended to the existing RF time series based on their timestamps.
[0072] Step 103 includes detecting events occurring in an environment with multiple sensing devices by analyzing the radio frequency measurement data acquired in step 101. Figure 2 In the embodiment, step 103 is implemented by step 123.
[0073] Step 123 involves applying an adaptive segmentation method to the RF time series generated in step 121 to identify segments representing (potential) events. Step 123 may include, for example, identifying and extracting segments in the RF time series where RF measurement data values exceed or fall below a threshold. For example, the threshold may be static and predefined. The threshold may also be adaptive, such as a multiplication factor relative to previous time windows (e.g., "when the value reaches 1.5 times the average value over the previous 10 seconds given by the time series").
[0074] For multidimensional RF time series, threshold checks can be performed independently on each dimension (usually using different thresholds). If any dimension exceeds or falls below the threshold, an RF time series segment is generated. In this case, the RF time series segment that does not contain the RF measurements of interest can be discarded.
[0075] Step 104 includes acquiring data describing the event detected in step 103 from the radio frequency measurement data acquired in step 101. Figure 2 In this embodiment, step 104 is implemented by step 125. Step 125 includes converting the RF time series segments identified in step 123 into vector representations of RF features, for example by extracting RF features using a pre-trained “RF embedding model” or by using a set of predefined computations.
[0076] As a first example, step 125 may include performing a set of predefined computations on the RF time series segments to return vector representations of RF features, where the elements are measures of a known type. In this first example, RF features are numeric vectors representing individual RF time series segments. Common RF measures that can be used as RF features include: Time-domain metrics The mean or average of RF measurements on a time series segment.
[0077] Variance of RF measurements on time series segments.
[0078] Central moments measured by RF on time series segments.
[0079] Frequency domain metric (obtainable by performing a Fourier transform on the time series). Spectral energy.
[0080] entropy.
[0081] RF features can be computed on each dimension of an RF time series segment. For example, variances can be computed separately on the RSS and CSQ dimensions (if available), and then processed as individual elements of the RF feature vector. The computation varies depending on the metric, but may include: 1. For time-domain features, where d w It is the Wth point of the RF measurement data within the RF time series segment, where W is the total number of points.
[0082] a. mean or average, b. Variance c. nth order central moment, 2. For frequency domain features, where D q It is the q-th point of the Fourier transform of the RF measurement data within the RF time series segment, where a. Spectral energy, b. Entropy ,in As a second example, a (single) RF embedding model can be pre-trained on a dataset consisting of different RF measurement data types (e.g., CSI, RSS, CSQ, etc.) to return a single RF feature (vector) for each identified RF time series segment. In this example, the RF features generated in step 125 will be low-dimensional vector representations of the initial RF time series segments, preserving most of the useful information for clustering and classification purposes.
[0083] RF embedding models can, for example, include convolutional neural networks (CNNs). This CNN can be trained by inputting training examples, each of which includes RF time-series segments and corresponding human-crafted RF features. By removing the original output layer from the trained CNN and instead using the output from the hidden layers, it becomes possible to utilize non-human-crafted RF features.
[0084] RF embedding model methods are superior to predefined computation methods because in RF embedding models: For the purpose of classification later, RF features are inherently more information-intensive and require less data to be stored for successful classification; It is possible to identify and utilize non-human-designed RF features without having to rely on a limited set of well-known RF features; Multimodal datasets (such as RF time series fragments) can be compressed into fewer or single RF feature embeddings, reducing the complexity of systems that process (one or more) RF features.
[0085] Step 127 involves storing the RF features generated in step 125, for example, in a cluster database. This cluster database can be housed in the base station (which would help maintain low latency) or in any other network-connected hardware. When step 127 is performed for the first time, the RF features are stored unclustered. After step 127 has been performed, step 105 is performed.
[0086] Step 105 involves clustering the data describing the events, as obtained in step 104, into multiple clusters based on the similarity of the data describing the events. After the RF features have been clustered in step 105, the RF features stored in step 127 can be associated with their cluster IDs. Figure 2 In the embodiment, step 105 is implemented by step 129.
[0087] Step 129 involves using an unsupervised clustering method to infer the boundaries between RF features, thereby forming clusters of RF features. Thus, by minimizing the intra-cluster variance, clusters consist of groups of RF features inferred to represent similar (or identical) but unknown events. Clusters can be identified by assigned IDs. The first execution of step 129 produces one or more initial clusters. The next execution of step 129 fine-tunes the clusters; new clusters can be generated, and old clusters can be removed.
[0088] Many unsupervised clustering methods exist in this field. For example, hierarchical agglomerative clustering can be used. Initially, each node (i.e., each RF feature) can be assigned to its own cluster—thus, there are as many clusters as there are nodes. The clusters are then iteratively combined to form larger clusters. The first combination takes the two closest clusters (i.e., the initial two closest nodes) and clusters them together. The midpoint or centroid between these two clusters becomes the centroid of the new cluster. This process is then repeated for the next two closest clusters, and so on. Clustering stops when a cluster reaches a termination condition, such as a certain diameter, radius, or density (number of nodes per unit volume). Once this termination condition is met, the final cluster is preserved and assigned a cluster ID.
[0089] Next, step 131 includes generating a cluster classifier based on the clusters formed in step 129. For example, the cluster classifier may include a set of state vector machines (SVMs), wherein each SVM in the set is trained on data in and associated with a given cluster.
[0090] For example, for each cluster, the cluster classifier algorithm can initiate the training of a class of SVMs trained on the RF features within that cluster. As part of the training, an F1 score can be calculated for each SVM (and therefore each cluster) and saved as cluster accuracy. This cluster accuracy, for example, can be stored in the aforementioned cluster database. The cluster classifier is constructed as a set of SVMs trained by cluster. Therefore, given new RF features, the cluster classifier is able to classify those RF features and assign them an existing cluster ID. Using a cluster classifier generally offers at least two advantages: It enables faster predictions: for new RF features, a cluster classifier can be run to assign them to specific clusters without having to re-cluster them every time; It enables the evaluation of classification accuracy for each cluster via an F1 score metric.
[0091] Steps 129-131 do not need to be executed every time steps 101, 121, 123, 125, and 127 are performed, nor do they need to be executed immediately after step 127 has been executed. Steps 129-131 and steps 133-147 are typically part of two processes that occur at different time scales. Steps 129-131 are repeated periodically to update the clusters and retrain the cluster classifier accordingly. This is a slower process because re-clustering and retraining the classifier takes time. For example, this might happen once a day or every 6 hours. This could also be triggered by specific conditions, such as low average cluster accuracy. It could also be triggered upon request from a system operator.
[0092] If steps 129 and 131 have been performed at least once, and the RF measurement data acquired in the most recent iteration of step 101 is new RF measurement data, then a new event is detected in the most recent iteration of step 123, and new data describing the new event is acquired from the new RF measurement data in the most recent iteration of step 125, and then step 133 is performed additionally after step 127, typically immediately after step 127.
[0093] Step 133 involves classifying the new data into a cluster from a set of multiple clusters. Next, step 135 involves determining the accuracy of the cluster into which the new data was classified in step 133. For example, this cluster accuracy can be retrieved from the aforementioned cluster database.
[0094] Step 137 includes comparing the cluster accuracy with a first threshold T1. If it is determined in step 137 that the cluster accuracy exceeds the first threshold T1, then steps 107 and 139 are performed. If it is determined in step 137 that the cluster accuracy does not exceed the first threshold T1, then step 101 is repeated, and the method is as follows. Figure 2 As shown in the diagram. In an alternative embodiment, based on the result of step 137, only one of steps 107 and 139 is executed, that is, either step 107 or step 139 is always executed, or steps 135 and 137 are omitted and steps 107 and 139 are always executed.
[0095] If the cluster accuracy does not exceed the first threshold T1, this does not necessarily mean that the new RF measurement data is irrelevant to the event. Cluster accuracy is a measure of how well the data in a cluster correlate—that is, how tightly the cluster is packed, or how unique it is as a cluster. Lower cluster accuracy means that individual instances of RF measurement data are less correlated within the cluster, indicating that the cluster is of "lower quality." If a cluster has low cluster accuracy, it may simply mean that more measurements are needed to better define the cluster, or it may mean that the cluster does not truly represent an event that was previously unknown.
[0096] Step 107 includes acquiring a cluster's tag by querying one or more of the multiple sensing devices to see if one or more detected events were also detected and / or based on passive monitoring timing of transmissions from one or more of the multiple sensing devices at the time of one or more detected events. If one or more tags were acquired for the same cluster in a previous iteration of step 107, the previously acquired tags(one or more) can be fine-tuned, or one or more additional tags can be acquired for the cluster in step 107. Figure 2 In one embodiment, step 107 further includes calculating the label confidence of the cluster, for example, with respect to... Figure 5 The way it is described.
[0097] exist Figure 2In one embodiment, step 107 is performed only if the accuracy of the cluster exceeds a first threshold T1. In an alternative embodiment, step 135 may include determining whether one or more other criteria have been satisfied alternatively or additionally, and if it is determined in step 137 that one of the criteria determined in step 135 has been satisfied, then step 107 is performed.
[0098] Step 139 includes determining the cluster's label and label confidence. Step 139 may include acquiring multiple labels for the cluster and their corresponding label confidences. For example, step 139 can be performed after step 107 has been performed, or steps 139 and 107 can be performed in parallel (in the latter case, the chance that the label cannot yet be determined may be higher). Step 107 requires that the cluster has been performed at least once to be able to determine the cluster's label, but if new RF measurement data was clustered into the cluster in step 133, and a label was acquired for the cluster based on previous RF measurement data in a previous iteration of step 107, then it is not necessary to acquire a label for the new RF measurement data in the current iteration of step 107. For example, in the current iteration of step 107, the label can then be fine-tuned.
[0099] Step 141 includes comparing the label confidence of each label of the cluster with a second threshold T2 if it is possible to determine the label and label confidence of the cluster in step 139.
[0100] If it is determined that the label confidence of at least one label in the cluster exceeds the second threshold T2, then step 143 is executed. If it is determined in step 141 that the label confidence of no label in the cluster exceeds the second threshold T2, then step 101 is repeated, and the method is as follows: Figure 2 The process is as shown. In an alternative embodiment, if the accuracy of cluster determination in step 137 exceeds a first threshold T1, steps 139 and 141 are omitted, and step 143 is always performed.
[0101] If new RF measurement data is clustered into a cluster, and the label confidence of that cluster does not exceed the second threshold T2, the RF measurement data is still assumed to be relevant to the event because the cluster has already been labeled. However, this only means that the confidence in that assignment is below an acceptable threshold. In this case, one can try to increase the label confidence by repeating the process until a stronger statistical correlation is found.
[0102] Step 143 includes identifying one or more sensing devices identified in the tags of the cluster. If multiple tags were identified in step 139, sensing devices are identified only from tags whose tag confidence exceeds a second threshold T2. Optionally, steps 145 and / or 147 are performed after step 143. Step 145 includes transmitting one or more wake-up messages to at least a subset of the one or more sensing devices identified in step 143 to notify the identified one or more sensing devices that a relevant event has been detected and to allow the identified one or more sensing devices to decide whether to transition from a low-power mode to a high-power mode.
[0103] The one or more wake-up messages transmitted in step 145 are typically sent to a high-performance edge node (HCN). The HCN can choose to spend as much time as possible in a very low-power state and rely on execution... Figure 2 The system's method wakes them up when it detects a relevant event.
[0104] Wake-up messages can include standard messages designed to notify sensing devices in low-power mode that a relevant event has occurred, and may optionally provide them with relevant information, such as cluster tag confidence and cluster accuracy, to help them decide whether to enter high-power mode. Wake-up messages are typically transmitted via a base station to one or more identified sensing devices. One or more sensing devices receive one or more wake-up messages and decide whether to wake up.
[0105] Step 147 includes transmitting one or more data sharing messages to one or more sensing devices or subsets thereof identified in step 143, and / or to one or more additional systems associated with one or more sensing devices or subsets thereof identified in step 143. Therefore, once a cluster has been associated with a given sensing device, RF data can be shared with the sensing device or its vendor.
[0106] Each of one or more data sharing messages includes RF data or a proposal to share RF data. The shared data may include any and all raw RF measurement data, RF time series, RF characteristics, or simply indicators that an event has occurred. For example, data may be shared or provided for sharing whenever a relevant cluster is assigned a new RF characteristic.
[0107] In certain implementations, the data sharing message may include a proposal to share RF data; that is, if no data sharing proposal message has previously been sent to the sensing device, the data sharing message can be a data sharing proposal message. If a data sharing offer message has already been sent, no action is taken. In cases where the relevant data is directly shared with the supplier, the sensing device may remain in a low-power mode or be completely powered off. In this case, the data sharing system acts as a complete bypass, rather than a data enhancement system.
[0108] The receiving device receives the data sharing offer message and decides whether it wants to receive RF data. If the receiving device is a sensing device or another device owned by the vendor, this decision can be made by the receiving device's internal hardware and software according to internal protocols, or by a human operator of the receiving device (e.g., in a smart home scenario).
[0109] The data sharing offer message may include data that the receiving device can use to decide whether to activate data sharing, such as the associated sensor ID and / or cluster tag confidence and cluster accuracy. If the receiving device wants to enable data sharing, the data sharing offer message may also include a standard template for returning sharing settings. Sharing settings may be stored in a settings database. For each cluster in the cluster database, the settings database stores settings related to sharing the RF data associated with that cluster, such as: A binary indicator for each cluster tag (i.e., each sensing device ID in this embodiment) indicates whether RF data should be shared when updating the cluster; The RF data will be transmitted to the routing address of each cluster tag. This routing address can be associated with the sensing device, but it can also be associated with another device owned by the vendor (e.g., in the case where the sensing device is being bypassed). The types of RF data to be shared may include simple event indicators that reveal that a relevant event has occurred, raw RF measurement data collected at a previous time period, RF time series and / or RF features.
[0110] Optionally, the cluster accuracy determined in step 135 and / or the cluster tag confidence determined in step 139 may be included in one or more wake-up messages transmitted in step 143 and / or one or more data sharing messages transmitted in step 147. As a first example, if one or more wake-up messages include cluster tag confidence and cluster accuracy, one or more sensing devices receiving one or more wake-up messages may use the cluster accuracy and cluster tag confidence to determine whether to wake up.
[0111] The sensing device can compare cluster accuracy and cluster label confidence with an internal threshold, which can be a default value or set by the owner of the sensing device. As a second example, if the data sharing proposal message includes cluster label confidence and cluster accuracy, the receiving device can use the cluster accuracy and cluster label confidence to decide whether to accept the proposal.
[0112] These method steps are repeated sequentially. For example, if step 133 is not executed after step 127, step 101 can be repeated after step 131 has been executed, and otherwise step 101 can be repeated after step 143 and optional steps 145 and 147 have been executed, after which the method proceeds as follows. Figure 2 As shown in the diagram. Furthermore... Figure 3-8 One or more steps of one or more embodiments can be added Figure 2 Examples of implementations.
[0113] Figure 3 A third embodiment of a method for obtaining labels for multiple data clusters is shown. For example, the method can be... Figure 9 System 1 executes. Figure 3 The embodiment is Figure 2 An extension of the embodiments. In Figure 3 In the embodiments, Figure 1 Step 107 is implemented by step 161.
[0114] Step 161 includes obtaining tags for multiple clusters by querying one or more of the multiple sensing devices to see if they have also detected one or more detected events. Each tag of a corresponding cluster in the multiple clusters can identify one or more of the multiple sensing devices and indicate the relevance of data in the corresponding cluster to the one or more sensing devices.
[0115] Instead of sensing devices, or even in addition to sensing devices, tags can also identify events and directly indicate what the event is described by the corresponding data cluster. For example, a cluster tag can indicate that a given cluster contains data describing the "door open" event. In this case, the cluster tag is not specific to a given sensing device. To achieve this, a standard set of event identifiers can be shared among devices that identify specific events, where each event identifier is associated with a single event or event type.
[0116] For example, a "door open" event can have a unique event identifier associated with it. Sensing devices can run applications that analyze the sensor data they collect to identify specific events and assign them event identifiers. Other network-connected devices owned by the sensing device vendor can run similar applications.
[0117] The one or more tag requests transmitted in step 161 may differ when a tag identifies an event from when a tag identifies one or more sensing devices. Tag requests transmitted to one or more sensing devices and / or one or more vendor-operated devices may explicitly request an event identifier. Step 107 may then include assigning the received event identifier to a cluster as a cluster tag.
[0118] Optionally, step 161 may precede a step that includes selecting an HCN node from multiple sensing nodes, for example... Figure 7 Step 191. Then in step 161, these HCN nodes are queried whether they have also detected one or more of the detected events. As previously mentioned, these battery-powered, high-performance edge nodes are typically IoT devices that include advanced hardware such as power-intensive sensors for data preprocessing and an internal MCU, and typically only transmit data periodically, making it uncorrelated between the time when the sensor device broadcasts and the time when it has detected something the sensor is “interested in.”
[0119] Cluster tag confidence can be calculated in step 107. Cluster tag confidence can be calculated differently when a tag identifies an event versus when it identifies a sensing device. For example, cluster tag confidence can be calculated based on the level of conflict between event identifiers received by different sensing devices / vendor devices that should be assigned to the same cluster. For instance, if one sensing device reports an event as "door closed" while another sensing device reports an event as "kitchen cabinet closed" for a given cluster, a lower cluster tag confidence can be assigned.
[0120] in addition, Figure 2 , 5 One or more steps of one or more embodiments of 8 can be added Figure 3 Examples of implementations. In Figure 3 In one embodiment, step 107 does not include acquiring the tags of multiple clusters based on the passive monitoring timing of transmissions from one or more of the multiple sensing devices at one or more detected events.
[0121] Figure 4 A fourth embodiment of a method for obtaining labels for multiple data clusters is illustrated. For example, this method can be implemented by... Figure 9 System 1 executes. Figure 4 The embodiment is Figure 2 An extension of the embodiments. In Figure 4 In the embodiments, Figure 1 Step 107 is implemented by step 171.
[0122] Step 171 includes acquiring tags for multiple clusters based on passive monitoring timing of transmissions from one or more of a plurality of sensing devices at one or more detected events. This step may be preceded by an optional step including selecting an LCN node from multiple sensing nodes, for example... Figure 7 Step 193. Then, in step 171, tags can be acquired based on the passive monitoring timing of transmissions from these LCN nodes at one or more detected events. As previously mentioned, these low-performance edge nodes typically consist only of low-power sensors and basic hardware for communication, and typically transmit sensor data upon detection, thereby allowing the occurrence of an event to be correlated with the delivery of services from the sensor devices.
[0123] exist Figure 4 In this embodiment, step 107 does not include obtaining the tags of multiple clusters by querying one or more of the multiple sensing devices to see if they have also detected one or more detected events. Additionally, Figure 2 , 6 One or more steps of one or more embodiments of 8 can be added Figure 4 In the embodiments described above.
[0124] Figure 5 This document illustrates a portion of a fifth embodiment of a method for acquiring labels for multiple data clusters. This fifth embodiment is... Figure 3 An extension of the embodiments. Figure 5 An embodiment of a method for determining whether a sensing device has detected an event is also shown. For example, the method may be... Figure 9 The sensing devices 31 and 32 perform the operation.
[0125] exist Figure 5 In the embodiments, Figure 3 Step 161 includes sub-steps 164, 165, 166, 167, and 168. Step 164 includes System 1 acquiring timestamps of data describing the events detected in step 103 (e.g., describing new events). This data is acquired in step 104 and clustered into a cluster in step 105.
[0126] Step 165 includes generating a set of tag requests. These tag requests are meant to enable a sufficiently "intelligent" sensing device to know when an event associated with it has occurred, and thus be able to report this to System 1, such as a High Performance Edge Node (HCN). For example, a sensing device may know when an event associated with it has occurred because its low-power sensor has triggered its wake-up, suggesting that the event has occurred, or because software on the device has been established to confirm that the event has occurred.
[0127] If the aforementioned cluster does not have any cluster label (positive or negative, i.e., confirmed relevant or confirmed irrelevant), an initial label request is generated for that cluster. An initial label request can be generated in which a timestamp (i.e., the time of the event) is included as part of its query. The initial label request is addressed to any waking sensing device capable of responding to the label request and not under heavy communication load. As described above, multiple network devices may, for example, include a base station and its UE. Multiple sensing devices are included in multiple network devices.
[0128] The initial tagging request may include a message asking "Did something relevant to you happen at <timestamp>", where <timestamp> is the aforementioned timestamp. Expected responses may include affirmative ("Yes"), negative ("No"), or ambiguous ("I'd rather not say") responses. If the cluster has one or more existing cluster tags, an initial tagging request is also generated, but now it is for a set of sensing devices that explicitly excludes sensing devices corresponding to existing cluster tags.
[0129] In addition, for any existing cluster label with low association cluster label confidence, a fine-tuning label request is generated for the corresponding sensing device. The fine-tuning label request may include a message asking, “The event at <timestamp> is predicted to be relevant to you. Is this correct?” The expected response may include an affirmative (“Yes”), a negative (“No”), or an ambiguous (“I’d rather not say”) response.
[0130] Furthermore, for any existing cluster tag with high association cluster tag confidence, fine-tuning tag requests can be generated for the corresponding sensing device in certain situations. Fine-tuning tag requests can be generated for one or more of these sensing devices if a predefined time period has elapsed since the tag request was last sent to one or more of these corresponding sensing devices.
[0131] Tag request messages can specify not only the time of the event but also other information related to the event, such as the event's location, direction, and / or heading. For example, if System 1 has collected RF measurement data from two network devices and, by analyzing that data, has concluded that an event has occurred, it may be able to estimate that the event occurred somewhere between the locations of those network devices, if the locations of those devices are known to the system. This location information can then be passed to a sensing device, which uses it to determine the relevance of the event it detected.
[0132] Similarly, if System 1 has access to the antenna information of network devices, information about the direction / heading of the event can be estimated / is known to System 1, which is highly likely when System 1 is a base station or part of a base station. Such additional information (e.g., location, direction, heading) can be used to more accurately determine tag confidence. For example, a sensing device may detect an event at a specific moment / time specified by System 1, but the event could occur at a different location / area / direction / heading than that specified by System 1.
[0133] The sensing device can be selected as the recipient of the tag request based on factors such as the following: Sensing the current status of the device, such as whether it is awake, its current business level, etc.; A sensing device with a history of requesting tag requests, such as a sensing device that always responds with an "uncertain" response, can send fewer tag requests or even avoid them altogether, and / or if a sensing device has recently been sent a tag request, it may not be sent a tag request.
[0134] Step 166 includes system 1 transmitting the tag request generated in step 165 to the receiver sensing device, for example via a base station. The timing of the tag request transmission can be determined based on factors such as the sensing device's communication or wake-sleep schedule. Step 181 includes sensing device 31 receiving one of the tag requests from system 1, for example via a base station. The tag request is a message that queries sensing device 31 about an event. This message specifies the time of the event, i.e., it includes the timestamp obtained in step 164.
[0135] Step 182 includes the sensing device determining, based on a specified time and sensing data collected by the sensing device, whether the sensing device detected an event at the specified time. Step 183 includes the sensing device responding to the message by transmitting a response message to system 1, for example, via a base station. If the sensing device detected an event at the specified time, the tag response message includes information about the detected event. In a simple implementation, this information only indicates that the sensing device detected an event at the specified time.
[0136] Step 167 includes system 1 receiving a tag response from the sensing device. Step 168 includes system 1 processing the tag response received in step 167. Appropriate actions are taken for each tag response, for example: If the cluster involved in the tag response does not yet have a cluster tag corresponding to the sensing device from which it received the tag response: If the tag response is positive, a cluster tag consisting of the sensing device ID and a "positive" tag is generated. An initial (low) cluster tag confidence level is assigned. If the tag response is negative, a cluster tag consisting of the sensing device ID and the "negative" tag is generated. An initial (low) cluster tag confidence level is assigned. If the label response is ambiguous, no action is taken; If no response is received from the tag, no action is taken.
[0137] If the cluster involved in the tag response already has a cluster tag corresponding to the sensing device from which the tag response was received: If the label response is positive and the cluster label is also positive, then increase the cluster label confidence. If the label response is positive but the cluster label is negative, the cluster label confidence level is reduced. Once the cluster label confidence level drops below a certain threshold, negative cluster labels are discarded due to (hypothetical) inaccuracy. If the label response is negative and the cluster label is negative, then increase the cluster label confidence. If the label response is negative and the cluster label is positive, the cluster label confidence is reduced. Once the cluster label confidence drops below a certain threshold, positive cluster labels are discarded due to (hypothetical) inaccuracy.
[0138] If cluster labels are generated in step 168, then in step 168, for example in a cluster database, cluster labels, including or along with cluster label confidence levels, are assigned to clusters. Alternatively, as described above, for example in a cluster database, cluster label confidence levels can be adjusted or cluster labels can be removed. Furthermore, Figure 2-3 One or more steps of one or more embodiments of 8 can be added Figure 5 In the embodiments described above.
[0139] Figure 6 This document illustrates a portion of a sixth embodiment of a method for acquiring labels for multiple data clusters. This sixth embodiment is... Figure 4 An extension of the embodiments. In Figure 4 and 6 In this embodiment, cluster tags are assigned to clusters based on passive monitoring of communications from sensing devices. Some sensing devices, such as low-performance edge nodes (LCNs), transmit data as soon as they measure it, resulting in a very strong correlation between the timing of events of interest and communications from the sensing devices.
[0140] exist Figure 6 In the embodiments, Figure 4Step 171 includes sub-steps 164, 175, 176, and 177. Step 164 includes System 1 acquiring timestamps of data describing the events detected in step 103 (e.g., new events). This data is acquired in step 104 and clustered into a cluster in step 105.
[0141] Step 175 includes System 1 acquiring the sensor device ID and communication time of any sensing devices that communicated within a given time window after the time given by the timestamp. Step 176 includes System 1 determining the correlation level between the timestamp acquired in step 164 and the communication time acquired in step 174. Step 176 includes System 1 determining a correlation metric for each sensing device.
[0142] Step 177 includes determining, by sensing device, whether the corresponding relevance metric determined in step 176 exceeds a predefined threshold. If the relevance metric exceeds the predefined threshold and no cluster tag corresponding to the sensing device is associated with the cluster, a cluster tag is generated. The cluster tag consists of the associated sensing device ID and a "positive" label. The relevance metric is retained as the associated cluster tag confidence level. In step 177, for example in a cluster database, the cluster tag, including or along with the cluster tag confidence level, is assigned to the cluster.
[0143] If the corresponding correlation metric exceeds a predefined threshold, and the cluster label corresponding to the sensing device is already associated with that cluster, then the confidence of the associated cluster label is updated, for example, by replacing it with the correlation metric. If the correlation metric exceeds a predefined threshold for a sensing device, then the correlation is considered sufficiently strong for that sensing device. If combined... Figure 2 and 6 The embodiment, and performs on new RF measurement data after step 107 has been executed. Figure 2 Step 139 will then be Figure 2 In step 141, it is determined that at least the tag confidence LC corresponding to the tag of the sensing device exceeds the second threshold T2, and at least the sensing device will... Figure 2 It is identified in step 143. Then, steps 145 and / or 147 can be performed for at least this sensing device for the new RF measurement data.
[0144] If the corresponding relevance metric does not exceed a predefined threshold, no cluster labels are generated, and the cluster label confidence scores are not updated. Furthermore, Figure 2 , 4 One or more steps of one or more embodiments of 8 can be added Figure 6 In the embodiments described above.
[0145] Figure 7A seventh embodiment of a method for obtaining labels for multiple data clusters is shown. For example, the method can be derived by... Figure 9 System 1 executes. Figure 7 The embodiment is Figure 3 and 4 A combination of embodiments. In Figure 7 In the embodiments, Figure 1 Step 107 includes Figure 3 Step 161 and Figure 4 Step 171. Therefore, both active and passive marking are performed simultaneously.
[0146] After step 105 has been performed, steps 191 and 193 are performed. Step 191 involves selecting an HCN node from a plurality of sensing nodes. As previously mentioned, these battery-powered, high-performance edge nodes are typically IoT devices that include advanced hardware such as power-intensive sensors for data preprocessing and an internal MCU, and typically transmit data only periodically, making it uncorrelated between the time when the sensor device broadcasts data and the time when it detects something the sensor is “interested in.”
[0147] Step 193 involves selecting an LCN node from a plurality of sensing nodes. As previously described, these low-performance edge nodes typically consist only of low-power sensors and basic hardware for communication, and typically transmit sensor data upon detection, thereby allowing the occurrence of events and the transmission of services from sensor devices to be correlated.
[0148] Figure 3 Step 161 is executed after step 191. Figure 4 Step 171 is executed after step 191. Furthermore, Figure 2 , 5 One or more steps of one or more embodiments of 6 and 8 can be added Figure 7 In the embodiments described above.
[0149] Figure 8 The eighth embodiment of the method for obtaining labels of multiple data clusters is shown in the figure. Figure 8 The embodiment is Figure 1 An extension of the embodiments.
[0150] It has already been executed. Figure 1 Following step 107, new radio frequency (RF) measurement data is acquired in step 201. Step 203 includes detecting new events occurring in the environment of multiple sensing devices by analyzing the new RF measurement data acquired in step 201. Step 204 includes acquiring new data describing the new events from the new RF measurement data.
[0151] Step 133 includes classifying the new data acquired in step 204 into clusters of multiple clusters. Step 135 includes determining the accuracy of the cluster into which the new data was classified in step 133. Step 139 includes determining one or more labels for the cluster and the corresponding label confidence. Step 143 includes identifying one or more sensing devices identified in the one or more labels of the cluster.
[0152] Step 207 includes transmitting one or more wake-up messages to at least a subset of the one or more sensing devices identified in step 143 to notify the one or more identified sensing devices that a relevant event has been detected and to allow the one or more identified sensing devices to decide whether to transition from a low-power mode to a high-power mode. The one or more wake-up messages include cluster accuracy and / or cluster tag confidence. The wake-up messages may be sent only to the one or more identified sensing devices along with one or more unicast messages, or along with broadcast messages identifying the one or more identified sensing devices.
[0153] After step 207 has been executed, step 201 is repeated, and then the method is as follows: Figure 8 The process is as shown. Optionally, one or more fine-tuning / additional labels are obtained for the clusters to which the new data is classified in step 133, as shown regarding... Figure 2 Step 107 described ( Figure 8 (Not shown in the image). Optionally, clusters can be refined based on new data describing new events, such as those related to... Figure 2 Step 129 described ( Figure 8 (Not shown in the image).
[0154] Step 211 includes sensing device 31 receiving one of one or more wake-up messages from system 1. Step 213 includes sensing device 31 determining whether it is in low power (LP) mode, and if so, performing step 215. Step 215 includes sensing device 31 comparing the cluster accuracy CA of the clusters included in the received wake-up message with a first threshold T3, and / or comparing the cluster label confidence LC included in the received wake-up message with a second threshold T4.
[0155] If it is determined that the cluster accuracy CA exceeds the first threshold T3 and / or the cluster tag confidence LC exceeds the second threshold T4, then step 217 is executed. Step 217 includes the sensing device 31 entering a high-power mode. Furthermore, Figure 2-7 One or more steps of one or more embodiments can be added Figure 8 In the embodiments described above.
[0156] Figure 9 This is a block diagram of an embodiment of a system for acquiring tags and an embodiment of a sensing device. Figure 9System 1 can be configured to execute Figures 1 to 8 One or more methods. In Figure 9 In one embodiment, system 1 is separate from any base station and UE, and can be located, for example, in a radio access network. In an alternative embodiment, system 1 can be a base station. This would be beneficial for maintaining low latency.
[0157] Base station 11 is the central access point for a UE in a cell (e.g., a gNB on a 5G network). Base station 11 has a radio interface and access to the core network. For example, base station 11 may include multiple distributed units that share a common centralized unit in a centralized RAN (C-RAN) architecture.
[0158] exist Figure 9 In this embodiment, base station 11 provides coverage to six UEs 31-36, where UEs 31-34 are sensing devices. UEs 31-36 include the hardware and software required to measure or estimate and report CSI data of their channels to their base station. For example, a single instance of CSI data may consist of a measured channel matrix describing the channel at a given time in time. Sensing devices 31-32 are HCNs. Sensing devices 33-34 are LCNs. Base station 11 and UEs 31-36 are referred to as network devices.
[0159] System 1 includes a receiver 3, a transmitter 4, a processor 5, and a memory 7. The processor 5 is configured to acquire radio frequency (RF) measurement data associated with multiple communication links (e.g., communication links 51-56). The RF measurement data may originate from base station 11 and / or from UEs 31-36, and may be received from / via base station 11. Each of the multiple communication links exists between multiple network devices, such as two network devices, network device 11 and 31-36. The multiple network devices include multiple sensing devices, such as sensing devices 31-34.
[0160] The processor 5 is further configured to detect events occurring in an environment with multiple sensing devices (e.g., sensing devices 31-34) by analyzing radio frequency measurement data, to obtain data describing the events from the radio frequency measurement data, and to cluster the data describing the events into multiple clusters based on the similarity of the data describing the events.
[0161] The processor 5 is further configured to acquire tags of multiple clusters by querying one or more of the multiple sensing devices, such as sensing devices 31-32, whether they also detected one or more detected events, and / or based on the passive monitoring timing of transmissions from one or more of the multiple sensing devices, such as sensing devices 33-34, at one or more detected events.
[0162] To acquire tags based on passive monitoring timing of transmissions, processor 5 can be configured to execute an algorithm that monitors communications from one or more sensing devices (e.g., sensing devices 33-34) to identify sensing devices communicating within a predefined time window when new RF characteristics enter a cluster database, which can be stored in memory 7. For example, the algorithm can return the associated sensing device ID and the communication timing of any communications occurring within the time window.
[0163] Sensing devices 31 and 32 each include a receiver 43, a transmitter 44, a processor 45, and a memory 47. The processor 45 is configured to receive a message from another system (e.g., system 1) via base station 11, inquiring about an event and specifying the time of the event; determine, based on the specified time and sensing data collected by the sensing devices, whether the sensing devices detected the event at the specified time; and, in response to the message, transmit a response message to the other device. If the sensing devices detected the event at the specified time, the response message includes information about the detected event. For example, the processor 45 may be configured to perform... Figure 5 Steps 181-183.
[0164] Additionally or alternatively, processor 45 is configured to receive a wake-up message from another device, including cluster accuracy and / or cluster tag confidence, and if the sensing device is in a low-power mode, compare the cluster accuracy with a first threshold and / or the cluster tag confidence with a second threshold, and if it is determined that the cluster accuracy exceeds the first threshold and / or the cluster tag confidence exceeds the second threshold, decide to enter a high-power mode. For example, processor 45 may be configured to perform... Figure 8 Steps 211-217.
[0165] exist Figure 9 In the illustrated embodiment, system 1 includes a processor. In alternative embodiments, system 1 includes multiple processors. For example, processor 5 may be a general-purpose processor, such as an Intel or AMD processor, or a dedicated processor. For example, processor 5 may include multiple cores. For example, processor 5 may run a Unix-based or Windows-based operating system. Memory 7 may include solid-state storage, such as one or more solid-state drives (SSDs) made of flash memory, or one or more hard disks.
[0166] Receiver 3 and transmitter 4 can communicate with other systems using one or more communication technologies (wired or wireless). Receiver 3 and transmitter 4 can be combined in a transceiver. System 1 may include other components typical of a network system, such as a power supply.
[0167] exist Figure 9In the illustrated embodiment, sensing devices 31-32 include a processor 45. In alternative embodiments, one or more sensing devices 31-32 include multiple processors. Processor 45 may be a general-purpose processor, such as an ARM or Qualcomm processor, or a dedicated processor. For example, processor 45 may run Google Android or Apple iOS as an operating system.
[0168] The receiver 43 and transmitter 44 of sensing devices 31-32 can use one or more wireless communication technologies, such as Wi-Fi, LTE, and / or 5G New Radio, to communicate with, for example, a base station. The receiver 43 and transmitter 44 can be combined in a transceiver. Sensing devices 31-32 may include other components typical of user equipment, such as batteries and / or power connectors.
[0169] Sensing devices 31-34 are UEs, but UEs 35 and 36 are not sensing devices. UEs may also be referred to by those skilled in the art as mobile station (MS), subscriber station, mobile unit, subscriber unit, wireless unit, wireless terminal, wireless device, wireless communication device, remote device, mobile subscriber station, access terminal (AT), mobile terminal, remote terminal, mobile phone, terminal, user agent, mobile client, client, or some other suitable terminology.
[0170] Figure 10 The description shows that it can be performed as shown in the reference. Figure 1-8 A block diagram of an exemplary data processing system describing the method.
[0171] like Figure 10 As shown, the data processing system 300 may include at least one processor 302 coupled to a memory element 304 via a system bus 306. Thus, the data processing system can store program code in the memory element 304. Furthermore, the processor 302 can execute program code accessed from the memory element 304 via the system bus 306. In one aspect, the data processing system may be implemented as a computer suitable for storing and / or executing program code. However, it should be understood that the data processing system 300 may be implemented in the form of any system including a processor and memory capable of performing the functions described herein.
[0172] Memory element 304 may include one or more physical memory devices, such as local memory 308 and one or more mass storage devices 310. Local memory may refer to random access memory or one or more other non-persistent memory devices that are typically used during the actual execution of the program code. Mass storage devices may be implemented as hard disk drives or other persistent data storage devices. Processing system 300 may also include one or more cache memories (not shown) that provide temporary storage for at least some of the program code to reduce the number of times the program code must be retrieved from mass storage device 310 during execution.
[0173] The input / output (I / O) devices, depicted as input device 312 and output device 314, may optionally be coupled to the data processing system. Examples of input devices may include, but are not limited to, a keyboard, a pointing device such as a mouse, etc. Examples of output devices may include, but are not limited to, a monitor or display, a speaker, etc. Input and / or output devices may be coupled to the data processing system directly or through an intermediate I / O controller.
[0174] In this embodiment, the input and output devices can be implemented as combined input / output devices (in... Figure 10 (Seen in the diagram with dashed lines surrounding input device 312 and output device 314). An example of such a combined device is a touch-sensitive display, sometimes also called a "touchscreen display" or simply a "touchscreen". In such embodiments, input to the device can be provided by moving a physical object, such as a user's stylus or finger, on or near the touchscreen display.
[0175] Network adapter 316 can also be coupled to the data processing system to enable it to couple to other systems, computer systems, remote network devices, and / or remote storage devices via an intermediate private or public network. The network adapter may include a data receiver for receiving data transmitted to the data processing system 300 from the systems, devices, and / or networks, and a data transmitter for transmitting data from the data processing system 300 to the systems, devices, and / or networks. Modems, cable modems, and Ethernet cards are examples of different types of network adapters that can be used with the data processing system 300.
[0176] like Figure 10 As shown, memory element 304 can store application 318. In various embodiments, application 318 can be stored in local memory 308, one or more mass storage devices 310, or separately from local memory and mass storage devices. It should be understood that data processing system 300 can further execute an operating system (…). Figure 10(Not shown in the image), the operating system can facilitate the execution of application 318. Application 318, implemented as executable program code, can be executed by data processing system 300, for example, by processor 302. In response to executing the application, data processing system 300 can be configured to perform one or more operational or method steps described herein.
[0177] Various embodiments of the present invention can be implemented as a program product for use with a computer system, wherein one or more programs of the program product define the functionality of the embodiments (including the methods described herein). In one embodiment, one or more programs may be contained on a variety of non-transitory computer-readable storage media, wherein the expression "non-transitory computer-readable storage media" as used herein includes all computer-readable media, with the sole exception of transient propagation signals. In another embodiment, one or more programs may be contained on a variety of transient computer-readable storage media. Illustrative computer-readable storage media include, but are not limited to: (i) non-writable storage media on which information is permanently stored (e.g., read-only storage devices within a computer, such as CD-ROM discs readable by a CD-ROM drive, ROM chips, or any type of solid-state non-volatile semiconductor memory); and (ii) writable storage media on which variable information is stored (e.g., flash memory, floppy disks or hard disk drives in a disk drive, or any type of solid-state random access semiconductor memory). The computer program may run on the processor 302 described herein.
[0178] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a,” “an,” and “the” are also intended to include the plural forms unless the context clearly indicates otherwise. It will be further understood that the terms “comprising” and / or “including” as used in this specification specify the presence of the stated features, integers, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or combinations thereof.
[0179] All means or steps plus functional elements in the following claims are intended to include any structure, material, action, and equivalent for performing the function in conjunction with other claimed elements of the specific claim. The description of embodiments of the invention is presented for illustrative purposes and is not intended to be exhaustive or limited to implementations of the disclosed forms. Many modifications and variations will be apparent to those skilled in the art without departing from the scope of the invention. The embodiments were chosen and described to best explain the principles of the invention and some practical applications, and to enable others skilled in the art to understand the invention with respect to various embodiments having various modifications as suited to the particular intended use.
Claims
1. A system (1) for acquiring tags of multiple data clusters, the data describing events, the system (1) comprising at least one processor (5), the processor being configured to: - Acquire radio frequency measurement data associated with multiple communication links (51-56), each of which is between two network devices in a plurality of network devices (11, 31-36), the plurality of network devices (11, 31-36) including a plurality of sensing devices (31-34). - By analyzing the radio frequency measurement data, events occurring in the environment of the plurality of sensing devices (31-34) are detected. - Obtain data describing the event from the radio frequency measurement data. - Based on the similarity of the data describing the event, the data describing the event is clustered into multiple clusters, and - The tags of the plurality of clusters are obtained by querying one or more of the plurality of sensing devices (31-32) to see if they also detect one or more of the detected events, and / or based on the passive monitoring timing of the transmissions from one or more of the plurality of sensing devices (33-34) at one or more of the detected events.
2. The system (1) according to claim 1, wherein, Each tag in a corresponding cluster of the plurality of clusters identifies one or more of the plurality of sensing devices (31-34) and indicates the correlation between the data in the corresponding cluster and the one or more sensing devices (31-34).
3. The system (1) according to claim 2, wherein, Each tag specifies whether the correlation is positive or negative for each sensing device (31-34) identified in that tag.
4. The system (1) according to claim 2 or 3, wherein, The at least one processor (5) is configured to: - Acquire new RF measurement data, - By analyzing the new radio frequency measurement data, new events occurring in the environment of the multiple sensing devices (31-34) are detected. - Obtain new data describing the new event from the new radio frequency measurement data. - Classify the new data into clusters within the plurality of clusters, and - Identify one or more sensing devices (31-34) identified in the tags of the cluster.
5. The system (1) according to claim 4, wherein, The at least one processor (5) is configured to transmit one or more wake-up messages to at least one or more identified sensing devices (31-34) to notify the one or more identified sensing devices (31-34) that a relevant event has been detected, and to allow the one or more identified sensing devices (31-34) to decide whether to switch from a low-power mode to a high-power mode.
6. The system (1) according to claim 4 or 5, wherein, The at least one processor (5) is configured to transmit one or more data sharing messages to at least one or more identified sensing devices (31-34) and / or to one or more additional systems associated with the one or more identified sensing devices (31-34), each of the one or more data sharing messages including radio frequency data or a proposal to share radio frequency data.
7. The system (1) according to claim 5 or 6, wherein, The at least one processor (5) is configured to: - Determine at least one of the accuracy of the cluster and the label confidence of the cluster, and - Include at least one of the accuracy of the cluster and the tag confidence of the cluster in the one or more wake-up messages and / or in the one or more data sharing messages.
8. The system (1) according to claim 5, 6 or 7, wherein, The at least one processor (5) is configured to: - Determine the accuracy of the cluster and / or the label confidence level of the cluster. - Compare the accuracy of the cluster with a first threshold and / or compare the label confidence of the cluster with a second threshold, and - If it is determined that the accuracy of the cluster exceeds the first threshold and / or the tag confidence of the cluster exceeds the second threshold, then the one or more wake-up messages and / or the one or more data sharing messages are transmitted.
9. The system (1) according to any one of the preceding claims, wherein, The at least one processor (5) is configured to: acquire the tag by querying whether the first group of one or more sensing devices (31-32) also detects the first group of one or more detected events, and based on the passive monitoring timing of the transmissions from the second group of one or more sensing devices (33-34) at the time of the second group of one or more detected events, wherein the first group and the second group of sensing devices do not intersect.
10. The system (1) according to any one of the preceding claims, wherein, The at least one processor (5) is configured to: - Determine whether one or more criteria have been met, and - If it is determined that one or more criteria have been met, then the one or more sensing devices (31-32) are queried whether the one or more sensing devices (31-32) have also detected the one or more detected events.
11. The system (1) according to claim 10, wherein, The at least one processor (5) is configured to determine whether one or more criteria have been met by: - Determine the accuracy of the cluster. - Compare the accuracy of the cluster with a threshold, and - Based on the fact that the accuracy of the cluster exceeds the threshold, it is determined that one or more of the criteria have been met.
12. A sensing device (31, 32), the sensing device (31, 32) comprising at least one processor (45), the processor being configured to: - Receive a message from system (1) inquiring about an event, the message specifying the time of the event. - Based on a specified time and sensing data collected by the sensing devices (31, 32), determine whether the sensing devices (31, 32) detected an event at the specified time, and - In response to the message, a response message is transmitted to the system (1), which includes information about the detected event if the sensing device (31, 32) detects the event at the specified time.
13. The sensing device (31, 32) according to claim 12, wherein, The at least one processor (45) is configured to: - Receive a wake-up message from the system (1), the wake-up message including cluster accuracy and / or cluster label confidence, and If the sensing devices (31, 32) are in a low-power mode, the cluster accuracy of the cluster is compared with a first threshold and / or the cluster tag confidence is compared with a second threshold, and if it is determined that the cluster accuracy exceeds the first threshold and / or the cluster tag confidence exceeds the second threshold, then it is decided to enter a high-power mode.
14. A method for obtaining labels for multiple data clusters, wherein the data describes events, the method comprising: - Acquire (101) radio frequency measurement data associated with multiple communication links, each of the multiple communication links being between two network devices in a plurality of network devices, the plurality of network devices including a plurality of sensing devices; - By analyzing the radio frequency measurement data, events occurring in the environment of the plurality of sensing devices are detected (103); - Obtain (104) data describing the event from the radio frequency measurement data; - Based on the similarity of the data describing the event, the data describing the event is clustered (105) into multiple clusters; as well as - The tags of the plurality of clusters are obtained by querying one or more of the plurality of sensing devices whether one or more of the detected events are also detected, and / or by passive monitoring timing of transmissions from one or more of the plurality of sensing devices at the time of one or more of the detected events.
15. A method for determining whether a sensing device has detected an event, the method comprising: - Receive a message (181) from the system querying for an event, the message specifying the time of the event. - Based on a specified time and sensing data collected by the sensing device, determine (182) whether the sensing device detected an event at the specified time, and - In response to the message, a response message (183) is transmitted to the system, which includes information about the detected event if the sensing device detects the event at the specified time.
16. A computer program or computer program suite comprising at least one software code portion, or a computer program product storing at least one software code portion, said software code portion being configured to perform the method according to claim 14 or 15 when running on a computer system.