In the past few years I've had the pleasure of working at two of the largest tech companies in the world, Microsoft and Google. Both companies use machine learning in a large number of their products, and I was fortunate enough to work on projects at both companies involving ML. Here are some of the insights that I gained from my experiences.
At Google I worked on improving Search through machine learning. I used TensorFlow to create the machine learning models and then used pandas to analyze data trends and plot comparisons of interesting features.
The entire development process, from gathering and processing data to making real-time predictions, was built like a well-oiled machine. Each individual part of the process flowed seamlessly into the next, and I was surprised at how modular and organized the engineering was.
Something else that surprised me was the relative simplicity of the machine learning models I was creating. Going into the project, I expected to be using a ton of advanced knowledge that I had learned from personal research and reading publications. However, apart from the actual research department at Google, basically every other machine learning project involved using TensorFlow to create a standard neural network architecture. I thought to myself that even if someone didn't have any ML experience, they could probably do most industry-level machine learning tasks with just a few months of appropriate training.
At Microsoft, I worked in the specific subdivision of the company focused on CS and AI research, known as Microsoft Research (MSR). MSR is pretty different from other divisions of Microsoft, since the people working at MSR are almost exclusively researchers with PhDs. Therefore, a lot of the work done in MSR is incredibly theoretical, from cryptography to advanced AI algorithms.
I worked on a project that focused around speech and natural language processing. Because of this, I got to know some of the other ML researchers and observed what they were working on. Similar to Google, most of the researchers used frameworks like TensorFlow to model their neural networks and deep learning algorithms. Even some of the most complicated and innovative ML models could be built relatively easily using these frameworks. In fact, there are thousands of GitHub projects dedicated to replicating model's described in leading research publications.
From my experiences, I realized that machine learning in the tech industry is pretty different from how people perceive it. Most people view it as an inpenetrable field, where only the select few with years of research experience can hope to enter. However, with the rise of popularity in the field and new frameworks to make coding models a piece of cake, there is more opportunity than ever to work on machine learning in industry.