深度学习如何实时工作?

时间:2016-11-13 13:45:40

标签: api machine-learning artificial-intelligence deep-learning

我刚刚制作了api,它使用Django根据用户输入推荐电影。它旨在为每个用户的每10个输入执行深度学习功能。对于每10个输入,输出需要大约10秒。谷歌或亚马逊如何能够毫不拖延地进行实时数据更新?

1 个答案:

答案 0 :(得分:2)

在执行方面没有深刻的学习,只有深层模型。让我们假设这是一个常规的前馈模型,那么你所要做的就是执行K(深度)矩阵乘法。对于卷积层,它更多,但仍然是矩阵乘法。所有这些操作都非常简单来并行化。特别是只需在GPU上运行它们就可以提供~20倍的提升。使用可以在多个核心/ cpus /机器上分散计算的tensorflow也可以以相同的方式工作。还有许多其他可能的优化,比如训练一个小网来复制大网的行为,利用一些矩阵的稀疏性(如果你使用relus - 许多神经元将产生零,因此 - 稀疏矩阵出现)等。< / p>

话虽如此 - 处理10个输入需要10秒的网络听起来像是一个糟糕的实现,或者网络真的是巨大,所以在进行一般优化方案之前 - 确保你当前的代码很好。例如,如果你使用tensorflow等,那么之前推送你的数据需要花费很多时间是很重要的 - 比如加载库,启动会话,会话.run调用自身等等。