介绍
做为一个穷小子,没钱买GPU开展深度神经网络训练,只有在网络上租赁GPU开展训练。在比照了好几家以后,挑选了极客云开展训练。极客云在分享方式下的性价比高远远高于别的GPU服务提供商。
我再这儿简洁的介绍一下我应用极客云开展训练的全过程。
操作方法在线充值在应用极客云前必须最先开展在线充值,新用户账户里也会出现5元前后的优惠劵,可以立即应用。
照片在线充值全过程点一下在线充值,使用微信开展结算就可以。
提交数据信息点一下文件上传或提交文件目录将数据信息上传入文件目录中。
提议应用Chrome对数据资料开展提交。点一下文件上传后,文件夹名称逐渐提交,速率还蛮快的。但有可能会卡住,这里有2个提议:
更新后传上去清除残片后传上去创建实例点一下创建实例,就可以挑选服务器型号规格开展创建。这儿可以挑选实体模型内置架构和python版本,挑选相匹配版本就可以迅速创建实例。
因为服务器很有可能被占有,因此创建实例很有可能不成功。创建好的实例如下所示,可以应用ssh远程登陆,或是应用JupyterNotebook开展浏览,应用tensorboard观查试验結果。在管理方法实例里舍弃单独占有。
经检测,终止独享只需确保GPU沒有在运用的情况下就可以应用,不容易重新启动实例。但如今终止独享后好像不可以应用cuda。
训练全过程提交的数据信息均储存在 /data/文件目录下,应用rsync命令可以将其同歩至/input下边开展训练,由于从/data/文件目录下边接收数据用时比较大。同歩数据信息的全过程费时较长,可以进入共享资源情况开展复制,或是可以自主撰写一个data provider用以多线程载入/data/下边的数据信息,给予给实体模型开展训练。
class SeqDatasets(data.Dataset): # 读取文件 def data_provider(self): while True: sample = self.items.get() tgt_img = load_as_float(sample['tgt']) ref_imgs = [load_as_float(ref_img) for ref_img in sample['ref_imgs']] if self.transform is not None: imgs, intrinsics = self.transform([tgt_img] ref_imgs, np.copy(sample['intrinsics'])) tgt_img = imgs[0] ref_imgs = imgs[1:] else: intrinsics = np.copy(sample['intrinsics']) self.pool.put((tgt_img, ref_imgs, intrinsics, np.linalg.inv(intrinsics))) def __init__(self, root, seed = None, train = True, sequence_length = 3, transform = None, target_transform = None, buffer_size = 100, workers = 4): [self.items.put(sample) for sample in self.samples] self.workers = [] # 运行线程同步接收数据 for i in range(workers): worker = threading.Thread(target = self.data_provider) # worker.setDaemon(True) worker.start() self.workers.append(worker) def __getitem__(self, index): if self.items.qsize() == 0: [self.items.put(sample) for sample in self.samples] return self.pool.get() def __len__(self): return len(self.samples)最终,无耻的贴上我的邀约连接:
申请注册扫码咨询与免费使用
申请免费使用