我们应该如何设计我们运行的算法和学习的架构?计算领域的多个高影响力领域已经开始使用机器学习(ML)自动化这些程序,通过利用我们不断扩大的数据和计算资源,减少对人力的需求。本论文利用机器学习、算法设计和优化的思想,推动我们对这些数据驱动计算领域的理解——元学习、具有预测的算法和架构搜索——并将结果方法论转化为最先进的实现。
在元学习中,我们利用机器学习自身来改善 ML 算法,通过跨多个学习任务进行学习,我们引入了 ARUBA,一个用于设计和分析元学习方法的框架。我们的分析提供了基于梯度的元学习的首次保证,展示了这些方法如何根据可量化的学习任务相似性指标提高性能。我们利用 ARUBA 将元学习的实际影响扩展到机器学习的新领域,包括部分反馈学习和联邦学习;在后者中,我们引入了 FedEx,一种用于调优联邦优化器的新型最先进方法,该优化器在分布式异构数据集(如移动设备和医院记录)网络上训练模型。
我们在 ARUBA 成功的基础上,进一步扩展其核心方法——优化近似算法目标的替代损失函数——不仅限于学习算法,还展示了具有预测的算法的学习保证,即利用机器学习预测其实例的算法;特别地,我们展示了依赖于算法运行实例的预测的首个学习理论保证,这对实际应用至关重要。我们的框架再次作为算法设计工具,构建了第一个针对释放(差分)隐私统计信息的算法和线性系统求解器的具有预测的算法;在后者中,我们设计的学习算法在自然结构假设下,可以学习到实例最优的预测。
最后,本论文解决了在特定学习任务上训练神经网络架构的问题,即架构搜索,我们朝着理解权重共享的优化和泛化特性取得了进展,权重共享是该领域使用的主要启发式方法。然后,我们扩展了权重共享,以设计基于神经操作的新搜索空间,允许从数据中自动发现真正新颖的架构;这一努力的顶点是 DASH,一种有效找到在我们测试的大多数多样化任务上超越人类专家设计的神经架构的方法。