深度学习实战1-(keras框架)企业数据分析与预测

大家好,我是微学AI,今天给大家带来深度学习框架keras的实战项目,用于基本的企业数据分析,预测企业净利润情况,并利用灰色预测函数GM11进行预测模型。我们拿到企业数据,这里参数抽象成x1-x9,y表示净利润,数据如下:

下面我们开始编写代码进行分析,首先我们引入库:

import numpy as np
import pandas as pd
from keras.models import Sequential  
from keras.layers.core import Dense, Activation
import matplotlib.pylab as plt   # 绘制图像库

 编写GM11灰色预测函数, 灰色预测函数是通过少量的、不完全的信息,建立数学模型并做出预测的一种预测方法。它是基于客观事物的过去和现在的发展规律,利用科学的方法对未来的发展趋势和状况进行描述和分析,灰色预测函数如下:

def GM11(x0): #自定义灰色预测函数import numpy as npx1 = x0.cumsum() #1-AGO序列z1 = (x1[:len(x1)-1] + x1[1:])/2.0 z1 = z1.reshape((len(z1),1))B = np.append(-z1, np.ones_like(z1), axis = 1)Yn = x0[1:].reshape((len(x0)-1, 1))[[a],[b]] = np.dot(np.dot(np.linalg.inv(np.dot(B.T, B)), B.T), Yn) #计算参数f = lambda k: (x0[0]-b/a)*np.exp(-a*(k-1))-(x0[0]-b/a)*np.exp(-a*(k-2)) #还原值delta = np.abs(x0 - np.array([f(i) for i in range(1,len(x0)+1)]))C = delta.std()/x0.std()P = 1.0*(np.abs(delta - delta.mean()) < 0.6745*x0.std()).sum()/len(x0)return f, a, b, x0[0], C, P #返回灰色预测函数、a、b、首项、方差比、小残差概率

 读取数据:

data = pd.read_csv('data.csv') #读取数据
data.index = range(2000,2020) # 标注索引信息年份

 数据操作,预测2020-2022这三年的企业各参数的预测值

data.loc[2020] = None
data.loc[2021] = None
data.loc[2022] = None
l = ['x1', 'x2', 'x3', 'x4', 'x5', 'x7']
l1 = ['x3','x5','x7']
for i in l1:f,_,_,_,C,_ = GM11(data[i].loc[range(2000,2020)].values)print("%s后验差比值:%0.4f"%(i,C))   #后验差比值c,即:真实误差的方差同原始数据方差的比值。data[i].loc[2020] = f(len(data)-2) #2014年预测结果data[i].loc[2021] = f(len(data)-1) #2015年预测结果data[i].loc[2022] = f(len(data))  # 2016年预测结果data[i] = data[i].round(2) #保留两位小数data[l1+['y']].to_csv('GM11.csv') #结果输出

生成的数据并读取:

data = pd.read_csv('GM11.csv',index_col = 0) #读取数据
feature = ['x3','x5','x7']  # 提取特征

 取2020年前的数据进行建模,数据标准化 后进行训练

data_train = data.loc[range(2000,2020)] #取2014年前的数据建模
print(data_train)
data_mean = data_train.mean()
data_std = data_train.std()
data_train = (data_train - data_mean)/data_std  #数据标准化 后进行训练x_train = data_train[feature].values #特征数据
y_train = data_train['y'].values #标签数据

 建立keras神经网络

model = Sequential() #建立模型
model.add(Dense(12,activation='relu',input_dim=3))
model.add(Dense(24,activation='relu'))  # 隐藏层
model.add(Dense(1))  # 输出层
model.compile(loss='mean_squared_error', optimizer='adam') #编译模型
model.fit(x_train, y_train, epochs = 10000, batch_size = 16,verbose=2) #训练模型,训练1000次
model.save_weights('net.model') #保存模型参数

 训练过程:

Epoch 1/10000
2/2 - 0s - loss: 0.6044 - 421ms/epoch - 210ms/step
Epoch 2/10000
2/2 - 0s - loss: 0.5691 - 996us/epoch - 498us/step
Epoch 3/10000
2/2 - 0s - loss: 0.5365 - 2ms/epoch - 975us/step
Epoch 4/10000
2/2 - 0s - loss: 0.5037 - 3ms/epoch - 1ms/step
Epoch 5/10000
2/2 - 0s - loss: 0.4765 - 2ms/epoch - 997us/step
Epoch 6/10000
2/2 - 0s - loss: 0.4492 - 2ms/epoch - 1ms/step
Epoch 7/10000
2/2 - 0s - loss: 0.4218 - 2ms/epoch - 997us/step
Epoch 8/10000
2/2 - 0s - loss: 0.3960 - 2ms/epoch - 998us/step
Epoch 9/10000
2/2 - 0s - loss: 0.3678 - 993us/epoch - 496us/step
Epoch 10/10000
2/2 - 0s - loss: 0.3436 - 2ms/epoch - 980us/step

 模型预测与保存

