如何使用OpenBayes的数据集进行模型训练

目前机器学习竞赛中使用的数据集大小基本都有几十到几百MB,有的甚至达到GB级别,对于想使用jupyter进行训练的来说每次上传都会浪费很多时间,如果是使用算力平台的jupyter上传的话还会浪费算力,所以最好的方法就是在使用算力资源之前先将数据集上传到算力平台提供的数据存储空间中,例如OpenBayes就提供了数据仓库功能来存储数据,下面详细介绍一下使用流程:

OpenBayes注册使用地址:
openbayes.com/console/sig...

新用户注册完成手机号及邮箱双重验证后,即可获得4小时RTX 4090、5小时CPU 免费使用时长以及免费存储空间 50 GB。

进入数据集页面

在使用上面的链接注册登录之后,进入【数据仓库】目录下的【数据集】页面,可以看到我已经上传了多个数据集。

​编辑

创建新的数据集

点击右上角的【创建新数据集】,就进入了填写基本信息的页面,填写完毕后点击左下角【创建数据集】,再点击右上角的【创建空版本】,到这里就创建这个数据集的v1版本,如果数据有更新但又不想创建另一个数据集直接再创建另一个v2版本上传即可,不需要再将容器绑定新的数据集。

上传本地数据集

点击【上传至当前目录】,就可以从本地上传数据集文件,OpenBayes提供了50GB的免费存储空间,对于相对小规模数据的训练来说足够了。在数据集上传的过程中不要关闭该页面,会中断上传流程。

绑定数据集至容器

结合t.csdnimg.cn/IbwSk我在上一篇文章已经介绍的新容器创建过程,在基本信息页面进行数据绑定,可以选择只读绑定和读写绑定,然后选择算力资源执行容器即可。

在Jupyter中加载数据

在Jupyter页面可以看到我们绑定的数据,在代码中读取数据的路径为'../input0/##',如果绑定了多个数据集,则将input后的数字按序列增加即可,至此,我们实现了在jupyter内使用数据集。

使用pandas读取数据

数据读取

ini 复制代码
import pandas as pd
import numpy as np

train = pd.read_csv('../input0/train.csv')
test = pd.read_csv('../input0/test.csv')

数据基本信息

ini 复制代码
def data_stats(data):
    stats = []
    for col in data.columns:
        stats.append((col, data[col].nunique(),
                      round(data[col].value_counts(normalize = True, dropna = False).values[0] * 100, 3),
                      data[col].dtype))
        stats_df = pd.DataFrame(stats, columns = ['特征','属性个数','最大属性占比','特征类型'])
    return stats_df

data_stats(train)
data_stats(test)
特征 属性个数 最大属性占比 特征类型
0 id 5832 0.017 object
1 dt 496 0.203 int64
2 type 19 20.722 int64
3 target 181304 0.004 float64
特征 属性个数 最大属性占比 特征类型
0 id 5832 0.017 object
1 dt 10 10.000 int64
2 type 19 20.645 int64

数据可视化

ini 复制代码
import matplotlib.pyplot as plt
type_target_df = train.groupby('type')['target'].mean().reset_index()
plt.figure(figsize=(8, 4))
plt.bar(type_target_df['type'], type_target_df['target'], color=['#5ba2e6', '#f89732'])
plt.xlabel('Type')
plt.ylabel('Average Target Value')
plt.title('Bar Chart of Target by Type')
plt.show()
ini 复制代码
specific_id_df = train[train['id'] == '00037f39cf']
plt.figure(figsize=(15, 5))
plt.plot(specific_id_df['dt'], specific_id_df['target'], marker='o', linestyle='-', color = '#5ba2e6')
plt.xlabel('DateTime')
plt.ylabel('Target Value')
plt.title("Line Chart of Target for ID '00037f39cf'")
plt.show()

Openbayes提供了丰富的算力资源,最高可以提供96核CPU,192GB显存,320GB内存,800GB工作空间,高质量算力首选Openbayes!

相关推荐
戒不掉的伤怀33 分钟前
【Navicat 连接MySQL时出现错误1251:客户端不支持服务器请求的身份验证协议;请考虑升级MySQL客户端】
服务器·数据库·mysql
cv高级工程师YKY39 分钟前
服务器 - - QPS与TPS介绍
数据库
nbsaas-boot1 小时前
高可扩展属性建模设计:架构师的全局思考与落地方案
数据库
爱上语文1 小时前
Redis基础(5):Redis的Java客户端
java·开发语言·数据库·redis·后端
陈敬雷-充电了么-CEO兼CTO2 小时前
推荐算法系统系列>推荐数据仓库集市的ETL数据处理
大数据·数据库·数据仓库·数据挖掘·数据分析·etl·推荐算法
MeshddY2 小时前
(超详细)数据库项目初体验:使用C语言连接数据库完成短地址服务(本地运行版)
c语言·数据库·单片机
wuxinyan1232 小时前
Java面试题033:一文深入了解MySQL(5)
java·数据库·mysql·面试
萧曵 丶2 小时前
Spring @TransactionalEventListener
java·数据库·spring·事务·transactional·异步
胡斌附体3 小时前
mobaxterm终端sqlplus乱码问题解决
数据库·乱码·sqlplus·字符集设置
moon66sun3 小时前
开源项目XYZ.ESB:数据库到数据库(DB->DB)集成
数据库·esb