Introduction to Natural Language Processing

بواسطة: Coursera

Overview

This course provides an introduction to the field of Natural Language Processing. It includes relevant background material in Linguistics, Mathematics, Probabilities, and Computer Science. Some of the topics covered in the class are Text Similarity, Part of Speech Tagging, Parsing, Semantics, Question Answering, Sentiment Analysis, and Text Summarization.
The course includes quizzes, programming assignments in Python, and a final exam.

Course Syllabus

Week One (Introduction 1/2) (1:35:31)
Week Two (Introduction 2/2) (1:36:26)
Week Three (NLP Tasks and Text Similarity) (1:42:52)
Week Four (Syntax and Parsing, Part 1) (1:48:14)
Week Five (Syntax and Parsing, Part 2) (1:50:29)
Week Six (Language Modeling and Word Sense Disambiguation) (1:40:33)
Week Seven (Part of Speech Tagging and Information Extraction) (1:33:21)
Week Eight (Question Answering) (1:16:59)
Week Nine (Text Summarization) (1:33:55)
Week Ten (Collocations and Information Retrieval) (1:29:40)
Week Eleven (Sentiment Analysis and Semantics) (1:09:38)
Week Twelve (Discourse, Machine Translation, and Generation) (1:30:57)


The course assignments will all be in Python.


Course Format

The class will consist of lecture videos, which are typically between 10 and 25 minutes in length. The lectures contain 1-2 integrated quiz questions per video. Grading is based on three programming assignments, weekly quizzes, and a final exam.

Syllabus

Week One: Introduction 1/2
In Week One, you will be watching an introductory lecture that covers the motivation for NLP, examples of difficult cases, as well as the first part of the Introduction to Linguistics needed for this class.

Week Two: Introduction 2/2
Week Two will cover Parts of Speech, Morphology, Text Similarity, and Text Preprocessing. I will also introduce NACLO, the North American Computational Linguistics Olympiad (www.nacloweb.org), a competition for high school students interested in NLP and Linguistics.

Week Three: NLP Tasks and Text Similarity
Week Three will cover Vector Semantics, Text Similarity, and Dimensionality Reduction. I will also go through a long list of sample NLP tasks (e.g., Information Extraction, Text Summarization, and Semantic Role Labeling) and introduce each of them briefly.

Week Four: Syntax and Parsing, Part 1
Week Four will cover the basics of Syntax and Parsing, including CKY parsing and the Earley parser.

Week Five: Syntax and Parsing, Part 2
Week Five will continue with topics related to parsing, including Statistical, Lexicalized, and Dependency Parsing as well as Noun Sequence Parsing, Prepositional Phrase Attachment, and Alternative Grammatical Formalisms.

Week Six: Language Modeling
Week Six will cover Probabilities, Language Modeling, and Word Sense Disambiguation (WSD). The first two, along with some material coming up in Week Seven, will be the basis for Assignment 2. The WSD unit will be needed later for Assignment 3.

Week Seven: Part of Speech Tagging and Information Extraction
Week Seven includes the Noisy Channel Model, Hidden Markov Models, Part of Speech Tagging (all needed for the second programming assignment) and a short introduction to Information Extraction.

Week Eight: Question Answering
Week Eight covers different topics related to Question Answering, including Question Type Classification and Evaluation of Question Answering Systems.

Week Nine: Text Summarization
Week Nine covers Text Summarization and related topics such as Sentence Compression.

Week Ten: Collocations and Information Retrieval
Week Ten covers Information Retrieval (including Document Indexing, Ranking, Evaluation), Text Classification and Text Clustering, as well as a short lecture on Collocations.

Week Eleven: Sentiment Analysis and Semantics
Week Eleven covers Semantics and related topics such as Sentiment Analysis, Semantic Parsing, and Knowledge Representation.

Week Twelve: Discourse, Machine Translation, and Generation (Includes Final Exam)
Week Twelve briefly covers Discourse Analysis, Dialogue, Machine Translation, and Text Generation.

Taught by

Dragomir Radev

Introduction to Natural Language Processing
الذهاب الي الدورة

Introduction to Natural Language Processing

بواسطة: Coursera

  • Coursera
  • مجانية
  • الإنجليزية
  • متاح شهادة
  • أيام محددة
  • الجميع
  • N/A
