Cloud Computing for Advanced Analytics and Artificial Intelligence
CC-MEI Master Ingeniería Informática (FIB/UPC – 2018)
ECTS: 3.0 – Hours: 75 (3.0 ECTS*25 hours/ECTS)
Idioma de impartición de las clases curso 2018: Español
Idioma documentación: Inglés
(2018 course edition will be in Spanish and will start on Friday April 20th)
Course workload: important warning
The student should be aware that CC-MEI 2018 edition is a 3.0 ECTS course that require an effort from the student equivalent to 75 hours. This means more than 10 hours per week (4 hours in class + 6 hours outside class in average) during 7 weeks. It is not recommended to take this course if the student has other commitments during this quarter that will prevent to dedicate the required amount of hours to this course. You can wait for the next course edition.
Services converge and pass from the physical world to the digital world, making them accessible from any electronic device. Cloud Computing is what makes it possible for digital technology to penetrate every corner of our economy and society.
Cloud computing is a service model for large-scale distributed computing. It is based on a converged infrastructure and a set of common services over which applications can be deployed and run over the network. This will cause a deluge of digital information requiring a big data analytics with magnitudes never seen before.
Cloud Computing is the real enabler of the democratization of technologies that will transform our society. It means Artificial Intelligence and its related technologies are available to everyone.
The goal of this course is to help students become part of this profound transformation that is causing Cloud Computing and related technologies such as Artificial Intelligence. It will encourage their desire to want to delve further into this exciting world of technology and become actively involved.
This course will review Cloud Computing and Big Data technologies which will shape our near future, as well as attempt to visualize in which direction this technology will take us. The course will pay special attention to the relation of Cloud Computing with advanced analytics technologies (such as Artificial Intelligence in general and Deep Learning technologies in particular).
In this course students will gain a practical view of the latest in Cloud technology in order to know how to start to implement a prototype that can help to develop a business idea created by the student.
The practical component is an important part of this subject. In this course the “learn by doing” method is used, with a set of Hands-on, based on problems that the students must carry out throughout the course.
The students will begin creating a basic toolbox to get started in the Cloud. This will prepare them to practice with APIs, the doors in the Cloud. All these things together will allow the students to mine the deluge of data coming from the Cloud, or use new advanced analytics services provided nowadays by the Cloud.
Finally, we will look under the hood of these advanced analytics services in the Cloud, either in terms of software or hardware, in order to understand how their high performance requirements can be provided.
The course will be marked by continuous assessment which ensures constant and steady work. The method is also based on teamwork and a ‘learn to learn’ approach reading and presenting related topics in short presentations. Thus the student is able to adapt and anticipate new technologies that will arise in the coming years.
- Cloud Computing Basics
- Current required layers in a Big Data Software Stack
- APIs: The doors in the Cloud
- New Software requirements for Advanced Analytics and Artificial Intelligence – I
- New Software requirements for Advanced Analytics and Artificial Intelligence – II
- New Hardware requirements for Advanced Analytics and Artificial Intelligence – I
- New Hardware requirements for Advanced Analytics and Artificial Intelligence – II
- Lab 1: Basic “Knowledge Toolbox” to getting started in the Cloud (Docker)
- Lab 2: Doors in the Cloud and Extracting and Analyzing data from the Cloud
- Lab 3: Interacting with users and services in the Cloud
- Lab 4: Under the hood of Cloud Advanced Analytics Services ( using Keras) (2 day)
- Lab 5 – Scaling a Cloud Service (using a DNN with Keras) (2 day)
The project can be done in groups. The project need to be approved by your teacher before starting (from the student’s proposal for the project). Three levels of projects:
- Minimum (max grade obtained 50%): One possibility of project is to prepare a presentation of some related technologies with this part of the course (with slides).
- Medium (max grade obtained 75%): Another alternative to the project may be to create a self-contained practical guide (hands-on) that guides the reader in learning one of the latest cloud technologies.
- Full: The standard project is to create an application using existing the tools and knowledge explained in this course. The project offers an excellent opportunity for the student to dive into course content by implementing a protoype (proof of concept implementation of a business idea created by the student) using the latest Cloud technology. Your teacher will be delighted to help you.
Course workload: important warning
The student should be aware that SA-MIRI 2017 edition is a 6.0 ECTS course that require an effort from the student equivalent to 150 hours. This means more than 10 hours per week (4 hours in class + 6 hours outside class in average) during 14 weeks. It is not recommended to take this course if the student has other commitments during this quarter that will prevent to dedicate the required amount of hours to this course. You can wait for the next course edition.
- Activities focused on the acquisition of theoretical knowledge. Regular and consistent attendance is expected and to be able to discuss concepts covered during class. The theoretical activities include participatory lecture classes, which explain the basic contents of the course.
- Activities focused on the acquisition of knowledge through experimentation by “learn by doing” approach in lab sessions. Hands-on sessions will be conducted during lab sessions . Each hands-on will involve writing a lab report with all the results to be delivered one week later.
- Homework will be assigned weekly that includes reading documentation that expands the concepts introduced during lectures, and periodically will include reading research papers related with the lecture of the week, and prepare short presentations (with slides that will be submitted to the Racó). Some students/groups randomly chosen will present the their short presentation.
- Course project that will be based on technologies considered in this course.
The evaluation of this course will take into account different items:
- Attendance (minimum 80% required) & participation in class will account for 20% of the grade.
- Homework, reading papers and presentations will account for 15% of the grade.
- Course Project will account of 15% of the grade
- Lab sessions (+ Lab reports) will account for 50% of the grade
Python is the programming language of choice for the labs sessions of this course. It is assumed that the student has a basic knowledge of Python prior to starting classes.
Also prior exposure to Git and experience with Linux basics will be necessary. If the student does not have this previous knowledge, they should follow this homework during the first week of the course (or before) that provide a fast-paced introduction to the basic characteristics of Python and git:
Warning. Be sure to acquire the required background prior to starting CC-MEI labs.
Class handouts and materials associated with this class can be found on the Racó (FIB intranet) or through links on this page.
This page and its links will be updated throughout this course to keep the information as updated as possible. (last modified 21/01/2018)
Jordi Torres Viñals
Contact : here
Office: UPC Campus Nord, Modul C6. Room 217. Jordi Girona 1-3, 08034 – Barcelona