victory的博客

长安一片月,万户捣衣声

0%

Remaining Useful Life Prediction of Machining Tools by 1D-CNN LSTM Network

Contributions

use a 1D-CNN LSTM network architecture for machining tools RUL prediction

Problem Addressing

Traditional machine learning algorithms are sometimes difficult to extract hidden information that characterizes the degradation process of the tool.
deep learning methods tend to have better effects, as it has powerful adaptive learning and anti-noise ability, and it can automatically extract deep
features, which is more versatile than traditional machine learning methods.

Why CNN-LSTM?

CNN has a its capacity to automatically extract features and LSTM can effectively mine the hidden information in time series.

In fact, we can combine CNN’s high-dimensional feature extraction capacity and LSTM’s advantage on time series problems. After CNN extracts
features, we input them into the LSTM for training, then some improvements in accuracy and speed can be achieved.

For time-series problems, one dimensional convolutional neural network (1D-CNN) is more suitable than common convolution neural network. One of the
characteristics of the 1D-CNN is that for time-series data, the receptive field moves only in the direction of time, so the local inter-variable correlation can be extracted.

Some knowledge points learned

  1. Each convolutional layer consists of several convolutional units whose parameters are optimized by backpropagation algorithms.
  2. Pooling can effectively reduce the amount of data and increse the calculation speed.
  3. Each unit of RNN is a simple chain structure, it processes the input sequence {x1,x2,…,xT} sequentially to construct a corresponding sequence of hidden states {h1,h2,…,hT}.
  4. The main purpose of the dropout layer is to reduce over-fitting.

    Ideas

  5. compare the results of 1D-CNN,LSTM and 1D-CNN LSTM in own work.
  6. write own paper according to this reference(part of introduction and network description)
  7. Refer to the chart in the article

网络、模型、算法的区别

网络: 一种简单的网络结构,不包含任何权重参数。

模型: 设计一个网络后,在某些数据集上进行训练,得到一个包含权重参数的数据,称为模型。

算法: 在模型的基础上通过一些代码具体实现某些相关目的,这些代码以及模型文件等等资源被称为某算法。

命名空间查找顺序

命名空间的三种形式

1.内置命名空间(Built-in names): 用于存放Python 的内置函数的空间,比如,print,input等不需要定义即可使用的函数就处在内置命名空间。
2.全局命名空间(Global names):模块中定义的名称,记录了模块的变量,包括函数、类、其它导入的模块、模块级的变量和常量。
3.局部命名空间(Local names):函数中定义的名称,记录了函数的变量,包括函数的参数和局部定义的变量。在函数内定义的局部变量,在函数执行结束后就会失效,即无法在函数外直接调用函数内定义的变量。

阅读全文 »

偏函数

作用: 通过设定参数的默认值,降低函数调用的难度
函数在执行时,要带上所有必要的参数进行调用。但是,有时参数可以在函数被调用之前提前获知。这种情况下,一个函数有一个或多个参数预先就能用上,以便函数能用更少的参数进行调用。
偏函数是将所要承载的函数作为partial()函数的第一个参数,原函数的各个参数依次作为partial()函数后续的参数,除非使用关键字参数。

阅读全文 »

闭包

python中的闭包从表现形式上定义(解释)为:如果在一个内部函数里,对在外部作用域(但不是在全局作用域)的变量进行引用,那么内部函数就被认为是闭包(closure).
返回闭包时牢记一点:返回函数不要引用任何循环变量,或者后续会发生变化的变量。

阅读全文 »

装饰器

顾名思义,从字面意思就可以理解,它是用来”装饰”Python的工具,使得代码更具有Python简洁的风格。换句话说,它是一种函数的函数,因为装饰器传入的参数就是一个函数,然后通过实现各种功能来对这个函数的功能进行增强。
注:装饰器输入一个函数,输出一个函数
装饰器最大的优势是用于解决重复性的操作,其主要使用的场景有如下几个:
1.计算函数运行时间
2.给函数打日志
3.类型检查
当然,如果遇到其他重复操作的场景也可以类比使用装饰器。

阅读全文 »

sorted

sorted() 函数对所有可迭代的对象进行排序操作。
sort 与 sorted 区别:
sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。
list 的 sort 方法返回的是对已经存在的列表进行操作,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。

阅读全文 »