0%

AI_STUDTY日志_第十一周

星期六花了一下午加一晚上时间想搞搞时间序列有关的神经网络的搭建。
下午主要是学了LSTM对于时间序列的预测。
一开始看视频入了下门。原本说使用pytorch来实现,不过视频里提到了一个比较轻量的框架keras
里面有一些集成的数据库,统计学习方法里就基本上用的这个框架。
[LSTM时间序列预测任务项目实战,学不会UP主下跪,附赠课件+源码]

虽然找到了,这个教程的源码,但是我的jupyter跑不出来。
每次进行model.fit时就会报错,报告内核没了,具体啥突然想不起来了。

然后又在一个公众号上找到了一篇教程
使用 LSTM 进行新冠病例预测(Pytorch)
找到了疫情的数据,放到了COVID-19-master文件夹里

确实能跑,但是test_loss很大。
教程上说可以通过一些方法减小成本:
如何解决神经网络训练时loss不下降的问题

也找到了另一篇LSTM的教程,里面对于股票的预测结果不错:
保姆级教程!使用 LSTM 进行多变量时间序列预测

总结:

  • 现在pytorch框架还没掌握好,有许多操作不会,学起进阶的,能工程运用的算法还很慢。
  • 没有改进算法的能力,虽然已经知道了改进的方向。
  • 还没有手撕完整流程的模型搭建。
  • 现在建立完整可以运行的LSTM模型,误差极大,能不能对实际建模起作用还是个问题。我的评价是不如ARIMA,毕竟切实可以操作的算法才是好算法。
  • 还需要解决SRAS建模的问题。现在想到了一种元胞自动机优化差分模型的方法,明天可以试试。
  • 现在突然决定jupyter运行效率不太行,之后可以试试pycharm实现工程问题的解决

问题记录

内核挂掉的问题

在查找了许多资料后,排除了几个问题:

  • 内存不够,使用一段代码释放之前的内存。亲测没用
  • keras,tensorflow版本问题

最后是加了段代码,import tensorflow 之后,keras的model才能正常运行,不是特别懂。
是没有设置环境变量吗?现在也不太想去检查了。
代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
import tensorflow as tf
import os
os.environ["CUDA_VISIBLE_DEVICES"]="0"
tf.compat.v1.disable_eager_execution()

hello=tf.constant('Hello,TensorFlow')
config=tf.compat.v1.ConfigProto()

config.gpu_options.per_process_gpu_memory_fraction = 0.9
sess=tf.compat.v1.Session(config=config)

print(sess.run(hello))

星期天

使用公众号上的代码实现了BP神经网络,全流程复现了搭建过程。
使用keras会真的方便很多

看了一下支持向量机SVM,今天状态不是特别好,只是看了个大概。
看有没有空做一下公式推导吧,其实原理是很简洁的。

代码日志

  1. 杂项第四章:LSTM时间序列预测任务。

    • 第一次接触到了工业化的程序,怎么说呢?和当时做C的项目时的结构
    • 使用了KERAS框架,感觉简洁了很多
    • 我和这个CODER差距太大了,还完全领悟不了写的一些函数。
    • 如果有一天能复现这一个文件夹的框架,就学的差不多了
  2. make_LSTM0_come_true.ipynb

    • 另外一篇使用LSTM实现疫情预测的公众号。
    • 是用pytorch实现的
    • 但是效果非常不好。loss一直降不下来,现在也分析不出来
    • 感觉还是使用keras简单些
  3. LSTM实现_keras

    • 使用keras实现了LSTM。
    • 回归环境数据,模型效果还不错
    • 还没细看,毕竟是和专业有关,之后要仔细看看
  4. 还做了个plotly的地图可视化,之后可以把轮子造好点