公司网站运营方案策划做 网络网站

news/2025/9/23 21:37:47/文章来源:
公司网站运营方案策划,做 网络网站,潍坊网站建设选聚搜网络,app开发公司比较好0 前言 循环神经网络#xff08;Recurrent Neural Network#xff0c;RNN#xff09;是一种用于处理序列数据的神经网络。相比一般的神经网络来说#xff0c;他能够处理序列变化的数据。比如某个单词的意思会因为上文提到的内容不同而有不同的含义#xff0c;RNN就能够很好… 0 前言 循环神经网络Recurrent Neural NetworkRNN是一种用于处理序列数据的神经网络。相比一般的神经网络来说他能够处理序列变化的数据。比如某个单词的意思会因为上文提到的内容不同而有不同的含义RNN就能够很好地解决这类问题。本质是一个全连接网络但是因为当前时刻受历史时刻的影响。       传统的RNN结构可以看做是多个重复的神经元构成的“回路”每个神经元都接受输入信息并产生输出然后将输出再次作为下一个神经元的输入依次传递下去。这种结构能够在序列数据上学习短时依赖关系但是由于梯度消失和梯度爆炸问题梯度反向求导链式法则导致RNN在处理长序列时难以达到很好的性能。而LSTM通过引入记忆细胞、输入门、输出门和遗忘门的概念加号的引入能够有效地解决长序列问题。记忆细胞负责保存重要信息输入门决定要不要将当前输入信息写入记忆细胞遗忘门决定要不要遗忘记忆细胞中的信息输出门决定要不要将记忆细胞的信息作为当前的输出。这些门的控制能够有效地捕捉序列中重要的长时间依赖性并且能够解决梯度问题。 备注 输入门输入的数据有多大程度进入模型 输出门控制当前时刻的内部状态 c​有多少信息需要输出给外部状态  遗忘门控制上一个时刻的内部状态 ct−1​需要遗忘多少信息 1 模块介绍 数据 2023“SEED”第四届江苏大数据开发与应用大赛--新能源赛道的数据 MARS开发者生态社区 解题思路 总共500个充电站状 关联地理位置然后提取18个特征把这18个特征作为时步不长记得是某个比赛的思路然后特征长度为1 类比词向量的size. y LSTM(x,h0,c0) import numpy as np import pandas as pd import torch import torch.nn as nn #import tushare as ts from sklearn.preprocessing import StandardScaler, MinMaxScaler from sklearn.model_selection import train_test_split from torch.utils.data import TensorDataset from tqdm import tqdmimport matplotlib.pyplot as plt import tqdm import sys import os import gc import argparse import warningswarnings.filterwarnings(ignore)# 读取数据 train_power_forecast_history pd.read_csv(../data/data1/train/power_forecast_history.csv) train_power pd.read_csv(../data/data1/train/power.csv) train_stub_info pd.read_csv(../data/data1/train/stub_info.csv)test_power_forecast_history pd.read_csv(../data/data1/test/power_forecast_history.csv) test_stub_info pd.read_csv(../data/data1/test/stub_info.csv)# 聚合数据 train_df train_power_forecast_history.groupby([id_encode,ds]).head(1) del train_df[hour]test_df test_power_forecast_history.groupby([id_encode,ds]).head(1) del test_df[hour]tmp_df train_power.groupby([id_encode,ds])[power].sum() tmp_df.columns [id_encode,ds,power]# 合并充电量数据 train_df train_df.merge(tmp_df, on[id_encode,ds], howleft)### 合并数据 train_df train_df.merge(train_stub_info, onid_encode, howleft) test_df test_df.merge(test_stub_info, onid_encode, howleft)h3_code pd.read_csv(../data/h3_lon_lat.csv) train_df train_df.merge(h3_code,onh3) test_df test_df.merge(h3_code,onh3)def kalman_filter(data, q0.0001, r0.01):# 后验初始值x0 data[0] # 令第一个估计值为当前值p0 1.0# 存结果的列表x [x0]for z in data[1:]: # kalman 滤波实时计算只要知道当前值z就能计算出估计值(后验值)x0# 先验值x1_minus x0 # X(k|k-1) AX(k-1|k-1) BU(k) W(k), A1,BU(k) 0p1_minus p0 q # P(k|k-1) AP(k-1|k-1)A Q(k), A1# 更新K和后验值k1 p1_minus / (p1_minus r) # Kg(k)P(k|k-1)H/[HP(k|k-1)H R], H1x0 x1_minus k1 * (z - x1_minus) # X(k|k) X(k|k-1) Kg(k)[Z(k) - HX(k|k-1)], H1p0 (1 - k1) * p1_minus # P(k|k) (1 - Kg(k)H)P(k|k-1), H1x.append(x0) # 由输入的当前值z 得到估计值x0存入列表中并开始循环到下一个值return x#kalman_filter() train_df[new_label] 0 for i in range(500):#print(i)label i#train_df[train_df[id_encode]labe][power].valuestrain_df.loc[train_df[id_encode]label, new_label] kalman_filter(datatrain_df[train_df[id_encode]label][power].values)### 数据预处理 train_df[flag] train_df[flag].map({A:0,B:1}) test_df[flag] test_df[flag].map({A:0,B:1})def get_time_feature(df, col):df_copy df.copy()prefix col _df_copy[new_col] df_copy[col].astype(str)col new_coldf_copy[col] pd.to_datetime(df_copy[col], format%Y%m%d)#df_copy[prefix year] df_copy[col].dt.yeardf_copy[prefix month] df_copy[col].dt.monthdf_copy[prefix day] df_copy[col].dt.day# df_copy[prefix weekofyear] df_copy[col].dt.weekofyeardf_copy[prefix dayofweek] df_copy[col].dt.dayofweek# df_copy[prefix is_wknd] df_copy[col].dt.dayofweek // 6df_copy[prefix quarter] df_copy[col].dt.quarter# df_copy[prefix is_month_start] df_copy[col].dt.is_month_start.astype(int)# df_copy[prefix is_month_end] df_copy[col].dt.is_month_end.astype(int)del df_copy[col]return df_copytrain_df get_time_feature(train_df, ds) test_df get_time_feature(test_df, ds)train_df train_df.fillna(999) test_df test_df.fillna(999)cols [f for f in train_df.columns if f not in [ds,power,h3,new_label]]# 是否进行归一化 scaler MinMaxScaler(feature_range(0,1)) scalar_falg False if scalar_falg True:df_for_training_scaled scaler.fit_transform(train_df[cols])df_for_testing_scaled scaler.transform(test_df[cols]) else:df_for_training_scaled train_df[cols]df_for_testing_scaled test_df[cols] #df_for_training_scaled # scaler_label MinMaxScaler(feature_range(0,1)) # label_for_training_scaled scaler_label.fit_transform(train_df[new_label]..values) # label_for_testing_scaled scaler_label.transform(train_df[new_label].values) # #df_for_training_scaledclass Config():data_path ../data/data1/train/power.csvtimestep 18 # 时间步长就是利用多少时间窗口batch_size 32 # 批次大小feature_size 1 # 每个步长对应的特征数量这里只使用1维每天的风速hidden_size 256 # 隐层大小output_size 1 # 由于是单输出任务最终输出层大小为1预测未来1天风速num_layers 2 # lstm的层数epochs 10 # 迭代轮数best_loss 0 # 记录损失learning_rate 0.00003 # 学习率model_name lstm # 模型名称save_path ./{}.pth.format(model_name) # 最优模型保存路径config Config() x_train, x_test, y_train, y_test train_test_split(df_for_training_scaled.values, train_df[new_label].values,shuffleFalse, test_size0.2)# 将数据转为tensor x_train_tensor torch.from_numpy(x_train.reshape(-1,config.timestep,1)).to(torch.float32) y_train_tensor torch.from_numpy(y_train.reshape(-1,1)).to(torch.float32) x_test_tensor torch.from_numpy(x_test.reshape(-1,config.timestep,1)).to(torch.float32) y_test_tensor torch.from_numpy(y_test.reshape(-1,1)).to(torch.float32)# 5.形成训练数据集 train_data TensorDataset(x_train_tensor, y_train_tensor) test_data TensorDataset(x_test_tensor, y_test_tensor)# 6.将数据加载成迭代器 train_loader torch.utils.data.DataLoader(train_data,config.batch_size,False)test_loader torch.utils.data.DataLoader(test_data,config.batch_size,False)#train_df[cols] # 7.定义LSTM网络 class LSTM(nn.Module):def __init__(self, feature_size, hidden_size, num_layers, output_size):super(LSTM, self).__init__()self.hidden_size hidden_size # 隐层大小self.num_layers num_layers # lstm层数# feature_size为特征维度就是每个时间点对应的特征数量这里为1self.lstm nn.LSTM(feature_size, hidden_size, num_layers, batch_firstTrue)self.fc nn.Linear(hidden_size, output_size)def forward(self, x, hiddenNone):#print(x.shape)batch_size x.shape[0] # 获取批次大小 batch, time_stamp , feat_size# 初始化隐层状态if hidden is None:h_0 x.data.new(self.num_layers, batch_size, self.hidden_size).fill_(0).float()c_0 x.data.new(self.num_layers, batch_size, self.hidden_size).fill_(0).float()else:h_0, c_0 hidden# LSTM运算output, (h_0, c_0) self.lstm(x, (h_0, c_0))# 全连接层output self.fc(output) # 形状为batch_size * timestep, 1# 我们只需要返回最后一个时间片的数据即可return output[:, -1, :] model LSTM(config.feature_size, config.hidden_size, config.num_layers, config.output_size) # 定义LSTM网络loss_function nn.L1Loss() # 定义损失函数 optimizer torch.optim.AdamW(model.parameters(), lrconfig.learning_rate) # 定义优化器# 8.模型训练 for epoch in range(config.epochs):model.train()running_loss 0train_bar tqdm(train_loader) # 形成进度条for data in train_bar:x_train, y_train data # 解包迭代器中的X和Yoptimizer.zero_grad()y_train_pred model(x_train)loss loss_function(y_train_pred, y_train.reshape(-1, 1))loss.backward()optimizer.step()running_loss loss.item()train_bar.desc train epoch[{}/{}] loss:{:.3f}.format(epoch 1,config.epochs,loss)# 模型验证model.eval()test_loss 0with torch.no_grad():test_bar tqdm(test_loader)for data in test_bar:x_test, y_test datay_test_pred model(x_test)test_loss loss_function(y_test_pred, y_test.reshape(-1, 1))if test_loss config.best_loss:config.best_loss test_losstorch.save(model.state_dict(), save_path)print(Finished Training) train epoch[1/10] loss:293.638: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 3727/3727 [01:4100:00, 36.84it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 932/932 [00:1200:00, 73.96it/s] train epoch[2/10] loss:272.386: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 3727/3727 [01:4900:00, 33.90it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 932/932 [00:1200:00, 77.56it/s] train epoch[3/10] loss:252.972: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 3727/3727 [01:4300:00, 35.91it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 932/932 [00:1300:00, 70.65it/s] train epoch[4/10] loss:235.282: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 3727/3727 [01:4500:00, 35.27it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 932/932 [00:0900:00, 93.71it/s] train epoch[5/10] loss:219.069: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 3727/3727 [01:3400:00, 39.57it/s] 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 932/932 [00:0800:00, 103.92it/s] train epoch[6/10] loss:203.969: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 3727/3727 [01:3000:00, 41.22it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 932/932 [00:0900:00, 95.62it/s] train epoch[7/10] loss:189.877: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 3727/3727 [01:3500:00, 39.19it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 932/932 [00:1200:00, 77.61it/s] train epoch[8/10] loss:176.701: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 3727/3727 [01:5200:00, 33.12it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 932/932 [00:1100:00, 81.34it/s] train epoch[9/10] loss:164.382: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 3727/3727 [01:4100:00, 36.64it/s] 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 932/932 [00:0800:00, 112.27it/s] train epoch[10/10] loss:152.841: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 3727/3727 [01:2500:00, 43.40it/s] 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 932/932 [00:0900:00, 94.54it/s]

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

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