x = ((data[feature] - data_mean[feature])/data_std[feature]).values
data[u'y_pred'] = model.predict(x) * data_std['y'] + data_mean['y']
data.to_csv('result.csv')

 预测结果绘图:

p = pd.read_csv('result.csv')
p = p[['y','y_pred']].copy()
p.index=range(2000,2023)
p.plot(style=['b-o','r-*'],xticks=p.index,figsize=(15,5))
plt.xlabel("Year")
plt.show()

 

可以看出2000-2019预测值基本与真实值吻合,2020-2022预测结果呈现上升趋势。

具体数据文件可以私信我,我会发给读者,后续更多深度学习实战内容,敬请关注!

 往期作品:

深度学习实战项目

1.深度学习实战1-(keras框架)企业数据分析与预测

2.深度学习实战2-(keras框架)企业信用评级与预测

3.深度学习实战3-文本卷积神经网络(TextCNN)新闻文本分类

4.深度学习实战4-卷积神经网络(DenseNet)数学图形识别+题目模式识别

5.深度学习实战5-卷积神经网络(CNN)中文OCR识别项目

6.深度学习实战6-卷积神经网络(Pytorch)+聚类分析实现空气质量与天气预测

7.深度学习实战7-电商产品评论的情感分析

8.深度学习实战8-生活照片转化漫画照片应用

9.深度学习实战9-文本生成图像-本地电脑实现text2img

10.深度学习实战10-数学公式识别-将图片转换为Latex(img2Latex)

11.深度学习实战11(进阶版)-BERT模型的微调应用-文本分类案例

12.深度学习实战12(进阶版)-利用Dewarp实现文本扭曲矫正

13.深度学习实战13(进阶版)-文本纠错功能,经常写错别字的小伙伴的福星

14.深度学习实战14(进阶版)-手写文字OCR识别,手写笔记也可以识别了

15.深度学习实战15(进阶版)-让机器进行阅读理解+你可以变成出题者提问

16.深度学习实战16(进阶版)-虚拟截图识别文字-可以做纸质合同和表格识别

17.深度学习实战17(进阶版)-智能辅助编辑平台系统的搭建与开发案例

18.深度学习实战18(进阶版)-NLP的15项任务大融合系统,可实现市面上你能想到的NLP任务

19.深度学习实战19(进阶版)-ChatGPT的本地实现部署测试,自己的平台就可以实现ChatGPT

...(待更新)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/67996.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

chatgpt赋能python:Python动态数据分析

Python 动态数据分析 随着互联网时代的到来&#xff0c;数据分析成为了越来越重要的一个领域。作为一种全功能性的编程语言&#xff0c;Python 已被广泛使用于动态数据分析领域。在这篇文章中&#xff0c;我们将介绍 Python 动态数据分析的相关内容。 什么是动态数据分析 动…

架构简析| 一种端到端的自动数据分析框架

《Is GPT-4 a Good Data Analyst?》是阿里达摩院发布的一篇探讨大型语言模型是否可能取代数据分析师工作的研究论文。在论文中&#xff0c;作者构建了一个基于GPT-4的端到端数据分析框架&#xff0c;并与专业数据分析师的工作进行对比。目前&#xff0c;这个框架的源代码尚未公…

Pandas+ChatGPT超强组合pandas-ai:交互式数据分析和处理新方法

&#xff08;永久免费&#xff0c;扫码加入&#xff09; 转自&#xff1a;python专栏 Python Pandas是一个为Python编程提供数据操作和分析功能的开源工具包。这个库已经成为数据科学家和分析师的必备工具。它提供了一种有效的方法来管理结构化数据(Series和DataFrame)。 在人工…

获取硬盘序列号的真正方法!!

最近要获取磁盘的序列号&#xff0c;在网上找了很久发现大部分都是通过diskpart来查询 这种查询方法只是查询的磁盘的id 真正查询磁盘序列号应该使用下面方法&#xff1a;wmic diskdrive get serialnumber 打开cmd后输入 serialNumber下面的就是硬盘序列号

获取笔记本序列号(SN码)命令

CMD&#xff0c;输入命令&#xff1a; wmic bios get serialnumber运行效果如下&#xff1a;

VC++获取系统序列号(SN)附源码

VC++开发常用功能一系列文章 (欢迎订阅,持续更新...) 第30章:VC++获取系统序列号(SN)附源码 源代码demo已上传到百度网盘:永久生效 代码实现了获取序列号,产品型号,产品名称,系统版本,SKU, 产品制造商等信息! 获取的序列号 同命令行模式下的wmic bios get serial…

windows如何软件获取主板序列号等信息

- •联想&#xff1a;Get-WmiObject -Class Win32_ComputerSystemProduct - •Dell&HP&#xff1a;Get-WmiObject -Class Win32_ComputerSystem 也可以通过wmic查询 wmic csproduct get 单独查询某一项的时候只需要在命令后面加要查询的项目名称即可 我们通过命令获取sn又…

QT软件开发: 获取CPU序列号、硬盘序列号、主板序列号 (采用wmic命令)

