人工智能编程心得

了解python语言对人工智能程序的影响

首先,我们要了解业界最常用的一门语言,那就是python,python是一门解释性语言,在人工智能编程的过程中, 我们须知它的底层是依赖C代码实现的,所以我们需要知道,在每次程序运行的过程中,我们需要将python转换为C语言去运行,这需要我们考虑到程序的时间复杂度。尽可能在程序中少写显式的循环而使用内置函数去替代,可以提升程序的运算效率。
2021-07-27更新
至于为什么要选择python语言?听过的其中一个方面是因为python语言的编写比较友好,可以让AI编程者们更关注于算法而不是编程语言的条条框框。

GPU加速

为什么要使用GPU加速?要知道,GPU设计的初衷可是为了进行图形任务。原来,人们发现,用于图形任务的GPU单元上,有非常多的计算单元,而神经网络通常需要进行大规模的计算,于是人们就将GPU算力用于了神经网络训练,大量计算单元的加持下,相较CPU而言,速度大大提升。然而GPU算力需要耗费许多的电力,曾经在自媒体上听某旦的一位教授说,他们有时候实验用电仅一天就耗费一万度,换做人一般是不可能产生这么大规模的用电的。近期爆出矿场的高度用电也说明了GPU算力会带来巨大的能源消耗。

保存好程序的中间变量

人工智能编程一般都存在数据清洗,特征工程等阶段,而这些工作在小规模数据集上每次训练都进行也不会有太大的影响(其实会有)。所以可以把字典啥的,特征向量啥的都存下来(保存变量可以看我的这篇博客),在训练的时候直接加载就行,这样可以减少程序的处理时间,在需要处理大规模的数据时尤为明显。
2021-8-21更新

多线程处理数据

先明白一个前提,由于python的GIL锁(同一时刻只能有一个线程访问CPU ),多线程对于计算密集型程序没有用,因为它一直连续计算,但对I/O密集型程序(延迟IO,网络等)有用,因为切换线程可以避免这类程序的持续等待。在处理大量数据时,我们可以创建多线程进行并发处理。需要关注的是,多线程io要处理好锁的运用,线程也不是越多越好,在工程级的多线程任务中, 需要注意线程池的维护。如果想要简单使用多线程来处理自己的数据,可以参考我的这篇博客
2021-8-23更新

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dp0d

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值