8.1.2PHP Version309msRequest Duration2MBMemory UsageGET ar/الدورات/{slug}Route
    • Booting (201ms)
    • Application (108ms)
    • 1 x Booting (64.91%)
      200.55ms
      1 x Application (34.85%)
      107.69ms
      14 templates were rendered
      • public.courses.show (resources/views/public/courses/show.blade.php)3bladefile
        Params
        0
        course
        1
        links
        2
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.courses.partials.details (resources/views/public/courses/partials/details.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.layouts.main (resources/views/public/layouts/main.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.meta (resources/views/public/layouts/partials/meta.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.navbar (resources/views/public/layouts/partials/navbar.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.links (resources/views/public/auth/profile/partials/links.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.layouts.partials.flash-session (resources/views/public/layouts/partials/flash-session.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      uri
      GET ar/الدورات/{slug}
      middleware
      web, localize:ar
      controller
      App\Http\Controllers\CourseController@show
      as
      ar.courses.show
      namespace
      prefix
      /ar
      where
      file
      app/Http/Controllers/CourseController.php:17-35
      7 statements were executed5.62ms
      • select * from `courses` where `slug_ar` = 'introduction-to-natural-language-processing' limit 1
        4.27ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. introduction-to-natural-language-processing
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:20
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • update `courses` set `visitors` = `visitors` + 1, `courses`.`updated_at` = '2025-02-10 20:21:41' where `id` = 1679
        280μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-02-10 20:21:41
        • 1. 1679
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:21
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `topic_id`, `slug_en`, `slug_ar` from `subjects` where `subjects`.`id` in (36)
        210μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `slug_en`, `slug_ar` from `topics` where `topics`.`id` in (1)
        190μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 25. /app/Http/Controllers/CourseController.php:23
        • 26. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 27. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 28. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 29. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `institutions` where `institutions`.`id` in (11) and `institutions`.`deleted_at` is null
        230μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `providers` where `providers`.`id` in (2) and `providers`.`deleted_at` is null
        190μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `html_files` where `html_files`.`id` = 1671 limit 1
        250μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 1671
        Backtrace
        • 21. /app/Models/Course.php:84
        • 28. view::public.courses.show:29
        • 30. /vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:125
        • 31. /vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • 32. /vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:72
      App\Models\HtmlFile
      1
      App\Models\Provider
      1
      App\Models\Institution
      1
      App\Models\Topic
      1
      App\Models\Subject
      1
      App\Models\Course
      1
        _token
        SvrTJE0JZ6m8cjzaftMNNHRxsWJnUX2pq7owVuOr
        locale
        ar
        _previous
        array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/introd...
        _flash
        array:2 [ "old" => [] "new" => [] ]
        PHPDEBUGBAR_STACK_DATA
        []
        path_info
        /ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/introduction-to-natural-language-processing
        status_code
        200
        
        status_text
        OK
        format
        html
        content_type
        text/html; charset=UTF-8
        request_query
        []
        
        request_request
        []
        
        request_headers
        0 of 0
        array:24 [ "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "priority" => array:1 [ 0 => "u=0, i" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "cf-connecting-ip" => array:1 [ 0 => "13.58.245.201" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "cf-ipcountry" => array:1 [ 0 => "US" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "x-forwarded-for" => array:1 [ 0 => "13.58.245.201" ] "cf-ray" => array:1 [ 0 => "90fece935dc0f161-ORD" ] "host" => array:1 [ 0 => "www.corspedia.com" ] "content-length" => array:1 [ 0 => "" ] "content-type" => array:1 [ 0 => "" ] ]
        request_server
        0 of 0
        array:50 [ "USER" => "www-data" "HOME" => "/var/www" "HTTP_SEC_CH_UA_MOBILE" => "?0" "HTTP_SEC_CH_UA" => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_PRIORITY" => "u=0, i" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_CF_CONNECTING_IP" => "13.58.245.201" "HTTP_ACCEPT" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" "HTTP_SEC_FETCH_SITE" => "none" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_CF_IPCOUNTRY" => "US" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "HTTP_X_FORWARDED_FOR" => "13.58.245.201" "HTTP_CF_RAY" => "90fece935dc0f161-ORD" "HTTP_HOST" => "www.corspedia.com" "REDIRECT_STATUS" => "200" "SERVER_NAME" => "corspedia.com" "SERVER_PORT" => "443" "SERVER_ADDR" => "141.95.147.152" "REMOTE_USER" => "" "REMOTE_PORT" => "10318" "REMOTE_ADDR" => "172.70.130.18" "SERVER_SOFTWARE" => "nginx/1.18.0" "GATEWAY_INTERFACE" => "CGI/1.1" "HTTPS" => "on" "REQUEST_SCHEME" => "https" "SERVER_PROTOCOL" => "HTTP/2.0" "DOCUMENT_ROOT" => "/var/www/corspedia/public" "DOCUMENT_URI" => "/index.php" "REQUEST_URI" => "/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/introduction-to-natural-language-processing" "SCRIPT_NAME" => "/index.php" "CONTENT_LENGTH" => "" "CONTENT_TYPE" => "" "REQUEST_METHOD" => "GET" "QUERY_STRING" => "" "SCRIPT_FILENAME" => "/var/www/corspedia/public/index.php" "PATH_INFO" => "" "FCGI_ROLE" => "RESPONDER" "PHP_SELF" => "/index.php" "REQUEST_TIME_FLOAT" => 1739218901.2578 "REQUEST_TIME" => 1739218901 ]
        request_cookies
        []
        
        response_headers
        0 of 0
        array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Mon, 10 Feb 2025 20:21:41 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IjYyODBpZ202ZTA2cTZmSG00dTloRnc9PSIsInZhbHVlIjoiYjF3OFlHbEtKWHJURXpzOEZST2xCMmlnTXNrenpRSmI2NlpZVzlOdHNsc0YzZkdQRDZzNm5wMFFlZkNGQlhrVmhPVkVna2FmMlRsU045RjBpRjJEbFhQVWcrT3d3K29ZNXdST0tuRkFBb01nM1Z2N1hWS3FCRVhQTVNEMTVIVTIiLCJtYWMiOiI4NGVhZjEyOWE2OWI1NWIxYWEzZTRlNDdiZGI1N2IzNmNmYWE2YTRkMDFhOTM2MjNiMTU4MmFiNzM5ZGFhMWM1IiwidGFnIjoiIn0%3D; expires=Mon, 10 Feb 2025 22:21:41 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6IjYyODBpZ202ZTA2cTZmSG00dTloRnc9PSIsInZhbHVlIjoiYjF3OFlHbEtKWHJURXpzOEZST2xCMmlnTXNrenpRSmI2NlpZVzlOdHNsc0YzZkdQRDZzNm5wMFFlZkNGQlhrVmhPVkVna" 1 => "laravel_session=eyJpdiI6ImZjZ200bzY1bHQwYjFhbHFRUUxXTlE9PSIsInZhbHVlIjoicjJIUk5KVHRFTE5ZaGZocEdrVUY3aFNDeXNtQUI1amJoNWJhTWh3L0dCd3hTN0xGcDc3VDEzK0hZQk8zWmFnaDNubUZ4cytYcWdaa0RKaWVybnVVRlRFZ1kvekUxR29uY29JeUNvZi9WcEIvOGY5WjhMbTBNOVU1a0dUSHl3c2siLCJtYWMiOiJiYTA3OGFjM2VkNTk5NGIxYTVkNWE3YTAzMmI4N2FhYzRhNjI2YTViNTg5Yzc5YjY0MzRmYWVmMzE0ZTcyNmQwIiwidGFnIjoiIn0%3D; expires=Mon, 10 Feb 2025 22:21:41 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6ImZjZ200bzY1bHQwYjFhbHFRUUxXTlE9PSIsInZhbHVlIjoicjJIUk5KVHRFTE5ZaGZocEdrVUY3aFNDeXNtQUI1amJoNWJhTWh3L0dCd3hTN0xGcDc3VDEzK0hZQk8zWmFnaDNu" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IjYyODBpZ202ZTA2cTZmSG00dTloRnc9PSIsInZhbHVlIjoiYjF3OFlHbEtKWHJURXpzOEZST2xCMmlnTXNrenpRSmI2NlpZVzlOdHNsc0YzZkdQRDZzNm5wMFFlZkNGQlhrVmhPVkVna2FmMlRsU045RjBpRjJEbFhQVWcrT3d3K29ZNXdST0tuRkFBb01nM1Z2N1hWS3FCRVhQTVNEMTVIVTIiLCJtYWMiOiI4NGVhZjEyOWE2OWI1NWIxYWEzZTRlNDdiZGI1N2IzNmNmYWE2YTRkMDFhOTM2MjNiMTU4MmFiNzM5ZGFhMWM1IiwidGFnIjoiIn0%3D; expires=Mon, 10-Feb-2025 22:21:41 GMT; path=/XSRF-TOKEN=eyJpdiI6IjYyODBpZ202ZTA2cTZmSG00dTloRnc9PSIsInZhbHVlIjoiYjF3OFlHbEtKWHJURXpzOEZST2xCMmlnTXNrenpRSmI2NlpZVzlOdHNsc0YzZkdQRDZzNm5wMFFlZkNGQlhrVmhPVkVna" 1 => "laravel_session=eyJpdiI6ImZjZ200bzY1bHQwYjFhbHFRUUxXTlE9PSIsInZhbHVlIjoicjJIUk5KVHRFTE5ZaGZocEdrVUY3aFNDeXNtQUI1amJoNWJhTWh3L0dCd3hTN0xGcDc3VDEzK0hZQk8zWmFnaDNubUZ4cytYcWdaa0RKaWVybnVVRlRFZ1kvekUxR29uY29JeUNvZi9WcEIvOGY5WjhMbTBNOVU1a0dUSHl3c2siLCJtYWMiOiJiYTA3OGFjM2VkNTk5NGIxYTVkNWE3YTAzMmI4N2FhYzRhNjI2YTViNTg5Yzc5YjY0MzRmYWVmMzE0ZTcyNmQwIiwidGFnIjoiIn0%3D; expires=Mon, 10-Feb-2025 22:21:41 GMT; path=/; httponlylaravel_session=eyJpdiI6ImZjZ200bzY1bHQwYjFhbHFRUUxXTlE9PSIsInZhbHVlIjoicjJIUk5KVHRFTE5ZaGZocEdrVUY3aFNDeXNtQUI1amJoNWJhTWh3L0dCd3hTN0xGcDc3VDEzK0hZQk8zWmFnaDNu" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "SvrTJE0JZ6m8cjzaftMNNHRxsWJnUX2pq7owVuOr" "locale" => "ar" "_previous" => array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/introduction-to-natural-language-processing" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]