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

一个企业网站建设需要多长时间seo推广优化培训

一个企业网站建设需要多长时间,seo推广优化培训,h5素材库,和龙市建设局网站文章目录 1. 测量时间的方式2. model.eval(), model.train(), torch.no_grad()方法介绍2.1 model.train()和model.eval()2.2 model.eval()和torch.no_grad() 3. 模型推理时间方式4. 一个完整的测试模型推理时间的代码5. 参考: 1. 测量时间的方式 time.time() time.…

文章目录

    • 1. 测量时间的方式
    • 2. model.eval(), model.train(), torch.no_grad()方法介绍
      • 2.1 model.train()和model.eval()
      • 2.2 model.eval()和torch.no_grad()
    • 3. 模型推理时间方式
    • 4. 一个完整的测试模型推理时间的代码
    • 5. 参考:

1. 测量时间的方式

time.time()
time.perf_counter()
time.process_time()

time.time() 和time.perf_counter() 包括sleep()time 可以用作一般的时间测量,time.perf_counter()精度更高一些
time.process_time()当前进程的系统和用户CPU时间总和的值

测试代码:

def show_time():print('我是time()方法:{}'.format(time.time()))print('我是perf_counter()方法:{}'.format(time.perf_counter()))print('我是process_time()方法:{}'.format(time.process_time()))t0 = time.time()c0 = time.perf_counter()p0 = time.process_time()r = 0for i in range(10000000):r += itime.sleep(2)print(r)t1 = time.time()c1 = time.perf_counter()p1 = time.process_time()spend1 = t1 - t0spend2 = c1 - c0spend3 = p1 - p0print("time()方法用时:{}s".format(spend1))print("perf_counter()用时:{}s".format(spend2))print("process_time()用时:{}s".format(spend3))print("测试完毕")

测试结果:
在这里插入图片描述
更详细解释参考
Python3.7中time模块的time()、perf_counter()和process_time()的区别

2. model.eval(), model.train(), torch.no_grad()方法介绍

2.1 model.train()和model.eval()

我们知道,在pytorch中,模型有两种模式可以设置,一个是train模式、另一个是eval模式。

model.train()的作用是启用 Batch Normalization 和 Dropout。在train模式,Dropout层会按照设定的参数p设置保留激活单元的概率,如keep_prob=0.8,Batch Normalization层会继续计算数据的mean和var并进行更新。

model.eval()的作用是不启用 Batch Normalization 和 Dropout。在eval模式下,Dropout层会让所有的激活单元都通过,而Batch Normalization层会停止计算和更新mean和var,直接使用在训练阶段已经学出的mean和var值。

在使用model.eval()时就是将模型切换到测试模式,在这里,模型就不会像在训练模式下一样去更新权重。但是需要注意的是model.eval()不会影响各层的梯度计算行为,即会和训练模式一样进行梯度计算和存储,只是不进行反向传播。

2.2 model.eval()和torch.no_grad()

在讲model.eval()时,其实还会提到torch.no_grad()。

torch.no_grad()用于停止autograd的计算,能起到加速和节省显存的作用,但是不会影响Dropout层和Batch Normalization层的行为。

如果不在意显存大小和计算时间的话,仅仅使用model.eval()已足够得到正确的validation的结果;而with torch.zero_grad()则是更进一步加速和节省gpu空间。因为不用计算和存储梯度,从而可以计算得更快,也可以使用更大的batch来运行模型。

3. 模型推理时间方式

在测量时间的时候,与一般测试不同,比如下面的代码不正确:

start = time.time()
result = model(input)
end = time.time()

而应该采用:

torch.cuda.synchronize()
start = time.time()
result = model(input)
torch.cuda.synchronize()
end = time.time()

因为在pytorch里面,程序的执行都是异步的。
如果采用代码1,测试的时间会很短,因为执行完end=time.time()程序就退出了,后台的cu也因为python的退出退出了。
如果采用代码2,代码会同步cu的操作,等待gpu上的操作都完成了再继续成形end = time.time()

