Skip to page content

Courses

  • Programming Languages (10211)
  • תקציר הקורס:

    Abstract:

    The course demonstrates the different paradigms of programming languages using Python and other languages.

    The paradigms that will be demonstrated: f?unctional languages, object-oriented languages, logical languages, procedural languages, parallel languages and more.

    The components common to the languages that support each of the paradigms will be studied, their limitations alongside their advantages.

    The theoretical basis behind each programming language will be covered, including Church-Turing theory and lambda calculus. It will be clarified what are the components common to the languages that support each of the paradigms,

    Such as how memory is managed, variable definition, definition / execution times, etc.

    The different paradigms will be demonstrated using the Python language since it is a versatile dynamic language that supports different programming paradigms including object-oriented programming and f?unctional programming.
  • Natural Language Processing (10247)
  • תקציר הקורס:

    Abstract:

    Initially, the problems that arise when you want to process natural language will be reviewed. Next, language models will be introduced. Later, central algorithms such as IT-IDF, WORD2VEC, Bag of words, POS and more will be reviewed. At the same time, we will learn how to implement language processing algorithms using Python and dedicated libraries. Key applications in language processing will be reviewed: summarization, translation and keyword, sentiment analysis and more. The principles of LLM will be taught, including TRANSFORMERS, VAE and the use of language models and libraries such as GPT, HUGGINGFACE and more.
  • Final Project in Computer Science (11401)
  • תקציר הקורס:

    Abstract:

    The final project workshop will escort the students in its preliminary stages of the final project selection process and assist to create a comprehensive definition of the broad problem description, prior studies, competitive analysis, goals, objectives & measurements, algorithm design, work plan and code development and evaluation. .
  • NLP and Speech Analysis (65007)
  • תקציר הקורס:

    Abstract:

    How computers understand natural language?

    How search engines find exactly what you need from huge amount of stored pages? How computer is able to translate from one language to another?

    The field of Natural Language Processing studies problems related to the processing and transformations of natural languages including natural language understanding. There are a number of methods and computational models that have been developed during the last decades but some really significant advanced were made during the last few years that made possible many consumer applications like Siri or Google. During this course we will study the most basic algorithms that are used for NLP problems along with some recent methods that currently are in the center of NLP research.
  • Data Science Lab2 (65024)
  • תקציר הקורס:

    Abstract:

    As part of the course, the following libraries will be taught: tensorflow, keras, pytorch, nltk, HuggingFace, Caffe and more.

    In the course, the use of the following networks will be learned methodologically, going over the preprocessing, processing and postprocessing stages.

    In the PREPROCESSING phase we will learn methods for examining network configuration, determining the hyperparameters and correct representation of the data and feature extraction.

    In the processing phase we will study the following networks: attention, lstm, transformers, autoencoders, variational autoencoders, GAN and more.

    We will learn to implement deep learning for supervised, unsupervised, semi-supervised and reinforcement learning

    We will see implementations for tabular data, images, NLP and audio.