  How can we design proteins with desired functions? We are motivated by a
chemical intuition that both geometric structure and biochemical properties are
critical to a protein's function. In this paper, we propose SurfPro, a new
method to generate functional proteins given a desired surface and its
associated biochemical properties. SurfPro comprises a hierarchical encoder
that progressively models the geometric shape and biochemical features of a
protein surface, and an autoregressive decoder to produce an amino acid
sequence. We evaluate SurfPro on a standard inverse folding benchmark CATH 4.2
and two functional protein design tasks: protein binder design and enzyme
design. Our SurfPro consistently surpasses previous state-of-the-art inverse
folding methods, achieving a recovery rate of 57.78% on CATH 4.2 and higher
success rates in terms of protein-protein binding and enzyme-substrate
interaction scores.
