智能软件具有改变我们社会的潜力。它正在成为现实世界中许多系统的基石。然而,尽管机器学习模型在基准测试上表现出色,像神经网络这样的最新方法在遇到现实情境时经常失败。由于神经网络通常学习相关性而不是根据正确的信号和知识进行推理,它们在面对分布变化、意外破坏和最坏情况时会失败。由于神经网络是黑盒模型,用户无法解释或信任它们。为了在最关键的应用和系统中自信和负责任地部署机器学习,我们需要构建鲁棒的模型。 在这篇论文中,我介绍了我们的鲁棒机器学习系统的进展,通过紧密将上下文整合到算法中。上下文有两个方面:自然数据的内在结构和来自领域知识的外在结构。两者都至关重要:通过利用自然数据的内在结构,我的工作表明,我们甚至可以在最坏情况下创建鲁棒的机器学习系统,这也是一项强有力的实证收益。通过整合外部知识,如任务之间的关联和因果结构,我的框架可以指导模型使用正确的信号进行推理,为可控和可解释的模型开启新的机会。 这篇论文分为三个部分。在第一部分中,我旨在涵盖三个使用内在结构作为约束以实现鲁棒推理的工作。我介绍了我们的框架,该框架执行测试时优化以尊重自然约束,这些约束由自监督任务捕获。我阐述了测试时优化如何改善分布外泛化和对抗性鲁棒性。除了推理算法,我还展示了通过离散表示来改善分布外鲁棒性的内在结构。 在论文的第二部分中,我详细介绍了使用外部领域知识的工作。我首先介绍了如何利用来自外部领域知识的因果结构来提高领域泛化鲁棒性。然后,我展示了多个任务和正则化目标的关联如何帮助提高鲁棒性。 在这篇论文的最后部分,我展示了关于值得信赖和可靠的基础模型的三个工作,这是许多人工智能应用的基础模型。我展示了一个利用上下文来保护、解释和控制基础模型的框架。