The user profiles have been constructed without constructing a graph object. multiprocessing has been implemented to generate profiles in a parallel fashion. scaling of weights is buggy I guess.