相关文章

网站建议公司新邵县住房和城乡建设局网站

TCP协议的报文格式 TCP协议有连接,可靠性传输,面向字节流,全双工。 他的数据格式如图: 根据他的数据格式,在这里我们只知道 16位源端口号(表示客户端这里的端口号),16位目的端口号&…

企业网站规划书实业公司网站建设

一、Znode分类 1、persistent_node 持久化节点 是默认类型,该类型节点,并不会随着客户端断开就会自动删除;zookeeper服务重启该节点也不会被删除,只有手动删除的时候才会删除;可以创建子节点; # create …

手机建站平台郴州网红景点

1、问题背景:maven使用默认settings.xml配置时,Idea基于pom.xml更新依赖时报错,有些组件下载时连接超时, 通过日志发下,去连接maven.org网站下载依赖,有时候肯定会超时。 2、解决办法:使用国外…

新开的网站建设公司如何推广专业的seo外包公司

文章目录1. 题目2. 解题1. 题目 给你一个下标从 0 开始的字符串 s ,它的 偶数 下标处为小写英文字母,奇数 下标处为数字。 定义一个函数 shift(c, x) ,其中 c 是一个字符且 x 是一个数字,函数返回字母表中 c 后面第 x 个字符。 …

北京优质网站制作南通市建设局网站6

