Is machine learning computer science?

Table of Contents

Machine learning and computer science

There seems to be ongoing debate around machine learning and computer science. Artificial intelligence, machine learning, data science, and big data are modern technologies that have become buzzwords everybody talks about. Still, no one grasps or completely understands the exact field to which they belong. They seem very complicated to a layman. These buzzwords sound similar to an engineer or someone from a non-technical background. In this article, I explain these technologies in simple words so that you can easily understand the difference between them, what field they belong to, and how their use in business.

We can’t talk about machine learning without talking about artificial intelligence. So, what is Artificial Intelligence?

machine-learning-4129175_1920
word-cloud-432032_1280

What Is Artificial Intelligence?

Artificial intelligence or AI is a poorly defined term, which adds to the confusion between the nature of Artificial Intelligence compared to machine learning, says Bethany Edmunds, associate dean and lead faculty for North Eastern’s computer science master’s program.

Artificial intelligence is an intelligence system that aims to replicate human intelligence artificially. On a basic level, artificial intelligence is where a machine can replicate and imitate human-like behavior and decision making.”

These characteristics include problem-solving, learning from experience, and planning, for example, which are achieved through analyzing data and identifying patterns within it to replicate those behaviors.

Artificial intelligence is defined as a computer or a controlled robot’s ability to execute tasks commonly done by intelligent beings. Artificial intelligence is often applied to the project of developing systems bestowed with the logical processes peculiar to humans, such as the ability to reason, find meaning, generalize, or learn from the past. The advent of the digital computer, which came about in the 1940s, showed that computers could be programmed to carry out difficult tasks. For instance, uncovering proofs for mathematical theorems or playing chess with excellent competency. With further advances in computer processing power and memory allocation, there are no programs that can match human pliability over more expansive fields or tasks requiring everyday human intelligence. On the contrary, some programs have achieved human experts and professionals’ performance levels in performing specific distinct tasks. Artificial intelligence applications can be as sundry as medical diagnosis, image recognition, and voice or handwriting recognition.

What is machine learning?

Machine learning is an innovative technology that has helped man build up many industrial and professional processes. It has also enhanced our daily living. But what is machine learning? Machine learning can be seen as a subset of artificial intelligence in computer science, which focuses on using statistical techniques to build intelligent computer systems to learn from data available to it. Machine learning has been used in many fields, sectors, and industries. Machine learning aims to teach computer systems to learn from past experiences without being explicitly programmed. Machine learning is an approach to analyzing data that deals with building and adjusting models, which allow programs to “learn” through previous experience. Machine learning can be defined as algorithms that adapt their models and characteristics to improve their ability to make accurate predictions.

Early History and Foundation

Machine learning gives humans many benefits daily, and the adaption to machine learning grows faster every day. Machine learning has journeyed a long distance to reach the mainstream of today. Arthur Samuel was a computer gaming and artificial intelligence engineer who first used the term ‘machine learning.’ 

Samuel wrote the first computer learning program while working at IBM in 1952. Samuel wrote this program that was a game of checkers that the program improved upon every time it played, analyzing every move and composing a winning strategy.

In 1957 the first artificial computer neural network was designed by Frank Rosenblatt. It is also known as a perceptron intended to mirror the human brain’s thought processes. Basic pattern recognition using computers was created in 1967. The algorithm was called the “nearest neighbor” algorithm. These early breakthroughs were significant, but they lacked useful applications. There was limited computing power, which led to a long period of limited machine learning innovations and AI until the 1980s. 

Modern Machine Learning 

Today, machine learning is embedded in many applications and affects millions (if not billions) of people. Massive amounts of research went into machine learning, which has resulted in the advancement of many new techniques being developed and various new use cases for machine learning. Machine learning techniques are used where a large amount of data needs to be analyzed and explored, which is a common need in business. 

Three main reasons have led to the mass adoption of machine learning in research and business applications:

  1. computing power has significantly increased and has become much less expensive over the last several decades
  2. Information around the capabilities and use cases of machine learning has spread with the expansion of the internet
  3. Open-source machine learning and artificial intelligence tools have become more commonly available.

