自编码
自编码器是另一种用于以压缩方式再现输入的神经网络。自编码器有一个特殊的特性,即输入神经元的数目与输出神经元的数目相同。
请看上图。Autoencoder的目标是在输出层创建输入的表示,使得输出和输入是相似的。
Autoencoder的实际用途是确定具有最低数据丢失量的输入数据的压缩版本。这与主成分分析非常相似,但是是以黑盒的方式进行的。自编码器的编码器部分在压缩数据的同时,确保重要数据不丢失,但数据的大小减少。
使用Autoencoder进行插值的缺点是压缩数据是一种黑盒表示法—我们不知道压缩版本中数据的结构。
假设有一个有10个参数的数据集,我们在这个数据上训练一个自编码器。编码器并没有为了更好的表示而忽略一些参数,但是它将这些参数融合在一起以创建一个压缩的版本(将参数的数量从10个减少到5个)。
自编码器有两个部分,编码器和解码器。编码器压缩输入数据,解码器则相反地产生数据的未压缩版本,以产生尽可能接近原始输入的重构输入。
插值方法
插值是在两个数据点之间猜测函数值的过程。例如,给定x=[1,3,5,7,9],y=[230.02,321.01,305.00,245.75,345.62],再给定x=4,你想知道y的值是多少。
有大量的插值方法,有些是基于模型的,有些是无模型的,即数据驱动的。实现插值最常用的方法是通过数据拟合。例如,使用线性回归分析将线性模型拟合到给定的数据。
在线性回归中,给定预测变量X和响应变量Y,使用公式Y=β0+β1X拟合数据,其中β0和β1使用最小二乘拟合确定。
顾名思义,线性回归是线性的,也就是说,即使预测变量和响应变量之间的关系可能是非线性的,它也是一条直线或者超平面。
然而,最普遍的插值形式是多项式拟合。给定k个采样点,拟合k-1次多项式是很简单的。给定数据集*{xi, yi}*,多项式拟合是通过确定函数的多项式系数ai来获得的。
通过以下表达式求解矩阵求逆:
一旦我们有了系数ai,我们就可以找到任意x的函数f的值。
有一些多项式拟合的特殊情况,其中用分段三次多项式来拟合数据。其他一些非参数方法包括三次样条、平滑样条、回归样条、核回归和密度估计。
本文的重点不是多项式拟合,而是插值。多项式拟合恰好有助于插值。多项式拟合方法存在一个问题——无论是参数拟合还是非参数拟合,它们的行为方式都与所教的相同。它的意思是,如果数据是干净的,拟合将是干净和平滑的,但如果数据是有噪声的,拟合将是有噪声的。
此问题在传感器数据中更为普遍,例如,从心率传感器捕获的心跳数据、从激光雷达获取的距离数据、从汽车获取的CAN总线速度数据、GPS数据等。
https://medium.com/analytics-vidhya/how-does-a-self-driving-vehicle-see-using-lidar-49f569ededf2
此外,由于噪声的存在,它们更难处理,特别是当你的算法需要对这些数据执行双重或二阶导数时。
一般来说,这些传感器数据是时间序列数据,即它们是随时间收集的,因此响应变量可能是一些物理量,例如速度、物体与安装在自动驾驶汽车顶部的激光雷达的距离、心率,并且预测变量是时间。
在对这些数据进行操作时,可能有几个目标:我想将数据插值到某个时间戳上,在该时间戳上,我的传感器无法记录任何响应,但由于传感器在实时世界中工作,并且由于潜在的物理原因,这些数据保持嘈杂,我还想要一个可靠的插值,不受传感器噪声的影响。
此外,我的要求还可能包括此类时间序列数据的导数。但是导数往往会放大潜在时间序列数据中的噪声。如果有一种方法,我可以得到数据的底层表示,同时抛弃噪声呢?在这种情况下,自编码器可以来实现我的目标。
自编码器作为插补器
为了演示使用Autoencoder的去噪+插值目标,我使用了一个由我的实验室从车辆收集的距离数据的例子,其中因变量是前一辆车在我的车辆前面的距离,自变量是时间。
我在GitHub repo上提供了一小部分数据,作为演示的一部分,你可以自由使用。但是它非常小,除了本文所描述的教程之外,没有其他用途。
https://github.com/rahulbhadani/medium.com/blob/master/data/lead_dist_sample.csv
好了,现在该编码了。
注意:在使用数据之前,我应该指出时间(自变量)和响应变量(因变量)必须重新缩放。在我的例子中,原始时间从1594247088.289515开始(POSIX格式,以秒为单位),到1594247110.290019结束。我使用公式(time - start_time)/(end_time - start_time)规范化了我的时间值。类似地,响应变量使用(message - message_min)/(message_max -message_min)进行规范化。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.