Developing Bug-Free Machine Learning Systems With Formal Mathematics
원문 초록
Noisy data, non-convex objectives, model misspecification, and numerical instability can all cause undesired behaviors in machine learning systems. As a result, detecting actual implementation errors can be extremely difficult. We demonstrate a methodology in which developers use an interactive proof assistant to both implement their system and to state a formal theorem defining what it means for their system to be correct. The process of proving this theorem interactively in the proof assistant exposes all implementation errors since any error in the program would cause the proof to fail. As a case study, we implement a new system, Certigrad, for optimizing over stochastic computation graphs, and we generate a formal (i.e. machine-checkable) proof that the gradients sampled by the system are unbiased estimates of the true mathematical gradients. We train a variational autoencoder using Certigrad and find the performance comparable to training the same model in TensorFlow.
함께 살펴볼 논문
공통 태그를 근거로 연결했습니다. 실제 인용 관계나 논문의 우수성을 뜻하지 않습니다.
AnalogVNN: A fully modular framework for modeling and optimizing photonic neural networks
Evolutionary bagging for ensemble learning
Neural network accelerator for quantum control
Deep Reinforcement Learning for Multi-Agent Interaction
Disparate Censorship & Undertesting: A Source of Label Bias in Clinical Machine Learning
Unsupervised machine learning framework for discriminating major variants of concern during COVID-19
토론
이 논문과 연결된 포럼 글이 아직 없습니다.