What is computer science?

As a field on its own, computer science has to deal with computer systems and computing, including their theoretical and algorithmic frameworks, hardware and software components, and their uses for processing data. Therefore, computer science is defined as the study of algorithms and data structures, computer and network design, modeling data, and information processes. Computer science draws some of its foundations from mathematics and engineering and uses techniques from queueing theory, probability and statistics, and electronic circuit design.

There are five different yet connected fields: computer engineering, computer science, information systems, information technology, and software engineering. The above different but connected fields each have their research perspective and curricular focus.  

Computer scientists are developers and problem solvers, and they solve problems by developing algorithms and implementing these algorithms into the software. Many computer scientists create websites using JavaScript, HTML, and CSS. Others build databases with SQL. Machine learning is a sub-discipline of computer science where advanced algorithms are developed to learn from data. A device can be trained to learn what a cat is by being shown thousands of pictures of different cats. When the model is “trained,” it will be given a distinct image and label it as “cat” or “non-cat.” This simple machine learning algorithm can be further developed into more advanced applications like facial emotion detection. Artificial intelligence goes deeper, aiming to build algorithms and devices that can replicate human thinking and decision making. Artificial intelligence uses advanced processes and techniques, such as artificial neural networks, to recreate human cognitive mechanisms.

Computer science is also the study of computer architecture, programming languages, and software development. They also include computational science, which can be defined as the use of algorithmic techniques for modeling scientific data, visualizations, human-computer interaction, databases, and information systems. Social interactions and networks are integral to the practice of computer science. It is evident some of these fields overlap in their relationships with other modern fields, such as bioinformatics and computational physics. These interconnected fields are as a result of the tendency among computer scientists to recognize many interdisciplinary connections.

Is machine learning computer science or engineering?

Machine learning can be defined as an element of computer science that teaches computers to learn from experience without being explicitly programmed. The algorithm that a computer program uses to “learn” depends on the type of problem that the computer program is designed to complete. 

Computer science is concerned with computation theory, which includes codes for machine learning models, writing code that analyses data, data structures, algorithms, statistical models, web crawling, etc. Computer science also focuses on how to build algorithms that efficiently achieve difficult tasks, whether that task is emulating a human brain or recommending a movie on Netflix.

In contrast, computer engineering is a field in which electrical engineering and computer science are at its heart. Computer engineers build different intelligent computing systems from the internet of things devices, supercomputers to integrated circuits.

Machine learning is mainly applied to process large quantities of data very quickly using algorithms that change over time and get better at what they’re intended to do. A company involved in plant manufacturing might collect data from machines and devices on its network in substantial quantities. Humans can’t process such amounts of data. Machine learning can then be used to find trends, patterns and identify anomalies, which will, in turn, indicate a problem that humans can then solve.

Computer science can be characterized as less hands-on and more abstract than computer engineering. A computer scientist focuses on using algorithms, mathematics, and data structures to write quality codes. Computer scientists’ popular careers are front-end engineering, data engineering, software engineering, UI/UX design, data science, and machine learning.

Computer engineering focuses on how to build intelligent devices. It is a combination of physics, mathematics, electrical engineering, and computer science. Computer engineering focuses more on hardware rather than software.

A computer engineer’s role works in the physical world and deals with understanding how we can apply physics and electronics laws to build better computer components. They spend more time at a lab bench than writing code.

Application of machine learning in computer science

Machine learning is one of the best technological innovations of the past decade. In an increasingly competitive world, machine learning enables companies to fast-track digital transformation and move into an age of automation and efficiency with big data.

This part explains machine learning and its applications in 2 computer science fields called Computer Vision and Natural Language Processing.