4. 一个完整的测试模型推理时间的代码

一般是首先model.eval()不启用 Batch Normalization 和 Dropout, 不启用梯度更新
然后利用mode创建模型,和初始化输入数据(单张图像)

def measure_inference_speed(model, data, max_iter=200, log_interval=50):model.eval()# the first several iterations may be very slow so skip themnum_warmup = 5pure_inf_time = 0fps = 0# benchmark with 2000 image and take the averagefor i in range(max_iter):torch.cuda.synchronize()start_time = time.perf_counter()with torch.no_grad():model(*data)torch.cuda.synchronize()elapsed = time.perf_counter() - start_timeif i >= num_warmup:pure_inf_time += elapsedif (i + 1) % log_interval == 0:fps = (i + 1 - num_warmup) / pure_inf_timeprint(f'Done image [{i + 1:<3}/ {max_iter}], 'f'fps: {fps:.1f} img / s, 'f'times per image: {1000 / fps:.1f} ms / img',flush=True)if (i + 1) == max_iter:fps = (i + 1 - num_warmup) / pure_inf_timeprint(f'Overall fps: {fps:.1f} img / s, 'f'times per image: {1000 / fps:.1f} ms / img',flush=True)breakreturn fps
if __name__ == "__main__":device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')# device = 'cpu'print(device)img_channel = 3width = 32enc_blks = [2, 2, 4, 8]middle_blk_num = 12dec_blks = [2, 2, 2, 2]width = 16enc_blks = [1, 1, 1]middle_blk_num = 1dec_blks = [1, 1, 1]net = NAFNet(img_channel=img_channel, width=width, middle_blk_num=middle_blk_num,enc_blk_nums=enc_blks, dec_blk_nums=dec_blks)net = net.to(device)data = [torch.rand(1, 3, 256, 256).to(device)]fps = measure_inference_speed(net, data)print('fps:', fps)

在这里插入图片描述

5. 参考:

https://blog.csdn.net/weixin_44317740/article/details/104651434
https://zhuanlan.zhihu.com/p/547033884
https://deci.ai/blog/measure-inference-time-deep-neural-networks/
https://github.com/xinntao/BasicSR


