1. A method for expanding a query, comprising the steps of: storing a bipartite representation; wherein the bipartite representation comprises a first set of nodes; wherein each node in the first set of nodes represents a linguistic word; wherein the bipartite representation comprises a second set of nodes; wherein each node in the second set of nodes represents visual content; receiving the query; for at least one query term of the query, performing the steps of: determining whether the at least one query term is associated with one or more other query terms through visual content; wherein determining whether the at least one query term is associated with one or more other query terms through visual content comprises: determining, based on the bipartite representation, an association score between (a) a first node of the bipartite representation, which represents a linguistic word associated with the at least one query term, and (b) a second node of the bipartite representation, which represents one or more other linguistic words associated with one or more other query terms; determining, based on the association score, that the at least one query term is associated with the one or more other query terms through visual content; in response to determining that the at least one query term is associated with one or more other query terms through visual content, creating an expanded query by adding at least one of the one or more other query terms to the query; wherein the method is performed by one or more computing devices.