1. A method for producing a final traffic activity graph, the method comprising: receiving, by a processor, a traffic activity graph, the traffic activity graph comprising a plurality of nodes interconnected by a plurality of edges, where each of the plurality of nodes represents an endpoint associated with a communication network and each of the plurality of edges represents traffic exchanged between a corresponding pair of the plurality of nodes; generating, by the processor, an initial set of inferences as to an application class associated with each of the plurality of edges, based on a measured statistic related to a plurality of traffic flows in the communication network, wherein the initial set of inferences comprises an inference of a first application class associated with a first edge of the plurality of edges and an inference of a second application class associated with a second edge of the plurality of edges, wherein the first application class associated with the first edge and the second application class associated with the second edge are different ones of a plurality of potential application classes, wherein the first edge and the second edge are incident on a same node of the plurality of nodes; and refining, by the processor, the initial set of inferences based on a spatial distribution of the plurality of traffic flows, to produce the final traffic activity graph.