深度学习数据集制作_一篇文章搞定人工智能之深度学习创建训练数据集的方法
基础数据准备训练所需要的数据集合都存储在数据库中,还有部分文本文件首先对数据进行分类结构化存储[因为涉及到的是多分类问题]整理并存储原始数据集使用numpy将所有需要数据读取出来splitlines() ==> 按照或者分割import numpy as npimport pandas as pdvalues1 = np.array(open(r'text1.txt', 'r', enc..
·
基础数据准备
训练所需要的数据集合都存储在数据库中,还有部分文本文件
首先对数据进行分类结构化存储[因为涉及到的是多分类问题]
整理并存储原始数据集
使用numpy将所有需要数据读取出来
splitlines() ==> 按照 或者分割
import numpy as npimport pandas as pdvalues1 = np.array(open(r'text1.txt', 'r', encoding='utf-8').read().splitlines())values2 = np.random.choice(open(r'text2.txt', 'r', encoding='utf-8').read().splitlines(),100000)
设计标识符
label_map = { 1: 'values1', 2: 'values2',}
将所有数据进行拼接
data = np.concatenate([values1,values2])
生产相应数量的标识
lable = np.concatenate([np.array([4]*len(values1)),np.array([5]*len(values2))])
生成DataFrame数据结构
df = pd.DataFrame({"data":data,"lable":lable})
提取数据结构中多余的字符
df.replace('||!', '', inplace=True, regex=True)
将整合后的原始数据存储为csv文件
df.to_csv("dataset.csv",sep="!",index=False,header=False)
使数据集向量化
from keras.preprocessing.sequence import pad_sequences # 对序列进行预处理生成长度相同的序列from keras.utils.np_utils import to_categorical # 将标签转换为 one-hot 编码
对每个字符进行old操作
def process(s: str): s = str(s).lower() return [ord(c) for c in s]data = df['data'].apply(process).values
将序列处理成相同长度的数组
MAX_SEQUENCE_LENGTH = 30data = pad_sequences(data, maxlen=MAX_SEQUENCE_LENGTH,dtype='int',padding='post',truncating='post')
去除数组内重复数字并进行排序之后输出
palette = np.unique(data)
获取每个字符在palette中的位置
data = np.digitize(data, palette, right=True)
将标签转化为 one-hot 编码
labels = to_categorical(df['lable'].values)
划分训练子集与测试子集
from sklearn.model_selection import train_test_splittrain_data, val_data, train_label, val_label = train_test_split(data, labels, test_size=0.2, random_state=42)print('train data shape: ', train_data.shape, ' train label shape: ', train_label.shape)print('val data shape: ', val_data.shape, ' val label shape: ', val_label.shape)
#人工智能##深度学习##AI科技#




魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)