Would You Rather Be an NLP or Computer Vision Data Scientist? | Towards Data Science

IntroductionData ScienceNatural Langauge ProcessingComputer VisionSummaryReferences
Introduction
Data Science
Natural Langauge Processing
Computer Vision
Summary
References
When applying for a position as a Data Scientist, you may see a variety of skills required in the job description section. You scroll down and then see even the education required is different between postings. Most importantly, you see an overview that summarizes the role, and although the title of the position is the same, the section varies considerably. This change is due to the varying types of Data Science positions that are available. However, I have noticed that these roles are taking on new names as companies understand their specialization in Data Science. Those two popular branches of Data Science are Natural Language Processing (NLP) and Computer Vision. Depending on the company you are eventually going to work for, or currently do work for, some positions will still be titled Data Science, but have the focus on NLP or Computer Vision, while some positions will be overall Data Science. I will be highlighting both NLP and Computer Vision so that you can find out more information on what it means to be either, along with expected respective salaries, and which role is ultimately a better specialization for you.
Data Science is an extremely broad term that is oftentimes disputed amongst people, especially in technology. Current Data Scientists can have some bias on what they think Data Science really is based on what they have experienced at their first job, but then will later come to realize that Data Science is really a blanket term for several disciplines. These disciplines include or surround Natural Language Processing, Computer Vision, Machine Learning, Statistics, Mathematics, Programming, Data Analytics, Product Management, and Business Intelligence. It is really up to both you and the company you work for to decide what specific path you want to go down, or perhaps be generalists in all of these facets. A benefit of specializing in NLP or Computer Vision is that you will know what you are getting into, and can focus on learning and improving on those specific skills required by each, respective position.
Sometimes a Data Scientist who specializes in NLP will be also referred to as an NLP Engineer. This specialization focuses on the natural langue of humans and how computers can be involved to digest this unstructured input and then output structured, useful meaning. While there are countless definitions and examples of this type of Data Science, I wanted to give my personal yet professional experience with NLP. I have worked with primarily three types of NLP projects. These three projects include:
Sentiment Analysis
Topic Modeling
Text Categorization
These projects have main concepts and those concepts can be applied to other forms of NLP as well. They all share similar tools and code to create beneficial outputs. I have specifically worked the most with NLP in the Python programming language.
Sentiment Analysis — this form of NLP focuses on the mood or sentiment, polarity, and subjectivity of a given text. A typical stream of work for sentiment analysis would be to gather your data, preprocess it, and then tokenize it. Essentially, at this point, you will have each word that you are analyzing, cleaned, and stripped so that the words can be tagged. This next part is commonly referred to as POS or Part-of-Speech tagging. Once you establish what type of words you have, like adjectives, nouns, and verbs, you can easily apply a library’s function that will assign a polarity score to each text. Some popular sentiment NLP libraries are TextBlob and vaderSentiment. I will not go too in-depth here, but if you would like an article written about the specifics of NLP and these two, popular libraries, I would be happy to do that (please comment below). Sentiment analysis can be used widely by most businesses. Here are some examples of where sentiment analysis can be applied:
— customer reviews
— customer segmentation
— anomaly detection
— product improvement
Here is the summarized process of sentiment analysis:
gather datapreprocesstokenizePOS tagscoring
Topic Modeling — this form of NLP is under the branch of unsupervised learning that helps you to find topics of documents that are composed of text. One of the most popular ways to find topics in a document is utilizing LDA or Latent-Dirichlet-Allocation. It is a technique that ultimately outputs topics that summarize popular and important, key phrases from your text. Here are some examples of where topic modeling can be applied:
— coming up with new topics from the text
— using those topics to assign new supervised learning labels
— insights that are too difficult to find from manual searching
Text Categorization — this form of NLP is a supervised learning technique that helps to classify new instances of data that do not need to necessarily only contain text, but contain numeric values as well. More broad than the two NLP forms, you can think of text categorization as a typical classification algorithm, where the label is text and some of the features are text as well. You will use those same techniques from above to preprocess, clean, and extract meaning from text. Here are some examples of where text classification can be applied:
— categorizing animal specials
— categorizing fake news
— categorizing bank transactions
The most popular Python package is the nltk [2], which stands for Natural Language Toolkit. It contains several libraries that are essential in your quest to solve problems with NLP techniques.
www.nltk.org
How much does an NLP Engineer make?
According to Glassdoor [3], the average salary of an NLP Engineer in the United States is $114,121 / yr.
I believe this field of Data Science is even more specialized than NLP. Computer Vision focuses on image and video data, rather than numeric or text data. To me, Computer Vision has a bigger risk because it can be used in more industries that do not necessarily depend on insights, but require security and safety measures to be up into place. Think of how NLP and sentiment analysis worked to analyze the happiness of someone’s review, this insight is useful and powerful, but not as impactful or harmful as what Computer Vision can be. I will highlight some types of Computer Vision below.
Facial Recognition — when you pick up your phone, you most likely will have a security feature that analyzes your face to see if it is really you trying to access your phone. A popular Python library that benefits projects going over facial recognition is properly named as face_recognition. The images you work with that are composed of faces are encoded to a feature. Based on common features of the face, you can match (or not) individual faces to the same or different faces in order to ultimately ‘recognize’ the face.
Object Detection — using information from the object, this form of Computer Vision can aid in detecting objects. OpenCV is a popular tool used by programmers and Data Scientists who want to focus on object detection.
You can expect to find examples of Computer Vision in:
— image detection
— iPhone Face ID
— Facebook photo tagging
— Tesla pedestrian and car detection
How much does a Computer Vision Engineer make?
According to Glassdoor [4], the average salary of an NLP Engineer in the United States is $99,619 / yr.
While both of these salaries are high, I personally have seen from job postings that not only do Computer Vision Engineers make more than the reported average salary, but also do NLP Engineers. Because these two roles in Data Science are becoming more and more specialized, I believe that is why you can expect to have a higher salary.
Most Data Scientists have probably studied some form of NLP or Computer Vision, whether that be from a university or online tutorial. Both of these specialized roles in Data Science are highly respected and can benefit countless industries. It ultimately depends on your preferences and career goals when answering the question of ‘Would you rather be an NLP Engineer or Computer Vision Engineer?’. Think of which types of projects you would like to work on, which industry you would like to work for, and which company you would like to be associated with. Both of these positions in Data Science can result in high impact results from your work, so either will grant you a motivating experience.
I hope that you found this article interesting and useful. Feel free to comment down below your experience as a general Data Scientist, NLP Engineer, or Computer Vision Engineer.
Thank you for reading!
[1] Photo by JESHOOTS.COM on Unsplash, (2018)
[2] NLTK Project, Natural Language Toolkit, (2020)
[3] Glassdoor, Inc., NLP Engineer Salaries, (2008–2020)
[4] Glassdoor, Inc., Computer Vision Engineer Salaries, (2008–2020)
[5] Photo by Annie Spratt on Unsplash, (2020)