Saying "you're welcome" is basically thinking help is a gift you give and saying "no problem" is basically thinking help is something required. I tend to try and say each of these sparingly depending on the situation. Say a compliment. I should say you're welcome so then the compliment sounds more real, I gave my honest opinion rather than did what was nicer. However being like a therapist to someone I would go for a "no problem" so they know that me helping them was not a burden to me and I felt I needed to help them, I felt my help was needed and I would rather be helping you. Thank you for coming to my Ted Talk.