The company searched me through an online job board. On looking up the posting I realized that I just have knowledge about 1 skill (C++) while all the other stuff is something I don't have much knowledge or experience about. How would someone tackle an interview in this scenario? The other skills are some high level machine learning skills and I do have basic knowledge about it. Just that it's not as deep as they mentioned on the job posting.
If they found you, and you didn't lie on your resume, then they might not actually be interested in ALL of those skills listed, just the ones that you have. It can be very challenging to create a job listing, and sometimes the hiring managers and recruiters get carried away with their 'wishlist'. Then when they are looking at their candidate pool, they start to focus on the things that really matter. For the right person, they can rewrite the job posting, or even make a new position available.
If you're nervous about it, you can reach out to the recruiter who organized the interview and ask which of your skills is most interesting and/or a priority to the hiring manager. It's almost always a good idea to take an offered interview, even if you don't think you will be a good fit.
Answer questions as best you can, and above all else: be honest about what you do and do not know, and with how well you know what you do know. Maybe the other stuff isn't as big as they're making it out to be, maybe it is. Could your lack of skill/ability in some of those areas cost you the job? Absolutely, but in the end is that really a bad thing? If you're not a good fit, you're not a good fit, so don't take it super personally if you're told now.
Now, if these are skills you probably should have, then you should work on those skills in your own time to level up and do better next time, whether it's with this company or another.
Besides, maybe you're not a fit for that position, but they like you for something else and offer you that instead, or contact you about another position later. If they're the ones who contacted you and are pulling you in, they clearly felt there was something on your resume that warranted taking time out of their schedule to interview you.
Machine learning is in demand right now so it is harder for them to find all the qualifications. Just answer the questions honestly.