How Does Data Freshness Affect Real-time Supervised Learning?
Md Kamran Chowdhury Shisher and Yin Sun, submitted to IEEE/ACM Transactions on Networking, September 2022. (Part of this paper is accepted in ACM MobiHoc, 2022.)
We analyze the impact of data freshness on real-time supervised learning, where a neural network is trained to infer a time-varying target (e.g., the position of the vehicle in front) based on features (e.g., video frames) observed at a sensing node (e.g., camera or lidar).
In recent years, the proliferation of networked control and cyber-physical systems such as autonomous vehicle, UAV navigation, remote surgery, industrial control system has significantly boosted the need for real-time prediction. For example, an autonomous vehicle infers the trajectories of nearby vehicles and the intention of pedestrians based on lidars and cameras installed on the vehicle. In remote surgery, the movement of a surgical robot is predicted in real-time. These prediction problems can be solved by real-time supervised learning, where a neural network is trained to predict a time varying target based on feature observations that are collected from a sensing node. Due to data processing time, transmission errors, and queueing delay, the features delivered to the neural predictor may not be fresh. The performance of networked intelligent systems depends heavily on the accuracy of realtime prediction. Hence, it is important to understand how data freshness affects the performance of real-time supervised learning.
To evaluate data freshness, a metric Age of information (AoI) was introduced in [1]. Let
One might expect that the performance of real-time supervised learning degrades monotonically as the feature becomes stale. By conducting several experiments, we show that this is not true. Experimental results show that training error and inference error can be non-monotonic functions of AoI.
Clone the Repo:
git clone -b main https://github.com/Kamran0153/Impact-of-Data-Freshness-in-Learning.git
cd Impact-of-Data-Freshness-in-Learning
Then, for different experiments, execute different python files with valid input arguments:
(a) Robot state prediction in a leader-follower robotic system: The first figure illustrates the performance of robot state prediction in a leader-follower robotic system.
As illustrated in a Youtube video, the leader robot sends its state (joint angles)
python Robotic_State_Prediction/RoboticStatePrediction.py --u=1
(b) Video Prediction:
The next figure illustrates the experimental results of supervised learning based video prediction, which are regenerated from [2]. In this experiment, the video frame
(c) Temperature Prediction Task :
python Temperature_Prediction_Task/TemperaturePrediction.py --u=1
In the third figure, we plot the performance of temperature prediction. In this experiment, the temperature
(d) CSI Prediction Task :
python CSI_Prediction_Task/CSIPrediction.py --u=1
The last figure illustrates the performance of channel state information (CSI) prediction. The CSI
By executing the above commands, you will get arrays of "Training Error" and "Inference Error" in '.npy' files. To get "Training Error" and "Inference Error" for different feature size "u", you need to change the value. The value of "u" needs to be integer and greater than 1.