Functional annotation of proteins