Computer Vision: Computer vision is defined as a field that deals with how computers and systems can gain a top-level understanding of digital images or videos. Some applications of computer vision include:

  1. Image Recognition: Image Recognition can be seen as one of the most critical machine learning applications in computer science. It is used for detecting a feature in a digital image. This technique can be used for more in-depth analysis, such as object detection, pattern recognition, face recognition, face detection,
  2. Optical character recognition and many more.
  3. Video surveillance: A small video file has more information than text documents and other media files such as audio and images. Extracting necessary information from video, i.e., the automated video surveillance system has become a significant research field. Video surveillance is one of the most advanced applications of the machine learning approach.
  4. Natural Language Processing: Natural Language Processing is a branch of artificial intelligence that deals with the relationship between computer systems and humans using the natural language. One of the main aims of natural language processing is to read and efficiently understand human languages. Some applications of natural language processing include:
  5. Sentiment analysis is another type of real-time machine learning application. It’s the process of determining the attitude or opinion of the speaker or the writer. It is also the process of finding out the sentiment from a piece of text. Sentiment analysis is defined as a machine learning application that answers the question, “what do you mean?”. When I visit a restaurant, and I say ‘this meal tastes very delicious,’ sentiment analysis aims to determine if it’s a positive or negative thought. Sentiment analysis is applied in analyzing social media data, classifying users’ complaints, etc.
  6. Speech recognition is the process whereby spoken words are transformed into text. It can also be called computer speech recognition or speech to text translation. This field owes its advancement to machine learning and big data. A news company may use an interesting category of news to the target readers, increasing news sites’ acceptability. 

Machine learning techniques

As with any technique, there are different ways to train machine learning algorithms, each with their advantages and disadvantages. To understand the pros and cons of various machine learning techniques, we must first examine what kind of data they ingest. In machine learning, there are two types of data — labeled data and unlabeled data.

  • Labeled data – Labeled data uses the input and output parameters in a machine-readable pattern.
  • Unlabeled data – Unlabeled data only have one or none of the parameters in a machine-readable form.

There are three main machine learning techniques used today:

  1. Supervised Learning: These algorithms are trained by using labeled data, in different scenarios, as an input where the desired outcome is already known. For instance, a piece of equipment could have data points such as “P” and “F” where “P” denotes “passed,” and “F” denotes “failed.” A supervised learning algorithm will receive a set of input and corresponding accurate outcomes. The supervised learning algorithm compares the actual outcome with the accurate outcome and reports an error if there is any variation. Ways such as regression, classification, gradient boosting, and prediction are methods used in performing supervised learning tasks. Supervised learning uses patterns that predict the values of a label on unlabeled data. This method involves using historical data to predict future outcomes. For example, anticipate when a loan recipient would default or not default on a loan.
  2. Unsupervised Learning: This machine learning method finds its usefulness in areas where the data has no historical labels. This means the system doesn’t know the “right answer,” and the algorithm should try and observe what is being shown. The main aim is to explore the data and find patterns and structures within the data set. For example, the transactional data set of an e-commerce company serves as a good data source for unsupervised learning. This type of learning uncovers segments with identical characteristics and allows the business to treat them identically in marketing campaigns. It is used to identify attributes that differentiate users’ segmentation from one another. Either way, it is about identifying a similar structure in the available data set. These algorithms are that they can find outliers in data sets. The techniques of unsupervised learning include mapping the nearest neighbor, k-means clustering, self-organizing maps, and value decomposition.
  3. Reinforcement Learning: This is primarily used in navigation, robotics, and gaming. This is a technique whereby actions that achieve the best results are identified with trial and error algorithms. There are three main elements to reinforcement learning. They are the agent, the actions, and the environment. The agent is the decision-maker, the actions are the agent’s actions, and the environment is what the agent interacts with. The main aim of reinforcement learning is to select the best measures that maximize the reward within a specified period. If the agent follows a good strategy, the agent achieves the goal faster. This is why the primary notion of reinforcement learning is identifying the best strategy that helps businesses achieve their goals more quickly. Humans can build very few good models; machine learning can develop thousands of such models in a week. 

