A homomorphism from a graph G to a graph H is a function f:V(G)->V(H) which preserves adjacency (if x~y in G, then f(x)~f(y) in H). Questions about independent (stable) sets in G and proper q-colourings of G, among many others, can be framed in terms of graph homomorphisms. Write hom(G,H) for the number of homomorphisms from G to H. Using entropy methods, we show that for any H and any N-vertex, d-regular, biparite G, hom(G,H) is at most (hom(K(d,d),H))^{N/2d} where K(d,d) is the complete bipartite graph with d vertices in each partition class. This generalizes a result of J. Kahn on independent sets in regular biparite graphs. We also give a weighted version of this result which can be interpreted as a statement about the partition function of a statistical physics ``spin-system''. This represents joint work with Prasad Tetali, Georgia Tech.