Stanford Seminar - Building the Smartest and Open Virtual Assistant to Protect Privacy - Monica Lam

بواسطة: YouTube

Overview

Virtual assistants, providing a voice interface to web services and IoTs, can potentially develop into monopolistic platforms that threaten consumer privacy and open competition. This talk presents Almond as an open-source alternative.

We introduce a more cost-effective and robust methodology and tool set for building virtual assistants. We use an end-to-end neural model that translates natural language to directly executable code in our new virtual assistant programming language, called ThingTalk. As annotating real data training is prohibitively expensive, we train our neural network with mostly data synthesized with our Genie data engineering tool. Genie can automatically generate a dialogue agent from a database in given domains. In addition, it is designed to be extensible: developers can supply new domain schemas and APIs, domain-independent sentence templates and dialogue state machines in any language, as well as new ThingTalk constructs. Using this methodology, Almond has been shown to answer complex questions more accurately than existing commercial assistants in the domain of restaurant reservations.

To protect privacy, our Almond virtual assistant prototype has a federated design that lets users own their data and share their digital assets with full control. Almond has been integrated into Home Assistant, an open-source local gateway that can connect to hundreds of different IoT devices. By making all the tools, neural models, training data open-source, we wish to support open-world collaboration to create the smartest and open virtual assistant. Almond and more information are available on http://oval.cs.stanford.edu.

This research is supported by the NSF under grant No. 1900638.

Syllabus

Introduction.
Consumer Privacy.
Virtual Assistant Oligopoly.
Threats of Virtual Assistants.
Technical Barrier to Entry.
Scaling to the Future of Virtual Assistants.
This Talk.
Alexa: Syntax-Dependent Representation.
Alexa's 2-Step Approach.
Idea 1: End-to-End Translation.
Unique Semantic Representation.
Idea 2: Training-Data Engineering.
Genie: Synthesizes question/code from a schema.
Semantic Parser Generation Thingpedia.
Query Comparison - 4 Platforms.
Comparison of 415 Restaurant Questions.
Today's Dialogue Trees: Laborious & Brittle.
Annotate 1 Dialogue at a Time.
Genie: Transactional Dialogues State Machine.
Modular, Reusable Technical Stack.
Contextual Language Understanding Neural Model.
Preliminary Results.
Zero-Shot Learning Result.
Three Research Results.
Protect Privacy with an Open Federated Architecture.
Example: Asthma Patient.

Taught by

Stanford Online

Stanford Seminar - Building the Smartest and Open Virtual Assistant to Protect Privacy - Monica Lam
الذهاب الي الدورة

Stanford Seminar - Building the Smartest and Open Virtual Assistant to Protect Privacy - Monica Lam

بواسطة: YouTube

  • YouTube
  • مجانية
  • الإنجليزية
  • متاح شهادة
  • متاح في أي وقت
  • الجميع
  • N/A