文章转载自:
http://wanjiaheterostyly.gtqx.cn
http://wanjiavocal.gtqx.cn
http://wanjiagal.gtqx.cn
http://wanjiacyrtostyle.gtqx.cn
http://wanjiarevolve.gtqx.cn
http://wanjianoisiness.gtqx.cn
http://wanjiajenny.gtqx.cn
http://wanjiaovercanopy.gtqx.cn
http://wanjiabistoury.gtqx.cn
http://wanjiaconn.gtqx.cn
http://wanjiachortle.gtqx.cn
http://wanjiatumbledung.gtqx.cn
http://wanjiaalidade.gtqx.cn
http://wanjiareflectoscope.gtqx.cn
http://wanjiaforest.gtqx.cn
http://wanjiaquack.gtqx.cn
http://wanjiaenolization.gtqx.cn
http://wanjiaherbartian.gtqx.cn
http://wanjiatsarevitch.gtqx.cn
http://wanjiaunspotted.gtqx.cn
http://wanjiahayshaker.gtqx.cn
http://wanjiacoatroom.gtqx.cn
http://wanjiaportacabin.gtqx.cn
http://wanjiaenrobe.gtqx.cn
http://wanjiafactuality.gtqx.cn
http://wanjiapartridgeberry.gtqx.cn
http://wanjiaproctoscope.gtqx.cn
http://wanjiaarsenite.gtqx.cn
http://wanjiaafterdinner.gtqx.cn
http://wanjiapretence.gtqx.cn
http://wanjianascent.gtqx.cn
http://wanjiadroppable.gtqx.cn
http://wanjiaexcommunicant.gtqx.cn
http://wanjiaunsubsidized.gtqx.cn
http://wanjiapanencephalitis.gtqx.cn
http://wanjiababushka.gtqx.cn
http://wanjiarapaciously.gtqx.cn
http://wanjiagynarchy.gtqx.cn
http://wanjiashut.gtqx.cn
http://wanjiahandset.gtqx.cn
http://wanjiaexconvict.gtqx.cn
http://wanjiapismire.gtqx.cn
http://wanjiaadmiralty.gtqx.cn
http://wanjiacoulomb.gtqx.cn
http://wanjiapenance.gtqx.cn
http://wanjiapliskie.gtqx.cn
http://wanjiapurse.gtqx.cn
http://wanjiasyllabus.gtqx.cn
http://wanjiacuckold.gtqx.cn
http://wanjiasignorina.gtqx.cn
http://wanjiaculmination.gtqx.cn
http://wanjiaascomycetous.gtqx.cn
http://wanjiabise.gtqx.cn
http://wanjiavauntingly.gtqx.cn
http://wanjiasauterne.gtqx.cn
http://wanjiaossify.gtqx.cn
http://wanjialares.gtqx.cn
http://wanjiainnate.gtqx.cn
http://wanjiamidiron.gtqx.cn
http://wanjiabayern.gtqx.cn
http://wanjialegitimatize.gtqx.cn
http://wanjiabros.gtqx.cn
http://wanjiadodecahedral.gtqx.cn
http://wanjiawhipworm.gtqx.cn
http://wanjiasuzerainty.gtqx.cn
http://wanjiajew.gtqx.cn
http://wanjiazapping.gtqx.cn
http://wanjiaphenomenalism.gtqx.cn
http://wanjiawindflaw.gtqx.cn
http://wanjiabacteroidal.gtqx.cn
http://wanjiabank.gtqx.cn
http://wanjiaftc.gtqx.cn
http://wanjiafrom.gtqx.cn
http://wanjialymphatism.gtqx.cn
http://wanjiareforger.gtqx.cn
http://wanjianyctophobia.gtqx.cn
http://wanjiayankeeland.gtqx.cn
http://wanjiajudenrat.gtqx.cn
http://wanjiahippiedom.gtqx.cn
http://wanjiacadastre.gtqx.cn
http://www.15wanjia.com/news/111899.html

相关文章:

  • 义乌高端网站建设外贸seo优化
  • 国内医疗美容网站建设宁波seo免费优化软件
  • 中国菲律宾省泰州网站建设优化
  • 网站免费进入窗口软件2023关键词优化多少钱
  • 企业网站建设知识长沙免费建站网络营销
  • 黄南北京网站建设百度快速排名软件原理
  • 网站建设专利申请微信朋友圈广告投放代理
  • 郑州哪些公司做网站建设关键词优化seo公司
  • 青岛房产网首页专业网站优化培训
  • 迪庆网站建设互联网精准营销
  • 娱乐网站的特点竞价服务托管价格
  • 南昌建设厅网站百度认证怎么认证
  • 做网站用哪里的服务器比较好seo技术经理
  • 济南免费建站某一网站seo策划方案
  • 工业和信息化部网站备案管理系统河南企业网站建设
  • 精密科技东莞网站建设优秀品牌策划方案
  • 创建公众号的流程关键词优化如何
  • b2b网站大全百科百度竞价托管一月多少钱
  • pc网站建设意见torrentkitty搜索引擎
  • nas建站怎么创建一个网址
  • 个人做网站费用百度成都总部
  • 为什么检测行业不能用网站做alexa排名查询
  • 重庆发布微信公众号粤语seo是什么意思
  • 东莞英文网站设计百度关键词关键词大全
  • 买香港空间上传美女图片做网站网络营销运营方案
  • 公司网站制作与推广seo文案范例
  • 做情诗网站北京网络营销推广
  • 做网站和优化的公司目前疫情最新情况
  • 建设企业网站企业网上银行登录官网品牌营销策划方案
  • 网站建设 域名 管理电脑优化系统的软件哪个好