Deep Learning for Cognitive Computing, Theory

(Course code: TIES4910) 5 ECTS,      Autumn Semester

Instructor:

Vagan Terziyan               Email: vagan.terziyan@jyu.fi

 

(The course in Korppi system)

Attention: 1-st Lecture: 10 September, 2018. Time: 10:15 - 12:00. Place: Agora C233

 

Artificial Intelligence (AI) is a major driver of economic growth and social progress, if industry, civil society, government, and the public work together to support development of the technology, with thoughtful attention to its potential and to managing its risks, as it mentioned in the Report on the future of AI from the White House Office of Science and Technology Policy. One of the most emerging trends within AI nowadays and in observable future is Cognitive Computing and its enabler – Deep Learning.

The pair of courses: this one – TIES4910-Deep Learning for Cognitive Computing, Theory and its extension – TIES4911-Deep Learning for Cognitive Computing for Developers (5+5=10 credits, delivered in English) is an evolution of the course ITKA-352: “Introduction to Watson Technologies”, which aims to provide more systematic, structured (broader, deeper and multidisciplinary) view to this popular domain. The major objectives of the course are as follows:

·        To describe challenges and opportunities within the emerging Cognitive Computing domain and professions around it;

·        To summarize role and relationships of Cognitive Computing within the network of closely related scientific domains, professional fields and courses of the faculty (e.g., Artificial Intelligence, Semantic and Agent Technologies, Big Data Analytics, Semantic Web and Linked Data; Cloud Computing, Internet of Things, etc.);

·        To introduce the major providers of cognitive computing services (Intelligence-as-a-Service) on the market (e.g., IBM Watson, Google DeepMind, Microsoft Cognitive Services, etc.) and show demos of their services (e.g., text, speech, image, sentiment, etc., processing, analysis, recognition, diagnostics, prediction, etc.);

·        To give introduction on major theories, methods and algorithms used within cognitive computing services with particular focus on Deep Learning technology;

·        To provide “friendly” (with reasonable amount of mathematics) introduction to Deep Learning (including variations of deep Neural Networks and approaches to train them);

·        To provide different views to this knowledge suitable to people with different backgrounds and study objectives (ordinary user, advanced user, software engineer, domain professional, data scientist, cognitive analyst, mathematician, etc.);

·        To discuss scientific challenges and open issues within the domain as well as to share with the students information on relevant ongoing projects in the Faculty;

·        To train within teams to use available cognitive services via GUIs or APIs for inventing new interesting use cases and designing own applications;

·        For advanced students there will be a possibility to contribute (enhance, optimize, etc.) known algorithms or the related science behind them.

We believe that knowledge on Cognitive Computing at least at the level of an advanced user of it would be an excellent added value within the portfolio of every professional (from very humanitarian to very technical one).

Interesting to notice, that the major companies provide support to deep machine learning architectures for cognitive computing with an appropriate hardware. For example, Intel recently announced a new chip called Loihi, which is neuromorphic and self-learning chip capable of representing 130 000 neurons and 130 million synapses. Unlike convolutional neural network (CNN) and other deep learning processors the Loihi chip uses an asynchronous spiking model to mimic neuron and synapse behavior in a much closer analog to animal brain behavior.

