Hello all, I am seeking some advice here.... So my goal is to strengthen my background through a master's program and THEN apply for a TOP PhD program in the US. My interested research areas are theoretical cs, algorithm and machine learning. UofT: Masters program at UofT is research oriented, which means I'll have a lot more time conducting research. Strong in my areas of interest. Professors have closer tiers to those in the US, compared with ETH. RA and stipend. Yale: Every professor here is really strong, though the department is relatively small. The highest reputation among my list. As far as I know, almost all master students at Yale go to work after graduation. Any successful case of PhD application? ETH: I personally think it is not as strong as the toronto or ucsd in my areas of interest. It's highly esteemed. Also, 2 or 3 years living in the Europe is really something I'd like, though it's unlikely that I will develop my career there. But life is not just about career right? However, does it defeat my purpose of apply for a US school later? I mean, is it better to study in northern america? ucsd: This one actually, in my opinion, has the strongest faculty in my list. Professors there also have even stronger tiers with those in top schools, compared with toronto. However, since this is also a masters program, I don not know if there are successful cases of PhD application. In addition, ucsd doesn't seem to have a "big name" to me... So the point is, I want to choose one so that I will have the highest possibility of being admitted to stanford, mit, berkeley. Any advice or comment will be highly appreciated!