I want to convert an unweighted graph to weighted for solving the link prediction problem. Is the best way to transfer from an unweighted graph to a weighted graph to consider the similarity between nodes?
Not necessarily. It totally depends on your application. If your dataset is on online social networks and you want to model the relation strength among individuals, you could also consider the degree of intimacy, trustworthiness, and influence among individuals. check out these papers:
For degree of trustworthiness: Article A group trust metric for identifying people of trust in onli...
For degree of influence: https://homes.cs.washington.edu/~jheer/files/snakdd.pdf
For the concept of weight on multiplex networks:
Article Weighted Multiplex Networks
Also take a look at Granovetter paper since it is possibly the first paper who defined the concept of weak and strong ties in social networks and modeled them as a set of nodes and links: https://sociology.stanford.edu/sites/g/files/sbiybj9501/f/publications/the_strength_of_weak_ties_and_exch_w-gans.pdf