8.1.2PHP Version105msRequest Duration2MBMemory UsageGET ar/الدورات/{slug}Route
    • Booting (61.34ms)
    • Application (43.43ms)
    • 1 x Booting (58.43%)
      61.34ms
      1 x Application (41.37%)
      43.43ms
      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.56ms
      • select * from `courses` where `slug_ar` = 'stanford-seminar---building-the-smartest-and-open-virtual-assistant-to-protect-privacy---monica-lam' limit 1
        3.87ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. stanford-seminar---building-the-smartest-and-open-virtual-assistant-to-protect-privacy---monica-lam
        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-04-11 03:30:17' where `id` = 1613
        860μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-04-11 03:30:17
        • 1. 1613
        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 (95)
        170μ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)
        140μ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 (5) and `institutions`.`deleted_at` is null
        170μ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 (21) and `providers`.`deleted_at` is null
        170μ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` = 1605 limit 1
        180μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 1605
        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
        hncNO4jXyaF3clErD7tH4gXNsnYeKVGnOB5kjaVE
        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/stanfo...
        _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/stanford-seminar---building-the-smartest-and-open-virtual-assistant-to-protect-privacy---monica-lam
        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 [ "cf-ipcountry" => array:1 [ 0 => "US" ] "cf-connecting-ip" => array:1 [ 0 => "3.138.183.117" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "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" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "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" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "cf-ray" => array:1 [ 0 => "92e767872847118f-ORD" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "priority" => array:1 [ 0 => "u=0, i" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "x-forwarded-for" => array:1 [ 0 => "3.138.183.117" ] "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_CF_IPCOUNTRY" => "US" "HTTP_CF_CONNECTING_IP" => "3.138.183.117" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "HTTP_SEC_FETCH_SITE" => "none" "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_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "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_SEC_FETCH_DEST" => "document" "HTTP_CF_RAY" => "92e767872847118f-ORD" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_PRIORITY" => "u=0, i" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_X_FORWARDED_FOR" => "3.138.183.117" "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" => "24866" "REMOTE_ADDR" => "172.69.59.182" "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/stanford-seminar---building-the-smartest-and-open-virtual-assistant-to-protect-privacy---monica-lam" "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" => 1744342217.0826 "REQUEST_TIME" => 1744342217 ]
        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 => "Fri, 11 Apr 2025 03:30:17 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IllPeloyODQ5NUd1SjR0R3FLT1FrOEE9PSIsInZhbHVlIjoiK3VRMjkzOTg5czFPejBUL2VLL1IyUzBELzFTdHFhSjhTcllvazgySW1ISDhSQ000MkVuRk9nbU5GVnZiS3NZLzN1ZW5RRitzWVFraitUMU1KeDRPMiticDVvVzluWFZqbnBuTUVSdEFSZnZCTXhJRXdsbTd1WG9ZSUg2RC9QaXQiLCJtYWMiOiI3YTkzODc2ZmU5Yjg5Mzg2YTE1M2ZkZDMyODlhZGIwOGY1YzkxZGY1ZWM1ODkyOGVhYzUzOTlmMTRlOWUxZjM1IiwidGFnIjoiIn0%3D; expires=Fri, 11 Apr 2025 05:30:17 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6IllPeloyODQ5NUd1SjR0R3FLT1FrOEE9PSIsInZhbHVlIjoiK3VRMjkzOTg5czFPejBUL2VLL1IyUzBELzFTdHFhSjhTcllvazgySW1ISDhSQ000MkVuRk9nbU5GVnZiS3NZLzN1ZW5RR" 1 => "laravel_session=eyJpdiI6Imd6dHJnNkpIKzBFZmJLOVFiUVhMMVE9PSIsInZhbHVlIjoibTREYXRBcWVTd1hkc1ZyNG5VUzFyNlUzd28rTWRPbDZKWDZOcWdjbmhBRm1LaHNVVVJnbUJwaEIrVW9nRGpFbHJ6SWRwd3E2SHpFMGNmNUoyMUp5RTVlU1V3OXFSTVViS2l1Z1Z0cXpsRHFlNm9ueThlR2NDV1lBL0U3R21GSm8iLCJtYWMiOiIzY2U3MDM1MzVjYTI0Njg4MGJmNjRjY2QxZGVlYTA2YTQ5Y2VmMDA0NzgxNGM5ZDc4M2ZiNmNlNGZhZmZmY2UxIiwidGFnIjoiIn0%3D; expires=Fri, 11 Apr 2025 05:30:17 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6Imd6dHJnNkpIKzBFZmJLOVFiUVhMMVE9PSIsInZhbHVlIjoibTREYXRBcWVTd1hkc1ZyNG5VUzFyNlUzd28rTWRPbDZKWDZOcWdjbmhBRm1LaHNVVVJnbUJwaEIrVW9nRGpFbHJ6" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IllPeloyODQ5NUd1SjR0R3FLT1FrOEE9PSIsInZhbHVlIjoiK3VRMjkzOTg5czFPejBUL2VLL1IyUzBELzFTdHFhSjhTcllvazgySW1ISDhSQ000MkVuRk9nbU5GVnZiS3NZLzN1ZW5RRitzWVFraitUMU1KeDRPMiticDVvVzluWFZqbnBuTUVSdEFSZnZCTXhJRXdsbTd1WG9ZSUg2RC9QaXQiLCJtYWMiOiI3YTkzODc2ZmU5Yjg5Mzg2YTE1M2ZkZDMyODlhZGIwOGY1YzkxZGY1ZWM1ODkyOGVhYzUzOTlmMTRlOWUxZjM1IiwidGFnIjoiIn0%3D; expires=Fri, 11-Apr-2025 05:30:17 GMT; path=/XSRF-TOKEN=eyJpdiI6IllPeloyODQ5NUd1SjR0R3FLT1FrOEE9PSIsInZhbHVlIjoiK3VRMjkzOTg5czFPejBUL2VLL1IyUzBELzFTdHFhSjhTcllvazgySW1ISDhSQ000MkVuRk9nbU5GVnZiS3NZLzN1ZW5RR" 1 => "laravel_session=eyJpdiI6Imd6dHJnNkpIKzBFZmJLOVFiUVhMMVE9PSIsInZhbHVlIjoibTREYXRBcWVTd1hkc1ZyNG5VUzFyNlUzd28rTWRPbDZKWDZOcWdjbmhBRm1LaHNVVVJnbUJwaEIrVW9nRGpFbHJ6SWRwd3E2SHpFMGNmNUoyMUp5RTVlU1V3OXFSTVViS2l1Z1Z0cXpsRHFlNm9ueThlR2NDV1lBL0U3R21GSm8iLCJtYWMiOiIzY2U3MDM1MzVjYTI0Njg4MGJmNjRjY2QxZGVlYTA2YTQ5Y2VmMDA0NzgxNGM5ZDc4M2ZiNmNlNGZhZmZmY2UxIiwidGFnIjoiIn0%3D; expires=Fri, 11-Apr-2025 05:30:17 GMT; path=/; httponlylaravel_session=eyJpdiI6Imd6dHJnNkpIKzBFZmJLOVFiUVhMMVE9PSIsInZhbHVlIjoibTREYXRBcWVTd1hkc1ZyNG5VUzFyNlUzd28rTWRPbDZKWDZOcWdjbmhBRm1LaHNVVVJnbUJwaEIrVW9nRGpFbHJ6" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "hncNO4jXyaF3clErD7tH4gXNsnYeKVGnOB5kjaVE" "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/stanford-seminar---building-the-smartest-and-open-virtual-assistant-to-protect-privacy---monica-lamhttps://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/stanford-seminar---building-the-smartest-and-open-virtual-assistant-to-protect-privacy--" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]