COURSE DETAIL
COURSE DETAIL
COURSE DETAIL
COURSE DETAIL
A compiler is a computer program that translates text written in a given language (called the source language) into another language (the target language). With most compilers the source language is a high-level programming language (e.g., C, C++, Java), and the target language is a lower-level representation such as assembly language or byte code. This course focus is on compiler techniques needed to implement programming languages on a virtual machine. The aims are to improve programming skills by learning how a compiler works; to apply the theoretical foundations of compilation techniques; to design and implement a compiler for a small programming language; to learn about virtual machines (the JVM in particular); and to practice software engineering design principles on a medium-sized project. This course covers both practical and theoretical aspects of a compiler. Our main emphasis is on the compiler frontend (i.e., scanning, parsing, semantic analysis) and on code-generation for the JVM.
COURSE DETAIL
This course is an introduction to digital image processing and analysis. Students benefit from an overview of image processing methods (histogram restauration, convolution filters, mathematical morphology, segmentation) and image analysis methods (pattern recognition, identification, etc.). During the course students: learn how to manage 2D, 3D, and animated images; understand human perception and image acquisition; discover image segmentation, registration, and analysis; concrete implementation through existing tools or simple script development; study algorithms to obtain features from images (histogram, filters, descriptors).
COURSE DETAIL
Students learn about the foundations, building blocks, and applications of Natural Language Processing (NLP), with an emphasis on approaches based on deep learning. They study the models used to represent words and word meanings. They then use these representations to study classification tasks (e.g. sentiment analysis) and tagging tasks (e.g. part of speech tagging). In addition students view languages as sequences of variable length, from pure language models to machine translation models. Finally students explore approaches that are based on modern neural machine learning algorithms, where linguistic information is provided by instances of uses of language.
COURSE DETAIL
This course introduces the subject of artificial intelligence covering the basic principles and technologies of intelligent computer systems and the algorithms to achieve AI and how to develop some AI programs. Topics include: intelligent agents; search techniques for problem solving (uninformed, informed, local, adversarial); knowledge representation; logical inference; propositional logic; reasoning under uncertainty; statistical models and machine learning; probability; Bayes’ nets; and decision theory.
COURSE DETAIL
This is a graduate level course that is part of the Laurea Magistrale program. The course is intended for advanced level students only. Enrollment is by consent of the instructor. The course focuses on the relevant themes related to blockchain technologies, cryptocurrencies, smart contracts, and novel applications that can be built over the blockchain. Students in the course develop simple smart contracts that can be deployed on a blockchain. Bitcoin and novel cryptocurrencies gathered momentum in the last months. More and more investors look with interest at these technologies, while others label them as a dangerous speculative bubble. The truth is that the blockchain, and the alternative implementations of a distributed ledger, represent very interesting technologies, that can be exploited to build novel distributed applications. The underlying building blocks are related to many concepts and research areas of computer science in general. This course illustrates the main principles and conceptual foundations of the blockchain and the Bitcoin network. The course discusses topics including introduction to peer-to-peer systems, overlay topologies and decentralization, introduction to Crypto and Cryptocurrencies, the blockchain: how to achieve decentralization, transactions and transaction scripting languages, mining, attacks to the blockchain, anonymity, and smart contracts.
COURSE DETAIL
COURSE DETAIL
Pagination
- Previous page
- Page 92
- Next page