1. A method for processing an input through each of a plurality of layers of a neural network to generate an output, wherein each of the plurality of layers of the neural network comprises a respective plurality of nodes, the method comprising, for a particular layer of the plurality of layers: determining, by a classification system, one or more hash codes of an activation vector that is input for the particular layer; selecting one or more nodes in the particular layer using the one or more hash codes of the activation vector as input to a lookup function for a hash table that maps hash codes of activation vectors to data for weight values for nodes in the particular layer, the selecting comprising: determining, for at least some of the one or more hash codes, an entry in the hash table at an index having a value that is the same as the hash code; and determining, for each of the entries in the hash table, one or more weight value vectors that are identified by the entry in the hash table at the index having a value that is the same as the hash code, wherein each of the one or more weight value vectors is for a corresponding one of the selected nodes; and generating an output for the particular layer by combining the weight values for the selected nodes with the activation vector, the generating comprising: combining, for each of the selected nodes, the corresponding weight value vector with the activation vector.