There are also machine learning techniques that may not be as popular as the main three techniques. Some of them include:

    1. Semi-supervised Learning: This form of learning is used and applied to the same scenarios where supervised learning is applicable. Take note, this technique uses both unlabeled and labeled data for training. This consists of a small set of labeled data and a large volume of unlabeled data. It saves more time, money, and efforts to acquire unlabeled data. Some of the methods used in this technique are regression, classification, and prediction—companies who find difficulty meeting the high costs of using labeled data processes opt-out for semi-supervised learning.
    2. Genetic and Evolutionary Algorithms: While machine learning has been instrumental in studying the human genome and related fields of science, the phrase “genetic algorithms” refers to a class of machine learning algorithms and their approach to problem-solving, and not the applications of machine learning in genetics. Genetic algorithms draw inspiration from the biological process of natural selection. These machine learning algorithms use mathematical equivalents of mutation, selection, and crossover to create many possible solutions.
    3. Inductive Logic Programming: To understand what inductive logic programming is about, it is vital first to understand “logic programming.” Logic programming can be defined as a computer science field in which computer programs are written as a set of expressions that state facts; it takes the form “if this, then that.” Understanding that “logic programming” uses logical rules, we start to understand inductive logic programming. Inductive logic programming is a vast research area that uses machine learning, artificial intelligence, and logic programming. In inductive logic programming problems, the initial knowledge that a program uses is used as logical rules. The program then uses to derive its hypothesis for solving problems. Different applications of inductive logic programming can be found in areas of natural language processing and bioinformatics.

Machine learning examples

Machine learning is everywhere around us. You have probably interacted with the technology one way or another, and you don’t know about it. 

Here are some examples of machine learning we use in our daily lives and perhaps have no idea that it is machine learning.

  1. Traffic Predictions: Most of us all have been using GPS navigation services. While doing that, our real-time locations and movement velocities are saved at a central server for managing traffic. The data is then used to build a map of the real-time traffic situation. This helps in rerouting traffic and perform congestion analysis to ease traffic situations. One underlying problem is that there are fewer cars that are GPS enabled. Machine learning helps predict regions where traffic congestion can be found based on daily experiences.
  2. Online Transportation Networks: When you request an Uber cab, the app estimates the ride’s fare. When sharing these services, how do they manage supply and demand? The answer is machine learning. Uber uses machine learning to define price surge hours by predicting rider demand and supply. In the entire end to end process, machine learning is playing a vital role.
  3. Product Recommendations: You were shopping for a product online a few days back, and then you keep receiving emails for shopping suggestions. When shopping online, you may have seen that the shopping website recommends some items that somehow match your taste. This transforms the shopping experience but do you know that it is machine learning working underneath? Based on your shopping behavior within the website, your past purchases, items you liked or added to cart, brand preferences, etc., new product recommendations are made tailored to your preference.
  4. Online Fraud Detection: Machine learning is being used in the financial industry to secure financial transactions and track monetary frauds online is one of its examples. For example, PayPal uses machine learning techniques to protect themselves against money laundering and fraud. The company uses a different algorithm to go over previous fraud incidents and tries to find patterns to help stop fraud in real-time.
  5. Google uses machine learning to understand its users’ search queries better and improve its results by measuring engagement in terms of its results.
  6. Medical research organizations use machine learning to analyze vast amounts of human health record data to identify patterns in diseases and conditions and improve healthcare. 

These are a few examples of how machine learning techniques are used in the world today. Machine learning is an exciting and rapidly innovative field of study, and there are endless applications. Due to the increase in usage and as more people and companies learn about the usefulness of these technologies and with the tools becoming increasingly available and easy to use, we should expect to see machine learning become an even more significant part of everyday life.

Luis Gillman
Luis Gillman

Hi, I Am Luis Gillman CA (SA), ACMA
I am a Chartered Accountant (SA) and CIMA (SA) and author of Due Diligence: A strategic and Financial Approach.

The book was published by Lexis Nexis in 2001. In 2010, I wrote the second edition. Much of this website is derived from these two books.

In addition I have published an article entitled the Link Between Due Diligence and Valuations.

Disclaimer: Whilst every effort has been made to ensure that the information published on this website is accurate, the author and owners of this website take no responsibility  for any loss or damage suffered as a result of relience upon the information contained therein.  Furthermore the bulk of the information is derived from information in 2018 and use therefore is at your on risk. In addition you should consult professional advice if required.