怎么通过手机照片制作视频?将照片做成视频并不是很难,可以直接在手机上进行操作,下面来看看是怎么操作的。方法/步骤在手机上打开清爽视频编辑器,有视频编辑、美拍美摄、电子相册、特效模板、动感视频、创意视频、动态字幕、视频变…

龙岩市官方网站网站风格类型是

python遍历实例总结python同时遍历数组的索引和值的实例你想在迭代一个序列的同时跟踪正在被处理的元素索引。获取索引内置的 enumerate() 函数可以很好的解决这个问题:>>> my_list [a, b, c]>>> for idx, val in enumerate(my_list):... print(…

手机网站特效郑州企业网站seo

原标题:刘总出席成都糖酒会:信任铸就云仓酒庄新篇章,共襄盛举展未来近日,备受瞩目的成都糖酒会盛大开幕,吸引了来自全国各地的业界精英和代表。在这场盛大的行业盛会上,云仓酒庄的刘总亲临现场。 现场&…

第一次个人编程作业-论文查重

| 这个作业属于哪个课程 | https://edu.cnblogs.com/campus/gdgy/Class34Grade23ComputerScience | | 这个作业要求在哪里| https://edu.cnblogs.com/campus/gdgy/Class34Grade23ComputerScience/homework/13477 | | 这…

使用Claude代码子代理生成项目特定提交消息的技术实践

本文详细介绍了如何利用Claude Code的子代理功能解决自动生成提交消息过于冗长的问题。通过创建专门的git提交消息生成代理,分析项目规范和变更内容,生成符合项目约定的简洁提交消息,提升开发效率。使用Claude代码子…

上海网站建设公司推荐合肥市住房建设局网站

全世界只有3.14 % 的人关注了爆炸吧知识今天,8岁表妹的老师给她奖励了一块大巧克力,超模君打趣她能不能分给我点,遭到残忍拒绝,超模君很愤怒,暗下决心要神不知鬼不觉地吃上表妹的巧克力。超模君趁表妹在认真做作业的时…

网站建设 前期资料dede门户网站模版

文章目录 1. 如何计算DDR带宽2. DDR data rate和DDR主频3. Mbps和Mhz4. 出题 1. 如何计算DDR带宽 计算DDR理论带宽的公式为: DDR主频 * 位宽 理论带宽其中,位宽(bit width)指的是内存总线的位宽,例如64位、128位、16bit、32bit等&#xff…

新手可以自己学做网站设计吗wordpress怎么设置静态主页

jquery 通过submit()方法 提交表单示例: 本示例:以用户注册作为例子。使用jquery中的submit()方法实现表单提交。 注:本示例仅提供了对表单的验证,本例只用选用了三个字段作为测试。 用户点击提交按钮时,触发点击事件&…

做网站先做ue网页版代码编辑器

先创建自定义控件类painter_label 1.自定义类必须给基类传入父窗口指针 2.重写控件中的方法 3.在UI中创建一个QLabel,右键“提升为”,输入类名

宜昌市水利建设工程协会网站湖南长沙房价2023年最新房价

【问题描述】[中等] 给定一个由表示变量之间关系的字符串方程组成的数组,每个字符串方程 equations[i] 的长度为 4,并采用两种不同的形式之一:"ab" 或 "a!b"。在这里,a 和 b 是小写字母(不一定不…

网站建设完成阶段性总结报告厚街镇网站仿做

一、MySQL数据库管理系统安装部署【简单】 简介 MySQL数据库管理系统(后续简称MySQL),是一款知名的数据库系统,其特点是:轻量、简单、功能丰富。 MySQL数据库可谓是软件行业的明星产品,无论是后端开发、…

长春网站制作长春万网企业内部网站开发

本章节将示范三台 zookeeper 服务端集群搭建步骤。 所需准备工作,创建三台虚拟机环境并安装好 java 开发工具包 JDK,可以使用 VM 或者 vagrantvirtualbox 搭建 centos/ubuntu 环境,本案例基于宿主机 windows10 系统同时使用 vagrantvirtualb…

差分电压

差分电压1) T_02_V+ / T_02_V- —— 差分电压输入(Voltage differential)含义(常见):V+ 与 V- 通常是一对 差分电压输入(或者单端的正、负端)。用于测量传感器或变送器给出的电压信号(例如 0–10 V、10 V、5 V…

走迷宫(BFS)

输入样例:5 5 0 1 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0 期望输出:8代码实现:#include<bits/stdc++.h> using namespace std;typedef pair<int,int> pii; const int N = 110;int n ,m; int s…

网站首页生成静态页面做神马网站优

public static void test4(){int sum 0; //求和for(int i 1;i<100;i){if(i%3!0){sumsumi;}}System.out.println("和是&#xff1a;"sum);}

MyBatis分页的原理和分页插件的原理是什么

1、mybatis的分页 MyBtis本身不提供自动化分页,MyBatis 原生分页的本质,就是通过在 SQL 语句中直接使用数据库特定的分页关键字(如 LIMIT, ROWNUM)来实现的。这是一种物理分页,即数据库只返回查询结果中的一部分数…