当前位置: 首页 > news >正文

白云区同和网站建设做网站赚钱吗 怎么赚钱

白云区同和网站建设,做网站赚钱吗 怎么赚钱,网页制作技术有哪些,线上营销推广【背景】 训练神经网络模型的时候#xff0c;特征组合太多#xff0c;电脑的资源会不足#xff0c;所以采用分批逐步进行。已经处理过的批次保存下来#xff0c;在下一次跳过#xff0c;只做新加入的批次训练。 选择最优模型组合在中间结果的范围内选择#xff0c;这样…【背景】  训练神经网络模型的时候特征组合太多电脑的资源会不足所以采用分批逐步进行。已经处理过的批次保存下来在下一次跳过只做新加入的批次训练。 选择最优模型组合在中间结果的范围内选择这样能保证所有的特征都能得到组合所有的组合都能得到训练和评估。 【流程】 ------------------------------------- | 开始 (Start) | -------------------------------------|v ------------------------------------- | 读取中间结果 (loss_records) | -------------------------------------|v ------------------------------------- | 计算总的特征组合数量 | | (total_combinations) | -------------------------------------|v ------------------------------------- | 计算批次数量 (num_batches) | -------------------------------------|v ------------------------------------- | 初始化进度条 | -------------------------------------|v ------------------------------------- | 清理多余记录 | | (Clean extra records) | -------------------------------------|v ------------------------------------- | 遍历每个批次 (for each batch) | -------------------------------------|v ------------------------------------- | 获取当前批次特征组合和数据 | -------------------------------------|v ------------------------------------- | 检查当前批次是否已处理 | | (if batch in loss_records) | ------------------------------------ | 否 | 是 | | | | v | | -------------------------------------| | 调用 train_and_evaluate_torch | -------------------------------------|| |v | -------------------------------------| | 更新所有评估结果 | | ------------------------------------- || | vv ------------------------------------- -------------------------------------| 跳过已处理的批次更新评估结果 | | 保存中间结果 |------------------------------------- | (save intermediate results) | -------------------------------------|v ------------------------------------- | 更新进度条 | -------------------------------------|v ------------------------------------- | 所有批次处理完成 | | (All batches processed) | -------------------------------------|v ------------------------------------- | 保存最佳模型和特征组合到Excel | | (save_result_to_excel) | -------------------------------------|v ------------------------------------- | 结束 (End) | -------------------------------------【需求】 读取中间结果 执行特征工程 遍历传入的特征组合 对比中间结果和新传入的特征组合  找出和新传入的特征组合的差异包括新增的和不再用的  执行训练和评估针对新增的同步中间数据中间结果中也包括预测值和模型参数因为我希望从中选出最优模型并记录其中也包括参数信息和预测值  从最新的评估数据包括新的和中间结果中的 选出最优的特征组合保存到excel  【代码】 import os import json import pandas as pd from tqdm import tqdm import logging# 读取中间结果以防程序中途停止 loss_records {} if os.path.exists(loss_records_file):try:with open(loss_records_file, r) as f:loss_records json.load(f)print(~~~~~~~~从中间文件中读取到的loss_records, loss_records)# 确保键是字符串并转换回元组形式loss_records {deserialize_features(k): v for k, v in loss_records.items()}print(~~~~~~~~转换回元组形式的loss_records, loss_records)print(成功加载 loss_records.json)except json.JSONDecodeError as e:print(fJSONDecodeError: {e}. 重置 loss_records.json 文件内容。)loss_records {}with open(loss_records_file, w) as f:json.dump(loss_records, f)# 获取所有特征组合的总数 total_combinations len(feature_combinations)# 计算批次数量 num_batches (total_combinations combination_batch_size - 1) // combination_batch_size# 进度条初始化 pbar tqdm(totaltotal_combinations, desc特征组合训练进度, position0, leaveTrue) all_evaluation_results [] new_feature_set set(feature_combinations)# 删除 loss_records 中多余的记录 loss_records {k: v for k, v in loss_records.items() if deserialize_features(k) in new_feature_set} print(Cleaned loss_records:, loss_records)for batch_index in range(num_batches):start batch_index * combination_batch_sizeend min(start combination_batch_size, total_combinations)current_batch feature_combinations[start:end]current_normalized_data normalized_data[start:end]print(current_batch: , current_batch)print(loss_records: , loss_records)# 检查当前批次是否已处理过if all(features in loss_records for features in current_batch):# 更新进度条pbar.update(len(current_batch))print(跳过已经处理过的批次)# 将已处理过的结果添加到所有评估结果中for features in current_batch:serialized_features serialize_features(features)if serialized_features in loss_records:results loss_records[serialized_features]all_evaluation_results.append({features: features,mse: results[MSE],mae: results[MAE],r2: results[R2]})continueprint(----没有跳过----已经处理过的批次)# 调用 train_and_evaluate_torch 函数处理当前批次的特征组合evaluation_results train_and_evaluate_torch(current_batch, current_normalized_data, param_model, scaler_close, evaluation_results, n, data_obj, parameter_period, loss_records)all_evaluation_results.extend(evaluation_results)# 保存中间结果for features in current_batch:serialized_features serialize_features(features)print(fSerializing features: {features} - {serialized_features})# 提取结果并保存results next(item for item in evaluation_results if item[features] features)if best_metrics in results:best_metrics results[best_metrics]loss_records[serialized_features] {MSE: convert_numpy_types(best_metrics[mse]),MAE: convert_numpy_types(best_metrics[mae]),R2: convert_numpy_types(best_metrics[r2])}else:loss_records[serialized_features] {MSE: convert_numpy_types(results[mse]),MAE: convert_numpy_types(results[mae]),R2: convert_numpy_types(results[r2])}# 输出当前的 loss_records 以进行调试print(Current loss_records before saving: , loss_records)with open(loss_records_file, w) as f:json.dump(loss_records, f)# 再次读取并检查文件内容确保保存正确with open(loss_records_file, r) as f:loaded_loss_records json.load(f)print(Loaded loss_records after saving: , loaded_loss_records)# 更新进度条pbar.update(len(current_batch))print(所有批次处理完成。) pbar.close()# 最佳模型和每个特征组合的最佳模型保存到excel save_result_to_excel(strategy_name, all_evaluation_results, OUTPUT_FILE_NEURAL_NETWORK_PATH, weights)def save_result_to_excel(strategy_name, evaluation_results, file_path, weightsNone):数据保存到excel.Parameters:- evaluation_results 评估数据- file_path excel文件名称用来保存测试报告Returns:None# print(评估数据evaluation_results:, evaluation_results)strategy_func strategy_mapping.get(strategy_name)if strategy_func:num_params len(inspect.signature(strategy_func).parameters)if weights and num_params 1:best_result strategy_func(evaluation_results, weights)print(best_result assigned successfully:, best_result)else:best_result strategy_func(evaluation_results)print(best_result assigned successfully:, best_result)print(保存best_result, best_result)print() try: # 创建一个空列表来存储评估过程的结果evaluation_process_data []# 添加评估过程中的结果for result in evaluation_results:evaluation_process_data.append({Features: result[features],Best Parameters: result[best_params],Best Metrics: result[best_metrics]})# 创建DataFrame来存储评估过程的结果df_evaluation_process pd.DataFrame(evaluation_process_data)print(训练过程的数据df_evaluation_process, df_evaluation_process)# 创建一个空的DataFrame来存储最佳模型的结果df_best_model_results pd.DataFrame(columns[Features, Best Predictions])if best_result is not None:df_best_model_results.loc[0] {Features: best_result[features], # 使用best_result中的特征信息Best Predictions: best_result[predictions]}# 倒置最佳模型结果DataFrame的行列df_best_model_results_transposed df_best_model_results.transpose()# 创建一个新的 DataFrame用于存储转置后的数据以及其含义df_with_labels pd.DataFrame(columns[Label, Value])# 将原始表头作为索引添加到新 DataFrame 中for feature in df_best_model_results_transposed.index:# 获取转置后数据的值而不包括索引和数据类型信息value df_best_model_results_transposed.loc[feature].values[0]df_with_labels pd.concat([df_with_labels, pd.DataFrame({Label: [feature], Value: [value]})], ignore_indexTrue)# 保存最佳模型的结果到Excel文件with pd.ExcelWriter(file_path, enginexlsxwriter) as writer:df_with_labels.to_excel(writer, sheet_nameBest Model Results, indexFalse)print(执行了保存数据到excel,路径是:) print(file_path) else:print(best_result is None, cannot save to excel)logging.error(best_result is None, cannot save to excel)except Exception as e:print(f保存测试结果到excel: {e})logging.error(fsave result to excel: {e}) else:print(Invalid strategy name:, strategy_name)要点 清理多余记录在处理批次之前根据新的特征组合清理 loss_records 中多余的记录。更新所有评估结果即使跳过已处理的批次也将其评估结果添加到 all_evaluation_results 中以确保最终的最佳模型选择是基于所有特征组合。保存最佳结果到Excel保持 save_result_to_excel 函数逻辑不变确保从所有评估结果中选出最优模型并保存。 这样可以确保即使跳过了一些已处理的批次最终的最优模型仍然是从所有特征组合中选出的并且中间结果不会包含多余的记录。
http://www.dnsts.com.cn/news/182149.html