Important challenges around the course topics also include Cybersecurity-related aspects of the Cognitive Computing, Deep Learning and Collective Intelligence. Emerging Cognitive Computing services attract huge amounts of users worldwide. Very recently the new vulnerabilities of Cognitive Computing and of its enabler Deep Learning have been discovered - the so called Cognitive Risks for Cybersecurity associated with the Cognitive Hack and Data Poisoning attacks. The cyber battleground has shifted recently from an attack on hard assets to a much softer target: the human mind as human behavior is the new and last “weakest link” in the cyber security armor. The Bruce Schneier’s popular quota: “Only amateurs attack machines; professionals target people” [B. Schneier (2000). Semantic Attacks: The Third Wave of Network Attacks], is now becoming an emerging reality. The cognitive hack takes place when a users’ behavior is influenced by misinformation. In his new book [J. Bone (2017). Cognitive Hack: The New Battleground in Cybersecurity ... the Human Mind, CRC Press], James Bone admits that “the human-machine interaction is the greatest threat in cyber space yet very few, if any, security professionals are well versed in strategies to close this gap”. On the other hand, Cognitive Computing and Collective Intelligence enhance creation of “artificial” decision-makers, agents, cognitive robots, etc. These entities are becoming users of various information systems and sources and automatically learn based on this usage experiences. Therefore they are also becoming a potential target for Cognitive Hacking. Very recent articles related to security aspects of Deep Learning noticed numerous potential risks of influencing outcomes of Machine Learning (e.g., decision models) by a variety of (training) data poisoning techniques. Therefore one interesting topic for the self-study would be on how to handle such risks (based on system's self-awareness and self-protection) for both human minds and artificial minds (i.e., risks of Cognitive Hacking of the Collective Intelligence) to make future smart systems secure.

 

We will combine overview lectures, self-study, group-work, theoretical and practical assignments and exercises trying to find an optimal approach to everyone.

Recommended reading: Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep Learning, MIT Press, 787 pp.  (http://www.deeplearningbook.org)

https://mitpress.mit.edu/sites/default/files/9780262035613_0.jpg

 

Recommended reading: Michael Nielsen (2017). Neural Networks and Deep Learning. (http://neuralnetworksanddeeplearning.com/)

Deep Learning Resources (http://deeplearning.net/)

 

Lectures for the course TIES4910-Deep Learning for Cognitive Computing, Theory consist of 4 parts (groups) as follows:

 

·       Part I. (Lectures 1-3):

o   Topic: Cognitive Computing: Intelligence-as-a-Service (IBM Watson, Google’s Deep Mind & Microsoft Cognitive Services)

o   See the lecture slides (download before viewing, enable external content and switch on speakers). Archived file is here.

o   Our concerns within the Part-I:

-         Why and what is Cognitive Computing;

-         Why to study;

-         Cognitive Computing as a context for other technologies (e.g., Semantic and Agent Technologies, IoT, Industry 4.0, etc.);

-         What is available on the market of “Intelligence-as-a-Service” for users and developers (from IBM Watson, DeepMind / Google, Cognitive Services of Microsoft, etc.);

-         How all these related to “Deep Learning”. 

 

·       Part II. (Lectures 4-6):

o   Topic: Introduction to Neural Networks and Deep Learning

o   See the lecture slides (download before viewing).

o   Our concerns within the Part-II:

-         Deep Learning for beginners;

-         Neural nets basics;

-         Gradient descent and backpropagation;

-         Variations of deep learning approaches and architectures.

 

·       Part III. (Lectures 7-8):

o   Topic: Convolutional Neural Networks for Image Processing

o   See the lecture slides (download before viewing).

o   Our concerns within the Part-III:

-         What is Convolutional Neural Network and how it works;

-         What kind of architecture has a Convolutional Neural Network;

-         How a Convolutional Neural Network processes images;

-         How to train a Convolutional Neural Network.

 

·       Part IV. (Lectures 9-10):

o   Topic: Neural Networks with Memory: Recurrent Neural Networks and LSTM Networks

o   See the lecture slides (download before viewing).

o   Our concerns within the Part-IV:

-         What is Recurrent Neural Network (RNN) and how it works;

-         What is Long Short-Term Memory (LSTM) network and how it works;

-         How they are used;

-         How to train a RNN and LSTM.

 

COMPLETION MODE: Your grade will be based on the course Assignment (task for the Assignment is here; deadline: 15 November).

 

How to continue? We recommend taking also the course: TIES4911 Deep Learning for Cognitive Computing for Developers

 

Welcome to our Artificial Intelligence Club (students will get extra credits in it):