文本分析的扩展与深度学习应用
1. 文本分析扩展的必要性与方法
在信息时代进行文本分析时,很容易形成应用的良性循环,即使用文本分析并从人类响应中生成更多文本数据。这使得机器学习语料库迅速增长,超出了单进程甚至单台机器的计算能力。随着分析时间的增加,迭代或实验工作流程的生产力会下降,因此必须采用某种扩展方法来保持动力。
1.1 多进程模块扩展
多进程模块是扩展分析的第一步。只需将已用于分析的代码进行调整或包含在多进程上下文中即可。多进程库利用多核处理器和现代机器上的大量内存来同时执行代码。数据仍存储在本地,但如果机器性能足够强大,大量工作可以被拆分为可管理的小块。
1.2 集群计算
当数据量增长到无法再存储在单台机器上时,就必须使用集群计算方法。Spark 提供了一个执行框架,允许在运行 Jupyter 笔记本中 PySpark 的本地计算机与运行多个执行器的集群之间进行交互式计算,这些执行器对数据的分区进行操作。这种交互性结合了顺序和并行计算算法的优点。不过,使用 Spark 需要改变代码和编程上下文,甚至可能需要选择其他机器学习库,但好处是原本无法用于文本分析技术的大型数据集可以成为新应用的丰富素材。
1.3 分布式计算的关键要点
使用分布式计算的关键是要充分理解其中的权衡。了解操作是受计算限制还是受 I/O 限制,可以避免在诊断作业为何耗时过长或使用过多资源时遇到麻烦(并有助于平衡任务和数据并行性)。此外,并行执行会带来额外的开销,必须确保这种开销是值得的;理解这一点有助于我们做出决策,在不影响实验开发的前提下进行优化。最后,认识到算法在分布式环境中的近似方式对于构建有意义的模型和解释
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



