I am myself a non-cs graduate and would love to be a machine learning engineer.

I have learned to code and know the basics of Machine learning as well. Now I would like to know what "basics of CS" I should learn to be completely job ready.

I sometimes have difficulties reading CS documentations and don't know how programs and computers work in background, I am also naiver on topics like memory management, operating systems, networking, electronics stuff like microprocessor, compiler design etc. Are these all necessary for my transition to AI? If they are, would you please recommend me a short learning path or books or videos. I hope I wouldn't need to go deep in these areas. Thanks


Computer science is a very broad subject area, and many of its sub-disciplines have little or no overlap with others. For example, knowing the basics of operating systems design, compiler design or microprocessor design are unlikely to help you make progress in machine learning (although each one is an interesting topic in its own right).

Machine learning is a sub-topic of artificial intelligence, so the most closely related disciplines are other sub-topics of artificial intelligence such as pattern recognition, data mining, knowledge representation and natural language processing. Some knowledge of the theory of data structures and algorithms would also be useful. Outside of computer science itself, you will also need some knowledge of mathematical topics such as probability, statistics and mathematical optimisation.

  • $\begingroup$ But I find myself having problems reading documentations,what can I do about it.Last day I was implementing image processing and I had no idea what I was doing.I just cloned a git repo went through the instructions they gave..but didnt understand a thing really $\endgroup$ – Fasty Nov 27 '19 at 12:21
  • $\begingroup$ @RamShankerG I am not clear whether you actually implemented an image processing algorithm (i.e. wrote code yourself) or whether you only installed an application that someone else had written. In any case, you should be writing your own programs and learning from your mistakes. Wikipedia's article on image processing has a list of textbooks (under Further Reading) and useful links. $\endgroup$ – gandalf61 Nov 27 '19 at 12:42
  • $\begingroup$ I installed an application somebody else wrote.But I still have trouble dealing with problems like memory issues,undeesratnding technical terms.For example I encountered sth like serializing of objects and also read about custom kernels in open-vino which I dont undertstand clearly..all these seems abstract.What can I do about it? $\endgroup$ – Fasty Nov 27 '19 at 12:46
  • $\begingroup$ @RamShankerG It sounds like your underlying question is about study skils and self study methods. I was going to suggest you ask at CS Educators, but I see you have already cross-posted your question there. $\endgroup$ – gandalf61 Nov 27 '19 at 13:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.