相关文章:

  • 营销型网站方案ppt模板我们是谁 网站运营
  • 织梦网站图标更换wordpress的模板文件
  • 移动端企业网站网站建设哪家好万维科技
  • 网站数据库模版唐山房产网站建设
  • 山东住房和建设庭官网站官军队工程建设项目招投标网站
  • 汕头网站推广费用代发货网站系统建设
  • ps外包网站鲜花网站建设店
  • 交通建设集团网站项目经理接到网站开发怎么开展
  • 杭州蒙特网站建设求人做网站
  • 建永久网站网站网址前的小图标怎么做的
  • 免费创建虚拟网站升阳广州做网站公司
  • 凡科建站的建站后如何管理erp系统长什么样
  • 手机app客户端做网站wordpress访问满
  • wordpress 仿站wordpress 性能
  • 建设网站推广贷款业务津seo快速排名
  • 响应式外贸网站建设办公室设计风格
  • 装饰设计网站建设河南省网站制作公司
  • 宜昌哪有有做网站的手机商城网站模板
  • 网站建设专员工作网站300兆是多少
  • 网站建设流程 文档如何找外包网站来做
  • 做网站找华企php多用户商城双端app
  • 天津建设教育培训中心网站通过php获取手机网站访客的手机号码
  • 网站从哪几个方面维护网站登录人太多进不去怎么办
  • 北京网站制作开发公司游戏网站哪个好
  • 建设银行软件官方网站下载济南网站建设推广
  • 重庆网站建设兼职网站模板中文
  • 北京网站建设++知乎设计制作的广告公司
  • 湖南省网站备案时间天行健公司网站建设
  • 自己如何建设网站聊天室公司怎么建设官网
  • 龙岗做网站公司icxun在线crm视频