一、环境介绍 QT版本: 5.12.6 环境: win10 64位 编译器: MinGW 32 二、功能介绍 通过wmic 命令获取CPU序列号、硬盘序列号、主板序列号、CPU名称等信息。 做软件加密、数据加密、软件1机1码绑定的场合比较实用。 WMIC扩展WMI&#xff08;Windows Management Instrumenta…

媒体报道 | “连接”与“计算”——从物联网迈向智联网星辰大海的两大门槛

在物联网繁荣发展并向智联网迈进的关键阶段&#xff0c;对于“连接”与“计算”都提出了更高要求。模组作为重要的中间件&#xff0c;不仅需要跟随通信代际更迭而推陈出新&#xff0c;更需要持续向更加智能化的方向升级&#xff0c;成为AI与物联网有机结合的载体&#xff0c;使…

港联证券|海外资金悄然调仓增持科技赛道

海外资金正悄然调整其A股持仓。最新的券商研报统计数据显现&#xff0c;相较于今年头&#xff0c;外资关于食品饮料、电力设备及新能源、医药板块的持仓呈现下滑&#xff0c;一起明显提升了计算机、电子板块的装备份额。不过&#xff0c;随着行情持续演绎&#xff0c;外资关于科…

有哪些优秀的科学网站和科研软件推荐给研究生?

ljthyd &#xff0c;食品科学博士&#xff0c;粮食加工 2032 人赞同 写几个常见的我觉得挺好的网站及软件&#xff0c;也不知道你什么学科&#xff0c;就写一些所有学科基本都用得到的吧。 1、小木虫论坛&#xff08; 小木虫论坛 - 学术科研第一站&#xff09;及其APP 这个论坛…

HCIA综合测验PLUS升级版

一、实验拓扑图 二、实验要求&#xff1a; 要求&#xff1a; 1.ISP路由器仅配置IP地址 2.内网基于192.168.1.0/24网段进行IP划分 3.R1/R2之间使用OSPF做到内网全通&#xff0c;单区域 4.PC1-PC4使用DHCP获取地址 5.PC2-PC4可以访问pc5&#xff0c;pc1不行 6.R2出口只拥有一个公…

中国科学院大学(国科大)预推免系统内容无法粘贴解决方案

使用chrome浏览器打开系统&#xff0c;进入要填写内容的页面 接下来是关键&#xff1a;先在文本框里随意填写一些内容&#xff0c;之后点击“下一步”进入下一个页面&#xff0c;再点击“上一步”退回此页面&#xff08;无法直接编辑文字&#xff0c;必须先输入点啥然后替换&am…

中科院分区表中分区上升的TOP期刊, 最快仅1-2个月录用

《2021年中国科学院文献情报中心期刊分区表》&#xff08;简称分区表&#xff09;已于2021年12月20日正式发布&#xff0c;包含基础版与升级版。中科院分区每年年底进行更新&#xff0c;从2022年开始&#xff0c;分区表将只发布升级版结果&#xff0c;不再有基础版和升级版之分…

中国科学技术大学生物信息学考试复习资料(整理版)

持续更新中&#xff01; QUIZ参考答案&#xff1a; Which gene is the most highly mutated gene in cancer? TP53Which gene is the most highly mutated gene inCOAD/READ? APCName three alignment tools. Bowtie 2 Histat , Tophat BWAWhat is the method for SNP call…

直播分享丨前沿技术讲习班:知识图谱前沿技术与应用(CIPS ATT27)

本文转载自公众号&#xff1a;智源社区助手。 作为大数据时代重要的知识表示方式&#xff0c;知识图谱是人工智能领域构建和应用知识的新阶段&#xff0c;它能够更好地实现大规模数据的认知与推理。同时&#xff0c;知识图谱和深度学习相互协作&#xff0c;是实现具有强鲁棒性、…

2021年中科大研究生考试(资料更新通知)

目前有的科目完成了新一轮的更新&#xff0c; 更新内容包括: 1.历年考题的补充&#xff0c;答案补充 2.复习重点的优化&#xff0c;内容填补 注&#xff1a; 1.如果需要&#xff0c;请已购买支持过资源的重新下载&#xff0c;替换原有的文件即可&#xff0c;无须重新购买&…

清北级别,补助丰厚,这样的中科院信工所你心动了吗?

1、院校介绍 中国科学院信息工程研究所是2011年批准成立的中国科学院直属科研机构。目前拥有信息安全国家重点实验室、信息内容安全技术国家工程实验室等一批国家级和省部级的科研创新平台。主要研究方向包括&#xff1a;密码理论与安全协议、信息智能处理、数据安全、通信与电…

顶刊TIP 2022|武汉大学遥感国重团队提出二元变化引导的高光谱遥感多类变化检测网络BCG-Net

论文标题&#xff1a;Binary Change Guided Hyperspectral Multiclass Change Detection 论文链接&#xff1a;https://ieeexplore.ieee.org/document/10011164 作者单位&#xff1a;武汉大学&#xff08;Liangpei Zhang&#xff0c;IEEE Fellow&#xff09; 欢迎关注微信公众号…