CN114600114A - 助理系统的设备上卷积神经网络模型 - Google Patents

助理系统的设备上卷积神经网络模型 Download PDF

Info

Publication number
CN114600114A
CN114600114A CN202080072955.1A CN202080072955A CN114600114A CN 114600114 A CN114600114 A CN 114600114A CN 202080072955 A CN202080072955 A CN 202080072955A CN 114600114 A CN114600114 A CN 114600114A
Authority
CN
China
Prior art keywords
user
particular embodiments
client system
user input
assistant
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202080072955.1A
Other languages
English (en)
Inventor
艾哈迈德·阿利
阿伦·巴布
阿尔门·阿加贾亚恩
文森特·查尔斯·张
何子健
阿努杰·库马尔
李季航
刘白杨
刘洪磊
刘小虎
凯施蒂兹·马里克
文胜焕
彭福春
弗朗西斯拉夫·P·佩诺夫
埃里克·肖
丽萨·晓艺·黄
尼古拉斯·迈克尔·安德鲁·本森
盛雅婷
迈克尔·罗伯特·汉森
保罗·安东尼·克鲁克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Meta Platforms Technologies LLC
Original Assignee
Facebook Technologies LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Facebook Technologies LLC filed Critical Facebook Technologies LLC
Publication of CN114600114A publication Critical patent/CN114600114A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • G06F16/90332Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9536Search customisation based on social or collaborative filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/126Character encoding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/253Grammatical analysis; Style critique
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/55Rule-based translation
    • G06F40/56Natural language generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/453Help systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • G06F9/4862Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration the task being a mobile agent, i.e. specifically designed to migrate
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting
    • G06Q10/1093Calendar-based scheduling for persons or groups
    • G06Q10/1095Meeting or appointment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0603Catalogue ordering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0633Lists, e.g. purchase orders, compilation or processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0641Shopping interfaces
    • G06Q30/0643Graphical representation of items or shoppers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/255Detecting or recognising potential candidate objects based on visual cues, e.g. shapes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/30Scenes; Scene-specific elements in albums, collections or shared content, e.g. social network photos or video
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/23Recognition of whole body movements, e.g. for sport training
    • G06V40/25Recognition of walking or running movements, e.g. gait recognition
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1815Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1822Parsing for meaning understanding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/32Multiple recognisers used in sequence or in parallel; Score combination systems therefor, e.g. voting systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/18Commands or executable codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/212Monitoring or handling of messages using filtering or selective blocking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/214Monitoring or handling of messages using selective forwarding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/222Monitoring or handling of messages using geographical location information, e.g. messages transmitted or received in proximity of a certain spot or area
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/224Monitoring or handling of messages providing notification on incoming messages, e.g. pushed notifications of received messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/52User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/75Indicating network or usage conditions on the user display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/141Systems for two-way working between two video terminals, e.g. videophone
    • H04N7/147Communication arrangements, e.g. identifying the communication as a video-communication, intermediate storage of the signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/541Client-server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/41Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/10Recognition assisted with metadata
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/174Facial expression recognition
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/065Adaptation
    • G10L15/07Adaptation to the speaker
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • G10L2015/0631Creating reference templates; Clustering
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L2015/088Word spotting
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/227Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of the speaker; Human-factor methodology
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/228Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of application context

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Human Resources & Organizations (AREA)
  • Signal Processing (AREA)
  • Strategic Management (AREA)
  • Acoustics & Sound (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Tourism & Hospitality (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Medical Informatics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)

Abstract

在一个实施例中,一种方法包括:在客户端系统接收包括一个或更多个单词的用户输入,其中每个单词包括一个或更多个字符;将单词输入到存储在客户端系统上的卷积神经网络(CNN)模型;从客户端系统的数据储存器中分别访问多个字符的多个字符嵌入;基于所访问的字符嵌入,通过用CNN模型的一个或更多个卷积层和一个或更多个门控线性单元处理访问的字符嵌入,来分别为一个或更多个单词生成一个或更多个单词嵌入;基于CNN模型对一个或更多个单词嵌入的分析,确定对应于用户输入的一个或更多个任务以供执行;和基于一个或更多个任务的执行,在客户端系统处提供响应于用户输入的输出。

Description

助理系统的设备上卷积神经网络模型
优先权
本申请根据35 U.S.C.§119(e)要求2019年10月18日提交的美国临时专利申请第62/923342号的权益,该申请通过引用并入本文。
技术领域
本公开大体上涉及网络环境中的数据库和文件管理,尤其涉及智能助理系统的硬件和软件。
背景
助理系统可以基于用户输入、位置感知和从各种在线源访问信息(如天气状况、交通拥堵、新闻、股票价格、用户日程、零售价格等)的能力的组合来为用户提供信息或服务。用户输入可以包括文本(例如,在线聊天)(尤其是在即时消息传递应用或其他应用中的文本),声音(voice)、图像、运动(motion)或它们的组合。助理系统可以基于用户输入来执行礼宾类型的服务(例如,预订晚餐、购买活动门票、安排旅行)或者提供信息。助理系统还可以基于在线信息和事件来执行管理或数据处理任务,而无需用户启动或交互。可以由助理系统执行的那些任务的示例可以包括日程管理(例如,对晚餐约会发送用户由于交通状况而要迟到的告警信息,更新双方的日程,以及改变餐馆预订时间)。助理系统可以通过计算设备、应用编程接口(API)、以及用户设备上应用激增(proliferation)的组合来实现。
可以包括社交网络网站的社交网络系统可以使它的用户(例如个人或组织)能够与它互动以及通过它彼此互动。社交网络系统可以利用来自用户的输入来在社交网络系统中创建并存储与用户相关联的用户简档(user profile)。用户简档可以包括用户的人口统计信息、通信渠道信息以及关于个人兴趣的信息。社交网络系统还可以用来自用户的输入来创建并存储用户与社交网络系统的其他用户的关系的记录,以及提供服务(例如,简档/动态消息(news feed)帖子、照片分享、事件组织、消息传递、游戏或广告)以便于在用户之间或当中的社会交互。
社交网络系统可以通过一个或更多个网络向用户的移动设备或其他计算设备发送与它的服务相关的内容或消息。用户还可以在用户的移动设备或其他计算设备上安装软件应用,用于访问用户的用户简档和在社交网络系统内的其他数据。社交网络系统可以生成一组个性化的内容对象以显示给用户,例如关连(connect)到该用户的其他用户的汇集的动态(story)的动态消息(newsfeed)。
特定实施例概述
根据本发明,提供了一种方法,方法包括由客户端系统:在客户端系统接收包括一个或更多个单词的用户输入,其中每个单词包括一个或更多个字符;将一个或更多个单词输入到存储在客户端系统上的卷积神经网络(CNN)模型;从客户端系统的数据储存器中分别访问多个字符的多个字符嵌入;基于所访问的字符嵌入通过用CNN模型的一个或更多个卷积层和一个或更多个门控(gated)线性单元处理所访问的字符嵌入,来分别为一个或更多个单词生成一个或更多个单词嵌入;基于CNN模型对一个或更多个单词嵌入的分析,确定对应于用户输入的一个或更多个任务以供执行;以及基于一个或更多个任务的执行,在客户端系统处提供响应于用户输入的输出。
可选地,该方法还包括由存储在客户端系统上的自然语言理解模块将用户输入解析成一个或更多个单词。
可选地,CNN模型包括多个层,其中多个层至少包括卷积层、池化层、门控线性单元、线性层和具有梯度截断(gradient clipping)的残差连接(residual connection)。
可选地,该方法还包括通过基于CNN模型分析一个或更多个单词嵌入来确定与用户输入相关联的一个或更多个意图。
可选地,确定一个或更多个意图包括:由CNN模型的一个或更多个卷积层和一个或更多个池化层基于一个或更多个单词嵌入生成用户输入的特征表示;由CNN模型的一个或更多个线性层基于特征表示计算对应于多个意图的多个概率,其中每个概率指示对应的意图与用户输入相关联的可能性;以及基于所计算的概率,从多个意图中确定一个或更多个意图。
该方法可以可选地进一步包括通过基于CNN模型分析一个或更多个单词嵌入来确定与用户输入相关联的一个或更多个槽。
确定一个或更多个槽可以包括:由CNN模型的一个或更多个线性层基于一个或更多个单词嵌入计算对应于多个槽的多个概率,其中每个概率指示对应槽与相应单词相关联的可能性;以及基于所计算的概率,从多个槽中确定一个或更多个槽。
可选地,利用CNN模型的一个或更多个卷积层对所访问的字符嵌入的处理基于一个或更多个数字信号处理(DSP)算法,其中一个或更多个DSP算法是基于客户端系统的硬件部件来确定的。
生成一个或更多个单词嵌入可选地还基于多个字典特征。
可选地,与CNN模型相关联的多个参数和多个激活被量化。
可选地,该方法还包括:向一个或更多个远程服务器发送用于执行的一个或更多个任务,其中输出由一个或更多个远程服务器基于一个或更多个任务的执行来生成。
可选地,该方法还包括在客户端系统从一个或更多个远程服务器接收用于提供输出的指令。
可选地,CNN模型包括基于一个或更多个修剪(pruning)算法生成的多个层,其中一个或更多个修剪算法基于客户端系统的硬件部件来确定。
可选地,CNN模型包括基于一个或更多个稀疏化算法确定的多个参数。
根据本发明,还提供了一个或更多个包含软件的计算机可读非暂时性存储介质,该软件在被执行时可操作来:在客户端系统接收包括一个或更多个单词的用户输入,其中每个单词包括一个或更多个字符;将一个或更多个单词输入到存储在客户端系统上的卷积神经网络(CNN)模型;从客户端系统的数据储存器中分别访问多个字符的多个字符嵌入;基于所访问的字符嵌入,通过用CNN模型的一个或更多个卷积层和一个或更多个门控线性单元处理所访问的字符嵌入,来分别为一个或更多个单词生成一个或更多个单词嵌入;基于CNN模型对一个或更多个单词嵌入的分析,确定对应于用户输入的一个或更多个任务以供执行;并且基于一个或更多个任务的执行,在客户端系统处提供响应于用户输入的输出。
可选地,当被执行时,该软件还可操作来通过存储在客户端系统上的自然语言理解模块将用户输入解析成一个或更多个单词。
可选地,软件在被执行时还可操作来通过基于CNN模型分析一个或更多个单词嵌入来确定与用户输入相关联的一个或更多个意图。
根据本发明,另外还提供了一种系统,系统包括:一个或更多个处理器;以及耦合到处理器的非暂时性存储器,其包括可由处理器执行的指令,处理器在执行指令时可操作以:在客户端系统接收包括一个或更多个单词的用户输入,其中每个单词包括一个或更多个字符;将一个或更多个单词输入到存储在客户端系统上的卷积神经网络(CNN)模型;从客户端系统的数据储存器中分别访问多个字符的多个字符嵌入;基于所访问的字符嵌入,通过用CNN模型的一个或更多个卷积层和一个或更多个门控线性单元处理所访问的字符嵌入,来分别为一个或更多个单词生成一个或更多个单词嵌入;基于CNN模型对一个或更多个单词嵌入的分析,确定对应于用户输入的一个或更多个任务以供执行;并且基于一个或更多个任务的执行,在客户端系统处提供响应于用户输入的输出。
在特定实施例中,助理系统可以帮助用户获得信息或服务。助理系统可以使用户能够在有状态和多轮会话(stateful and multi-turn conversation)中利用多模态用户输入(例如声音、文本、图像、视频、运动)与它进行交互来获取帮助。作为示例而非限制,助理系统可以支持音频(口头)输入和非口头输入,例如视觉、位置、手势、运动或混合/多模态输入。助理系统可以创建和存储用户简档,该用户简档包括与用户相关联的个人信息和上下文信息(contextual information)。在特定实施例中,助理系统可以使用自然语言理解来分析用户输入。分析可以基于用户的用户简档,以获得更个性化和上下文感知的理解。助理系统可以基于分析来解析(resolve)与用户输入相关联的实体。在特定实施例中,助理系统可以与不同的代理交互,以获得与解析的实体相关联的信息或服务。助理系统可以通过使用自然语言生成为用户生成关于信息或服务的响应。通过与用户的交互,助理系统可以使用对话管理技术来管理和推进与用户的会话流。在特定实施例中,助理系统还可以通过汇总(summarize)信息来辅助用户有效且高效地消化所获得的信息。助理系统还可以通过提供帮助用户与在线社交网络交互(例如,创建帖子、评论、消息)的工具,来帮助用户更好地参与在线社交网络。助理系统另外可以帮助用户管理不同的任务,如持续跟踪事件。在特定实施例中,助理系统可以在没有用户输入的情况下,基于用户简档,在与用户相关的时间主动执行与用户兴趣和偏好相关的任务。在特定实施例中,助理系统可以检查隐私设置,以确保根据用户的隐私设置来允许访问用户的简档或其他用户信息以及执行不同的任务。
在特定实施例中,助理系统可以通过建立在客户端进程和服务器端进程上的混合架构来帮助用户。客户端进程和服务器端进程可以是用于处理用户输入和向用户提供帮助的两个并行工作流。在特定实施例中,客户端进程可以在与用户相关联的客户端系统上本地执行。相比之下,服务器端进程可以在一个或更多个计算系统上远程执行。在特定实施例中,客户端系统上的仲裁器可以协调接收用户输入(例如,音频信号),确定是使用客户端进程还是服务器端进程或两者来响应用户输入,以及分析来自每个进程的处理结果。仲裁器可以基于上述分析指示客户端或服务器端的代理执行与用户输入相关联的任务。执行结果可以进一步作为输出渲染给客户端系统。通过利用客户端和服务器端进程,助理系统可以有效地帮助用户优化计算资源的使用,同时保护用户隐私和增强安全性。
在特定实施例中,助理系统可以使用卷积神经网络(CNN)模型来实现与客户端进程相关联的自然语言理解模块。CNN模型可能紧凑,可以在客户端系统(例如智能手机或AR/VR头戴装置)上高效执行。在特定实施例中,CNN模型可以基于本文公开的架构。对于这种架构,输入可以是用户话语(utterance)的每个单词。然后,基于对应于单词包含的各个字符的字符嵌入,可以为每个单词生成单词嵌入。在特定实施例中,CNN模型可以基于这样的输入来计算与用户话语相关联的意图和槽的概率。在特定实施例中,与诸如基于长短期记忆(LSTM)的模型的传统方法相比,CNN模型可以以显著的效率和紧凑性(100倍)实现竞争性能。尽管本公开描述了由特定系统以特定方式的特定自然语言理解模型,但是本公开设想了任何合适系统以任何合适方式的任何合适的自然语言理解模型。
在特定实施例中,在客户端系统上本地执行的助理系统可以在客户端系统接收包括一个或更多个单词的用户输入。每个单词可以包括一个或更多个字符。助理系统然后可以将一个或更多个单词输入到存储在客户端系统上的卷积神经网络(CNN)模型。在特定实施例中,助理系统可以从客户端系统的数据储存器中分别访问多个字符的多个字符嵌入。然后,助理系统可以基于所访问的字符嵌入,通过用CNN模型的一个或更多个卷积层和一个或更多个门控线性单元处理所访问的字符嵌入,来分别为一个或更多个单词生成一个或更多个单词嵌入。在特定实施例中,助理系统可以基于CNN模型对一个或更多个单词嵌入的分析,确定对应于用户输入的一个或更多个任务以供执行。助理系统还可以在客户端系统处基于一个或更多个任务的执行提供响应用户输入的输出。
学习在客户端系统上执行的用于自然语言理解的CNN模型存在某些技术挑战。一个技术挑战可包括准确理解用户输入。由本文公开的实施例提出的解决上述挑战的解决方案可以是使用门控线性单元(GLU),因为GLU能够捕获用户输入中每个单词的重要性,以学习用户输入的上下文,用于准确理解。另一个技术挑战可包括在执行CNN模型时在客户端系统上节省存储空间。本文公开的实施例提出的解决这个挑战的解决方案可以包括存储对应于可形成不同单词的不同字符的字符嵌入,并且在执行CNN模型时访问它们,因为字符嵌入比所有可能单词的单词嵌入占用更少的存储空间。另一个技术挑战可包括使CNN模型紧凑和高效。本文公开的实施例提出的解决这个挑战的解决方案可以包括使用用于CNN模型的数字信号处理算法、量化、修剪算法和稀疏化算法,因为这些技术可以有效地降低CNN模型需要处理的比特率、CNN模型的层数和CNN模型的参数数量,从而实现更小的模型文件大小和延迟。
本文公开的某些实施例可以提供一个或更多个技术优势。实施例的技术优势可以包括在本地客户端系统上执行自然语言理解,其性能与远程服务器上的性能相当,同时额外节省文件大小和延迟,因为CNN模型使用了为客户端系统的有限计算能力和存储空间而定制的架构。实施例的另一个技术优势可以包括当在客户端系统上执行自然语言理解时对用户隐私的有效保护,这可以保证所有敏感的用户数据在客户端系统上被本地处理,而不被传输到远程服务器或第三方系统。本文公开的某些实施例可以不提供、提供一些或全部上述技术优点。鉴于本公开的附图、描述和权利要求,一个或更多个其他技术优势对于本领域技术人员来说可能是明显的。
本文公开的实施例仅仅是示例,并且本公开的范围不限于它们。特定实施例可以包括本文公开的实施例的部件、元件、特征、功能、操作或步骤中的全部、一些,或不包括这些部件、元件、特征、功能、操作或步骤。根据本发明的实施例在所附权利要求中具体公开,涉及方法、存储介质、系统和计算机程序产品,其中在一个权利要求类别(例如方法)中提到的任何特征,也可以在另一个权利要求类别(例如系统)中要求保护。在所附权利要求中的从属性或往回引用仅为了形式原因而被选择。然而,也可以要求保护由对任何先前权利要求的有意往回引用(特别是多个从属关系)而产生的任何主题,从而权利要求及其特征的任何组合被公开了并且可以被要求保护,而不管所附权利要求中选择的从属关系如何。可以被要求保护的主题不仅包括如在所附权利要求中阐述的特征的组合,而且还包括在权利要求中的特征的任何其他组合,其中,在权利要求中提到的每个特征可以与在权利要求中的任何其他特征或其他特征的组合相结合。此外,本文描述或描绘的实施例和特征中的任一个可以在单独的权利要求中和/或以与本文描述或描绘的任何实施例或特征的任何组合或以与所附权利要求的任何特征的任何组合被要求保护。
附图简述
图1示出了与助理系统相关联的示例网络环境。
图2示出了助理系统的示例架构。
图3示出了助理系统的服务器端进程的示例流程图。
图4示出了由助理系统处理用户输入的示例流程图。
图5示出了CNN模型的示例架构。
图6示出了使用设备上(on-device)CNN模型响应用户输入的示例方法。
图7示出了示例社交图。
图8示出了嵌入空间的示例视图。
图9示出了示例人工神经网络。
图10示出了示例计算机系统。
示例实施例的描述
系统概况
图1示出了与助理系统相关联的示例网络环境100。网络环境100包括通过网络110彼此连接的客户端系统130、助理系统140、社交网络系统160和第三方系统170。尽管图1示出了客户端系统130、助理系统140、社交网络系统160、第三方系统170和网络110的特定布置,但是本公开设想了客户端系统130、助理系统140、社交网络系统160、第三方系统170和网络110的任何合适的布置。作为示例而不是作为限制,客户端系统130、社交网络系统160、助理系统140和第三方系统170中的两个或更多个可以绕过网络110彼此直接连接。作为另一个示例,客户端系统130、助理系统140、社交网络系统160和第三方系统170中的两个或更多个可以全部或部分地在物理上或逻辑上彼此位于同一位置。此外,尽管图1示出了特定数量的客户端系统130、助理系统140、社交网络系统160、第三方系统170和网络110,但是本公开设想了任何合适数量的客户端系统130、助理系统140、社交网络系统160、第三方系统170和网络110。作为示例而不是作为限制,网络环境100可以包括多个客户端系统130、助理系统140、社交网络系统160、第三方系统170和网络110。
本公开设想了任何合适的网络110。作为示例而不是作为限制,网络110的一个或更多个部分可以包括自组织网络、内联网、外联网、虚拟专用网络(VPN)、局域网(LAN)、无线LAN(WLAN)、广域网(WAN)、无线WAN(WWAN)、城域网(MAN)、互联网的一部分、公共交换电话网(PSTN)的一部分、蜂窝电话网、或这些中的两个或更多个的组合。网络110可以包括一个或更多个网络110。
链路150可以将客户端系统130、助理系统140、社交网络系统160和第三方系统170连接到通信网络110或连接到彼此。本公开设想了任何合适的链路150。在特定实施例中,一个或更多个链路150包括一个或更多个有线(诸如例如数字用户线路(DSL)或基于电缆的数据服务接口规范(DOCSIS))链路、无线(诸如例如Wi-Fi或全球互通微波接入(WiMAX))链路、或光(诸如例如同步光网络(SONET)或同步数字体系(SDH))链路。在特定实施例中,一个或更多个链路150各自包括自组织网络、内联网、外联网、VPN、LAN、WLAN、WAN、WWAN、MAN、互联网的一部分、PSTN的一部分、基于蜂窝技术的网络、基于卫星通信技术的网络、另一链路150、或两个或更多个这种链路150的组合。链路150不需要在整个网络环境100中一定是相同的。一个或更多个第一链路150可以在一个或更多个方面上不同于一个或更多个第二链路150。
在特定实施例中,客户端系统130可以是一种电子设备,该电子设备包括硬件、软件或嵌入式逻辑部件、或两个或更多个这样的部件的组合,并且能够执行由客户端系统130实现或支持的适当功能。作为示例而不是作为限制,客户端系统130可以包括计算机系统,例如台式计算机、笔记本或膝上型计算机、上网本、平板计算机、电子书阅读器、GPS设备、摄像机、个人数字助理(PDA)、手持电子设备、蜂窝电话、智能手机、智能扬声器、虚拟现实(VR)头戴式装置、增强现实(AR)智能眼镜、其他合适的电子设备、或其任何合适的组合。在特定实施例中,客户端系统130可以是智能助理设备。关于智能助理设备的更多信息可以在2018年4月9日提交的美国专利申请第15/949011号、2018年10月5日提交的美国专利申请第16/153574号、2018年1月3日提交的美国外观设计专利申请第29/631910号、2018年1月2日提交的美国外观设计专利申请第29/631747号、2018年1月3日号提交的美国外观设计专利申请第29/631913号和2018年1月3日提交的美国外观设计专利申请第29/631914号中找到,这些专利申请中的每一个都通过引用并入。本公开设想了任何合适的客户端系统130。客户端系统130可以使在客户端系统130处的网络用户能够访问网络110。客户端系统130可以使它的用户能够与在其他客户端系统130处的其他用户进行通信。
在特定实施例中,客户端系统130可以包括web浏览器132,并且可以具有一个或更多个附加件、插件或其他扩展件。在客户端系统130处的用户可以输入统一资源定位符(URL)或将web浏览器132引导到特定的服务器(例如服务器162或与第三方系统170相关联的服务器)的其他地址,并且web浏览器132可以生成超文本传输协议(HTTP)请求并将HTTP请求传递到服务器。服务器可以接受HTTP请求,并响应于HTTP请求而向客户端系统130传递一个或更多个超文本标记语言(HTML)文件。客户端系统130可以基于来自服务器的HTML文件来显现web界面(例如网页)用于呈现给用户。本公开设想了任何合适的源文件。作为示例而不是作为限制,可以根据特定的需要根据HTML文件、可扩展超文本标记语言(XHTML)文件或可扩展标记语言(XML)文件来显现web界面。这样的界面还可以执行脚本、标记语言和脚本的组合等。在本文,在适当的情况下,对web界面的引用包括一个或更多个相应的源文件(浏览器可以使用这些源文件来显现web界面),反之亦然。
在特定实施例中,客户端系统130可以包括安装在客户端系统130上的社交网络应用134。客户端系统130处的用户可以使用社交网络应用134来访问在线社交网络。客户端系统130处的用户可以使用社交网络应用134来与用户的社交关连(connection)(例如,朋友、关注者(follower)、关注账户、联系人等)进行通信。客户端系统130处的用户还可以使用社交网络应用134来与在线社交网络上的多个内容对象(例如,帖子、新闻文章、临时内容等)交互。作为示例而不是作为限制,用户可以使用社交网络应用134浏览热门话题和突发新闻。
在特定实施例中,客户端系统130可以包括助理应用136。客户端系统130的用户可以使用助理应用136来与助理系统140交互。在特定实施例中,助理应用136可以包括独立的应用。在特定实施例中,助理应用136可以被集成到社交网络应用134或另一个合适的应用(例如,消息传递应用)中。在特定实施例中,助理应用136也可以集成到客户端系统130、助理硬件设备或任何其他合适的硬件设备中。在特定实施例中,可以经由web浏览器132访问助理应用136。在特定实施例中,用户可以经由不同的模态提供输入。作为示例而非限制,模态可以包括音频、文本、图像、视频、运动、定向等。助理应用136可以将用户输入传送给助理系统140。基于用户输入,助理系统140可以生成响应。助理系统140可以将生成的响应发送给助理应用136。然后,助理应用136可以向客户端系统130的用户呈现响应。所呈现的响应可以基于不同的模态,如音频、文本、图像和视频。作为示例而非限制,用户可以通过对着客户端系统130的麦克风说话来口头就交通信息询问助理应用136(即,经由音频模态)。然后,助理应用136可以将请求传送给助理系统140。助理系统140可以相应地生成响应并将其发送回助理应用136。助理应用136还可以在客户端系统130的显示器上以文本和/或图像向用户呈现响应。
在特定实施例中,助理系统140可以帮助用户从不同的源检索信息。助理系统140还可以帮助用户向不同的服务提供者请求服务。在特定实施例中,助理系统140可以经由客户端系统130中的助理应用136接收用户对信息或服务的请求。助理系统140可以使用自然语言理解来基于用户简档和其他相关信息分析用户请求。分析的结果可以包括与在线社交网络相关联的不同实体。然后,助理系统140可以检索信息或请求与这些实体相关联的服务。在特定实施例中,当为用户检索信息或请求服务时,助理系统140可以与社交网络系统160和/或第三方系统170交互。在特定实施例中,助理系统140可以使用自然语言生成技术为用户生成个性化的通信内容。个性化通信内容可以包括例如检索到的信息或所请求服务的状态。在特定实施例中,助理系统140可以使用户能够通过使用对话管理技术来在有状态和多轮会话中与它进行关于信息或服务的交互。在下面图2的讨论中更详细地描述了助理系统140的功能。
在特定实施例中,社交网络系统160可以是可以托管在线社交网络的网络可寻址计算系统。社交网络系统160可以生成、存储、接收并发送社交网络数据(诸如例如,用户简档数据、概念简档数据、社交图信息或与在线社交网络相关的其他合适的数据)。社交网络系统160可以由网络环境100的其他部件直接地或经由网络110来访问。作为示例而不是作为限制,客户端系统130可以使用web浏览器132或与社交网络系统160相关联的原生(native)应用(例如,移动社交网络应用、消息传递应用、另一合适的应用或其任何组合)直接地或经由网络110来访问社交网络系统160。在特定实施例中,社交网络系统160可以包括一个或更多个服务器162。每个服务器162可以是整体式服务器(unitary server)或跨越多台计算机或多个数据中心的分布式服务器。服务器162可以具有各种类型,例如且没有限制,web服务器、新闻服务器、邮件服务器、消息服务器、广告服务器、文件服务器、应用服务器、交换服务器、数据库服务器、代理服务器、适合于执行本文描述的功能或过程的另一服务器、或者其任何组合。在特定实施例中,每个服务器162可以包括硬件、软件或嵌入式逻辑部件、或用于执行由服务器162实现或支持的适当功能的两个或更多个这样的部件的组合。在特定实施例中,社交网络系统160可以包括一个或更多个数据储存器164。数据储存器164可以用于存储各种类型的信息。在特定实施例中,可以根据特定的数据结构来组织存储在数据储存器164中的信息。在特定实施例中,每个数据储存器164可以是关系数据库、纵列(columnar)数据库、相关性数据库或其他合适的数据库。尽管本公开描述或示出了特定类型的数据库,但是本公开设想了任何合适类型的数据库。特定实施例可以提供使客户端系统130、社交网络系统160、助理系统140或第三方系统170能够管理、检索、修改、添加或删除存储在数据储存器164中的信息的接口。
在特定实施例中,社交网络系统160可以在一个或更多个数据储存器164中存储一个或更多个社交图。在特定实施例中,社交图可以包括多个节点——其可以包括多个用户节点(各自对应于特定用户)或多个概念节点(各自对应于特定概念)——以及连接节点的多条边。社交网络系统160可以向在线社交网络的用户提供与其他用户通信和交互的能力。在特定实施例中,用户可以经由社交网络系统160加入在线社交网络,且然后添加与社交网络系统160中的他们想要关连到的多个其他用户的关连(例如,关系)。在本文,术语“朋友”可以指用户经由社交网络系统160与其形成关连、关联(association)或关系的社交网络系统160的任何其他用户。
在特定实施例中,社交网络系统160可以向用户提供对由社交网络系统160支持的各种类型的项目或对象采取动作的能力。作为示例而不是作为限制,项目和对象可以包括社交网络系统160的用户可以属于的群组或社交网络、用户可能感兴趣的事件或日历条目、用户可以使用的基于计算机的应用、允许用户经由服务来购买或销售商品的交易、用户可以执行的与广告的交互、或其他合适的项目或对象。用户可以与能够在社交网络系统160中或者由第三方系统170的外部系统表示的任何事物进行交互,第三方系统170与社交网络系统160分离并且经由网络110耦合到社交网络系统160。
在特定实施例中,社交网络系统160能够链接各种实体。作为示例而不是作为限制,社交网络系统160可以使用户能够彼此交互以及从第三方系统170或其他实体接收内容,或者允许用户通过应用编程接口(API)或其他通信渠道与这些实体交互。
在特定实施例中,第三方系统170可以包括一种或更多种类型的服务器、一个或更多个数据储存器、一个或更多个接口(包括但不限于API)、一个或更多个web服务、一个或更多个内容源、一个或更多个网络或任何其他合适的部件(例如,服务器可以与这些部件通信)。第三方系统170可以由与操作社交网络系统160的实体不同的实体进行操作。然而,在特定实施例中,社交网络系统160和第三方系统170可以结合彼此来操作以向社交网络系统160或第三方系统170的用户提供社交网络服务。在这个意义上,社交网络系统160可以提供平台或骨干网,其他系统(例如第三方系统170)可以使用该平台或骨干网来在整个互联网上向用户提供社交网络服务和功能。
在特定实施例中,第三方系统170可以包括第三方内容对象提供者。第三方内容对象提供者可以包括可以被传递到客户端系统130的内容对象的一个或更多个源。作为示例而不是作为限制,诸如,内容对象可以包括关于用户感兴趣的事情或活动的信息,例如电影放映时间、电影评论、餐馆评论、餐馆菜单、产品信息和评论或其他合适的信息。作为另一示例而不是作为限制,内容对象可以包括激励内容对象(例如优惠券、折扣券、礼品券或其他合适的激励对象)。在特定实施例中,第三方内容提供商可以使用一个或更多个第三方代理来提供内容对象和/或服务。第三方代理可以是在第三方系统170上托管和执行的实现。
在特定实施例中,社交网络系统160还包括用户生成的内容对象,其可以增强用户与社交网络系统160的交互。用户生成的内容可以包括用户可以添加、上传、发送或“发布”到社交网络系统160的任何内容。作为示例而不是作为限制,用户将帖子从客户端系统130传送到社交网络系统160。帖子可以包括数据,例如状态更新或其他文本数据、位置信息、照片、视频、链接、音乐或其他类似数据或媒体。内容还可以由第三方通过“通信渠道”(例如动态消息或流)来添加到社交网络系统160。
在特定实施例中,社交网络系统160可以包括各种服务器、子系统、程序、模块、日志和数据储存器。在特定实施例中,社交网络系统160可以包括下列项中的一个或更多个:web服务器、动作记录器、API请求服务器、相关性和排序引擎、内容对象分类器、通知控制器、动作日志、第三方内容对象暴露日志、推理模块、授权/隐私服务器、搜索模块、广告定位模块(advertisement-targeting module)、用户界面模块、用户简档储存器、关连储存器、第三方内容储存器或定位储存器。社交网络系统160还可以包括合适的部件,如网络接口、安全机构、负载平衡器、故障转移服务器、管理和网络操作控制台、其他合适的部件、或其任何合适的组合。在特定实施例中,社交网络系统160可以包括用于存储用户简档的一个或更多个用户简档储存器。用户简档可以包括例如,传记信息、人口统计信息、行为信息、社交信息或其他类型的描述性信息(例如工作经历、教育历史、爱好或偏好、兴趣、亲和力或定位)。兴趣信息可以包括与一个或更多个类别相关的兴趣。类别可以是一般的或特定的。作为示例而不是作为限制,如果用户“赞(like)”关于一种品牌的鞋的文章,该类别可以是品牌,或者“鞋”或“衣服”的一般类别。关连储存器可以用于存储关于用户的关连信息。关连信息可以指示具有相似或共同的工作经历、组成员资格、爱好、教育历史或者以任何方式相关或共享共同属性的用户。关连信息还可以包括在不同用户和内容(内部和外部)之间的用户定义的关连。web服务器可以用于经由网络110将社交网络系统160链接到一个或更多个客户端系统130或一个或更多个第三方系统170。web服务器可以包括邮件服务器或用于在社交网络系统160和一个或更多个客户端系统130之间接收并路由(routing)消息的其他消息传递功能。API请求服务器可以允许例如助理系统140或第三方系统170通过调用一个或更多个API来访问来自社交网络系统160的信息。动作记录器可以用于从web服务器接收关于用户在社交网络系统160上或之外的动作的通信。结合动作日志,可以维护用户暴露于第三方内容对象的第三方内容对象日志。通知控制器可以向客户端系统130提供关于内容对象的信息。信息可以作为通知被推送到客户端系统130,或者信息可以响应于从客户端系统130接收的请求而从客户端系统130中被拉取。授权服务器可以用于实施社交网络系统160的用户的一个或更多个隐私设置。用户的隐私设置确定与用户相关联的特定信息可以如何被分享。授权服务器可以诸如例如通过设置适当的隐私设置来允许用户选择加入或选择退出使他们的动作由社交网络系统160记录或者与其他系统(例如,第三方系统170)共享。第三方内容对象储存器可以用于存储从第三方(例如第三方系统170)接收的内容对象。定位储存器可以用于存储从与用户相关联的客户端系统130接收的定位信息。广告定价模块可以组合社交信息、当前时间、定位信息或其他合适的信息以用通知的形式向用户提供相关广告。
助理系统
图2示出了助理系统140的示例架构。在特定实施例中,助理系统140可以帮助用户获得信息或服务。助理系统140可以使用户能够在有状态和多轮会话中用多模态用户输入(如声音、文本、图像、视频、运动)与其进行交互,以获得帮助。作为示例而非限制,助理系统140可以支持音频输入(口头)和非口头输入,例如视觉、位置、手势、运动或混合/多模态输入。助理系统140可以创建和存储包括与用户相关联的个人信息和上下文信息的用户简档。在特定实施例中,助理系统140可以使用自然语言理解来分析用户输入。分析可以基于用户的用户简档,以获得更个性化和上下文感知的理解。助理系统140可以基于分析来解析与用户输入相关联的实体。在特定实施例中,助理系统140可以与不同的代理交互,以获得与解析的实体相关联的信息或服务。助理系统140可以通过使用自然语言生成来为用户生成关于信息或服务的响应。通过与用户的交互,助理系统140可以使用对话管理技术来管理和转发与用户的会话流。在特定实施例中,助理系统140还可以通过汇总信息来帮助用户有效和高效地消化所获得的信息。助理系统140还可以通过提供帮助用户与在线社交网络交互(例如,创建帖子、评论、消息)的工具,来帮助用户更多地参与在线社交网络。助理系统140另外可以帮助用户管理不同的任务,如持续跟踪事件。在特定实施例中,助理系统140可以在与用户相关的时间,在没有用户输入的情况下,基于用户简档主动执行与用户兴趣和偏好相关的预授权任务。在特定实施例中,助理系统140可以检查隐私设置,以确保根据用户的隐私设置,访问用户的简档或其他用户信息以及执行不同的任务是允许的。在2018年11月6日提交的美国专利申请第16/182542号中可以找到更多关于帮助受隐私设置约束的用户的信息,其通过引用被并入本文。
在特定实施例中,助理系统140可以通过建立在客户端进程和服务器端进程上的混合架构来帮助用户。客户端进程和服务器端进程可以是用于处理用户输入和向用户提供帮助的两个并行工作流。在特定实施例中,客户端进程可以在与用户相关联的客户端系统130上本地执行。相比之下,服务器端进程可以在一个或更多个计算系统上远程执行。在特定实施例中,客户端系统130上的助理编排器(assistant orchestrator)可以协调接收用户输入(例如,音频信号)并确定是使用客户端进程还是服务器端进程或两者来响应用户输入。对话仲裁器可以分析来自每个进程的处理结果。对话仲裁器可以基于上述分析指示客户端或服务器端的代理执行与用户输入相关联的任务。执行结果可以进一步作为输出向客户端系统130渲染。通过利用客户端和服务器端进程,助理系统140可以有效地帮助用户优化计算资源的使用,同时保护用户隐私并增强安全性。
在特定实施例中,助理系统140可以从与用户相关联的客户端系统130接收用户输入。在特定实施例中,用户输入可以是用户生成的输入,其在单轮中被发送到助理系统140。用户输入可以是口头的、非口头的或其组合。作为示例而非限制,非口头用户输入可以基于用户的声音、视觉、位置、活动、手势、动作或其组合。如果用户输入基于用户的声音(例如,用户可以对客户端系统130说话),则这种用户输入可以首先由系统音频API 202(应用编程接口)处理。系统音频API 202可以进行回声消除、噪声去除、波束形成和自用户声音激活、说话者识别、声音活动检测(VAD)以及任何其他声学技术,以生成可由助理系统140容易地处理的音频数据。在特定实施例中,系统音频API 202可以根据用户输入执行唤醒词检测204。作为示例而非限制,唤醒词可以是“嘿,助理”。如果检测到这样的唤醒词,则可以相应地激活助理系统140。在替代实施例中,用户可以通过视觉信号激活助理系统140,而无需唤醒词。视觉信号可以在能够检测各种视觉信号的低功率传感器(例如,摄像机)处接收。作为示例而非限制,视觉信号可以是由客户端系统130检测到的条形码、QR代码或通用产品代码(UPC)。作为另一个示例而非限制,视觉信号可以是用户对对象的凝视。作为又一个示例,并且不作为限制,视觉信号可以是用户手势,例如,用户指向对象。
在特定实施例中,来自系统音频API 202的音频数据可以被发送到助理编排器206。助理编排器206可以在客户端系统130上执行。在特定实施例中,助理编排器206可以确定通过使用客户端进程还是使用服务器端进程来响应用户输入。如图2所示,客户端进程在虚线207下方示出,而服务器端进程在虚线207上方示出。助理编排器206还可以确定通过同时使用客户端进程和服务器端进程来响应用户输入。尽管图2将助理编排器206示出为客户端进程,但是助理编排器206可以是服务器端进程,或者可以是在客户端和服务器端进程之间分离的混合进程。
在特定实施例中,在从系统音频API 202生成音频数据之后,服务器端进程可以如下。助理编排器206可以将音频数据发送到远程计算系统,该远程计算系统托管助理系统140的不同模块以响应用户输入。在特定实施例中,音频数据可以在远程自动语音识别(ASR)模块208处接收。ASR模块208可以允许用户口述并使语音转录为书面文本,使文档合成为音频流,或者发出被系统识别为这样的命令。ASR模块208可以使用统计模型来确定对应于由助理系统140作为音频输入接收的给定语音部分的最可能的单词序列。模型可以包括隐马尔可夫模型、神经网络、深度学习模型或其任意组合中的一个或更多个。接收的音频输入可以以特定的采样率(例如,16、44.1或96kHz)被编码成数字数据,并且具有代表每个样本的特定数量的比特(例如,24比特中的8、16比特)。
在特定实施例中,ASR模块208可以包括不同的部件。ASR模块208可以包括字形到音素(G2P,grapheme-to-phoneme)模型、发音学习模型、个性化声学模型、个性化语言模型(PLM)或端点模型中的一个或更多个。在特定实施例中,G2P模型可用于确定用户的字形到音素的风格,例如,当特定用户说特定单词时它听起来像什么。个性化声学模型可以是音频信号和语言中语音单元的声音之间关系的模型。因此,这种个性化声学模型可以识别用户的声音听起来如何。个性化声学模型可以使用训练数据生成,例如作为音频输入接收的训练语音和对应于该语音的相应语音单元。可以使用特定用户的声音来训练或细化个性化声学模型,以识别该用户的语音。在特定实施例中,个性化语言模型然后可以确定对应于特定音频输入的所识别的语音单元的最可能的短语。个性化语言模型可以是语言中可能出现各种单词序列的概率模型。可以使用个性化语言模型将音频输入中的语音单元的声音与单词序列进行匹配,并且可以将更大的权重分配给更可能是该语言中的短语的单词序列。然后可以选择具有最高权重的单词序列作为对应于音频输入的文本。在特定实施例中,个性化语言模型还可以用于预测给定上下文,用户最有可能说什么单词。在特定实施例中,端点模型可以检测何时到达话语的终点。
在特定实施例中,ASR模块208的输出可以被发送到远程自然语言理解(NLU)模块210。NLU模块210可以执行命名实体解析(NER)。当分析用户输入时,NLU模块210可以另外考虑上下文信息。在特定实施例中,意图和/或槽可以是NLU模块210的输出。意图可以是语义意图的预定义分类中的元素,其可以指示用户与助理系统140交互的目的。NLU模块210可以将用户输入分类为预定义分类的成员,例如,对于输入“播放贝多芬的第五交响乐”,NLU模块210可以将输入分类为具有意图[IN:播放_音乐]。在特定实施例中,域可以表示交互的社交上下文,例如教育,或者一组意图的命名空间,例如音乐。槽可以是对应于用户输入中的字符串的命名子串,表示基本语义实体。例如,“比萨”的槽可以是[SL:菜肴]。在特定实施例中,有效或预期命名槽的集合可以基于分类的意图。作为示例而非限制,对于意图[IN:播放_音乐],有效的槽可以是[SL:歌曲_名称]。在特定实施例中,NLU模块210可以另外从社交图、知识图或概念图中的一个或更多个提取信息,并且从一个或更多个远程数据储存器212检索用户简档。NLU模块210还可以通过确定聚合什么信息、注释用户输入的n-gram(n元文法)、基于聚合的信息用置信度分数对n-gram进行排序、将排序后的n-gram公式化为可以被NLU模块210用于理解用户输入的特征,来处理来自这些不同源的信息。
在特定实施例中,NLU模块210可以以个性化和上下文感知的方式从用户输入中识别域、意图或槽中的一个或更多个。作为示例而不是作为限制,用户输入可以包括“告诉我如何去咖啡店(show me how to get to the coffee shop)”。NLU模块210可以基于用户的个人信息和相关联的上下文信息来识别用户想要去的特定咖啡店。在特定实施例中,NLU模块210可以包括特定语言词典(lexicon of language)、语法分析器(parser)和语法规则(grammer rule),以将句子划分成内部表示。NLU模块210还可以包括一个或更多个程序,该程序使用语用学(pragmatics)来执行朴素(naive)语义或随机语义分析,以理解用户输入。在特定实施例中,语法分析器可以基于包括多个长短期记忆(LSTM)网络的深度学习架构。作为示例而不是作为限制,语法分析器可以基于循环神经网络文法(RNNG)模型,这是一种类型的循环和递归LSTM算法。关于自然语言理解的更多信息可以在2018年6月18日提交的美国专利申请第16/011062号、2018年7月2日提交的美国专利申请第16/025317号、和2018年7月17日提交的美国专利申请第16/038120号中找到,这些专利申请中的每一个通过引用被并入本文。
在特定实施例中,NLU模块210的输出可以被发送到远程推理模块214。推理模块214可以包括对话管理器和实体解析部件。在特定实施例中,对话管理器可以具有复杂的对话逻辑和产品相关的业务逻辑。对话管理器可以管理用户和助理系统140之间的对话状态和会话流。对话管理器可以另外存储用户和助理系统140之间的先前会话。在特定实施例中,对话管理器可以与实体解析部件通信以解析与一个或更多个槽相关联的实体,这支持对话管理器推进用户和助理系统140之间的会话流。在特定实施例中,当解析实体时,实体解析部件可以访问社交图、知识图或概念图中的一个或更多个。实体可以包括例如独特的用户或概念,每个用户或概念可以具有唯一的标识符(ID)。作为示例而不是作为限制,知识图可以包括多个实体。每个实体可以包括与一个或更多个属性值相关联的单个记录。特定记录可以与唯一的实体标识符相关联。对于实体的一个属性,每个记录可以有不同的值。每个属性值可以与置信度概率相关联。属性值的置信度概率表示该值对于给定属性是准确的概率。每个属性值也可以与语义权重相关联。属性值的语义权重可以表示考虑到所有可用信息,该值在语义上适合给定属性的程度。例如,知识图可以包括书“Alice’s Adventures”的实体,其包括已经从多个内容源(例如,在线社交网络、在线百科全书、书评源、媒体数据库和娱乐内容源)提取的信息,然后被去重复、解析和融合以生成知识图的单个唯一记录。该实体可以与“幻想”属性值相关联,该属性值指示书“Alice’s Adventures”的类型。关于知识图的更多信息可以在2018年7月27日提交的美国专利申请第16/048049号和2018年7月27日提交的美国专利申请第16/048101号中找到,这些专利申请中的每一个通过引用被并入本文。
在特定实施例中,实体解析部件可以检查隐私约束,以保证实体的解析不违反隐私策略。作为示例而非限制,要解析的实体可以是在他/她的隐私设置中指定他/她的身份不应该在在线社交网络上可搜索的另一个用户,因此实体解析部件可能不会响应于请求而返回该用户的标识符。基于从社交图、知识图、概念图和用户简档获得的信息,并且服从适用的隐私策略,实体解析部件因此可以以个性化的、上下文感知的和隐私感知的方式解析与用户输入相关联的实体。在特定实施例中,每个解析的实体可以与由社交网络系统160托管的一个或更多个标识符相关联。作为示例而非限制,标识符可以包括对应于特定用户的唯一用户标识符(ID)(例如,唯一用户名或用户ID号码)。在特定实施例中,每个解析的实体也可以与置信度分数相关联。关于解析实体的更多信息可以在2018年7月27日提交的美国专利申请第16/048049号和2018年7月27日提交的美国专利申请第16/048072号中找到,这些专利申请中的每一个均通过引用结合于此。
在特定实施例中,对话管理器可以进行对话优化和助理状态跟踪。对话优化是使用数据来理解对话中最可能的分支应该是什么的问题。作为示例而非限制,利用对话优化,助理系统140可能不需要确认用户想要呼叫谁,因为助理系统140具有基于对话优化推断的人很可能是用户想要呼叫的人的高置信度。在特定实施例中,对话管理器可以使用强化学习来进行对话优化。助理状态跟踪旨在跟踪随着用户与世界交互以及助理系统140与用户交互而随时间变化的状态。作为示例而非限制,根据适用的隐私策略,助理状态跟踪可以跟踪用户正在谈论什么、用户与谁在一起、用户在哪里、当前正在进行什么任务以及用户的凝视在哪里等。在特定实施例中,对话管理器可以使用一组操作符来跟踪对话状态。操作符可以包括必要的数据和逻辑来更新对话状态。在处理传入的请求后,每个操作符都可以充当对话状态的增量(delta)。在特定实施例中,对话管理器可以进一步包括对话状态跟踪器和动作选择器。在替代实施例中,对话状态跟踪器可以替换实体解析部件,并解析指代/提及,并跟踪状态。
在特定实施例中,推理模块214可以进一步进行错误触发缓解。错误触发缓解的目标是检测助理请求的错误触发(例如,唤醒词),并避免当用户实际上不打算调用助理系统140时产生错误记录。作为示例而非限制,推理模块214可以基于无意义检测器(nonsensedetector)来实现错误触发缓解。如果无意义检测器确定唤醒词在与用户交互的这一点上没有意义,则推理模块214可以确定推断用户打算调用助理系统140可能是不正确的。在特定实施例中,推理模块214的输出可以被发送到远程对话仲裁器216。
在特定实施例中,ASR模块208、NLU模块210和推理模块214中的每一个都可以访问远程数据储存器212,该远程数据储存器212包括用户情节记忆,以确定如何更有效地帮助用户。关于情节记忆的更多信息可以在2019年8月27日提交的美国专利申请第16/552559号中找到,该申请通过引用结合于此。数据储存器212可以另外存储用户的用户简档。用户的用户简档可以包括用户简档数据,该用户简档数据包括与用户相关联的人口统计信息、社交信息和上下文信息。用户简档数据还可以包括用户对通过动态消息、搜索日志、消息平台等上的会话来聚集的多个主题的兴趣和偏好。用户简档的使用可能会受到隐私限制,以确保用户的信息只能用于他/她的利益,而不能与任何其他人共享。关于用户简档的更多信息可以在2018年4月30日提交的美国专利申请第15/967239号中找到,该申请通过引用结合于此。
在特定实施例中,与前述涉及ASR模块208、NLU模块210和推理模块214的服务器端进程并行,客户端进程可以如下。在特定实施例中,助理编排器206的输出可以被发送到客户端系统130上的本地ASR模块216。ASR模块216可以包括个性化语言模型(PLM)、G2P模型和端点模型。由于客户端系统130的有限计算能力,助理系统140可以在客户端进程期间在运行时优化个性化语言模型。作为示例而非限制,助理系统140可以为用户可能谈论的多个可能主题预先计算多个个性化语言模型。当用户请求帮助时,助理系统140然后可以快速交换这些预先计算的语言模型,使得个性化语言模型可以由助理系统140在运行时基于用户活动进行本地优化。结果,助理系统140可以具有在有效地确定用户可能在谈论什么的同时节省计算资源的技术优势。在特定实施例中,助理系统140还可以在运行时快速重新学习用户发音。
在特定实施例中,ASR模块216的输出可以被发送到本地NLU模块218。在特定实施例中,与服务器端支持的远程NLU模块210相比,本文的NLU模块218可以更紧凑。当ASR模块216和NLU模块218处理用户输入时,它们可以访问本地助理存储器220。出于保护用户隐私的目的,本地助理存储器220可以不同于存储在数据储存器212上的用户记忆。在特定实施例中,本地助理存储器220可以经由网络110与存储在数据储存器212上的用户记忆同步。作为示例而非限制,本地助理存储器220可以将用户客户端系统130上的日历与和用户相关联的服务器端日历同步。在特定实施例中,本地助理存储器220中的任何安全数据仅可由在客户端系统130上本地执行的助理系统140的模块访问。
在特定实施例中,NLU模块218的输出可以被发送到本地推理模块222。推理模块222可以包括对话管理器和实体解析部件。由于有限的计算能力,推理模块222可以进行基于特别为客户端系统130定制的学习算法的设备上学习。作为示例而非限制,推理模块222可以使用联邦学习。联邦学习是分布式机器学习方法的一个特定类别,它使用驻留在移动电话等终端设备上的分散数据来训练机器学习模型。在特定实施例中,推理模块222可以使用特定的联邦学习模型,即联邦用户表示学习,来将现有的神经网络个性化技术扩展到联邦学习。联邦用户表示学习可以通过学习特定于任务的用户表示(即嵌入)或通过个性化模型权重来个性化联邦学习中的模型。联邦用户表示学习简单、可扩展、隐私保护和资源高效。联邦用户表示学习可以将模型参数分为联邦参数和私有参数。私有参数,例如私有用户嵌入,可以在客户端系统130上本地训练,而不是传送到远程服务器或在远程服务器上平均。相比之下,联邦参数可以在服务器上远程训练。在特定实施例中,推理模块222可以使用另一个特定的联邦学习模型,即主动联邦学习,以将在远程服务器上训练的全局模型传输到客户端系统130,并在这些客户端系统130上本地计算梯度。主动联邦学习可以使推理模块最小化与下载模型和上传梯度相关的传输成本。对于主动联邦学习,在每一轮中,客户端系统不是均匀地随机选择的,而是以当前模型和客户端系统上的数据为条件的概率选择的,以最大化效率。在特定实施例中,推理模块222可以使用另一个特定的联邦学习模型,即联邦Adam。传统的联邦学习模型可以使用随机梯度下降(SGD)优化器。相比之下,联邦Adam模型可能使用基于矩的优化器。联邦Adam模型可以使用平均模型来计算近似梯度,而不是像传统工作那样直接使用平均模型。这些梯度然后可以被馈送到联邦Adam模型中,该模型可以去除随机梯度的噪声并使用每个参数的自适应学习速率。联邦学习产生的梯度可能比随机梯度下降噪声更多(因为数据可能不是独立且同分布的),因此联邦Adam模型可能有助于更好地处理噪声。联邦Adam模型可以使用梯度来采取更聪明的步骤来最小化目标函数。实验表明,在基准上的传统联邦学习在ROC(接收机工作特性)曲线上有1.6%的下降,而联邦Adam模型只有0.4%的下降。此外,联邦Adam模型没有增加通信或设备上的计算。在特定实施例中,推理模块222还可以执行错误触发缓解。当用户的语音输入包括受隐私约束的数据时,这种错误触发缓解可以帮助检测客户端系统130上的错误激活请求,例如唤醒词。作为示例而非限制,当用户处于语音呼叫中时,用户的会话是私密的,并且基于这种会话的错误触发检测只能在用户的客户端系统130上本地发生。
在特定实施例中,助理系统140可以包括本地上下文引擎224。上下文引擎224可以处理所有其他可用信号,以向推理模块222提供更多信息提示。作为示例而非限制,上下文引擎224可以具有与人相关的信息、来自客户端系统130传感器(例如,麦克风、摄像机)的感测数据(其通过计算机视觉技术进一步分析)、几何构造、活动数据、惯性数据(例如,由VR头戴装置收集的)、位置等。在特定实施例中,计算机视觉技术可以包括人体骨骼重建、面部检测、面部识别、手跟踪、眼睛跟踪等。在特定实施例中,几何构造可以包括使用由客户端系统130收集的数据来构造用户周围的对象。作为示例而非限制,用户可能戴着AR眼镜,并且几何构造可以旨在确定地板在哪里、墙壁在哪里、用户的手在哪里等。在特定实施例中,惯性数据可以是与线性和角运动相关联的数据。作为示例而非限制,可以通过测量用户身体部位如何移动的AR眼镜来捕获惯性数据。
在特定实施例中,本地推理模块222的输出可以被发送到对话仲裁器216。对话仲裁器216可以在三种场景下不同地运行。在第一种场景下,助理编排器206确定使用服务器端进程,为此,对话仲裁器216可以将推理模块214的输出传输到远程动作执行模块226。在第二种场景下,助理编排器206确定使用服务器端进程和客户端进程,为此,对话仲裁器216可以聚集来自两个进程的两个推理模块(即,远程推理模块214和本地推理模块222)的输出并分析它们。作为示例而非限制,对话仲裁器216可以执行排序并选择最佳推理结果来响应用户输入。在特定实施例中,对话仲裁器216还可以基于分析来确定是使用服务器端还是客户端上的代理来执行相关任务。在第三种场景下,助理编排器206确定使用客户端进程,并且对话仲裁器216需要评估本地推理模块222的输出,以确定客户端进程是否能够完成处理用户输入的任务。
在特定实施例中,对于上述第一和第二场景,对话仲裁器216可以确定服务器端的代理对于响应用户输入执行任务是必要的。因此,对话仲裁器216可以向动作执行模块226发送关于用户输入的必要信息。动作执行模块226可以调用一个或更多个代理来执行任务。在替代实施例中,对话管理器的动作选择器可以确定要执行的动作,并相应地指示动作执行模块226。在特定实施例中,代理可以是充当一个域的多个内容提供者之间的中介者(broker)的一种实现。内容提供者可以是负责执行与意图相关联的动作或完成与意图相关联的任务的实体。在特定实施例中,代理可以包括第一方代理和第三方代理。在特定实施例中,第一方代理可以包括可由助理系统140访问和控制的内部代理(例如,与在线社交网络提供的服务相关联的代理,诸如消息传递服务或照片共享服务)。在特定实施例中,第三方代理可以包括助理系统140无法控制的外部代理(例如,第三方在线音乐应用代理、门票销售代理)。第一方代理可以与第一方提供者关联,该第一方提供者提供由社交网络系统160托管的内容对象和/或服务。第三方代理可以与第三方提供者相关联,该第三方提供者提供由第三方系统170托管的内容对象和/或服务。在特定实施例中,第一方代理或第三方代理中的每一个可以被指定用于特定域。作为示例而非限制,该域可以包括天气、交通、音乐等。在特定实施例中,助理系统140可以协同使用多个代理来响应用户输入。作为示例而不是作为限制,用户输入可以包括“指引我到我的下一个会议(direct me to my nextmeeting)”。助理系统140可以使用日历代理来检索下一个会议的位置。助理系统140然后可以使用导航代理来指引用户到下一个会议。
在特定实施例中,对于上述第二和第三场景,对话仲裁器216可以确定客户端上的代理能够响应于用户输入执行任务,但是需要附加信息(例如,响应模板),或者任务只能由服务器端上的代理来处理。如果对话仲裁器216确定任务只能由服务器端的代理处理,则对话仲裁器216可以向动作执行模块226发送关于用户输入的必要信息。如果对话仲裁器216确定客户端上的代理能够执行任务,但是需要响应模板,则对话仲裁器216可以向远程响应模板生成模块228发送关于用户输入的必要信息。响应模板生成模块228的输出还可以被发送到在客户端系统130上执行的本地动作执行模块230。
在特定实施例中,动作执行模块230可以调用本地代理来执行任务。与服务器端的代理相比,客户端系统130上的本地代理能够执行更简单的任务。作为示例而不是作为限制,多个特定于设备的实现(例如,对客户端系统130的或客户端系统130上的消息传递应用的实时调用)可以由单个代理在内部处理。可替代地,这些特定于设备的实现可以由与多个域相关联的多个代理来处理。在特定实施例中,动作执行模块230可以另外执行一组通用可执行对话动作。这组可执行对话动作可以与代理、用户和助理系统140本身交互。这些对话动作可以包括用于槽请求、确认、歧义消除、代理执行等的对话动作。对话动作可以独立于动作选择器或对话策略的底层实现。基于树的策略和基于模型的策略都可以生成相同的基本对话动作,回调函数隐藏了任何特定于动作选择器的实现细节。
在特定实施例中,来自服务器端的远程动作执行模块226的输出可以被发送到远程响应执行模块232。在特定实施例中,动作执行模块226可以向对话仲裁器216发回更多信息。响应执行模块232可以基于远程会话理解(CU)编写器。在特定实施例中,来自动作执行模块226的输出可以被公式化为<k,c,u,d>元组,其中k指示知识源、c指示通信目标、u指示用户模型以及d指示话语模型。在特定实施例中,CU编写器可以包括自然语言生成器(NLG)和用户界面(UI)有效载荷生成器。自然语言生成器可以使用不同的语言模型和/或语言模板基于动作执行模块226的输出来生成通信内容。在特定实施例中,通信内容的生成可以是特定于应用的,并且对于每个用户也是个性化的。CU编写器还可以使用UI有效载荷生成器来确定所生成的通信内容的模态。在特定实施例中,NLG可以包括内容确定部件、句子规划器和表层实现(surface realization)部件。内容确定部件可以基于知识源、通信目标和用户的期望来确定通信内容。作为示例而不是作为限制,确定可以基于描述逻辑。描述逻辑可以包括例如三个基本观念(notion),它们是个体(表示域中的对象)、概念(描述个体集合)和角色(表示个体或概念之间的二元关系)。描述逻辑可以由一组构造器来表征,该构造器允许自然语言生成器从原子(atomic)概念/角色构建复杂概念/角色。在特定实施例中,内容确定部件可以执行以下任务来确定通信内容。第一任务可以包括翻译任务,其中对自然语言生成器的输入可以被翻译成概念。第二任务可以包括选择任务,其中可以基于用户模型从翻译任务产生的概念中选择相关概念。第三任务可以包括验证任务,其中可以验证所选概念的一致性。第四任务可以包括实例化任务,其中被验证的概念可以被实例化为可由自然语言生成器处理的可执行文件。句子规划器可以确定通信内容的组织,使其为人所理解。表层实现部件可以确定要使用的特定单词、句子的顺序以及通信内容的风格。UI有效载荷生成器可以确定要呈现给用户的通信内容的优选模态。在特定实施例中,CU编写器可以检查与用户相关联的隐私约束,以确保通信内容的生成遵循隐私策略。关于自然语言生成的更多信息可以在2018年4月30日提交的美国专利申请第15/967279号和2018年4月30日提交的美国专利申请第15/966455号中找到,这些专利申请中的每一个通过引用结合于此。
在特定实施例中,来自客户端系统130上的本地动作执行模块230的输出可以被发送到本地响应执行模块234。响应执行模块234可以基于本地会话理解(CU)编写器。CU编写器可以包括自然语言生成(NLG)模块。由于客户端系统130的计算能力可能有限,出于计算效率的考虑,NLG模块可以是简单的。因为NLG模块可以是简单的,所以响应执行模块234的输出可以被发送到本地响应扩展模块236。响应扩展模块236可以进一步扩展响应执行模块234的结果,以使响应更加自然并包含更丰富的语义信息。
在特定实施例中,如果用户输入基于音频信号,则服务器端的响应执行模块232的输出可以被发送到远程文本到语音(TTS)模块238。类似地,客户端上的响应扩展模块236的输出可以被发送到本地TTS模块240。两个TTS模块都可以将响应转换为音频信号。在特定实施例中,来自响应执行模块232、响应扩展模块236或两端的TTS模块的输出可以最终被发送到本地渲染输出模块242。渲染输出模块242可以生成适合于客户端系统130的响应。作为示例而非限制,响应执行模块232或响应扩展模块236的输出可以包括自然语言串、语音、带有参数的动作或可以在VR头戴装置或AR智能眼镜中显示的渲染图像或视频中的一个或更多个。结果,渲染输出模块242可以基于CU编写器的输出来确定要执行什么任务,以适当地渲染响应,用于在VR头戴装置或AR智能眼镜上显示。例如,响应可以是基于视觉的模态(例如,图像或视频剪辑),其可以通过VR头戴装置或AR智能眼镜显示。作为另一个例子,响应可以是用户可以通过VR头戴装置或AR智能眼镜播放的音频信号。作为又一示例,响应可以是增强现实数据,其可以由VR头戴装置或AR智能眼镜渲染以增强用户体验。
在特定实施例中,助理系统140可以具有各种能力,包括音频认知、视觉认知、信号智能、推理和记忆。在特定实施例中,音频识别的能力可以使助理系统140能够理解与不同语言的各种域相关联的用户输入,理解会话并能够对其进行汇总,对复杂的命令执行设备上的音频认知,通过声音识别用户,从会话中提取主题并自动标记会话的部分,实现没有唤醒词的音频交互,从环境噪声和会话中过滤并放大用户声音,理解用户正在与哪个客户端系统130(如果多个客户端系统130在附近)通话。
在特定实施例中,视觉认知的能力可以使助理系统140能够执行面部检测和跟踪,识别用户,以不同的角度识别主要大都市地区的大多数感兴趣的人,通过现有的机器学习模型和一次性学习的组合识别世界上大多数感兴趣的对象,识别感兴趣的时刻并自动捕获它,实现对跨不同的时间段的多个视觉帧的语义理解,为人、地点、对象识别的附加能力提供平台支持,识别全套设置和包括个性化位置的微位置、识别复杂活动、识别复杂手势以控制客户端系统130、处理来自以自我为中心的摄像机的图像/视频(例如,具有运动、捕获角度、分辨率等)、实现关于具有较低分辨率的图像的相似级别的准确度和速度,进行人、地点和对象的一次性配准和识别,并在客户端系统130上执行视觉识别。
在特定实施例中,助理系统140可以利用计算机视觉技术来实现视觉认知。除了计算机视觉技术之外,助理系统140可以探索能够补充这些技术的选项,以扩大对象的识别。在特定实施例中,助理系统140可以使用补充信号,例如对象标签的光学字符识别(OCR)、用于地点识别的GPS信号、来自用户客户端系统130的信号来识别用户。在特定实施例中,助理系统140可以执行一般场景识别(家庭、工作、公共空间等)来为用户设置上下文并缩小计算机视觉搜索空间以识别最可能的对象或人。在特定实施例中,助理系统140可以指导用户训练助理系统140。例如,众包可用于让用户标记并帮助助理系统140随时间识别更多的对象。作为另一个例子,当使用助理系统140时,用户可以注册他们的个人对象作为初始设置的一部分。助理系统140还可以允许用户为他们交互的对象提供正/负信号,以便训练和改进用于他们的个性化模型。
在特定实施例中,信号智能的能力可以使助理系统140能够确定用户位置、理解日期/时间、确定家庭位置、理解用户的日历和未来期望的位置、集成更丰富的声音理解以仅通过声音来识别设置/上下文、在运行时建立信号智能模型,该模型可以针对用户的个人例程进行个性化。
在特定实施例中,推理能力可以使助理系统140能够具有以下能力:在未来的任何时间点拾取任何先前的会话线程,合成所有信号以理解微观和个性化的上下文,从用户的历史行为中学习交互模式和偏好并准确地建议他们可能重视的交互,基于微观上下文理解生成高度预测性的主动建议,理解用户可能希望在一天的什么时间看到什么内容,理解场景中的变化以及这可能如何影响用户期望的内容。
在特定实施例中,记忆的能力可以使助理系统140能够记住用户先前调用或交互了哪些社交关连,随意写入存储器和查询存储器(即,公开听写和自动标签),基于先前的交互和长期学习提取更丰富的偏好,记住用户的生活史,从以自我为中心的数据流和自动目录中提取丰富的信息,并以结构化形式写入存储器以形成丰富的短期、情节和长期记忆。
图3示出了助理系统140的服务器端进程的示例流程图。在特定实施例中,服务器助理服务模块301可以在接收到用户请求时访问请求管理器302。在替代实施例中,如果用户请求基于音频信号,则用户请求可以首先由远程ASR模块208处理。在特定实施例中,请求管理器302可以包括上下文提取器303和会话理解对象生成器(CU对象生成器)304。上下文提取器303可以提取与用户请求相关联的上下文信息。上下文提取器303还可以基于在客户端系统130上执行的助理应用136来更新上下文信息。作为示例而不是作为限制,上下文信息的更新可以包括在客户端系统130上显示内容项目。作为另一个示例而不是作为限制,上下文信息的更新可以包括客户端系统130上是否设置了闹钟。作为另一个示例而不是作为限制,上下文信息的更新可以包括客户端系统130上是否在播放歌曲。CU对象生成器304可以生成与用户请求相关的特定内容对象。内容对象可以包括与用户请求相关联的对话会话数据和特征,该对话会话数据和特征可以与助理系统140的所有模块共享。在特定实施例中,请求管理器302可以将上下文信息和生成的内容对象存储在数据储存器212中,数据储存器是在助理系统140中实现的特定数据储存器。
在特定实施例中,请求管理器302可以将生成的内容对象发送到远程的NLU模块210。NLU模块210可以执行多个步骤来处理内容对象。在步骤305,NLU模块210可以生成内容对象的白名单(whitelist)。在特定实施例中,白名单可以包括匹配用户请求的解释数据。在步骤306,NLU模块210可以基于白名单执行特征化。在步骤307,NLU模块210可以基于从特征化产生的特征对用户请求执行域分类/选择,以将用户请求分类到预定义的域中。还可以基于两个相关的过程进一步处理域分类/选择结果。在步骤308a,NLU模块210可以使用意图分类器来处理域分类/选择结果。意图分类器可以确定与用户请求相关联的用户意图。在特定实施例中,每个域可以有一个意图分类器来确定给定域中最可能的意图。作为示例而不是作为限制,意图分类器可以基于机器学习模型,该模型可以将域分类/选择结果作为输入,并计算该输入与特定预定义意图相关联的概率。在步骤308b,NLU模块210可以使用元意图(meta-intent)分类器来处理域分类/选择结果。元意图分类器可以确定描述用户意图的类别。在特定实施例中,多个域共有的意图可以由元意图分类器处理。作为示例而不是作为限制,元意图分类器可以基于机器学习模型,该模型可以将域分类/选择结果作为输入,并计算输入与特定预定义元意图相关联的概率。在步骤309a,NLU模块210可以使用槽标记器(slot tagger)来注释与用户请求相关联的一个或更多个槽。在特定实施例中,槽标记器可以为用户请求的n-grams注释一个或更多个槽。在步骤309b,NLU模块210可以使用元槽标记器为来自元意图分类器的分类结果注释一个或更多个槽。在特定实施例中,元槽标记器可以标记通用槽,例如对项目(例如,第一个项目)的指代、槽的类型、槽的值等。作为示例而非限制,用户请求可以包括“将我账户中的500美元兑换成日元”。意图分类器可以将用户请求作为输入,并将其公式化为向量。意图分类器然后可以基于表示用户请求的向量和表示不同预定义意图的向量之间的向量比较来计算用户请求与不同预定义意图相关联的概率。以类似的方式,槽标记器可以将用户请求作为输入,并将每个单词公式化为向量。意图分类器然后可以基于表示单词的向量和表示不同预定义槽的向量之间的向量比较来计算每个单词与不同预定义槽相关联的概率。用户的意图可以被分类为“兑换钱(changing money)”。用户请求的槽可以包括“500”、“美元(dollars)”、“账户(account)”和“日元(Japaneseyen)”。用户的元意图可以被分类为“金融服务(financial service)”。元槽(meta slot)可以包括“金融(finance)”。
在特定实施例中,NLU模块210可以包括语义信息聚合器310。语义信息聚合器310可以通过提供语义信息来帮助NLU模块210改进内容对象的域分类/选择。在特定实施例中,语义信息聚合器310可以以下述方式聚合语义信息。语义信息聚合器310可以首先从用户上下文引擎315检索信息。在特定实施例中,用户上下文引擎315可以包括离线聚合器和在线推断服务。离线聚合器可以处理从先前时间窗口收集的与用户相关联的多个数据。作为示例而非限制,数据可以包括在预定的时间范围内(例如,从先前的90天窗口)收集的动态消息帖子/评论、与动态消息帖子/评论的交互、搜索历史等。处理结果可以作为用户简档的一部分存储在用户上下文引擎315中。在线推断服务可以分析由助理系统140在当前时间接收的与用户相关联的会话数据。分析结果也可以作为用户简档的一部分存储在用户上下文引擎315中。在特定实施例中,离线聚合器和在线推断服务都可以从多个数据中提取个性化特征。提取的个性化特征可以被助理系统140的其他模块使用,以更好地理解用户输入。在特定实施例中,语义信息聚合器310然后可以在以下步骤中处理从用户上下文引擎315检索的信息,即用户简档。在步骤311,语义信息聚合器310可以基于自然语言处理(NLP)来处理从用户上下文引擎315检索的信息。在特定实施例中,语义信息聚合器310可以:通过文本标准化来切分(tokenize)文本,从文本中提取句法(syntax)特征,并基于NLP从文本中提取语义特征。语义信息聚合器310另外可以从上下文信息中提取特征,该上下文信息是从用户和助理系统140之间的对话历史访问的。语义信息聚合器310还可以基于上下文信息进行全局单词嵌入、特定于域的嵌入和/或动态嵌入。在步骤312,处理结果可以由实体标记器用实体来注释。在步骤313,基于注释,语义信息聚合器310可以为检索到的信息生成字典。在特定实施例中,字典可以包括可以离线动态更新的全局字典特征。在步骤314,语义信息聚合器310可以对由实体标记器标记的实体进行排序。在特定实施例中,语义信息聚合器310可以与包括社交图、知识图或概念图中的一个或更多个的不同图320通信,以从用户上下文引擎315提取与检索到的信息相关的本体数据。在特定实施例中,语义信息聚合器310可以聚合用户简档、排序后的实体和来自图320的信息。语义信息聚合器310然后可以将聚合的信息提供给NLU模块210,以促进域分类/选择。
在特定实施例中,NLU模块210的输出可以被发送到远程推理模块214。推理模块214可以包括共指部件325、实体解析部件330和对话管理器335。NLU模块210的输出可以首先在共指部件325处被接收,以解释与用户请求相关联的内容对象的指代。在特定实施例中,共指部件325可用于识别用户请求所指的项目。共指部件325可以包括指代创建326和指代消解(reference resolution)327。在特定实施例中,指代创建326可以为由NLU模块210确定的实体创建指代。指代消解327可以准确地消解这些指代。作为示例而非限制,用户请求可以包括“给我找到最近的杂货店并指引我到那里”。共指部件325可以将“那里”解释为“最近的杂货店”。在特定实施例中,共指部件325可以在必要时访问用户上下文引擎315和对话引擎335,以用提高的准确性来解释指代。
在特定实施例中,所识别的域、意图、元意图、槽和元槽以及所消解的指代可以被发送到实体解析部件330以解析相关实体。实体解析部件330可以执行通用和特定于域的实体解析。在特定实施例中,实体解析部件330可以包括域实体解析331和通用实体解析332。域实体解析331可以通过将槽和元槽归类到不同的域来解析实体。在特定实施例中,可以基于从图320中提取的本体数据来解析实体。本体数据可以包括不同槽/元槽和域之间的结构关系。本体也可以包括槽/元槽可以如何在较高级别包括域的层次结构内被分组、相关,并根据相似性和差异细分的信息。通用实体解析332可以通过将槽和元槽归类到不同的通用主题来解析实体。在特定实施例中,解析也可以基于从图320中提取的本体数据。本体数据可以包括不同槽/元槽和通用主题之间的结构关系。本体也可以包括槽/元槽可以如何在较高级别包括主题的层次结构内被分组、相关,并根据相似性和差异细分的信息。作为示例而非限制,响应于对特定品牌电动汽车的优点的查询的输入,通用实体解析332可以将电动汽车的指代品牌解析为车辆,并且域实体解析331可以将电动汽车的指代品牌解析为电动汽车。
在特定实施例中,实体解析部件330的输出可以被发送到对话管理器335,以推进与用户的会话流。对话管理器335可以是异步状态机,其重复更新状态并基于新状态选择动作。对话管理器335可以包括对话意图解析336和对话状态跟踪器337。在特定实施例中,对话管理器335可以执行所选择的动作,然后再次调用对话状态跟踪器337,直到所选择的动作需要用户响应,或者不再有动作要执行。所选择的每个动作可能取决于先前动作的执行结果。在特定实施例中,对话意图解析336可以基于用户和助理系统140之间的对话历史来解析与当前对话会话相关联的用户意图。对话意图解析336可以将NLU模块210确定的意图映射到不同的对话意图。对话意图解析336还可以基于来自NLU模块210、实体解析部件330的信号以及用户和助理系统140之间的对话历史来对对话意图进行排序。在特定实施例中,对话状态跟踪器337可以是无附带后果部件,并且生成建议对话状态更新的对话状态更新操作符的n个最佳候选,而不是直接改变对话状态。对话状态跟踪器337可以包括意图解析器,其包含基于对话状态处理不同类型的NLU意图并生成操作符的逻辑。在特定实施例中,逻辑可以由意图处理器来组织,该意图处理器例如为当助理系统140请求歧义消除时处理意图的歧义消除意图处理器、包括处理确认的逻辑的确认意图处理器等。意图解析器可以将轮意图(turn intent)与对话状态组合在一起,以生成与用户会话的上下文更新。然后,槽解析部件可以用包含知识图和域代理的解析提供者递归地解析更新操作符中的槽。在特定实施例中,对话状态跟踪器337可以更新/排序当前对话会话的对话状态。作为示例而非限制,如果对话会话结束,对话状态跟踪器337可以将对话状态更新为“完成”。作为另一示例而非限制,对话状态跟踪器337可以基于与其相关联的优先级来对对话状态进行排序。
在特定实施例中,推理模块214可以分别与远程动作执行模块226和对话仲裁器216通信。在特定实施例中,推理模块214的对话管理器335可以与动作执行模块226的任务完成部件340就对话意图和相关联的内容对象进行通信。在特定实施例中,任务完成模块340可以针对不同的对话意图对不同的对话假设进行排序。任务完成模块340可以包括动作选择器341。在替代实施例中,动作选择器341可以包括在对话管理器335中。在特定实施例中,对话管理器335还可以对照包含在对话仲裁器216中的关于对话状态的对话策略345进行检查。在特定实施例中,对话策略345可以包括描述代理350的动作执行计划的数据结构。对话策略345可以包括通用策略346和任务策略347。在特定实施例中,通用策略346可以用于不特定于单个任务的动作。通用策略346可以包括处理低置信度意图、内部错误、不可接受的用户重试响应、基于ASR或NLU置信度分数跳过或插入确认等。通用策略346还可以包括对来自对话状态跟踪器337输出的对话状态更新候选进行排序并挑选要更新的一个(例如挑选排序最高的任务意图)的逻辑。在特定实施例中,助理系统140可以具有用于通用策略346的特定接口,其允许将分散的跨域策略/业务规则,尤其是在对话状态跟踪器337中找到的那些,合并到动作选择器341的功能中。通用策略346的接口还可以允许创作可以绑定到特定情况或客户端的独立子策略单元,例如可以基于客户端、情况等容易地打开或关闭的策略功能。通用策略346的接口还可以允许提供具有退避的策略分层,即多个策略单元,处理特定情况的高度专业化的策略单元由在更广泛的环境中适用的更通用的策略346来支持。在这种情况下,通用策略346可替代地包括特定于意图或任务的策略。在特定实施例中,任务策略347可以包括基于任务和当前状态的动作选择器341的逻辑。在特定实施例中,可以有以下四种类型的任务策略347:1)手工创作的基于树的对话计划;2)直接实现用于生成动作的接口的编码策略;3)配置器指定的槽填充任务;以及4)从数据中学习的基于机器学习模型的策略。在特定实施例中,助理系统140可以用基于规则的逻辑引导新域,并且稍后用机器学习模型来细化任务策略347。在特定实施例中,对话策略345可以是基于树的策略,其是预先构建的对话计划。基于当前对话状态,对话策略345可以选择节点来执行和生成相应的动作。作为示例而非限制,基于树的策略可以包括主题分组节点和对话动作(叶)节点。
在特定实施例中,动作选择器341可以采用对话状态的候选操作符,并咨询对话策略345来决定应该执行什么动作。助理系统140可以使用分层对话策略,其中通用策略346处理跨域业务逻辑,任务策略347处理特定于任务/域逻辑。在特定实施例中,通用策略346可以从候选操作符中选择一个操作符来更新对话状态,随后通过任务策略347选择面向用户的动作。一旦任务在对话状态中是活动的,可以咨询相应的任务策略347来选择正确的动作。在特定实施例中,对话状态跟踪器337和动作选择器341都可以不改变对话状态,直到所选择的动作被执行。这可以允许助理系统140执行对话状态跟踪器337和动作选择器341,用于处理推测的ASR结果,并利用模拟运行(dry runs)进行n最佳排序。在特定实施例中,动作选择器341可以将对话状态更新操作符作为输入的一部分来选择对话动作。对话动作的执行可以生成一组期望,以指示对话状态跟踪器337处理未来轮。在特定实施例中,当处理来自下一轮的用户输入时,期望可用于向对话状态跟踪器337提供上下文。作为示例而非限制,槽请求对话动作可能期望证明所请求的槽的值。
在特定实施例中,对话管理器335可以支持槽提及的多轮组成解析。对于来自NLU210的组成分析,解析器可以递归地解析嵌套槽。对话管理器335可以另外支持嵌套槽的歧义消除。作为示例而非限制,用户请求可以是“提醒我给Alex打电话”。在创建可动作的待办事项提醒实体之前,解析器可能需要知道要给哪个Alex打电话。当特定槽需要进一步的用户澄清时,解析器可以暂停解析并设置解析状态。通用策略346可以检查解析状态,并为用户澄清创建相应的对话动作。在对话状态跟踪器337中,基于用户请求和最后的对话动作,对话管理器可以更新嵌套槽。这种能力可以允许助理系统140与用户交互,不仅收集缺失的槽值,而且减少更复杂/模糊的话语的模糊性以完成任务。在特定实施例中,对话管理器可以进一步支持请求嵌套意图和多意图用户请求中的缺失槽(例如,“拍摄这张照片并将其发送给爸爸”)。在特定实施例中,对话管理器335可以支持机器学习模型,以获得更健壮的对话体验。作为示例而非限制,对话状态跟踪器337可以使用基于神经网络的模型(或任何其他合适的机器学习模型)来对任务假设上的信念进行建模。作为另一个示例而非限制,对于动作选择器341,最高优先级策略单元可以包括白名单/黑名单覆盖,这可能必须通过设计来发生;中等优先级单元可以包括为动作选择设计的机器学习模型;并且当机器学习模型选择不处理情况时,较低优先级单元可以包括基于规则的后退。在特定实施例中,基于机器学习模型的通用策略单元可以帮助助理系统140减少冗余的歧义消除或确认步骤,从而减少执行用户请求的轮数。
在特定实施例中,动作执行模块226可以调用不同的代理350来执行任务。代理350可以在注册的内容提供者中进行选择来完成该动作。数据结构可以由对话管理器335基于意图和与该意图相关联的一个或更多个槽来构造。对话策略345还可以包括通过逻辑操作符互相关的多个目标。在特定实施例中,目标可以是对话策略的一部分的输出结果,并且它可以由对话管理器335构造。目标可以由具有一个或更多个命名参量的标识符(例如,字符串)来表示,该一个或更多个命名参量将目标参数化。作为示例而不是作为限制,目标及其关联的目标参量可以表示为{确认_艺术家,参量:{艺术家:“Madonna”}}。在特定实施例中,对话策略可以基于树形结构表示,其中目标被映射到树叶。在特定实施例中,对话管理器335可以执行对话策略345来确定要执行的下一个动作。对话策略345可以包括通用策略346和特定于域的策略347,它们都可以指导如何基于对话状态选择下一个系统动作。在特定实施例中,动作执行模块226的任务完成部件340可以与包含在对话仲裁器216中的对话策略345通信,以获得下一个系统动作的指导。在特定实施例中,动作选择部件341因此可以基于对话意图、相关联的内容对象和来自对话策略345的指导来选择动作。
在特定实施例中,动作执行模块226的输出可以被发送到远程响应执行模块232。具体地,动作执行模块226的任务完成部件340的输出可以被发送到响应执行模块226的CU编写器355。在替代实施例中,所选择的动作可能需要一个或更多个代理350参与。因此,任务完成模块340可以向代理350通知所选择的动作。同时,对话管理器335可以接收更新对话状态的指令。作为示例而不是作为限制,更新可以包括等待代理350的响应。在特定实施例中,CU编写器355可以基于任务完成模块340的输出,使用自然语言生成器(NLG)356为用户生成通信内容。在特定实施例中,NLG 356可以使用不同的语言模型和/或语言模板来生成自然语言输出。自然语言输出的生成可以是特定于应用的。自然语言输出的生成也可以针对每个用户进行个性化。CU编写器355还可以使用UI有效载荷生成器357来确定所生成的通信内容的模态。由于所生成的通信内容可以被认为是对用户请求的响应,所以CU编写器355可以另外使用响应排序器358来对所生成的通信内容进行排序。作为示例而不是作为限制,排序可以指示响应的优先级。
在特定实施例中,响应执行模块232可以基于CU编写器355的输出来执行不同的任务。这些任务可以包括写入(即,存储/更新)从数据储存器212检索的对话状态361并生成响应362。在特定实施例中,CU编写器355的输出可以包括自然语言串、语音、带有参数的动作、或者可以在VR头戴装置或AR智能眼镜中显示的渲染图像或视频中的一个或更多个。因此,响应执行模块232可以基于CU编写器355的输出来确定要执行什么任务。在特定实施例中,生成的响应和通信内容可以由响应执行模块232发送到本地渲染输出模块242。在替代实施例中,如果所确定的通信内容的模态是音频,则CU编写器355的输出可以另外发送到远程TTS模块238。由TTS模块238生成的语音和由响应执行模块232生成的响应然后可以被发送到渲染输出模块242。
图4示出了由助理系统140处理用户输入的示例性流程图。作为示例而非限制,用户输入可以基于音频信号。在特定实施例中,客户端系统130的麦克风阵列402可以接收音频信号(例如,语音)。音频信号可以以音频帧的格式传输到处理环路(loop)404。在特定实施例中,处理环路404可以发送音频帧用于声音活动检测(VAD)406和声音唤醒(WoV)检测408。检测结果可以返回到处理环路404。如果WoV检测408指示用户想要调用助理系统140,则音频帧连同VAD 406结果可以被发送到编码单元410以生成编码的音频数据。在编码之后,出于隐私和安全目的,编码的音频数据可以被发送到加密单元412,随后是链接单元414和解密单元416。解密之后,音频数据可以被发送到麦克风驱动器418,麦克风驱动器418可以进一步将音频数据传输到音频服务模块420。在替代实施例中,可以在与客户端系统130配对的无线设备(例如,蓝牙设备)处接收用户输入。相应地,音频数据可以从无线设备驱动器422(例如,蓝牙驱动器)发送到音频服务模块420。在特定实施例中,音频服务模块420可以确定用户输入可以由在客户端系统130上执行的应用来实现。因此,音频服务模块420可以将用户输入发送到实时通信(RTC)模块424。RTC模块424可以向视频或音频通信系统(例如VOIP或视频呼叫)传送音频分组。RTC模块424可以调用相关应用(App)426来执行与用户输入相关的任务。
在特定实施例中,音频服务模块420可以确定用户正在请求需要助理系统140响应的帮助。因此,音频服务模块420可以通知客户端助理服务模块426。在特定实施例中,客户端助理服务模块426可以与助理编排器206通信。助理编排器206可以确定是使用客户端进程还是服务器端进程来响应用户输入。在特定实施例中,助理编排器206可以确定使用客户端进程,并向客户端助理服务模块426通知这样的决定。因此,客户端助理服务模块426可以调用相关模块来响应用户输入。
在特定实施例中,客户端助理服务模块426可以使用本地ASR模块216来分析用户输入。ASR模块216可以包括字形到音素(G2P)模型、发音学习模型、个性化语言模型(PLM)、端点模型和个性化声学模型。在特定实施例中,客户端助理服务模块426可以进一步使用本地NLU模块218来理解用户输入。NLU模块218可以包括命名实体解析(NER)部件和基于上下文会话的NLU部件。在特定实施例中,客户端助理服务模块426可以使用意图中介者428来分析用户的意图。为了准确了解用户的意图,意图中介者428可以访问包括与用户和世界相关联的实体的实体储存器430。在替代实施例中,用户输入可以经由在客户端系统130上执行的应用432来提交。在这种情况下,输入管理器434可以接收用户输入,并由应用环境(AppEnv)模块436对其进行分析。分析结果可以被发送到应用432,应用432可以进一步将分析结果发送到ASR模块216和NLU模块218。在替代实施例中,用户输入可以经由在客户端系统130上执行的助理应用438直接提交给客户端助理服务模块426。然后,客户端助理服务模块426可以基于如上所述的模块,即ASR模块216、NLU模块218和意图中介者428,执行类似的过程。
在特定实施例中,助理编排器206可以向用户确定服务器端进程。因此,助理编排器206可以将用户输入发送到托管助理系统140的不同模块的一个或更多个计算系统。在特定实施例中,服务器助理服务模块301可以从助理编排器206接收用户输入。服务器助理服务模块301可以指示远程ASR模块208分析用户输入的音频数据。ASR模块208可以包括字形到音素(G2P)模型、发音学习模型、个性化语言模型(PLM)、端点模型和个性化声学模型。在特定实施例中,服务器助理服务模块301可以进一步指示远程NLU模块210理解用户输入。在特定实施例中,服务器助理服务模块301可以调用远程推理模型214来处理来自ASR模块208和NLU模块210的输出。在特定实施例中,推理模型214可以执行实体解析和对话优化。在特定实施例中,推理模型314的输出可以被发送到代理350,用于执行一个或更多个相关任务。
在特定实施例中,代理350可以访问本体模块440,以准确地理解来自实体解析和对话优化的结果,从而它可以准确地执行相关任务。本体模块440可以提供与多个预定义的域、意图和槽相关联的本体数据。本体数据还可以包括不同槽和域之间的结构关系。本体数据还可以包括槽可以如何在较高级别包括域的层次结构内被分组、相关,并根据相似性和差异细分的信息。本体数据还可以包括槽可以如何在较高级别包括主题的层次结构内被分组、相关,并根据相似性和差异细分的信息。一旦任务被执行,代理350可以将执行结果连同任务完成指示一起返回给推理模块214。
本文公开的实施例可以包括或结合人工现实系统来实现。人工现实是一种在呈现给用户之前已经以某种方式进行了调整的现实形式,其可以包括例如虚拟现实(VR)、增强现实(AR)、混合现实(mixed reality,MR)、混杂现实(hybrid reality)或其某种组合和/或衍生物。人工现实内容可以包括完全生成的内容或与采集内容(例如,真实世界的照片)组合的生成内容。人工现实内容可以包括视频、音频、触觉反馈、或其某种组合,且其中任何一个都可以在单个信道中或在多个信道中被呈现(例如向观看者生成三维效果的立体视频)。另外,在一些实施例中,人工现实可以与应用、产品、附件、服务或其某种组合相关联,这些应用、产品、附件、服务或其某种组合例如用于在人工现实中创建内容和/或在人工现实中被使用(例如,在人工现实中执行活动)。提供人工现实内容的人工现实系统可以在各种平台上实现,这些平台包括连接到主计算机系统的头戴式显示器(HMD)、独立的HMD、移动设备或计算系统、或者能够向一个或更多个观看者提供人工现实内容的任何其他硬件平台。
助理系统的设备上卷积神经网络模型
在特定实施例中,助理系统140可以使用卷积神经网络(CNN)模型来实现与客户端进程相关联的自然语言理解模块218。CNN模型可以是紧凑的,并且可以在客户端系统130(例如智能手机或AR/VR头戴装置)上有效地执行。在特定实施例中,CNN模型可以基于本文公开的架构。对于这种架构,输入可以是用户话语的每个单词。然后,基于对应于单词包含的各个字符的字符嵌入,可以为每个单词生成单词嵌入。在特定实施例中,CNN模型可以基于这样的输入来计算与用户话语相关联的意图和槽的概率。在特定实施例中,与诸如基于长短期记忆(LSTM)的模型的传统方法相比,CNN模型可以以显著的效率和紧凑性(100倍)实现竞争性能。尽管本公开描述了由特定系统以特定方式的特定自然语言理解模型,但是本公开设想了由任何合适系统以任何合适方式的任何合适的自然语言理解模型。
在特定实施例中,在客户端系统130上本地执行的助理系统140可以在客户端系统130处接收包括一个或更多个单词的用户输入。每个单词可以包括一个或更多个字符。助理系统140然后可以将一个或更多个单词输入到存储在客户端系统130上的卷积神经网络(CNN)模型。在特定实施例中,助理系统140可以从客户端系统130的数据储存器中分别访问多个字符的多个字符嵌入。然后,助理系统140可以基于所访问的字符嵌入,通过用CNN模型的一个或更多个卷积层和一个或更多个门控线性单元处理所访问的字符嵌入,来分别为一个或更多个单词生成一个或更多个单词嵌入。在特定实施例中,助理系统140可以基于CNN模型对一个或更多个单词嵌入的分析,确定对应于用户输入的一个或更多个任务以供执行。助理系统140还可以在客户端系统130处基于一个或更多个任务的执行响应于用户输入提供输出。
图5示出了CNN模型的示例架构500。在特定实施例中,CNN模型可以在存储在客户端系统130上的NLU模块218中实现。客户端系统130可以是移动客户端系统,与中央计算系统(例如,大型机计算系统、专用服务器、云服务器)相比,其具有有限的计算能力和存储空间。作为示例而非限制,客户端系统130可以是个人数字助理(PDA)、蜂窝电话、智能手机、智能扬声器、虚拟现实(VR)头戴装置或增强现实(AR)智能眼镜。在特定实施例中,CNN模型可以包括多个层。多个层可以至少包括卷积层502、池化层504、门控线性单元506、线性层508和具有梯度截断的残差连接。门控线性单元506是非确定性门的简化门控机制,其通过将线性单元耦合到门来减少消失梯度问题。在图5中,CNN模型用于理解用户输入510“将闹钟设在下午5点(set alarm for 5pm)。”在特定实施例中,在客户端系统130上执行的助理系统140可以通过存储在客户端系统130上的自然语言理解模块218将用户输入510解析成一个或更多个单词。然后,助理系统140可以访问存储在客户端系统130上的各个字符的字符嵌入(例如,256个嵌入)。对于每个单词,助理系统140可以基于其包含的字符的字符嵌入来生成单词嵌入512(例如,“set”的单词嵌入512可以根据“s”+“e”+“t”的字符嵌入来生成)。存储对应于可能形成不同单词的不同字符的字符嵌入并在执行CNN模型时访问它们可能是解决在执行CNN模型时在客户端系统130上节省存储空间的技术挑战的有效解决方案,因为字符嵌入比所有可能单词的单词嵌入占用少得多存储空间。在特定实施例中,生成一个或更多个单词嵌入512可以进一步基于多个字典特征。字典特征可以被认为是分配给每个单词的标记。作为示例而非限制,西雅图可以具有字典特征“城市”,而橙色可以具有字典特征“水果”。这些字典特征可能会提供有关特定令牌的更多信息。如图5所示,这些单词嵌入512作为输入被馈送到两个主要子模块,即意图分类子模块520和槽分类子模块530。尽管本公开以特定方式描述了特定CNN模型的特定架构,但是本公开设想了以任何适当方式的任何适当CNN模型的任何适当架构。
在意图分类子模块520中,使用卷积和池化,在客户端系统130上执行的助理系统140可以为用户输入510生成一个表示,并且该表示可以被投影到意图空间中。在特定实施例中,助理系统140可以通过基于CNN模型分析一个或更多个单词嵌入来确定与用户输入510相关联的一个或更多个意图。确定一个或更多个意图可以包括以下步骤。助理系统140可以首先由CNN模型的一个或更多个卷积层502和一个或更多个池化层504基于一个或更多个单词嵌入为用户输入510生成特征表示。助理系统140然后可以通过CNN模型的一个或更多个线性层508,基于特征表示计算对应于多个意图的多个概率。在特定实施例中,多个意图可以被认为是意图空间中的候选意图。每个概率可以指示对应的意图与用户输入510相关联的可能性。助理系统140还可以基于计算的概率,从多个意图中确定一个或更多个意图。作为示例而非限制,如图5所示,“将闹钟设在下午5点(set alarm for 5pm)”的确定意图可以是[IN:SET_ALARM]522。尽管本公开描述了由特定系统以特定方式确定特定意图,但是本公开设想由任何合适的系统以任何合适的方式确定任何合适的意图。
在槽分类子模块530中,对于每个单词,在客户端系统130上执行的助理系统140可以使用堆叠卷积层502和门控线性单元(GLU)506生成表示。使用GLU 506的目的可以是每个单词可以具有其自己的重要性,并且GLU可以捕捉这种重要性以理解整个用户输入510的上下文。作为示例而非限制,“闹钟(alarm)”可以是理解“5”的重要上下文。该表示最终被投影到槽空间中。使用门控线性单元(GLU)506可能是解决准确理解用户输入510的技术挑战的有效解决方案,因为GLU 506可以捕捉用户输入510中每个单词的重要性,以学习用户输入510的上下文,用于准确理解。在GLU 506之后,可以应用线性层508。线性层可以为每个单词投影指示与该单词相关联的可能槽的概率。前述的意图投影和槽投影可以同时使用相同的架构,这降低了模型的复杂性。在特定实施例中,随着用于理解用户输入510的词汇变大,可能需要更多堆叠的CNN层,这可能导致诸如消失和爆炸梯度的问题。在特定实施例中,CNN模型可以进一步使用具有梯度截断的残差连接来解决这些问题。一旦意图和槽被确定,它们可以被提供给助理系统140的后续模块用于进一步处理。尽管本公开描述了由特定系统以特定方式使用特定的门控线性单元,但是本公开设想由任何合适的系统以任何合适的方式使用任何合适的门控线性单元。
在特定实施例中,在客户端系统130上执行的助理系统140可以通过基于CNN模型分析一个或更多个单词嵌入来确定与用户输入相关联的一个或更多个槽。确定一个或更多个槽可以包括以下步骤。助理系统140可以首先通过CNN模型的一个或更多个线性层508,基于一个或更多个单词嵌入计算对应于多个槽的多个概率。在特定实施例中,多个槽可以被认为是槽空间中的候选槽。每个概率可以指示相应的槽与相应的单词相关联的可能性。助理系统140还可以基于计算的概率从多个槽中确定一个或更多个槽。作为示例而非限制,所确定的用于“将闹钟设在下午5点(set alarm for 5pm)”的槽可以是分别对应于“5”和“pm”的[SL:TIME]532和[SL:TIME]534,如图5所示。尽管本公开描述了由特定系统以特定方式确定特定槽,但是本公开设想了由任何合适的系统以任何合适的方式确定任何合适的槽。
在特定实施例中,助理系统140可以使用一种或更多种加速技术来使CNN模型的执行更快。这种技术可用于CNN模型的离线训练和在线推断。在特定实施例中,在推断时间期间,用CNN模型的一个或更多个卷积层502对所访问的字符嵌入的处理可以基于一个或更多个数字信号处理(DSP)算法。一个或更多个DSP算法可以基于客户端系统130的硬件部件来确定。此外,CNN模型对一个或更多个单词嵌入的分析也可以基于一个或更多个DSP算法。在特定实施例中,在训练时间期间,可以基于一个或更多个修剪算法来生成CNN模型的多个层。一个或更多个修剪算法可以基于客户端系统130的硬件部件来确定。作为示例而非限制,在远程服务器上运行的CNN模型可以具有n个(n是任意数目)层。基于根据客户端系统130的硬件部件确定的有限计算能力,助理系统140可以确定修剪n个层中的一些。因此,在客户端系统130上运行的CNN模型可以仅具有n-m(m是小于n的任意数)个层。在特定实施例中,CNN模型可以包括多个参数。可以基于一个或更多个稀疏化算法来确定多个参数。更具体地说,稀疏化算法可以用来减少参数的数量。作为示例而非限制,CNN模型可以具有p(p是任意数)个参数,稀疏化算法可以帮助将参数的数量从p减少到k(k是小于p的任意数)。尽管本公开描述了由特定系统以特定方式使用特定加速技术,但是本公开设想了由任何合适的系统以任何合适的方式使用任何合适的加速技术。
在特定实施例中,在客户端系统130上执行的助理系统140可以将一种或更多种压缩技术应用于CNN模型,以进一步减小其大小。作为示例而非限制,可以量化与CNN模型相关联的多个参数和多个激活。应用量化可能会使CNN模型更小,运行速度也更快。量化权重和激活可能会带来一个技术优势,即可以使用纯整数算术进行推断,这与浮点运算相比可能更有效。作为示例而非限制,原始卷积运算符可以用8位整数卷积运算符代替。因为与浮点表示相比,权重和激活都被量化为8位量化整数表示,所以助理系统140可以在模型文件大小和延迟方面获得显著的节省。在特定实施例中,量化可以与量化参数相关联。可以为权重和激活单独计算量化参数,这可以通过将来自验证集合的用于训练CNN模型的训练数据传递通过原始模型并计算用于计算量化参数的必要统计来完成。使用用于CNN模型的数字信号处理算法、量化、修剪算法和稀疏化算法可能是解决使CNN模型紧凑和高效的技术挑战的有效解决方案,因为这些技术可以有效地降低CNN模型需要处理的比特率、CNN模型的层数和CNN模型的参数数量,从而实现更小的模型文件大小和延迟。尽管本公开描述了由特定系统以特定方式使用特定压缩技术,但是本公开设想了由任何合适的系统以任何合适的方式使用任何合适的压缩技术。
在特定实施例中,CNN模型可以进一步包括基于条件随机场(CRF)的一个或更多个层。CRF层可以学习不同槽之间的一组转换概率,基于此CNN模型可以确定每个单词的槽。在特定实施例中,CRF层可以不单独预测每个单词的槽。对于每个单词,CRF层可以计算所有可能槽的概率,并使用所学习的转换概率对句子的所有可能序列进行评分。最高得分序列可用于获得每个单词的槽预测。在特定实施例中,一个或更多个动态编程算法可用于对句子评分。作为示例而非限制,CRF层可能了解到[SL:TIME]槽和[SL:TARGET_DEST]槽出现的机会非常低,因为SL:TIME以[IN:SET_ALARM]的意图出现,而[SL:TARGET_DEST]以[IN:GET_DIRECTION]的意图出现,并且通常这些不会在同一句话中一起出现。尽管本公开描述了特定系统以特定方式使用特定条件随机场,但是本公开设想了任何合适的系统以任何合适的方式使用任何合适的条件随机场。
在特定实施例中,在客户端系统130上执行的助理系统140可以向一个或更多个远程服务器发送一个或更多个任务以供执行。因此,输出可以由一个或更多个远程服务器基于一个或更多个任务的执行来生成。在特定实施例中,助理系统140还可以在客户端系统130处从一个或更多个远程服务器接收用于提供输出的指令。可以看出,只有任务可以被传送到远程服务器来执行。结果,当在客户端系统130上执行自然语言理解时,助理系统140可以具有有效保护用户隐私的技术优势,这可以保证所有敏感用户数据在客户端系统130上被本地处理,而不被传输到远程服务器或第三方系统170。尽管本公开以特定的方式描述了特定系统之间的特定通信,但是本公开设想了以任何合适的方式在任何合适的系统之间的任何合适的通信。
本文公开的实施例进一步公开了与多个现有基线方法相比的多个实验结果。在特定实施例中,一个实验基于与调用和设备控制域相关联的用户输入510。另一个实验基于生产域。表1说明了根据不同度量评估的调用和设备控制域的实验结果。在表1中,“具有CLE+CRF的集成BiLSTM”表示第一种现有基线方法,其基于使用上下文语言嵌入(CLE)加上条件随机场的双向长短期记忆模型。“单BiLSTM+CRF”表示第二种现有基线方法,它基于一个双向长短期记忆模型加上条件随机场。“DeepCNN+CRF”表示基于本文公开的实施例加上条件随机场的第一CNN模型。“DeepCNN(无CRF)”表示基于本文公开的实施例的第二CNN模型,没有条件随机场。“量化DeepCNN+CRF”表示基于本文公开的实施例的第一量化CNN模型加上条件随机场。“量化DeepCNN(无CRF)”表示基于本文公开的实施例的第二量化CNN模型,没有条件随机场。在特定实施例中,更高的帧精度(评估度量)、更低的延迟(速度的评估度量)或更小的模型大小(评估度量)指示更好的性能。“ms”表示毫秒,“M”表示兆字节。如表1所示,本文公开的实施例(即,“DeepCNN+CRF”、“DeepCNN(无CRF)”、“量化DeepCNN+CRF”和“量化DeepCNN(无CRF)”)比两种现有基线方法具有优势。作为示例而非限制,在调用和设备控制域上(表1中的结果),本文公开的实施例在大小上比基线生产模型小大约150倍,并且比基线生产模型快190倍,模型精度降低了大约2%。值得注意的是,本文公开的实施例的模型,即“量化DeepCNN(无CRF)”,对于序列长度20具有1.3M的模型大小,具有4ms的延迟。相比之下,第一种现有基线方法的模型大小为194M,延迟为752ms。如实验所证实的,助理系统140可以具有在本地客户端系统130上执行自然语言理解的技术优势,其性能与远程服务器上的性能相当,同时还节省了文件大小和延迟,因为CNN模型使用了为客户端系统130的有限计算能力和存储空间而定制的架构。
表1:由不同度量评估的基于调用和设备控制域的实验结果。
Figure BDA0003600881990000461
Figure BDA0003600881990000471
图6示出了使用设备上CNN模型响应用户输入510的示例方法600。该方法可以在步骤605开始,其中在客户端系统130上本地执行的助理系统140可以在客户端系统130接收包括一个或更多个单词的用户输入510,其中每个单词包括一个或更多个字符。在步骤610,助理系统140可以通过存储在客户端系统130上的自然语言理解模块218将用户输入510解析成一个或更多个单词。在步骤615,助理系统140可以将一个或更多个单词输入到存储在客户端系统130上的卷积神经网络(CNN)模型,其中CNN模型包括多个层,其中多个层至少包括卷积层502、池化层504、门控线性单元506、线性层508以及具有梯度截断的残差连接,其中基于根据客户端系统130的硬件部件确定的一个或更多个数字信号处理(DSP)算法来训练CNN模型,并且其中量化与CNN模型相关联的多个参数和多个激活。在步骤620,助理系统140可以通过基于CNN模型分析一个或更多个单词嵌入来确定与用户输入510相关联的一个或更多个意图。在步骤625,助理系统140可以通过基于CNN模型分析一个或更多个单词嵌入来确定与用户输入510相关联的一个或更多个槽。在步骤630,助理系统140可以从客户端系统130的数据储存器中分别访问多个字符的多个字符嵌入。在步骤635,助理系统140可以基于所访问的字符嵌入和多个字典特征通过用CNN模型的一个或更多个卷积层502和一个或更多个门控线性单元506处理所访问的字符嵌入,来分别为一个或更多个单词生成一个或更多个单词嵌入。在步骤640,助理系统140可以基于CNN模型对一个或更多个单词嵌入的分析,确定对应于用户输入510的一个或更多个任务以供执行。在步骤645,助理系统140可以向一个或更多个远程服务器发送一个或更多个任务以供执行,其中输出由一个或更多个远程服务器基于一个或更多个任务的执行来生成。在步骤650,助理系统140可以在客户端系统130从一个或更多个远程服务器接收用于提供输出的指令。在步骤655,助理系统140可以基于一个或更多个任务的执行,在客户端系统130提供响应于用户输入510的输出。在适当的情况下,特定实施例可以重复图6的方法的一个或更多个步骤。虽然本公开描述并且示出了图6的方法的特定步骤以特定顺序发生,但是本公开设想到图6的方法的任何合适的步骤以任何合适的顺序出现。此外,尽管本公开描述并示出了包括图6的方法的特定步骤的使用设备上CNN模型来响应用户输入的示例方法,但是本公开设想了包括任何适当步骤的使用设备上CNN模型来响应用户输入的任何适当方法,在适当的情况下,该方法可以包括图6的方法的所有、一些步骤或没有这些步骤。此外,虽然本公开描述并且示出了执行图6的方法的特定步骤的特定部件、设备或系统,但是本公开设想到执行图6的方法的任何合适步骤的任何合适的部件、设备或系统的任何合适的组合。
社交图
图7示出了示例社交图700。在特定实施例中,社交网络系统160可以在一个或更多个数据储存器中存储一个或更多个社交图700。在特定实施例中,社交图700可以包括多个节点——该多个节点可以包括多个用户节点702或多个概念节点704——以及关连这些节点的多条边706。每个节点可以与唯一的实体(即,用户或概念)相关联,每个实体可以具有唯一的标识符(ID),例如唯一的号码或用户名。出于教导的目的,以二维视觉映射表示(two-dimensional visual map representation)示出了图7所示的示例社交图700。在特定实施例中,社交网络系统160、客户端系统130、助理系统140或第三方系统170可以访问社交图700和相关社交图信息以用于合适的应用。社交图700的节点和边可以作为数据对象被存储在例如数据储存器(例如社交图数据库)中。这种数据储存器可以包括社交图700的节点或边的一个或更多个可搜索或可查询的索引。
在特定实施例中,用户节点702可以对应于社交网络系统160或助理系统140的用户。作为示例而不是作为限制,用户可以是与社交网络系统160或助理系统140交互或通信或通过社交网络系统160或助理系统140交互或通信的个人(人类用户)、实体(例如,企业、公司或第三方应用)或(例如,个人或实体的)团体。在特定实施例中,当用户向社交网络系统160注册账户时,社交网络系统160可以创建对应于用户的用户节点702,并将用户节点702存储在一个或更多个数据储存器中。本文描述的用户和用户节点702在适当的情况下可以指注册的用户和与注册的用户相关联的用户节点702。另外或作为替代方案,在适当的情况下,本文描述的用户和用户节点702可以指没有向社交网络系统160注册的用户。在特定实施例中,用户节点702可以与由用户提供的信息或由各种系统(包括社交网络系统160)收集的信息相关联。作为示例而不是作为限制,用户可以提供他或她的姓名、简档图片、联系信息、出生日期、性别、婚姻状况、家庭状况、职业、教育背景、偏好、兴趣或其他人口统计信息。在特定实施例中,用户节点702可以与对应于与用户相关联的信息的一个或更多个数据对象相关联。在特定实施例中,用户节点702可以对应于一个或更多个web界面。
在特定实施例中,概念节点704可以对应于概念。作为示例而不是作为限制,概念可以对应于地点(诸如例如,电影院、餐馆、地标或城市);网站(诸如例如,与社交网络系统160相关联的网站或与web应用服务器相关联的第三方网站);实体(诸如例如,个人、企业、团体、运动队或名人);资源(诸如例如,音频文件、视频文件、数字照片、文本文件、结构化文档或应用),其可以位于社交网络系统160内或外部服务器(例如web应用服务器)上;不动产或知识产权(诸如例如,雕塑、绘画、电影、游戏、歌曲、想法、照片或书面作品);游戏;活动;想法或理论;另一个合适的概念;或者两个或更多个这样的概念。概念节点704可以与由用户提供的概念的信息或由各种系统(包括社交网络系统160和助理系统140)收集的信息相关联。作为示例而不是作为限制,概念的信息可以包括名称或标题;一个或更多个图像(例如,书籍的封面的图像);位置(例如,地址或地理位置);网站(其可以与URL相关联);联系信息(例如,电话号码或电子邮件地址);其他合适的概念信息;或者这样的信息的任何合适的组合。在特定实施例中,概念节点704可以与一个或更多个数据对象相关联,该一个或更多个数据对象对应于与概念节点704相关联的信息。在特定实施例中,概念节点704可以对应于一个或更多个web界面。
在特定实施例中,社交图700中的节点可以表示web界面(其可以被称为“简档界面”)或者由web界面表示。简档界面可以由社交网络系统160或助理系统140托管或是社交网络系统160或助理系统140可访问的。简档界面也可以在与第三方系统170相关联的第三方网站上被托管。作为示例而不是作为限制,对应于特定外部web界面的简档界面可以是特定外部web界面,并且简档界面可以对应于特定概念节点704。简档界面可以由所有其他用户或其他用户的选定子集可查看。作为示例而不是作为限制,用户节点702可以具有相应的用户简档界面,其中相应的用户可以添加内容、作出声明或以其他方式表达他或她自己。作为另一示例而不是作为限制,概念节点704可以具有相应的概念简档界面,其中一个或更多个用户可以添加内容、作出声明或表达他们自己,特别是关于对应于概念节点704的概念。
在特定实施例中,概念节点704可以表示由第三方系统170托管的第三方web界面或资源。除了其他元素之外,第三方web界面或资源可以包括内容、可选择的或其他图标、或代表动作或活动的其他可交互对象。作为示例而不是作为限制,第三方web界面可以包括可选择的图标,例如“赞”、“签到(check-in)”、“吃”、“推荐”,或其他合适的动作或活动。查看第三方web界面的用户可以通过选择图标之一(例如,“签到”)来执行动作,使客户端系统130向社交网络系统160发送指示用户的动作的消息。响应于该消息,社交网络系统160可以在对应于用户的用户节点702和对应于第三方web界面或资源的概念节点704之间创建边(例如,签到类型边),并将边706存储在一个或更多个数据储存器中。
在特定实施例中,社交图700中的一对节点可以通过一条或更多条边706关连到彼此。连接一对节点的边706可以表示在该对节点之间的关系。在特定实施例中,边706可以包括或表示对应于在一对节点之间的关系的一个或更多个数据对象或属性。作为示例而不是作为限制,第一用户可以指示第二用户是第一用户的“朋友”。响应于该指示,社交网络系统160可以向第二用户发送“好友请求”。如果第二用户确认“好友请求”,则社交网络系统160可以在社交图700中创建将第一用户的用户节点702关连到第二用户的用户节点702的边706,并将边706作为社交图信息存储在一个或更多个数据储存器164中。在图7的示例中,社交图700包括指示在用户“A”和用户“B”的用户节点702之间的朋友关系的边706、以及指示在用户“C”和用户“B”的用户节点702之间的朋友关系的边。尽管本公开描述或示出了关连特定用户节点702的具有特定属性的特定边706,但是本公开设想了关连用户节点702的具有任何合适属性的任何合适的边706。作为示例而不是作为限制,边706可以表示友谊、家庭关系、商业或雇佣关系、粉丝关系(包括例如,赞等)、关注者(follower)关系、访问者关系(包括例如,访问、查看、签到、分享等)、订购者关系、上级/下级关系、互惠关系、非互惠关系、另一种合适类型的关系、或两种或更多种这样的关系。此外,尽管本公开一般将节点描述为被关连,但是本公开也将用户或概念描述为被关连。在本文,对被关连的用户或概念的引用在适当的情况下可以指在社交图700中由一条或更多条边706关连的对应于那些用户或概念的节点。分别由两个节点表示的两个对象之间的分离度是社交图700中连接两个节点的最短路径中的边的计数。作为示例而非限制,在社交图700中,用户“C”的用户节点702经由多条路径连接到用户“A”的用户节点702,该多条路径包括例如,直接穿过用户“B”的用户节点702的第一路径、穿过公司“A1me”的概念节点704和用户“D”的用户节点702的第二路径、以及穿过代表学校“Stateford”、用户“G”、公司“A1me”和用户“D”的用户节点702和概念节点704的第三路径。用户“C”和用户“A”具有为二的分离度,因为连接它们对应节点的最短路径(即第一路径)包括两条边706。
在特定实施例中,在用户节点702和概念节点704之间的边706可以表示由与用户节点702相关联的用户对与概念节点704相关联的概念执行的特定动作或活动。作为示例而不是作为限制,如图7所示,用户可以“赞”、“出席”、“播放”、“收听”、“烹饪”、“工作于”或“阅读”概念,其中每个可以对应于边类型或子类型。对应于概念节点704的概念简档界面可以包括例如可选择的“签到”图标(诸如例如,可点击的“签到”图标)或可选择的“添加到收藏夹”图标。类似地,在用户点击这些图标之后,社交网络系统160可以响应于对应于相应动作的用户动作来创建“收藏夹”边或“签到”边。作为另一示例而不是作为限制,用户(用户“C”)可以使用特定的应用(第三方在线音乐应用)来收听特定的歌曲(“想象(Imagine)”)。在这种情况下,社交网络系统160可以在对应于用户的用户节点702和对应于歌曲和应用的概念节点704之间创建“收听”边706和“使用”边(如图7所示),以指示用户收听了歌曲并使用了应用。此外,社交网络系统160可以在对应于歌曲和应用的概念节点704之间创建“播放”边706(如图7所示),以指示特定的歌曲被特定的应用播放。在这种情况下,“播放”边706对应于由外部应用(第三方在线音乐应用)对外部音频文件(歌曲“想象”)执行的动作。尽管本公开描述了连接用户节点702和概念节点704的具有特定属性的特定边706,但是本公开设想了连接用户节点702和概念节点704的具有任何适当属性的任何适当边706。此外,尽管本公开描述了表示单个关系的在用户节点702和概念节点704之间的边,但是本公开设想了表示一个或更多个关系的在用户节点702和概念节点704之间的边。作为示例而不是作为限制,边706可以表示用户喜欢并使用了特定概念。可替代地,另一条边706可以表示用户节点702和概念节点704之间(如图7所示,用户“E”的用户节点702和“在线音乐应用”的概念节点704之间)的每种类型的关系(或者多个单一关系)。
在特定实施例中,社交网络系统160可以在社交图700中的用户节点702和概念节点704之间创建边706。作为示例而不是作为限制,(诸如例如,通过使用由用户的客户端系统130托管的web浏览器或专用应用)查看概念简档界面的用户可以通过点击或选择“赞”图标来指示他或她喜欢由概念节点704表示的概念,这可以使用户的客户端系统130向社交网络系统160发送指示用户喜欢与概念简档界面相关联的概念的消息。响应于该消息,社交网络系统160可以在与用户相关联的用户节点702和概念节点704之间创建边706,如由在用户节点和概念节点704之间的“赞”边706所示的。在特定实施例中,社交网络系统160可以将边706存储在一个或更多个数据储存器中。在特定实施例中,边706可以由社交网络系统160响应于特定用户动作而自动形成。作为示例而不是作为限制,如果第一用户上传图片、阅读书籍、观看电影或收听歌曲,则可以在对应于第一用户的用户节点702和对应于那些概念的概念节点704之间形成边706。尽管本公开描述了以特定方式形成特定边706,但是本公开设想了以任何合适的方式形成任何合适的边706。
向量空间和嵌入
图8示出了向量空间800的示例视图。在特定实施例中,可以在d维向量空间中表示对象或n-gram,其中d表示任何合适的维数。尽管向量空间800被示为三维空间,但这仅仅是为了说明的目的,因为向量空间800可以具有任何合适的维度。在特定实施例中,n-gram可以在向量空间800中被表示为向量,该向量被称为项目嵌入(term embedding)。每个向量可以包括对应于向量空间800中的特定点(即,向量的终点)的坐标。作为示例而不是作为限制,如图8所示,向量810、820和830可以被表示为向量空间800中的点。n-gram可以被映射到相应的向量表示。作为示例而不是作为限制,通过应用由字典定义的函数
Figure BDA0003600881990000531
n-gramt1和n-gramt2可以分别映射到向量空间800中的向量
Figure BDA0003600881990000532
Figure BDA0003600881990000533
使得
Figure BDA0003600881990000534
并且
Figure BDA0003600881990000535
作为另一个示例而不是作为限制,可以利用被训练为将文本映射到向量表示的字典,或者这种字典本身可以通过训练来生成。作为另一示例而非限制,单词嵌入模型可用于将n-gram映射到向量空间800中的向量表示。在特定实施例中,可以通过使用机器学习模型(例如,神经网络)将n-gram映射到向量空间800中的向量表示。机器学习模型可能已经使用训练数据的序列(例如,每个包括n-gram的多个对象的语料库(corpus))进行了训练。
在特定实施例中,对象可以在向量空间800中被表示为向量,该向量被称为特征向量或对象嵌入。作为示例而不是作为限制,通过应用函数
Figure BDA0003600881990000536
对象e1和e2可以分别映射到向量空间800中的向量
Figure BDA0003600881990000537
Figure BDA0003600881990000538
使得
Figure BDA0003600881990000539
并且
Figure BDA00036008819900005310
在特定实施例中,可以基于对象的一个或更多个特性、属性或特征、对象与其他对象的关系或与对象相关联的任何其他合适的信息来将对象映射到向量。作为示例而不是作为限制,函数
Figure BDA00036008819900005311
可以通过特征提取将对象映射到向量,特征提取可以从初始测量数据集开始,并构建导出值(例如,特征)。作为示例而不是作为限制,通过使用算法以检测或隔离对象的各种期望部分或形状,包括视频或图像的对象可以被映射到向量。用于计算向量的特征可以基于从边检测、拐角(corner)检测、团块(blob)检测、脊线(ridge)检测、尺度不变特征变换、边方向、变化强度、自相关、运动检测、光流、阈值化、团块提取、模板匹配、霍夫(Hough)变换(例如,线、圆、椭圆、任意形状)获得的信息或任何其他合适的信息。作为另一个示例而不是作为限制,包括音频数据的对象可以基于特征(例如频谱斜率、音调系数、音频频谱质心、音频频谱包络、梅尔频率倒频谱(Mel-frequency cepstrum)或任何其他合适的信息)来被映射到向量。在特定实施例中,当对象具有太大而无法有效地被处理的数据或者包括冗余数据时,函数
Figure BDA0003600881990000541
可以使用所变换的精简特征集(例如,特征选择)来将对象映射到向量。在特定实施例中,函数
Figure BDA0003600881990000542
可以基于与对象e相关联的一个或更多个n-gram来将对象e映射到向量
Figure BDA0003600881990000543
尽管本公开描述了以特定方式在向量空间中表示n-gram或对象,但是本公开设想了以任何合适的方式在向量空间中表示n-gram或对象。
在特定实施例中,社交网络系统160可以计算向量空间800中的向量的相似性度量。相似性度量可以是余弦相似性、Minkowski距离、Mahalanobis距离、Jaccard相似性系数或任何合适的相似性度量。作为示例而不是作为限制,
Figure BDA0003600881990000544
Figure BDA0003600881990000545
的相似性度量可以是余弦相似性
Figure BDA0003600881990000546
作为另一个示例而不是作为限制,
Figure BDA0003600881990000547
Figure BDA0003600881990000548
的相似性度量可以是欧几里德(Euclidean)距离
Figure BDA0003600881990000549
两个向量的相似性度量可以表示分别对应于两个向量的两个对象或n-gram彼此之间的相似程度,如通过向量空间800中两个向量之间的距离所测量的。作为示例而不是作为限制,基于相应向量之间的距离,向量810和向量820可以对应于比对应于向量810和向量830的对象与彼此更相似的对象。尽管本公开描述了以特定方式计算向量之间的相似性度量,但本公开设想了以任何合适的方式计算向量之间的相似性度量。
关于向量空间、嵌入、特征向量和相似性度量的更多信息可以在2015年11月23日提交的美国专利申请第14/949436号、2016年10月5日提交的美国专利申请第15/286315号和2016年11月30日提交的美国专利申请第15/365789号中找到,这些申请均通过引用结合于此。
人工神经网络
图9示出了示例人工神经网络(“ANN”)900。在特定实施例中,ANN可以指包括一个或更多个节点的计算模型。示例ANN 900可以包括输入层910、隐藏层920、930、940和输出层950。ANN 900的每个层可以包括一个或更多个节点,例如节点905或节点915。在特定实施例中,ANN的每个节点可以关连到ANN的另一个节点。作为示例而不是作为限制,输入层910的每个节点可以关连到隐藏层920的一个或更多个节点。在特定实施例中,一个或更多个节点可以是偏置节点(例如,层中不关连到前一层中的任何节点并且不从其接收输入的节点)。在特定实施例中,每层中的每个节点可以关连到前一层或后一层的一个或更多个节点。尽管图9描绘了具有特定层数、特定节点数和节点间特定关连的特定ANN,但是本公开设想了具有任何合适层数、任何合适节点数和节点间任何合适关连的任何合适的ANN。作为示例而不是作为限制,尽管图9描绘了输入层910的每个节点和隐藏层920的每个节点之间的关连,但是输入层910的一个或更多个节点可以不关连到隐藏层920的一个或更多个节点。
在特定实施例中,ANN可以是前馈ANN(例如,没有循环或回路的ANN,其中节点之间的通信从输入层开始在一个方向上流动,并前进到连续层)。作为示例而不是作为限制,隐藏层920的每个节点的输入可以包括输入层910的一个或更多个节点的输出。作为另一个示例而不是作为限制,输出层950的每个节点的输入可以包括隐藏层940的一个或更多个节点的输出。在特定实施例中,ANN可以是深度神经网络(例如,包括至少两个隐藏层的神经网络)。在特定实施例中,ANN可以是深度残差网络。深度残差网络可以是前馈ANN,其包括组织成残差块的隐藏层。第一残差块之后的每个残差块的输入可以是前一个残差块的输出和前一个残差块的输入的函数。作为示例而不是作为限制,到残差块N的输入可以是F(x)+x,其中F(x)可以是残差块N-1的输出,x可以是到残差块N-1的输入。尽管本公开描述了特定的ANN,但是本公开设想了任何合适的ANN。
在特定实施例中,激活函数可以对应于ANN的每个节点。节点的激活函数可以针对给定输入定义节点的输出。在特定实施例中,节点的输入可以包括输入集合。作为示例而不是作为限制,激活函数可以是恒等函数、二进制阶跃函数、逻辑函数或任何其他合适的函数。作为另一个示例而不是作为限制,节点k的激活函数可以是sigmoid函数
Figure BDA0003600881990000561
双曲线正切函数
Figure BDA0003600881990000562
整流器Fk(sk)=max(0,sk)或任何其他合适的函数Fk(sk),其中sk可以是节点k的有效输入。在特定实施例中,对应于节点的激活函数的输入可以被加权。每个节点可以使用基于加权输入的对应激活函数来生成输出。在特定实施例中,节点之间的每个关连可以与权重相关联。作为示例而不是作为限制,节点905和节点915之间的关连925可以具有0.4的加权系数,这可以指示节点905的输出乘以0.4被用作节点915的输入。作为另一个示例而不是作为限制,节点k的输出yk可以是yk=Fk(sk),其中Fk可以是对应于节点k的激活函数,sk=∑j(wjkxj)可以是节点k的有效输入,xj可以是关连到节点k的节点j的输出,并且wjk可以是节点j和节点k之间的加权系数。在特定实施例中,输入层的节点的输入可以基于表示对象的向量。尽管本公开描述了节点的特定输入和输出,但是本公开考虑了节点的任何合适的输入和输出。此外,尽管本公开可以描述节点之间的特定关连和权重,但是本公开考虑了节点之间的任何合适的关连和权重。
在特定实施例中,可以使用训练数据来训练ANN。作为示例而不是作为限制,训练数据可以包括ANN 900的输入和预期输出。作为另一个示例而不是作为限制,训练数据可以包括向量,每个向量表示训练对象和每个训练对象的预期标签。在特定实施例中,训练ANN可以包括通过优化目标函数来修改与ANN的节点之间的关连相关联的权重。作为示例而不是作为限制,可以使用训练方法(例如,共轭梯度法、梯度下降法、随机梯度下降)来反向传播作为表示训练对象的每个向量之间的距离测量的平方和误差(例如,使用最小化平方和误差的成本函数)。在特定实施例中,可以使用丢弃技术来训练ANN。作为示例而不是作为限制,在训练时可以暂时忽略一个或更多个节点(例如,不接收输入并且不生成输出)。对于每个训练对象,ANN的一个或更多个节点都可以有被忽略的一定概率。针对特定训练对象忽略的节点可以不同于针对其他训练对象忽略的节点(例如,可以逐个对象地临时忽略节点)。尽管本公开描述了以特定方式训练ANN,但是本公开设想了以任何合适的方式训练ANN。
隐私
在特定实施例中,计算系统的一个或更多个对象(例如,内容或其他类型的对象)可以与一个或更多个隐私设置相关联。一个或更多个对象可以存储在任何合适的计算系统或应用上,或者以其他方式与任何合适的计算系统或应用相关联,该计算系统或应用诸如例如是社交网络系统160、客户端系统130、助理系统140、第三方系统170、社交网络应用、助理应用、消息传递应用、照片共享应用或者任何其他合适的计算系统或应用。尽管本文讨论的示例是在在线社交网络的上下文中,但是这些隐私设置可以应用于任何其他合适的计算系统。对象的隐私设置(或“访问设置”)可以以任何合适的方式(诸如例如,与对象相关联地、以在授权服务器上的索引、以另一种合适的方式或其任何合适的组合)存储。对象的隐私设置可以指定如何可以在在线社交网络中访问、存储或以其他方式使用(例如,查看、共享、修改、复制、执行、显现(surfaced)或识别)该对象(或与该对象相关联的特定信息)。当对象的隐私设置允许特定用户或其他实体访问该对象时,该对象可以被描述为相对于该用户或其他实体是“可见的”。作为示例而非限制,在线社交网络的用户可以指定关于用户简档页面的隐私设置,该隐私设置识别可以访问在用户简档页面上的工作经历信息的一组用户,因而排除其他用户访问该信息。
在特定实施例中,对象的隐私设置可以指定不应当被允许访问与对象相关联的某些信息的用户或其他实体的“黑名单(blocked list)”。在特定实施例中,黑名单可以包括第三方实体。阻止列表可以指定一个或更多个用户或实体,对象对这些用户或实体是不可见的。作为示例而非限制,用户可以指定不能访问与该用户相关联的相册的一组用户,从而排除这些用户访问相册(同时也可能允许不在指定用户群组内的某些用户访问相册)。在特定实施例中,隐私设置可以与特定社交图元素相关联。社交图元素(例如节点或边)的隐私设置可以指定可以如何使用在线社交网络来访问社交图元素、与社交图元素相关联的信息、或与社交图元素相关联的对象。作为示例而非限制,对应于特定照片的特定概念节点704可以具有指定照片仅可以由在照片中标记的用户以及在照片中标记的用户的朋友访问的隐私设置。在特定实施例中,隐私设置可以允许用户选择加入或选择退出使他们的内容、信息或动作被社交网络系统160或助理系统140存储/记录或者与其他系统(例如,第三方系统170)分享。尽管本公开描述了以特定方式使用特定隐私设置,但是本公开设想了以任何合适的方式使用任何合适的隐私设置。
在特定实施例中,隐私设置可以基于社交图700的一个或更多个节点或边。可以为社交图700的一条或更多条边706或边类型、或者关于社交图700的一个或更多个节点702、704或节点类型,指定隐私设置。应用于关连两个节点的特定边706的隐私设置可以控制对应于这两个节点的两个实体之间的关系对于在线社交网络的其他用户是否可见。类似地,应用于特定节点的隐私设置可以控制对应于该节点的用户或概念对于在线社交网络的其他用户是否可见。作为示例而不是作为限制,第一用户可以向社交网络系统160共享对象。该对象可以与通过边706关连到第一用户的用户节点702的概念节点704相关联。第一用户可以指定应用于关连到对象的概念节点704的特定边706的隐私设置,或者可以指定应用于关连到概念节点704的所有边706的隐私设置。作为另一个示例而不是作为限制,第一用户可以共享特定对象类型的对象集合(例如,图像集合)。第一用户可以针对与第一用户相关联的该特定对象类型的所有对象将隐私设置指定为具有特定的隐私设置(例如,指定由第一用户发布的所有图像仅对第一用户的朋友和/或在图像中标记的用户可见)。
在特定实施例中,社交网络系统160可以向第一用户呈现“隐私向导(privacywizard)”(例如,在网页、模块、一个或更多个对话框或任何其他合适的界面内),以帮助第一用户指定一个或更多个隐私设置。隐私向导可以显示指令、合适的隐私相关信息、当前隐私设置、用于接受来自第一用户的指定隐私设置的改变或确认的一个或更多个输入的一个或更多个输入字段、或其任何合适的组合。在特定实施例中,社交网络系统160可以向第一用户提供“仪表板(dashboard)”功能,该功能可以向第一用户显示第一用户的当前隐私设置。仪表板功能可以在任何适当的时间向第一用户显示(例如,在来自调用仪表板功能的第一用户的输入之后,在特定事件或触发动作发生之后)。仪表板功能可以允许第一用户在任何时间以任何合适的方式修改第一用户的一个或更多个当前隐私设置(例如,将第一用户重定向到隐私向导)。
与对象相关联的隐私设置可以指定允许访问或拒绝访问的任何合适的粒度。作为示例而不是作为限制,可以为特定用户(例如,只有我、我的室友、我的老板)、在特定分离度内的用户(例如,朋友、朋友的朋友)、用户群组(例如,游戏俱乐部、我的家人)、用户网络(例如,特定雇主的雇员、特定大学的学生或校友)、所有用户(“公众”)、无用户(“私人的”)、第三方系统170的用户、特定应用(例如,第三方应用、外部网站)、其他合适的实体、或其任何合适的组合来指定访问或拒绝访问。尽管本公开描述了允许访问或拒绝访问的特定粒度,但是本公开设想了允许访问或拒绝访问的任何合适粒度。
在特定实施例中,一个或更多个服务器162可以是用于实施隐私设置的授权/隐私服务器。响应于来自用户(或其他实体)的对存储在数据储存器164中的特定对象的请求,社交网络系统160可以向数据储存器164发送对该对象的请求。请求可以识别与该请求相关联的用户,并且对象只有在授权服务器基于与该对象相关联的隐私设置确定该用户被授权访问该对象时才可以被发送给该用户(或者该用户的客户端系统130)。如果请求用户未被授权访问该对象,则授权服务器可以阻止所请求的对象从数据储存器164中被检索,或者可以阻止所请求的对象被发送给用户。在搜索-查询上下文中,只有当查询用户被授权访问对象时,例如,如果对象的隐私设置允许它显现给查询用户、被查询用户发现或以其他方式对查询用户可见,对象才可以被提供作为搜索结果。在特定实施例中,对象可以表示通过用户的动态消息对用户可见的内容。作为示例而非限制,一个或更多个对象对于用户的“热门话题(Trending)”页面可以是可见的。在特定实施例中,对象可以对应于特定用户。对象可以是与特定用户相关联的内容,或者可以是特定用户的账户或存储在社交网络系统160或其他计算系统上的信息。作为示例而不是作为限制,第一用户可以通过在线社交网络的“你可能认识的人(People You May Know)”功能或者通过查看第一用户的朋友列表来查看在线社交网络的一个或更多个第二用户。作为示例而不是作为限制,第一用户可以指定他们不希望在他们的动态消息或朋友列表中看到与特定第二用户相关联的对象。如果对象的隐私设置不允许其被显露给用户、被用户发现或对用户可见,则该对象可以从搜索结果中排除。尽管本公开描述了以特定方式实施隐私设置,但是本公开设想了以任何合适的方式实施隐私设置。
在特定实施例中,与用户相关联的相同类型的不同对象可以具有不同的隐私设置。与用户相关联的不同类型的对象可能具有不同类型的隐私设置。作为示例而非限制,第一用户可以指定第一用户的状态更新是公开的,但是由第一用户共享的任何图像仅对在线社交网络上的第一用户的朋友可见。作为另一个示例而非限制,用户可以为不同类型的实体(例如个人用户、朋友的朋友、关注者、用户群组或公司实体)指定不同的隐私设置。作为另一示例而非限制,第一用户可以指定可以观看由第一用户发布的视频的一组用户,同时防止视频对第一用户的雇主可见。在特定实施例中,可以为不同的用户群组或用户人口统计提供不同的隐私设置。作为示例而非限制,第一用户可以指定与第一用户上同一所大学的其他用户可以观看第一用户的照片,但是作为第一用户的家庭成员的其他用户不可以观看那些相同的照片。
在特定实施例中,社交网络系统160可以为特定对象类型的每个对象提供一个或更多个默认隐私设置。设置为默认的对象的隐私设置可以由与该对象相关联的用户来改变。作为示例而非限制,由第一用户发布的所有图像可以具有仅对第一用户的朋友可见的默认隐私设置,并且对于特定图像,第一用户可以将该图像的隐私设置改变为对朋友和朋友的朋友可见。
在特定实施例中,隐私设置可以允许第一用户指定(例如,通过选择退出,通过不选择加入)社交网络系统160或助理系统140是否可以出于任何目的接收、收集、记录或存储与用户相关联的特定对象或信息。在特定实施例中,隐私设置可以允许第一用户指定特定应用或进程是否可以访问、存储或使用与用户相关联的特定对象或信息。隐私设置可以允许第一用户选择加入或选择退出使对象或信息被特定应用或进程访问、存储或使用。社交网络系统160或助理系统140可以访问这样的信息,以便向第一用户提供特定的功能或服务,而社交网络系统160或助理系统140不能出于任何其他目的访问该信息。在访问、存储或使用这样的对象或信息之前,社交网络系统160或助理系统140可以提示用户提供隐私设置,该隐私设置指定哪些应用或进程(如果有的话)可以在允许任何这样的动作之前访问、存储或使用对象或信息。作为示例而不是作为限制,第一用户可以经由与在线社交网络相关的应用(例如,消息传递app)向第二用户传输消息,并且可以指定社交网络系统160或助理系统140不应该存储这种消息的隐私设置。
在特定实施例中,用户可以指定社交网络系统160或助理系统140是否可以访问、存储或使用与第一用户相关联的特定类型的对象或信息。作为示例而不是作为限制,第一用户可以指定由第一用户通过社交网络系统160或助理系统140发送的图像不可以被社交网络系统160或助理系统140存储。作为另一个示例而不是作为限制,第一用户可以指定从第一用户发送给特定第二用户的消息不可以被社交网络系统160或助理系统140存储。作为又一个示例而不是作为限制,第一用户可以指定经由特定应用发送的所有对象可以被社交网络系统160或助理系统140保存。
在特定实施例中,隐私设置可以允许第一用户指定是否可以从特定客户端系统130或第三方系统170访问与第一用户相关联的特定对象或信息。隐私设置可以允许第一用户选择加入或选择退出从特定设备(例如,用户的智能手机上的电话簿)、从特定应用(例如,消息传递app)或从特定系统(例如,电子邮件服务器)访问对象或信息。社交网络系统160或助理系统140可以提供关于每个设备、系统或应用的默认隐私设置,和/或可以提示第一用户为每个上下文指定特定的隐私设置。作为示例而不是作为限制,第一用户可以利用社交网络系统160或助理系统140的位置服务特征来提供用户附近的餐馆或其他地方的推荐。第一用户的默认隐私设置可以指定社交网络系统160或助理系统140可以使用从第一用户的客户端设备130提供的位置信息来提供基于位置的服务,但是社交网络系统160或助理系统140不可以存储第一用户的位置信息或将其提供给任何第三方系统170。第一用户然后可以更新隐私设置,以允许第三方图像共享应用使用位置信息,以便对照片进行地理标记。
在特定实施例中,隐私设置可以允许用户指定可以从其访问对象的一个或更多个地理位置。对对象的访问或拒绝访问可取决于试图访问对象的用户的地理位置。作为示例而非限制,用户可以共享对象并指定只有同一城市中的用户可以访问或查看该对象。作为另一个示例而非限制,第一用户可以共享对象,并且指定只有当第一用户在特定位置时,该对象才对第二用户是可见的。如果第一用户离开该特定位置,则对象可不再对第二用户是可见的。作为另一示例而非限制,第一用户可以指定对象仅对在距第一用户的阈值距离内的第二用户可见。如果第一用户随后改变位置,则原始具有对对象的访问权的第二用户可能会失去访问权,而新的一组第二用户可能会在他们到达第一用户的阈值距离内时获得访问权。
在特定实施例中,社交网络系统160或助理系统140可具有可将用户的个人或生物信息用作输入以用于用户认证或体验个性化目的的功能。用户可以选择利用这些功能来增强他们在在线社交网络上的体验。作为示例而不是作为限制,用户可以向社交网络系统160或助理系统140提供个人或生物信息。用户的隐私设置可以指定这样的信息仅可用于特定的进程(如认证),并且还指定这样的信息不能与任何第三方系统170共享,或者不能用于与社交网络系统160或助理系统140相关联的其他进程或应用。作为另一个示例而不是作为限制,社交网络系统160可以为用户提供向在线社交网络提供声纹记录的功能。作为示例而不是作为限制,如果用户希望利用在线社交网络的这一功能,则用户可以提供他或她自己声音的声音记录,以提供在线社交网络上的状态更新。声音输入的记录可以与用户的声纹进行比较,以确定用户说了什么词语。用户的隐私设置可以指定这种声音记录可以仅用于声音输入目的(例如,认证用户、发送声音消息、改进声音识别以便使用在线社交网络的声音操作特征),并且还指定这种声音记录不可以与任何第三方系统170共享,或者不可以被与社交网络系统160相关联的其他进程或应用使用。作为另一个示例而不是作为限制,社交网络系统160可以为用户提供向在线社交网络提供参考图像(例如,面部轮廓、视网膜扫描)的功能。在线社交网络可以将参考图像与稍后接收的图像输入进行比较(例如,用于认证用户,在照片中标记用户)。用户的隐私设置可以指定这种图像仅可用于有限的目的(例如,认证、在照片中标记用户),并且还指定这种图像不能与任何第三方系统170共享,或者不能被与社交网络系统160相关联的其他进程或应用使用。
系统和方法
图10示出了示例计算机系统1000。在特定实施例中,一个或更多个计算机系统1000执行本文描述或示出的一个或更多个方法的一个或更多个步骤。在特定实施例中,一个或更多个计算机系统1000提供本文描述或示出的功能。在特定实施例中,在一个或更多个计算机系统1000上运行的软件执行本文描述或示出的一个或更多个方法的一个或更多个步骤,或者提供本文描述或示出的功能。特定实施例包括一个或更多个计算机系统1000的一个或更多个部分。在本文,在适当的情况下,对计算机系统的引用可以包括计算设备,反之亦然。此外,在适当的情况下,对计算机系统的引用可以包括一个或更多个计算机系统。
本公开设想了任何合适数量的计算机系统1000。本公开设想了计算机系统1000采取任何合适的物理形式。作为示例而不是作为限制,计算机系统1000可以是嵌入式计算机系统、片上系统(SOC)、单板计算机系统(SBC)(诸如例如,模块上计算机(COM)或模块上系统(SOM))、台式计算机系统、膝上型或笔记本计算机系统、交互式信息亭、大型机、计算机系统网状网、移动电话、个人数字助理(PDA)、服务器、平板计算机系统、或者这些中的两个或更多个的组合。在适当的情况下,计算机系统1000可以包括一个或更多个计算机系统1000;是整体式的或分布式的;跨越多个定位;跨越多台机器;跨越多个数据中心;或者驻留在云中,云可以包括在一个或更多个网络中的一个或更多个云组件。在适当的情况下,一个或更多个计算机系统1000可以在没有实质性空间或时间限制的情况下执行本文描述或示出的一个或更多个方法的一个或更多个步骤。作为示例而不是作为限制,一个或更多个计算机系统1000可以实时地或以批处理模式来执行本文描述或示出的一个或更多个方法的一个或更多个步骤。在适当的情况下,一个或更多个计算机系统1000可以在不同的时间或在不同的定位处执行本文描述或示出的一个或更多个方法的一个或更多个步骤。
在特定实施例中,计算机系统1000包括处理器1002、存储器1004、存储装置1006、输入/输出(I/O)接口1008、通信接口1010和总线1012。尽管本公开描述并示出了具有在特定布置中的特定数量的特定组件的特定计算机系统,但是本公开设想了具有在任何合适布置中的任何合适数量的任何合适组件的任何合适的计算机系统。
在特定实施例中,处理器1002包括用于执行指令(例如构成计算机程序的那些指令)的硬件。作为示例而不是作为限制,为了执行指令,处理器1002可以从内部寄存器、内部高速缓存、存储器1004或存储装置1006中检索(或取回)指令;将他们解码并执行它们;以及然后将一个或更多个结果写到内部寄存器、内部高速缓存、存储器1004或存储装置1006。在特定实施例中,处理器1002可以包括用于数据、指令或地址的一个或更多个内部高速缓存。在适当的情况下,本公开设想了处理器1002包括任何合适数量的任何合适的内部高速缓存。作为示例而不是作为限制,处理器1002可以包括一个或更多个指令高速缓存、一个或更多个数据高速缓存、以及一个或更多个转译后备缓冲区(TLB)。在指令高速缓存中的指令可以是在存储器1004或存储装置1006中的指令的副本,并且指令高速缓存可以加速处理器1002对那些指令的检索。在数据高速缓存中的数据可以是:在存储器1004或存储装置1006中的数据的副本,用于使在处理器1002处执行的指令进行操作;在处理器1002处执行的先前指令的结果,用于由在处理器1002处执行的后续指令访问或者用于写到存储器1004或存储装置1006;或其他合适的数据。数据高速缓存可以加速由处理器1002进行的读或写操作。TLB可以加速关于处理器1002的虚拟地址转译。在特定实施例中,处理器1002可以包括用于数据、指令或地址的一个或更多个内部寄存器。在适当的情况下,本公开设想了处理器1002包括任何合适数量的任何合适的内部寄存器。在适当的情况下,处理器1002可以包括一个或更多个算术逻辑单元(ALU);是多核处理器;或者包括一个或更多个处理器1002。尽管本公开描述并示出了特定的处理器,但是本公开设想了任何合适的处理器。
在特定实施例中,存储器1004包括用于存储用于使处理器1002执行的指令或用于使处理器1002操作的数据的主存储器。作为示例而不是作为限制,计算机系统1000可以将指令从存储装置1006或另一个源(例如,另一个计算机系统1000)加载到存储器1004。处理器1002然后可以将指令从存储器1004加载到内部寄存器或内部高速缓存。为了执行指令,处理器1002可以从内部寄存器或内部高速缓存中检索指令并将它们解码。在指令的执行期间或之后,处理器1002可以将一个或更多个结果(其可以是中间结果或最终结果)写到内部寄存器或内部高速缓存。处理器1002然后可以将这些结果中的一个或更多个写到存储器1004。在特定实施例中,处理器1002仅执行在一个或更多个内部寄存器或内部高速缓存中或在存储器1004(而不是存储装置1006或其他地方)中的指令,并且仅对在一个或更多个内部寄存器或内部高速缓存中或在存储器1004(而不是存储装置1006或其他地方)中的数据进行操作。一个或更多个存储器总线(其可以各自包括地址总线和数据总线)可以将处理器1002耦合到存储器1004。如下所述,总线1012可以包括一个或更多个存储器总线。在特定实施例中,一个或更多个存储器管理单元(MMU)驻留在处理器1002和存储器1004之间,并且便于由处理器1002请求的对存储器1004的访问。在特定实施例中,存储器1004包括随机存取存储器(RAM)。在适当的情况下,该RAM可以是易失性存储器。在适当的情况下,该RAM可以是动态RAM(DRAM)或静态RAM(SRAM)。此外,在适当的情况下,该RAM可以是单端口RAM或多端口RAM。本公开设想了任何合适的RAM。在适当的情况下,存储器1004可以包括一个或更多个存储器1004。尽管本公开描述并示出了特定的存储器,但是本公开设想了任何合适的存储器。
在特定实施例中,存储装置1006包括用于数据或指令的大容量存储装置。作为示例而不是作为限制,存储装置1006可以包括硬盘驱动器(HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(USB)驱动器、或这些中的两个或更多个的组合。在适当的情况下,存储装置1006可以包括可移动或不可移动(或固定)介质。在适当的情况下,存储装置1006可以在计算机系统1000的内部或外部。在特定实施例中,存储装置1006是非易失性固态存储器。在特定实施例中,存储装置1006包括只读存储器(ROM)。在适当的情况下,该ROM可以是掩模编程ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、电可变ROM(EAROM)、或闪存、或这些中的两个或更多个的组合。本公开设想了采用任何合适的物理形式的大容量存储装置1006。在适当的情况下,存储装置1006可以包括便于在处理器1002和存储装置1006之间的通信的一个或更多个存储装置控制单元。在适当的情况下,存储装置1006可以包括一个或更多个存储装置1006。尽管本公开描述并示出了特定的存储装置,但是本公开设想了任何合适的存储装置。
在特定实施例中,I/O接口1008包括为在计算机系统1000和一个或更多个I/O设备之间的通信提供一个或更多个接口的硬件、软件或两者。在适当的情况下,计算机系统1000可以包括这些I/O设备中的一个或更多个。这些I/O设备中的一个或更多个可以实现在人和计算机系统1000之间的通信。作为示例而不是作为限制,I/O设备可以包括键盘、小键盘、麦克风、监视器、鼠标、打印机、扫描仪、扬声器、静态摄像机、触笔、平板计算机、触摸屏、跟踪球、视频摄像机、另一个合适的I/O设备、或这些中的两个或更多个的组合。I/O设备可以包括一个或更多个传感器。本公开设想了任何合适的I/O设备以及用于它们的任何合适的I/O接口1008。在适当的情况下,I/O接口1008可以包括使处理器1002能够驱动这些I/O设备中的一个或更多个的一个或更多个设备或软件驱动器。在适当的情况下,I/O接口1008可以包括一个或更多个I/O接口1008。尽管本公开描述并示出了特定的I/O接口,但是本公开设想了任何合适的I/O接口。
在特定实施例中,通信接口1010包括提供用于在计算机系统1000和一个或更多个其他计算机系统1000或一个或更多个网络之间的通信(例如,基于包的通信)的一个或更多个接口的硬件、软件或两者。作为示例而不是作为限制,通信接口1010可以包括用于与以太网或其他基于有线的网络进行通信的网络接口控制器(NIC)或网络适配器,或用于与无线网络(例如Wi-Fi网络)进行通信的无线NIC(WNIC)或无线适配器。本公开设想了任何合适的网络和用于它的任何合适的通信接口1010。作为示例而不是作为限制,计算机系统1000可以与自组织网络、个域网(PAN)、局域网(LAN)、广域网(WAN)、城域网(MAN)或互联网的一个或更多个部分、或这些中的两个或更多个的组合进行通信。这些网络中的一个或更多个的一个或更多个部分可以是有线的或无线的。作为示例,计算机系统1000可以与无线PAN(WPAN)(例如,蓝牙WPAN)、WI-FI网络、WI-MAX网络、蜂窝电话网络(例如,全球移动通信系统(GSM)网络)、或其他合适的无线网络、或这些中的两个或更多个的组合进行通信。在适当的情况下,计算机系统1000可以包括用于这些网络中的任一个的任何合适的通信接口1010。在适当的情况下,通信接口1010可以包括一个或更多个通信接口1010。尽管本公开描述并示出了特定的通信接口,但是本公开设想了任何合适的通信接口。
在特定实施例中,总线1012包括将计算机系统1000的组件耦合到彼此的硬件、软件或两者。作为示例而不是作为限制,总线1012可以包括加速图形端口(AGP)或其他图形总线、扩展工业标准体系结构(EISA)总线、前端总线(FSB)、HYPERTRANSPORT(HT)互连、工业标准体系结构(ISA)总线、INFINIBAND互连、低引脚数(LPC)总线、存储器总线,微通道体系结构(MCA)总线、外围部件互连(PCI)总线、PCI-Express(PCIe)总线、串行高级技术附件(SATA)总线、视频电子标准协会本地(VLB)总线、或任何其他合适的总线、或这些中的两个或更多个的组合。在适当的情况下,总线1012可以包括一个或更多个总线1012。尽管本公开描述并示出了特定总线,但是本公开设想了任何合适的总线或互连。
在本文,在适当的情况下,一个或更多个计算机可读非暂时性存储介质可以包括一个或更多个基于半导体的或其他集成电路(IC)(例如,现场可编程门阵列(FPGA)或专用IC(ASIC))、硬盘驱动器(HDD)、混合硬盘驱动器(HHD)、光盘、光盘驱动器(ODD)、磁光盘、磁光盘驱动器、软盘、软盘驱动器(FDD)、磁带、固态驱动器(SSD)、RAM驱动器、安全数字(SECURE DIGITAL)卡或驱动器、任何其他合适的计算机可读非暂时性存储介质、或这些中的两个或更多个的任何合适组合。在适当的情况下,计算机可读非暂时性存储介质可以是易失性的、非易失性的或者易失性和非易失性的组合。
其他杂项
本文中,除非另有明确指示或通过上下文另有指示,否则“或”是包括一切的而非排他性的。因此在本文,除非另有明确指示或通过上下文另有指示,否则“A或B”意指“A、B或两者”。此外,除非另有明确指示或通过上下文另有指示,否则“和”既是联合的又是各自的。因此在本文,除非另有明确指示或通过上下文另有指示,否则“A和B”意指“A和B,联合地或各自地”。
本公开的范围包括本领域中的普通技术人员将理解的对本文描述或示出的示例实施例的所有改变、替换、变化、变更和修改。本公开的范围不限于本文描述或示出的示例实施例。此外,尽管本公开将本文的相应实施例描述并示为包括特定的组件、元件、特征、功能、操作或步骤,但是这些实施例中的任何一个可以包括本领域中的普通技术人员将理解的在本文任何地方描述或示出的任何组件、元件、特征、功能、操作或步骤的任何组合或置换。此外,在所附权利要求中对适合于、被布置成、能够、被配置成、实现来、可操作来、或操作来执行特定功能的装置或系统或装置或系统的组件的引用包括该装置、系统、组件,无论它或那个特定功能是否被激活、开启或解锁,只要该装置、系统或组件是这样被调整、被布置、使能够、被配置、被实现、可操作的、或操作的。此外,尽管本公开将特定实施例描述或示为提供特定优点,但是特定实施例可以提供这些优点中的一些、全部或不提供这些优点。

Claims (15)

1.一种方法,包括由客户端系统:
在所述客户端系统处接收包括一个或更多个单词的用户输入,其中每个单词包括一个或更多个字符;
将所述一个或更多个单词输入到存储在所述客户端系统上的卷积神经网络(CNN)模型;
从所述客户端系统的数据储存器中分别访问多个字符的多个字符嵌入;
基于所访问的字符嵌入,通过用所述CNN模型的一个或更多个卷积层和一个或更多个门控线性单元处理所述访问的字符嵌入,来分别为所述一个或更多个单词生成一个或更多个单词嵌入;
基于所述CNN模型对所述一个或更多个单词嵌入的分析,确定对应于所述用户输入的一个或更多个任务以供执行;和
基于所述一个或更多个任务的执行,在所述客户端系统处提供响应于所述用户输入的输出。
2.根据权利要求1所述的方法,还包括:
由存储在所述客户端系统上的自然语言理解模块将所述用户输入解析成所述一个或更多个单词。
3.根据权利要求1所述的方法,其中所述CNN模型包括多个层,其中所述多个层至少包括卷积层、池化层、门控线性单元、线性层和具有梯度截断的残差连接。
4.根据权利要求1所述的方法,还包括:
通过基于所述CNN模型分析所述一个或更多个单词嵌入来确定与所述用户输入相关联的一个或更多个意图,其中确定所述一个或更多个意图包括:
由所述CNN模型的一个或更多个卷积层和一个或更多个池化层基于所述一个或更多个单词嵌入来生成所述用户输入的特征表示;
由所述CNN模型的一个或更多个线性层基于所述特征表示计算对应于多个意图的多个概率,其中每个概率指示对应的意图与所述用户输入相关联的可能性;和
基于所计算的概率,从所述多个意图中确定所述一个或更多个意图。
5.根据权利要求1所述的方法,还包括:
通过基于所述CNN模型分析所述一个或更多个单词嵌入来确定与所述用户输入相关联的一个或更多个槽,其中确定所述一个或更多个槽包括:
由所述CNN模型的一个或更多个线性层基于所述一个或更多个单词嵌入计算对应于多个槽的多个概率,其中每个概率指示对应槽与相应单词相关联的可能性;和
基于所计算的概率,从所述多个槽中确定所述一个或更多个槽。
6.根据权利要求1所述的方法,其中利用所述CNN模型的一个或更多个卷积层对所访问的字符嵌入的处理基于一个或更多个数字信号处理(DSP)算法,其中,所述一个或更多个DSP算法基于所述客户端系统的硬件部件来确定;和/或其中所述CNN模型对所述一个或更多个单词嵌入的分析基于一个或更多个数字信号处理(DSP)算法,其中所述一个或更多个DSP算法基于所述客户端系统的硬件部件来确定。
7.根据权利要求1所述的方法,其中生成所述一个或更多个单词嵌入还基于多个字典特征。
8.根据权利要求1所述的方法,其中与所述CNN模型相关联的多个参数和多个激活被量化。
9.根据权利要求1所述的方法,还包括:
向一个或更多个远程服务器发送所述一个或更多个任务以供执行,其中所述输出是由所述一个或更多个远程服务器基于所述一个或更多个任务的执行而生成的;和
在所述客户端系统处从所述一个或更多个远程服务器接收用于提供所述输出的指令。
10.根据权利要求1所述的方法,其中所述CNN模型包括多个层,其中所述多个层是基于一个或更多个修剪算法生成的,其中所述一个或更多个修剪算法是基于所述客户端系统的硬件部件确定的。
11.根据权利要求1所述的方法,其中所述CNN模型包括多个参数,其中所述多个参数基于一个或更多个稀疏化算法来确定。
12.一个或更多个计算机可读非暂时性存储介质,其包含软件,所述软件在被执行时能够操作来:
在客户端系统处接收包括一个或更多个单词的用户输入,其中每个单词包括一个或更多个字符;
将所述一个或更多个单词输入到存储在所述客户端系统上的卷积神经网络(CNN)模型;
从所述客户端系统的数据储存器中分别访问多个字符的多个字符嵌入;
基于所访问的字符嵌入,通过用所述CNN模型的一个或更多个卷积层和一个或更多个门控线性单元处理所述访问的字符嵌入,来分别为所述一个或更多个单词生成一个或更多个单词嵌入;
基于所述CNN模型对所述一个或更多个单词嵌入的分析,确定对应于所述用户输入的一个或更多个任务以供执行;和
基于所述一个或更多个任务的执行,在所述客户端系统处提供响应于所述用户输入的输出。
13.根据权利要求12所述的介质,其中所述软件在被执行时还能够操作来:
由存储在所述客户端系统上的自然语言理解模块将所述用户输入解析成所述一个或更多个单词;和/或通过基于所述CNN模型分析所述一个或更多个单词嵌入来确定与所述用户输入相关联的一个或更多个意图。
14.根据权利要求12所述的介质,其中所述CNN模型包括多个层,其中所述多个层至少包括卷积层、池化层、门控线性单元、线性层和具有梯度截断的残差连接。
15.一种系统,包括:一个或更多个处理器;以及耦合到所述处理器的非暂时性存储器,所述存储器包括能够由所述处理器执行的指令,当执行所述指令时,所述处理器能够操作以:
在所述客户端系统处接收包括一个或更多个单词的用户输入,其中每个单词包括一个或更多个字符;
将所述一个或更多个单词输入到存储在所述客户端系统上的卷积神经网络(CNN)模型;
从所述客户端系统的数据储存器中分别访问多个字符的多个字符嵌入;
基于所访问的字符嵌入,通过用所述CNN模型的一个或更多个卷积层和一个或更多个门控线性单元处理所述访问的字符嵌入,来分别为所述一个或更多个单词生成一个或更多个单词嵌入;
基于所述CNN模型对所述一个或更多个单词嵌入的分析,确定对应于所述用户输入的一个或更多个任务以供执行;和
基于所述一个或更多个任务的执行,在所述客户端系统处提供响应于所述用户输入的输出。
CN202080072955.1A 2019-10-18 2020-10-07 助理系统的设备上卷积神经网络模型 Pending CN114600114A (zh)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
US201962923342P 2019-10-18 2019-10-18
US62/923,342 2019-10-18
US16/659,363 2019-10-21
US16/659,363 US11308284B2 (en) 2019-10-18 2019-10-21 Smart cameras enabled by assistant systems
US16/703,700 2019-12-04
US16/703,700 US11314941B2 (en) 2019-10-18 2019-12-04 On-device convolutional neural network models for assistant systems
US16/733,044 US11688021B2 (en) 2019-10-18 2020-01-02 Suppressing reminders for assistant systems
US16/733,044 2020-01-02
US16/741,642 US11403466B2 (en) 2019-10-18 2020-01-13 Speech recognition accuracy with natural-language understanding based meta-speech systems for assistant systems
US16/741,642 2020-01-13
PCT/US2020/054604 WO2021076373A1 (en) 2019-10-18 2020-10-07 On-device convolutional neural network models for assistant systems

Publications (1)

Publication Number Publication Date
CN114600114A true CN114600114A (zh) 2022-06-07

Family

ID=75490741

Family Applications (6)

Application Number Title Priority Date Filing Date
CN202080066258.5A Pending CN114766091A (zh) 2019-10-18 2020-09-25 利用助理系统的任务持久性的用户控制的任务执行
CN202080072956.6A Pending CN114600099A (zh) 2019-10-18 2020-09-26 使用助理系统的基于自然语言理解的元语音系统提高语音识别精度
CN202080072841.7A Pending CN114556355A (zh) 2019-10-18 2020-09-26 抑制助理系统的提醒
CN202080073037.0A Pending CN114556333A (zh) 2019-10-18 2020-09-26 由助理系统启用的智能摄像机
CN202080072955.1A Pending CN114600114A (zh) 2019-10-18 2020-10-07 助理系统的设备上卷积神经网络模型
CN202080073029.6A Pending CN114631091A (zh) 2019-10-18 2020-10-16 用于助理系统的使用结构本体的语义表示

Family Applications Before (4)

Application Number Title Priority Date Filing Date
CN202080066258.5A Pending CN114766091A (zh) 2019-10-18 2020-09-25 利用助理系统的任务持久性的用户控制的任务执行
CN202080072956.6A Pending CN114600099A (zh) 2019-10-18 2020-09-26 使用助理系统的基于自然语言理解的元语音系统提高语音识别精度
CN202080072841.7A Pending CN114556355A (zh) 2019-10-18 2020-09-26 抑制助理系统的提醒
CN202080073037.0A Pending CN114556333A (zh) 2019-10-18 2020-09-26 由助理系统启用的智能摄像机

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202080073029.6A Pending CN114631091A (zh) 2019-10-18 2020-10-16 用于助理系统的使用结构本体的语义表示

Country Status (4)

Country Link
US (24) US11861674B1 (zh)
EP (6) EP4046124A1 (zh)
CN (6) CN114766091A (zh)
WO (6) WO2021076302A1 (zh)

Families Citing this family (161)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10242503B2 (en) 2017-01-09 2019-03-26 Snap Inc. Surface aware lens
EP3698540A1 (en) * 2017-12-05 2020-08-26 Google LLC Method for converting landscape video to portrait mobile layout using a selection interface
US11010428B2 (en) * 2018-01-16 2021-05-18 Google Llc Systems, methods, and apparatuses for providing assistant deep links to effectuate third-party dialog session transfers
US11715042B1 (en) 2018-04-20 2023-08-01 Meta Platforms Technologies, Llc Interpretability of deep reinforcement learning models in assistant systems
US11886473B2 (en) 2018-04-20 2024-01-30 Meta Platforms, Inc. Intent identification for agent matching by assistant systems
US20190327330A1 (en) 2018-04-20 2019-10-24 Facebook, Inc. Building Customized User Profiles Based on Conversational Data
US11307880B2 (en) 2018-04-20 2022-04-19 Meta Platforms, Inc. Assisting users with personalized and contextual communication content
US11676220B2 (en) 2018-04-20 2023-06-13 Meta Platforms, Inc. Processing multimodal user input for assistant systems
JP7381581B2 (ja) * 2018-07-19 2023-11-15 ソウル マシーンズ リミティド マシン相互作用
US11030813B2 (en) 2018-08-30 2021-06-08 Snap Inc. Video clip object tracking
JP7142315B2 (ja) * 2018-09-27 2022-09-27 パナソニックIpマネジメント株式会社 説明支援装置および説明支援方法
US11176737B2 (en) 2018-11-27 2021-11-16 Snap Inc. Textured mesh building
CN113330484A (zh) 2018-12-20 2021-08-31 斯纳普公司 虚拟表面修改
US11423910B2 (en) * 2019-03-19 2022-08-23 Servicenow, Inc. Systems and method for third party natural language understanding service integration
US11189098B2 (en) * 2019-06-28 2021-11-30 Snap Inc. 3D object camera customization system
US11340756B2 (en) 2019-09-27 2022-05-24 Apple Inc. Devices, methods, and graphical user interfaces for interacting with three-dimensional environments
US11256526B2 (en) * 2019-10-11 2022-02-22 Lenovo (Singapore) Pte. Ltd. Contextual item management
US11567788B1 (en) 2019-10-18 2023-01-31 Meta Platforms, Inc. Generating proactive reminders for assistant systems
US11861674B1 (en) 2019-10-18 2024-01-02 Meta Platforms Technologies, Llc Method, one or more computer-readable non-transitory storage media, and a system for generating comprehensive information for products of interest by assistant systems
WO2021080033A1 (ko) * 2019-10-23 2021-04-29 엘지전자 주식회사 음성 분석 방법 및 장치
US11948561B2 (en) * 2019-10-28 2024-04-02 Apple Inc. Automatic speech recognition imposter rejection on a headphone with an accelerometer
US11593608B2 (en) * 2019-10-28 2023-02-28 Paypal, Inc. Systems and methods for predicting and providing automated online chat assistance
CN111026937B (zh) * 2019-11-13 2021-02-19 百度在线网络技术(北京)有限公司 提取poi名称的方法、装置、设备和计算机存储介质
KR20210060897A (ko) * 2019-11-19 2021-05-27 삼성전자주식회사 음성 처리 방법 및 장치
US11355123B2 (en) * 2019-11-19 2022-06-07 International Business Machines Corporation Network data aligning
US11227442B1 (en) 2019-12-19 2022-01-18 Snap Inc. 3D captions with semantic graphical elements
KR20210086008A (ko) * 2019-12-31 2021-07-08 삼성전자주식회사 컨텐츠 추천 모델을 개인화하는 방법 및 장치
CN114930324A (zh) * 2020-01-06 2022-08-19 谷歌有限责任公司 用于对媒体内容进行搜索和编索引的共享嵌入的隐私控制
CN111241282B (zh) * 2020-01-14 2023-09-08 北京百度网讯科技有限公司 文本主题生成方法、装置及电子设备
US20210232918A1 (en) * 2020-01-29 2021-07-29 Nec Laboratories America, Inc. Node aggregation with graph neural networks
US11562264B2 (en) * 2020-01-29 2023-01-24 Accenture Global Solutions Limited System and method for using machine learning to select one or more submissions from a plurality of submissions
US11809435B2 (en) * 2020-02-17 2023-11-07 Google Llc Efficient storage, retrieval, and/or rendering of personal entries
US11763259B1 (en) 2020-02-20 2023-09-19 Asana, Inc. Systems and methods to generate units of work in a collaboration environment
US11651767B2 (en) * 2020-03-03 2023-05-16 International Business Machines Corporation Metric learning of speaker diarization
US11159767B1 (en) * 2020-04-07 2021-10-26 Facebook Technologies, Llc Proactive in-call content recommendations for assistant systems
CN117320034A (zh) * 2020-04-29 2023-12-29 华为技术有限公司 一种通信方法、装置及系统
JP7380415B2 (ja) 2020-05-18 2023-11-15 トヨタ自動車株式会社 エージェント制御装置
JP7380416B2 (ja) * 2020-05-18 2023-11-15 トヨタ自動車株式会社 エージェント制御装置
US11727306B2 (en) * 2020-05-20 2023-08-15 Bank Of America Corporation Distributed artificial intelligence model with deception nodes
JP7266683B2 (ja) * 2020-05-22 2023-04-28 バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッド 音声対話に基づく情報検証方法、装置、デバイス、コンピュータ記憶媒体、およびコンピュータプログラム
CA3178952A1 (en) 2020-06-02 2021-12-09 Jeffrey SALTER Systems and method for intent messaging
US11715044B2 (en) * 2020-06-02 2023-08-01 Huawei Cloud Computing Technologies Co., Ltd. Methods and systems for horizontal federated learning using non-IID data
US11004087B1 (en) * 2020-06-08 2021-05-11 Coupang Corp. Systems and methods for processing exception event request to identify defective product
KR102501496B1 (ko) * 2020-06-11 2023-02-20 라인플러스 주식회사 개인화를 통한 연합 학습의 다중 모델 제공 방법, 시스템, 및 컴퓨터 프로그램
US11290851B2 (en) * 2020-06-15 2022-03-29 Snap Inc. Location sharing using offline and online objects
US11503432B2 (en) 2020-06-15 2022-11-15 Snap Inc. Scalable real-time location sharing framework
US11483267B2 (en) 2020-06-15 2022-10-25 Snap Inc. Location sharing using different rate-limited links
US11392195B2 (en) * 2020-06-15 2022-07-19 Strongarm Technologies, Inc. Methods and apparatus for actions, activities and tasks classifications based on machine learning techniques
US11314776B2 (en) 2020-06-15 2022-04-26 Snap Inc. Location sharing using friend list versions
US11803400B2 (en) * 2020-06-25 2023-10-31 International Business Machines Corporation Method and system for asynchronous notifications for users in contextual interactive systems
US11900323B1 (en) * 2020-06-29 2024-02-13 Asana, Inc. Systems and methods to generate units of work within a collaboration environment based on video dictation
US11550605B2 (en) * 2020-06-30 2023-01-10 Kasisto, Inc. Building and managing cohesive interaction for virtual assistants
US20220270590A1 (en) * 2020-07-20 2022-08-25 Google Llc Unsupervised federated learning of machine learning model layers
US11641330B2 (en) * 2020-08-06 2023-05-02 International Business Machines Corporation Communication content tailoring
US11861470B2 (en) * 2020-08-13 2024-01-02 State Farm Mutual Automobile Insurance Company Simplistic machine learning model generation tool for predictive data analytics
US11909482B2 (en) * 2020-08-18 2024-02-20 Qualcomm Incorporated Federated learning for client-specific neural network parameter generation for wireless communication
US11996116B2 (en) * 2020-08-24 2024-05-28 Google Llc Methods and systems for implementing on-device non-semantic representation fine-tuning for speech classification
EP4200717A2 (en) * 2020-08-24 2023-06-28 Unlikely Artificial Intelligence Limited A computer implemented method for the automated analysis or use of data
JP2022046316A (ja) * 2020-09-10 2022-03-23 キヤノン株式会社 情報提示システム、その制御方法、および、プログラム
US20220083986A1 (en) * 2020-09-14 2022-03-17 Apple Inc. Digital assistant-enabled daily briefings
US11355118B2 (en) * 2020-09-15 2022-06-07 Kyndryl, Inc. Virtual assistants harmonization
US20220083917A1 (en) * 2020-09-15 2022-03-17 Vmware, Inc. Distributed and federated learning using multi-layer machine learning models
KR20220037846A (ko) * 2020-09-18 2022-03-25 삼성전자주식회사 음성 인식을 수행하기 위한 전자 장치를 식별하기 위한 전자 장치 및 그 동작 방법
US20220093086A1 (en) * 2020-09-18 2022-03-24 Prama, Inc. Method and a system for capturing conversations
US11908468B2 (en) * 2020-09-21 2024-02-20 Amazon Technologies, Inc. Dialog management for multiple users
US11881214B1 (en) * 2020-09-23 2024-01-23 Amazon Technologies, Inc. Sending prompt data related to content output on a voice-controlled device
US11615596B2 (en) 2020-09-24 2023-03-28 Apple Inc. Devices, methods, and graphical user interfaces for interacting with three-dimensional environments
US11567625B2 (en) * 2020-09-24 2023-01-31 Apple Inc. Devices, methods, and graphical user interfaces for interacting with three-dimensional environments
US11431660B1 (en) * 2020-09-25 2022-08-30 Conversation Processing Intelligence Corp. System and method for collaborative conversational AI
US11934487B2 (en) * 2020-09-30 2024-03-19 EMC IP Holding Company LLC Splitting neural networks on multiple edge devices to train on vertically distributed data
US11537661B2 (en) * 2020-10-02 2022-12-27 PolyAI Limited Systems and methods for conversing with a user
US11756551B2 (en) * 2020-10-07 2023-09-12 Mitsubishi Electric Research Laboratories, Inc. System and method for producing metadata of an audio signal
CN116457874A (zh) * 2020-10-07 2023-07-18 三星电子株式会社 用于理解自然语言的电子装置和参数获取方法
US20220121694A1 (en) * 2020-10-20 2022-04-21 Unisys Corporation Semantic search and response
US11188833B1 (en) * 2020-11-05 2021-11-30 Birdview Films. Llc Real-time predictive knowledge pattern machine
US20220147547A1 (en) * 2020-11-12 2022-05-12 International Business Machines Corporation Analogy based recognition
US11670104B1 (en) * 2020-11-13 2023-06-06 Amazon Technologies, Inc. System for determining embedding from multiple inputs
US20220215357A1 (en) * 2020-11-17 2022-07-07 Paul Ashley Systems, apparatuses, interfaces, and applications of person specific funding instruments on specified celebration days and methods for implementing and using same
US20220156574A1 (en) * 2020-11-19 2022-05-19 Kabushiki Kaisha Toshiba Methods and systems for remote training of a machine learning model
US11769018B2 (en) * 2020-11-24 2023-09-26 Openstream Inc. System and method for temporal attention behavioral analysis of multi-modal conversations in a question and answer system
US20220189475A1 (en) * 2020-12-10 2022-06-16 International Business Machines Corporation Dynamic virtual assistant speech modulation
US11563706B2 (en) * 2020-12-29 2023-01-24 Meta Platforms, Inc. Generating context-aware rendering of media contents for assistant systems
CA3143855A1 (en) * 2020-12-30 2022-06-30 Atb Financial Systems and methods for federated learning on blockchain
US11790611B2 (en) * 2020-12-30 2023-10-17 Meta Platforms, Inc. Visual editor for designing augmented-reality effects that utilize voice recognition
US20230274095A1 (en) * 2021-01-11 2023-08-31 Gotlt! Inc. Autonomous conversational ai system without any configuration by a human
US11943184B2 (en) * 2021-01-21 2024-03-26 Samsung Electronics Co., Ltd. Device and method for providing notification message related to content
US11947783B2 (en) * 2021-01-25 2024-04-02 Google Llc Undoing application operation(s) via user interaction(s) with an automated assistant
CN112836039B (zh) * 2021-01-27 2023-04-21 成都网安科技发展有限公司 基于深度学习的语音数据处理方法和装置
US20220246144A1 (en) * 2021-01-29 2022-08-04 Salesforce.Com, Inc. Intent disambiguation within a virtual agent platform
US11960842B2 (en) 2021-02-27 2024-04-16 Walmart Apollo, Llc Methods and apparatus for natural language understanding in conversational systems using machine learning processes
US20220277142A1 (en) * 2021-02-27 2022-09-01 Walmart Apollo, Llc Methods and apparatus for natural language understanding in conversational systems using machine learning processes
US20220292346A1 (en) * 2021-03-10 2022-09-15 Rockspoon, Inc. System and method for intelligent service intermediation
US11749261B2 (en) * 2021-03-10 2023-09-05 Google Llc Mixed client-server federated learning of machine learning model(s)
US11755954B2 (en) * 2021-03-11 2023-09-12 International Business Machines Corporation Scheduled federated learning for enhanced search
JP7420109B2 (ja) * 2021-04-08 2024-01-23 トヨタ自動車株式会社 情報出力システム、サーバ装置および情報出力方法
US11861315B2 (en) 2021-04-21 2024-01-02 Meta Platforms, Inc. Continuous learning for natural-language understanding models for assistant systems
CN113435205A (zh) * 2021-04-29 2021-09-24 北京小米移动软件有限公司 语义解析方法及装置
EP4083865A1 (en) * 2021-04-30 2022-11-02 Degussa Bank AG Method and system for providing virtual services
US11750731B2 (en) * 2021-05-17 2023-09-05 Capital One Services, Llc Machine learning for determining communication protocols
CN113222031B (zh) * 2021-05-19 2022-04-12 浙江大学 基于联邦个性化学习的光刻热区检测方法
US11809222B1 (en) 2021-05-24 2023-11-07 Asana, Inc. Systems and methods to generate units of work within a collaboration environment based on selection of text
US11568860B2 (en) * 2021-05-31 2023-01-31 Rockspoon, Inc. System and method for federated, context-sensitive, acoustic model refinement
US11238849B1 (en) * 2021-05-31 2022-02-01 Rockspoon, Inc. System and method for federated, context-sensitive, adaptive language models
CN113377907B (zh) * 2021-06-08 2023-06-09 四川大学 基于记忆掩码自注意力网络的端到端任务型对话系统
US11935543B2 (en) * 2021-06-08 2024-03-19 Openstream Inc. System and method for cooperative plan-based utterance-guided multimodal dialogue
US11593819B2 (en) * 2021-06-09 2023-02-28 Maplebear Inc. Training a model to predict likelihoods of users performing an action after being presented with a content item
CN113283177B (zh) * 2021-06-16 2022-05-24 江南大学 一种基于异步联邦学习的移动感知缓存方法
US11354599B1 (en) * 2021-06-25 2022-06-07 BRYTER GmbH Methods and systems for generating a data structure using graphical models
CN113391907A (zh) * 2021-06-25 2021-09-14 中债金科信息技术有限公司 一种任务的放置方法、装置、设备和介质
CN113177645B (zh) * 2021-06-29 2021-09-28 腾讯科技(深圳)有限公司 联邦学习方法、装置、计算设备及存储介质
US20230004948A1 (en) * 2021-06-30 2023-01-05 Earley Information Science, Inc. Digital data processing systems and methods for commerce-related digital content retrieval and generation
US20230004555A1 (en) * 2021-07-05 2023-01-05 International Business Machines Corporation Automatically and incrementally specifying queries through dialog understanding in real time
CN113392933B (zh) * 2021-07-06 2022-04-15 湖南大学 一种基于不确定性引导的自适应跨域目标检测方法
WO2023283323A1 (en) * 2021-07-07 2023-01-12 Meta Platforms Technologies, Llc Camera control using system sensor data
US20230008868A1 (en) * 2021-07-08 2023-01-12 Nippon Telegraph And Telephone Corporation User authentication device, user authentication method, and user authentication computer program
AU2022308717A1 (en) * 2021-07-09 2024-01-25 Canaery, Inc. Systems and methods for brain-machine-interface-aided federated training of scent detection animals
CN113435399B (zh) * 2021-07-14 2022-04-15 电子科技大学 一种基于多层次排序学习的多轮视觉对话方法
US11854069B2 (en) * 2021-07-16 2023-12-26 Snap Inc. Personalized try-on ads
US20230020504A1 (en) * 2021-07-16 2023-01-19 Whitestar Communications, Inc. Localized machine learning of user behaviors in network operating system for enhanced secure services in secure data network
US20230027713A1 (en) * 2021-07-21 2023-01-26 International Business Machines Corporation Neural-Symbolic Action Transformers for Video Question Answering
CN113537514B (zh) * 2021-07-27 2023-07-25 北京邮电大学 一种高能效的基于数字孪生的联邦学习框架
US20230038691A1 (en) * 2021-08-05 2023-02-09 Yaar Inc. Workflow instruction interpretation for web task automation
US11823697B2 (en) * 2021-08-20 2023-11-21 Google Llc Improving speech recognition with speech synthesis-based model adapation
US11977854B2 (en) 2021-08-24 2024-05-07 Unlikely Artificial Intelligence Limited Computer implemented methods for the automated analysis or use of data, including use of a large language model
US11989527B2 (en) 2021-08-24 2024-05-21 Unlikely Artificial Intelligence Limited Computer implemented methods for the automated analysis or use of data, including use of a large language model
US11989507B2 (en) 2021-08-24 2024-05-21 Unlikely Artificial Intelligence Limited Computer implemented methods for the automated analysis or use of data, including use of a large language model
EP4169016B1 (en) * 2021-08-30 2024-04-03 Google LLC Collaborative ranking of interpretations of spoken utterances
US11948580B2 (en) * 2021-08-30 2024-04-02 Google Llc Collaborative ranking of interpretations of spoken utterances
CN113723619A (zh) * 2021-08-31 2021-11-30 南京大学 一种基于训练阶段感知策略的联邦学习训练方法
WO2023034847A1 (en) * 2021-08-31 2023-03-09 Yohana Llc Automated cognitive load-based task throttling
US11942075B2 (en) * 2021-09-24 2024-03-26 Openstream Inc. System and method for automated digital twin behavior modeling for multimodal conversations
CN113762530B (zh) * 2021-09-28 2024-02-02 北京航空航天大学 面向隐私保护的精度反馈联邦学习方法
WO2023064074A1 (en) * 2021-10-14 2023-04-20 Microsoft Technology Licensing, Llc. Grounded multimodal agent interactions
US20230132465A1 (en) * 2021-10-31 2023-05-04 Bmc Software, Inc. Automated skill discovery, skill level computation, and intelligent matching using generated hierarchical skill paths
US20230143133A1 (en) * 2021-11-10 2023-05-11 Meta Platforms, Inc. Intelligently enhancing media content items
US20230156314A1 (en) * 2021-11-15 2023-05-18 Meta Platforms Technologies, Llc Gaze-based camera auto-capture
US11531943B1 (en) 2021-11-18 2022-12-20 Slate Technologies Inc. Intelligence driven method and system for multi-factor optimization of schedules and resource recommendations for smart construction
WO2023090951A1 (en) * 2021-11-19 2023-05-25 Samsung Electronics Co., Ltd. Methods and systems for suggesting an enhanced multimodal interaction
US11671385B1 (en) * 2021-12-07 2023-06-06 International Business Machines Corporation Automated communication exchange programs for attended robotic process automation
US20230222293A1 (en) * 2022-01-10 2023-07-13 Capital One Services, Llc Systems and methods for generating a user acknowledgment
US11972280B2 (en) * 2022-01-28 2024-04-30 Intuit Inc. Graphical user interface for conversational task completion
WO2023159072A1 (en) * 2022-02-15 2023-08-24 The Board Of Trustees Of The Leland Stanford Junior University Personalized machine learning on mobile computing devices
US11836681B1 (en) 2022-02-17 2023-12-05 Asana, Inc. Systems and methods to generate records within a collaboration environment
US11997425B1 (en) 2022-02-17 2024-05-28 Asana, Inc. Systems and methods to generate correspondences between portions of recorded audio content and records of a collaboration environment
US11868686B2 (en) 2022-03-04 2024-01-09 Slate Technologies Inc. System and method for manufacture and customization of construction assemblies in a computing environment
US11868384B2 (en) 2022-03-25 2024-01-09 OrangeDot, Inc. Method and system for automatically determining responses in a messaging platform
US11907885B1 (en) 2022-03-29 2024-02-20 Slate Technologies Inc. System and method for computational simulation and augmented/virtual reality in a construction environment
US20230350928A1 (en) * 2022-04-28 2023-11-02 Knowbl LLC Systems and methods for implementing a virtual agent performing context and query transformations using unsupervised machine learning models
US20230351661A1 (en) * 2022-04-28 2023-11-02 Theai, Inc. Artificial intelligence character models with goal-oriented behavior
WO2023219896A1 (en) * 2022-05-11 2023-11-16 OrangeDot, Inc. Method and system for automatically prioritizing content provided to a user
US11843899B1 (en) 2022-06-01 2023-12-12 Cisco Technology, Inc. Meeting-transparent sound triggers and controls
US11968221B2 (en) * 2022-06-27 2024-04-23 International Business Machines Corporation Dynamically federated data breach detection
CN114840327B (zh) * 2022-06-29 2022-12-02 阿里巴巴达摩院(杭州)科技有限公司 多模态多任务的处理方法、设备及系统
US20240020716A1 (en) * 2022-07-14 2024-01-18 Oracle International Corporation Machine Learning Based Federated Learning with Hierarchical Modeling Hotel Upsell
US11988841B2 (en) * 2022-08-02 2024-05-21 Snap Inc. Voice input for AR wearable devices
CN115146615A (zh) * 2022-09-02 2022-10-04 深圳联友科技有限公司 一种自然语言处理方法、系统、设备和可读存储介质
US20240078412A1 (en) * 2022-09-07 2024-03-07 Google Llc Generating audio using auto-regressive generative neural networks
WO2024064228A1 (en) * 2022-09-23 2024-03-28 Cipherome, Inc. Interoperable privacy-preserving distributed machine learning method for healthcare applications for heterogenous multi-center data
WO2024077082A1 (en) * 2022-10-04 2024-04-11 Home Depot International, Inc. Machine learning-based user intent determination
DE102022129747A1 (de) 2022-11-10 2024-05-16 Cariad Se Verfahren und system zum anlernen einer intelligenten funktion von kraftfahrzeugen
US11983329B1 (en) 2022-12-05 2024-05-14 Meta Platforms, Inc. Detecting head gestures using inertial measurement unit signals

Family Cites Families (352)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3706503A (en) 1969-06-30 1972-12-19 James P Foley Leaf binding
US5567805A (en) 1990-03-09 1996-10-22 Administrators Of The Tulane Educational Fund The cellular receptor for the CS3 peptide of human immunodeficiency virus
US5809492A (en) 1996-04-09 1998-09-15 At&T Corp. Apparatus and method for defining rules for personal agents
US7421432B1 (en) 1999-12-15 2008-09-02 Google Inc. Hypertext browser assistant
US6760412B1 (en) 1999-12-21 2004-07-06 Nortel Networks Limited Remote reminder of scheduled events
WO2001050720A1 (en) 1999-12-29 2001-07-12 Koninklijke Kpn N.V. Electronic call assistants with shared database
US7831616B2 (en) 2000-04-27 2010-11-09 Webfeat, Inc. Systems and methods for managing database authentication and sessions
NL1015165C2 (nl) 2000-05-12 2001-11-13 Koninkl Kpn Nv Communicatiesysteem.
US6567805B1 (en) 2000-05-15 2003-05-20 International Business Machines Corporation Interactive automated response system
US6462660B1 (en) 2001-01-25 2002-10-08 Agere Systems Guardian Corp. Wireless piconet-based personal electronic property reminder
US7158678B2 (en) 2001-07-19 2007-01-02 Motorola, Inc. Text input method for personal digital assistants and the like
US6982748B2 (en) 2002-02-25 2006-01-03 Koninklijke Philips Electronics N.V. Automatically switched camera system with indicator for notifying the next subject of the camera system
US7184985B2 (en) 2002-05-30 2007-02-27 Microsoft Corporation Method, system, and apparatus for providing secure access to a digital work
US7398209B2 (en) 2002-06-03 2008-07-08 Voicebox Technologies, Inc. Systems and methods for responding to natural language speech utterance
US7693720B2 (en) 2002-07-15 2010-04-06 Voicebox Technologies, Inc. Mobile systems and methods for responding to natural language speech utterance
US7228275B1 (en) 2002-10-21 2007-06-05 Toyota Infotechnology Center Co., Ltd. Speech recognition system having multiple speech recognizers
US7124123B1 (en) 2003-06-30 2006-10-17 America Online, Inc. Intelligent processing in the context of away and offline instant messages
US9380269B2 (en) 2003-09-23 2016-06-28 Time Warner Cable Enterprises Llc Scheduling trigger apparatus and method
US7478171B2 (en) 2003-10-20 2009-01-13 International Business Machines Corporation Systems and methods for providing dialog localization in a distributed environment and enabling conversational communication using generalized user gestures
US20050273493A1 (en) 2004-06-04 2005-12-08 John Buford Proximity reminder system using instant messaging and presence
US20060069678A1 (en) 2004-09-30 2006-03-30 Wu Chou Method and apparatus for text classification using minimum classification error to train generalized linear classifier
US8069422B2 (en) 2005-01-10 2011-11-29 Samsung Electronics, Co., Ltd. Contextual task recommendation system and method for determining user's context and suggesting tasks
US7640507B2 (en) 2005-02-28 2009-12-29 At&T Intellectual Property I, L.P. Methods, systems, and products for calendaring applications
US20060212757A1 (en) 2005-03-15 2006-09-21 International Business Machines Corporation Method, system, and program product for managing computer-based interruptions
US7693829B1 (en) 2005-04-25 2010-04-06 Google Inc. Search engine with fill-the-blanks capability
US7949529B2 (en) 2005-08-29 2011-05-24 Voicebox Technologies, Inc. Mobile systems and methods of supporting natural language human-machine interactions
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US7647228B2 (en) 2005-11-03 2010-01-12 Apptera, Inc. Method and apparatus for speech processing incorporating user intent
US8204751B1 (en) 2006-03-03 2012-06-19 At&T Intellectual Property Ii, L.P. Relevance recognition for a human machine dialog system contextual question answering based on a normalization of the length of the user input
US7385875B2 (en) 2006-04-03 2008-06-10 Research In Motion Limited Dismiss all event reminders
US8228824B2 (en) 2006-04-06 2012-07-24 Microsoft Corporation VoIP contextual information processing
ATE449587T1 (de) 2006-06-06 2009-12-15 Eyerex Ag Gesichts- und blendschutzvorrichtung für personen in arbeitsbereichen mit gefährlicher, schädlicher oder störender strahlung, insbesondere für schweisser
US20080027917A1 (en) 2006-07-31 2008-01-31 Siemens Corporate Research, Inc. Scalable Semantic Image Search
US20080240379A1 (en) 2006-08-03 2008-10-02 Pudding Ltd. Automatic retrieval and presentation of information relevant to the context of a user's conversation
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US7984440B2 (en) 2006-11-17 2011-07-19 Sap Ag Interactive audio task system with interrupt recovery and confirmations
US7991724B2 (en) 2006-12-21 2011-08-02 Support Machines Ltd. Method and a computer program product for providing a response to a statement of a user
US8139755B2 (en) 2007-03-27 2012-03-20 Convergys Cmg Utah, Inc. System and method for the automatic selection of interfaces
US9794348B2 (en) 2007-06-04 2017-10-17 Todd R. Smith Using voice commands from a mobile device to remotely access and control a computer
WO2009059199A2 (en) 2007-11-02 2009-05-07 Hunch Inc. Interactive machine learning advice facility
US9159034B2 (en) 2007-11-02 2015-10-13 Ebay Inc. Geographically localized recommendations in a computing advice facility
US8666909B2 (en) 2007-11-02 2014-03-04 Ebay, Inc. Interestingness recommendations in a computing advice facility
US8032480B2 (en) 2007-11-02 2011-10-04 Hunch Inc. Interactive computing advice facility with learning based on user feedback
US11263543B2 (en) 2007-11-02 2022-03-01 Ebay Inc. Node bootstrapping in a social graph
US7983997B2 (en) 2007-11-02 2011-07-19 Florida Institute For Human And Machine Cognition, Inc. Interactive complex task teaching system that allows for natural language input, recognizes a user's intent, and automatically performs tasks in document object model (DOM) nodes
US8219670B2 (en) 2007-11-08 2012-07-10 University Of Maryland System and method for adaptive context aware interaction of user with entity of interest
US8140335B2 (en) 2007-12-11 2012-03-20 Voicebox Technologies, Inc. System and method for providing a natural language voice user interface in an integrated voice navigation services environment
US20130215116A1 (en) 2008-03-21 2013-08-22 Dressbot, Inc. System and Method for Collaborative Shopping, Business and Entertainment
KR101462930B1 (ko) 2008-04-30 2014-11-19 엘지전자 주식회사 이동 단말기 및 그 화상통화 제어방법
JP5530729B2 (ja) 2009-01-23 2014-06-25 本田技研工業株式会社 音声理解装置
US8539359B2 (en) 2009-02-11 2013-09-17 Jeffrey A. Rapaport Social network driven indexing system for instantly clustering people with concurrent focus on same topic into on-topic chat rooms and/or for generating on-topic search results tailored to user preferences regarding topic
US8326637B2 (en) 2009-02-20 2012-12-04 Voicebox Technologies, Inc. System and method for processing multi-modal device interactions in a natural language voice services environment
US8335754B2 (en) 2009-03-06 2012-12-18 Tagged, Inc. Representing a document using a semantic structure
US10269021B2 (en) 2009-04-20 2019-04-23 4-Tell, Inc. More improvements in recommendation systems
US10042032B2 (en) 2009-04-29 2018-08-07 Amazon Technologies, Inc. System and method for generating recommendations based on similarities between location information of multiple users
US8537003B2 (en) 2009-05-20 2013-09-17 Microsoft Corporation Geographic reminders
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
US9858925B2 (en) 2009-06-05 2018-01-02 Apple Inc. Using context information to facilitate processing of commands in a virtual assistant
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US9610502B2 (en) 2009-07-10 2017-04-04 International Business Machines Corporation Use of real time location information for user authentication and authorization in virtual environments
US9197736B2 (en) 2009-12-31 2015-11-24 Digimarc Corporation Intuitive computing methods and systems
US10679605B2 (en) 2010-01-18 2020-06-09 Apple Inc. Hands-free list-reading by intelligent automated assistant
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US20110181517A1 (en) 2010-01-22 2011-07-28 Research In Motion Limited Providing a Prompt for Entry of Information at a Later Time
US8478581B2 (en) 2010-01-25 2013-07-02 Chung-ching Chen Interlingua, interlingua engine, and interlingua machine translation system
US20130278631A1 (en) 2010-02-28 2013-10-24 Osterhout Group, Inc. 3d positioning of augmented reality information
US20110246383A1 (en) 2010-03-30 2011-10-06 Microsoft Corporation Summary presentation of media consumption
US9235268B2 (en) 2010-04-09 2016-01-12 Nokia Technologies Oy Method and apparatus for generating a virtual interactive workspace
US9098808B1 (en) 2010-04-22 2015-08-04 Google Inc. Social search engine
CN102262632B (zh) 2010-05-28 2014-03-19 国际商业机器公司 进行文本处理的方法和系统
US8473289B2 (en) 2010-08-06 2013-06-25 Google Inc. Disambiguating input based on context
US8812321B2 (en) 2010-09-30 2014-08-19 At&T Intellectual Property I, L.P. System and method for combining speech recognition outputs from a plurality of domain-specific speech recognizers via machine learning
US8862146B2 (en) 2010-10-04 2014-10-14 Blackberry Limited Method, device and system for enhancing location information
KR101949998B1 (ko) 2010-11-18 2019-04-22 구글 엘엘씨 컴퓨팅 객체의 콘텍스트 히스토리
US20120296991A1 (en) 2011-02-23 2012-11-22 Nova Spivack Adaptive system architecture for identifying popular topics from messages
US20160187654A1 (en) * 2011-02-28 2016-06-30 Microsoft Technology Licensing, Llc See-through near-eye display glasses with a light transmissive wedge shaped illumination system
US20120246191A1 (en) 2011-03-24 2012-09-27 True Xiong World-Wide Video Context Sharing
US9398347B2 (en) 2011-05-30 2016-07-19 Sandvine Incorporated Ulc Systems and methods for measuring quality of experience for media streaming
US9009096B2 (en) 2011-07-12 2015-04-14 Ebay Inc. Recommendations in a computing advice facility
US10559019B1 (en) * 2011-07-19 2020-02-11 Ken Beauvais System for centralized E-commerce overhaul
US9015031B2 (en) 2011-08-04 2015-04-21 International Business Machines Corporation Predicting lexical answer types in open domain question and answering (QA) systems
US20130218766A1 (en) 2011-08-18 2013-08-22 Michael Mueller Mobile Transactions and Payments
EP2748692A4 (en) 2011-08-25 2014-11-26 Synabee Inc EPISODIC SOCIAL NETWORKS
US9830050B2 (en) 2011-11-23 2017-11-28 Salesforce.Com, Inc. Computer implemented methods and apparatus for providing a reminder regarding a feed item of a feed of an online social network
US9154739B1 (en) 2011-11-30 2015-10-06 Google Inc. Physical training assistant system
US9418658B1 (en) 2012-02-08 2016-08-16 Amazon Technologies, Inc. Configuration of voice controlled assistant
US10235346B2 (en) 2012-04-06 2019-03-19 Hmbay Patents Llc Method and apparatus for inbound message summarization using message clustering and message placeholders
US9078040B2 (en) 2012-04-12 2015-07-07 Time Warner Cable Enterprises Llc Apparatus and methods for enabling media options in a content delivery network
US9060224B1 (en) 2012-06-01 2015-06-16 Rawles Llc Voice controlled assistant with coaxial speaker and microphone arrangement
US9299059B1 (en) 2012-06-07 2016-03-29 Google Inc. Generating a summary of social media content
US9747895B1 (en) 2012-07-10 2017-08-29 Google Inc. Building language models for a user in a social network from linguistic information
US20140058679A1 (en) 2012-08-23 2014-02-27 Apple Inc. Wake Status Detection for Suppression and Initiation of Notifications
US9680959B2 (en) 2012-08-30 2017-06-13 Google Inc. Recommending content based on intersecting user interest profiles
US20140067455A1 (en) 2012-08-30 2014-03-06 Palo Alto Research Center Incorporated Method and apparatus for automatically managing user activities using contextual information
US9424840B1 (en) 2012-08-31 2016-08-23 Amazon Technologies, Inc. Speech recognition platforms
US9576574B2 (en) 2012-09-10 2017-02-21 Apple Inc. Context-sensitive handling of interruptions by intelligent digital assistant
US20150143258A1 (en) 2012-09-20 2015-05-21 Handle, Inc. Email and task management services and user interface
US8983383B1 (en) 2012-09-25 2015-03-17 Rawles Llc Providing hands-free service to multiple devices
US9406103B1 (en) 2012-09-26 2016-08-02 Amazon Technologies, Inc. Inline message alert
US8782777B2 (en) 2012-09-27 2014-07-15 International Business Machines Corporation Use of synthetic context-based objects to secure data stores
US10096316B2 (en) 2013-11-27 2018-10-09 Sri International Sharing intents to provide virtual assistance in a multi-person dialog
US11397462B2 (en) 2012-09-28 2022-07-26 Sri International Real-time human-machine collaboration using big data driven augmented reality technologies
US9087402B2 (en) 2013-03-13 2015-07-21 Microsoft Technology Licensing, Llc Augmenting images with higher resolution data
US9486070B2 (en) 2012-10-10 2016-11-08 Stirworks Inc. Height-adjustable support surface and system for encouraging human movement and promoting wellness
US9001180B2 (en) 2012-10-15 2015-04-07 Bank Of America Corporation Multiple-participant customer service conference
US10249006B2 (en) 2012-11-09 2019-04-02 Microsoft Technology Licensing, Llc Providing social context to calendar events
US9875741B2 (en) 2013-03-15 2018-01-23 Google Llc Selective speech recognition for chat and digital personal assistant systems
US20140164506A1 (en) 2012-12-10 2014-06-12 Rawllin International Inc. Multimedia message having portions of networked media content
US9070366B1 (en) 2012-12-19 2015-06-30 Amazon Technologies, Inc. Architecture for multi-domain utterance processing
KR102103057B1 (ko) 2013-02-07 2020-04-21 애플 인크. 디지털 어시스턴트를 위한 음성 트리거
US20140236678A1 (en) * 2013-02-19 2014-08-21 Visa International Service Association Systems and methods to enhance search via transaction data
US9894312B2 (en) 2013-02-22 2018-02-13 The Directv Group, Inc. Method and system for controlling a user receiving device using voice commands
US9172747B2 (en) 2013-02-25 2015-10-27 Artificial Solutions Iberia SL System and methods for virtual assistant networks
US9854084B2 (en) 2013-03-06 2017-12-26 Google Llc Contextual alarm and notification management
US9761225B2 (en) 2013-03-11 2017-09-12 Nuance Communications, Inc. Semantic re-ranking of NLU results in conversational dialogue applications
US20140280017A1 (en) 2013-03-12 2014-09-18 Microsoft Corporation Aggregations for trending topic summarization
US10140668B2 (en) 2013-03-13 2018-11-27 International Business Machines Corporation Gifting enabled by integration of commerce and social networks
US9659577B1 (en) 2013-03-14 2017-05-23 Amazon Technologies, Inc. Voice controlled assistant with integrated control knob
US9196084B2 (en) 2013-03-15 2015-11-24 Urc Ventures Inc. Determining object volume from mobile device images
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
WO2014172321A1 (en) 2013-04-15 2014-10-23 Flextronics Ap, Llc Access and portability of user profiles stored as templates
US9304736B1 (en) 2013-04-18 2016-04-05 Amazon Technologies, Inc. Voice controlled assistant with non-verbal code entry
US9460406B1 (en) 2013-05-15 2016-10-04 Ca, Inc. Management of event reminder notifications based on conflicting events
US10692166B2 (en) * 2013-05-20 2020-06-23 Visualimits, Llc Casino table games with interactive content
EP3594828A1 (en) 2013-06-07 2020-01-15 Apple Inc. Intelligent automated assistant
US9472206B2 (en) 2013-06-17 2016-10-18 Google Technology Holdings LLC Privacy mode for always-on voice-activated information assistant
US9881077B1 (en) 2013-08-08 2018-01-30 Google Llc Relevance determination and summary generation for news objects
US9338242B1 (en) 2013-09-09 2016-05-10 Amazon Technologies, Inc. Processes for generating content sharing recommendations
US9953079B2 (en) 2013-09-17 2018-04-24 International Business Machines Corporation Preference based system and method for multiple feed aggregation and presentation
US10134395B2 (en) 2013-09-25 2018-11-20 Amazon Technologies, Inc. In-call virtual assistants
US9204065B2 (en) 2013-10-28 2015-12-01 Nokia Corporation Removing noise generated from a non-audio component
US9754591B1 (en) 2013-11-18 2017-09-05 Amazon Technologies, Inc. Dialog management context sharing
US9189742B2 (en) 2013-11-20 2015-11-17 Justin London Adaptive virtual intelligent agent
US10162813B2 (en) 2013-11-21 2018-12-25 Microsoft Technology Licensing, Llc Dialogue evaluation via multiple hypothesis ranking
US20150169744A1 (en) 2013-12-12 2015-06-18 Flipboard, Inc. Selecting Diverse, Relevant Content From Multiple Content Feeds
US9479931B2 (en) 2013-12-16 2016-10-25 Nuance Communications, Inc. Systems and methods for providing a virtual assistant
US9804820B2 (en) 2013-12-16 2017-10-31 Nuance Communications, Inc. Systems and methods for providing a virtual assistant
US10811013B1 (en) 2013-12-20 2020-10-20 Amazon Technologies, Inc. Intent-specific automatic speech recognition result generation
US10181322B2 (en) 2013-12-20 2019-01-15 Microsoft Technology Licensing, Llc Multi-user, multi-domain dialog system
US9536522B1 (en) 2013-12-30 2017-01-03 Google Inc. Training a natural language processing model with information retrieval model annotations
US9830044B2 (en) 2013-12-31 2017-11-28 Next It Corporation Virtual assistant team customization
US9424247B1 (en) 2013-12-31 2016-08-23 Google Inc. Associating one or more terms in a message trail with a task entry
US20150207765A1 (en) 2014-01-17 2015-07-23 Nathaniel Brantingham Messaging Service with Conversation Suggestions
KR102133014B1 (ko) 2014-01-20 2020-07-10 삼성전자주식회사 멀티미디어 서비스를 이용한 통화 장치, 방법 및 시스템
US20150227972A1 (en) 2014-02-07 2015-08-13 Huang (Joy) Tang System and methods for identifying and promoting tagged commercial products
US20150324689A1 (en) 2014-05-12 2015-11-12 Qualcomm Incorporated Customized classifier over common features
US9679558B2 (en) 2014-05-15 2017-06-13 Microsoft Technology Licensing, Llc Language modeling for conversational understanding domains using semantic web resources
US10726831B2 (en) 2014-05-20 2020-07-28 Amazon Technologies, Inc. Context interpretation in natural language processing using previous dialog acts
US10268912B2 (en) 2014-05-23 2019-04-23 Catchoom Technologies, S.L. Offline, hybrid and hybrid with offline image recognition
EP3480811A1 (en) 2014-05-30 2019-05-08 Apple Inc. Multi-command single utterance input method
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9690771B2 (en) 2014-05-30 2017-06-27 Nuance Communications, Inc. Automated quality assurance checks for improving the construction of natural language understanding systems
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US10120955B2 (en) 2014-07-18 2018-11-06 Nuance Communications, Inc. State tracking over machine-learned relational trees in a dialog system
EP3757928A1 (en) 2014-07-31 2020-12-30 Samsung Electronics Co., Ltd. Message service providing device and method of providing content via the same
US9767794B2 (en) 2014-08-11 2017-09-19 Nuance Communications, Inc. Dialog flow management in hierarchical task dialogs
US9325939B2 (en) 2014-08-14 2016-04-26 Verizon Patent And Licensing Inc. Method and system for providing gaze-directed correction during a video conferencing session
US10255365B2 (en) 2014-08-29 2019-04-09 Facebook, Inc. Priming search results on online social networks
US9189514B1 (en) 2014-09-04 2015-11-17 Lucas J. Myslinski Optimized fact checking method and system
US9607102B2 (en) 2014-09-05 2017-03-28 Nuance Communications, Inc. Task switching in dialogue processing
CN107004410B (zh) 2014-10-01 2020-10-02 西布雷恩公司 语音和连接平台
US10540347B2 (en) 2014-10-27 2020-01-21 Nuance Communications, Inc. Contextual search disambiguation
US10334158B2 (en) 2014-11-03 2019-06-25 Robert John Gove Autonomous media capturing
US10192549B2 (en) 2014-11-28 2019-01-29 Microsoft Technology Licensing, Llc Extending digital personal assistant action providers
EP3230824A4 (en) 2014-12-11 2018-08-08 Microsoft Technology Licensing, LLC Virtual assistant system to enable actionable messaging
US9473643B2 (en) 2014-12-18 2016-10-18 Intel Corporation Mute detector
US20160196490A1 (en) 2015-01-02 2016-07-07 International Business Machines Corporation Method for Recommending Content to Ingest as Corpora Based on Interaction History in Natural Language Question and Answering Systems
US9959129B2 (en) 2015-01-09 2018-05-01 Microsoft Technology Licensing, Llc Headless task completion within digital personal assistants
US10719786B1 (en) 2015-01-09 2020-07-21 Facebook, Inc. Event ticketing in online social networks
US9508339B2 (en) 2015-01-30 2016-11-29 Microsoft Technology Licensing, Llc Updating language understanding classifier models for a digital personal assistant based on crowd-sourcing
US10515344B1 (en) 2015-02-10 2019-12-24 Open Invention Network Llc Location awareness assistant that activates a business-oriented operation system or a personal-oriented operation system based on conditions
US10671954B2 (en) 2015-02-23 2020-06-02 Google Llc Selective reminders to complete interrupted tasks
US11093971B2 (en) 2015-02-27 2021-08-17 Keypoint Technologies India Pvt Ltd. Contextual discovery
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10482184B2 (en) 2015-03-08 2019-11-19 Google Llc Context-based natural language processing
US9270941B1 (en) 2015-03-16 2016-02-23 Logitech Europe S.A. Smart video conferencing system
US10418032B1 (en) 2015-04-10 2019-09-17 Soundhound, Inc. System and methods for a virtual assistant to manage and use context in a natural language dialog
US20160306505A1 (en) 2015-04-17 2016-10-20 Avincel Group, Inc. Computer-implemented methods and systems for automatically creating and displaying instant presentations from selected visual content items
US10218651B2 (en) 2015-04-20 2019-02-26 Oracle International Corporation Virtual assistance for chat agents
EP3101625A3 (en) * 2015-04-30 2016-12-14 Pixia Corp. Method and system of selecting a view from a plurality of cameras
US10417799B2 (en) 2015-05-07 2019-09-17 Facebook, Inc. Systems and methods for generating and presenting publishable collections of related media content items
US20160344818A1 (en) 2015-05-21 2016-11-24 Cazualy, Inc. Systems and methods for multi-user anonymous communication
US9602975B2 (en) 2015-05-22 2017-03-21 Microsoft Technology Licensing, Llc Intelligent surfacing of reminders
WO2016191629A1 (en) 2015-05-27 2016-12-01 Speaktoit, Inc. Online marketplace of plugins for enhancing dialog systems
US10127220B2 (en) 2015-06-04 2018-11-13 Apple Inc. Language identification from short strings
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US9792281B2 (en) 2015-06-15 2017-10-17 Microsoft Technology Licensing, Llc Contextual language generation by leveraging language understanding
US10338959B2 (en) 2015-07-13 2019-07-02 Microsoft Technology Licensing, Llc Task state tracking in systems and services
US10157410B2 (en) 2015-07-14 2018-12-18 Ebay Inc. Enhanced shopping actions on a mobile device
US10686738B2 (en) 2015-07-24 2020-06-16 Facebook, Inc. Providing personal assistant service via messaging
EP3122001B1 (en) 2015-07-24 2019-10-23 Facebook, Inc. Providing personal assistant service via messaging
US11328261B2 (en) 2015-08-05 2022-05-10 Vivint, Inc. System and methods for home automation system calendar coordination
US20170038829A1 (en) 2015-08-07 2017-02-09 Microsoft Technology Licensing, Llc Social interaction for remote communication
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
JP6471660B2 (ja) 2015-09-16 2019-02-20 富士ゼロックス株式会社 情報処理装置及びプログラム
KR102437135B1 (ko) 2015-09-23 2022-08-29 삼성전자주식회사 이미지를 처리하는 전자 장치 및 그 제어 방법
US10262654B2 (en) 2015-09-24 2019-04-16 Microsoft Technology Licensing, Llc Detecting actionable items in a conversation among participants
CN105204743A (zh) 2015-09-28 2015-12-30 百度在线网络技术(北京)有限公司 用于语音和视频通讯的交互控制方法及装置
US11010550B2 (en) 2015-09-29 2021-05-18 Apple Inc. Unified language modeling framework for word prediction, auto-completion and auto-correction
US20170091612A1 (en) 2015-09-30 2017-03-30 Apple Inc. Proactive assistant with memory assistance
US10331899B2 (en) 2015-10-24 2019-06-25 Oracle International Corporation Display of dynamic contextual pivot grid analytics
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
KR102584184B1 (ko) 2015-11-24 2023-10-04 삼성전자주식회사 전자 장치 및 그 제어 방법
US20170169506A1 (en) 2015-12-11 2017-06-15 Capital One Services, Llc Systems and methods for voice-controlled account servicing
WO2017112813A1 (en) 2015-12-22 2017-06-29 Sri International Multi-lingual virtual personal assistant
US10402750B2 (en) 2015-12-30 2019-09-03 Facebook, Inc. Identifying entities using a deep-learning model
US10354653B1 (en) 2016-01-19 2019-07-16 United Services Automobile Association (Usaa) Cooperative delegation for digital assistants
US10055403B2 (en) 2016-02-05 2018-08-21 Adobe Systems Incorporated Rule-based dialog state tracking
US11922313B2 (en) 2016-02-11 2024-03-05 William Marsh Rice University Partitioned machine learning architecture
US10446009B2 (en) 2016-02-22 2019-10-15 Microsoft Technology Licensing, Llc Contextual notification engine
US10348849B2 (en) 2016-02-22 2019-07-09 At&T Mobility Ii Llc Automatic delivery of media content to a device
US9978367B2 (en) 2016-03-16 2018-05-22 Google Llc Determining dialog states for language models
WO2017168202A1 (en) 2016-03-27 2017-10-05 Yogesh Chunilal Rathod Identifying & storing followers, following users, viewers, users and connections for user
EP3430514B1 (en) 2016-04-18 2019-10-09 Google LLC Automated assistant invocation of appropriate agent
US10305828B2 (en) 2016-04-20 2019-05-28 Google Llc Search query predictions by a keyboard
US20170353469A1 (en) 2016-06-03 2017-12-07 Facebook, Inc. Search-Page Profile
WO2017214208A1 (en) 2016-06-06 2017-12-14 Purdue Research Foundation System and method for sentence directed video object codetection
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
US10462619B2 (en) 2016-06-08 2019-10-29 Google Llc Providing a personal assistant module with a selectively-traversable state machine
DK179309B1 (en) 2016-06-09 2018-04-23 Apple Inc Intelligent automated assistant in a home environment
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
CN107491469B (zh) 2016-06-11 2020-11-24 苹果公司 智能任务发现
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
US10395428B2 (en) 2016-06-13 2019-08-27 Sony Interactive Entertainment Inc. HMD transitions for focusing on specific content in virtual-reality environments
US20180006990A1 (en) 2016-06-30 2018-01-04 Jean Alexandera Munemann Exclusive social network based on consumption of luxury goods
CN111555954B (zh) 2016-07-08 2023-04-07 艾赛普公司 自动响应用户的请求
US20180018562A1 (en) 2016-07-14 2018-01-18 Cside Japan Inc. Platform for providing task based on deep learning
KR102604552B1 (ko) 2016-07-15 2023-11-22 삼성전자주식회사 단어 임베딩 방법, 단어 임베딩 장치, 음성 인식 방법 및 음성 인식 장치
US20180018974A1 (en) 2016-07-16 2018-01-18 Ron Zass System and method for detecting tantrums
US20180054523A1 (en) 2016-08-16 2018-02-22 Rulai, Inc. Method and system for context sensitive intelligent virtual agents
US10565255B2 (en) 2016-08-24 2020-02-18 Baidu Usa Llc Method and system for selecting images based on user contextual information in response to search queries
US9972318B1 (en) 2016-09-21 2018-05-15 Amazon Technologies, Inc. Interpreting voice commands
US10181114B2 (en) 2016-09-30 2019-01-15 The Toronto-Dominion Bank System and method for generating an interaction request
US20180096072A1 (en) 2016-10-03 2018-04-05 Google Inc. Personalization of a virtual assistant
US20180095636A1 (en) * 2016-10-04 2018-04-05 Facebook, Inc. Controls and Interfaces for User Interactions in Virtual Spaces
US10013980B2 (en) * 2016-10-04 2018-07-03 Microsoft Technology Licensing, Llc Combined menu-based and natural-language-based communication with chatbots
US10579688B2 (en) 2016-10-05 2020-03-03 Facebook, Inc. Search ranking and recommendations for online social networks based on reconstructed embeddings
US11392598B2 (en) 2016-10-19 2022-07-19 Ebay Inc. Applying a quantitative range for qualitative terms
US10623783B2 (en) 2016-11-01 2020-04-14 Facebook, Inc. Targeted content during media downtimes
US10585891B2 (en) 2016-11-03 2020-03-10 Soundhound, Inc. Dynamic choice of data sources in natural language query processing
US11037202B2 (en) 2016-12-27 2021-06-15 Paypal, Inc. Contextual data in augmented reality processing for item recommendations
US10699181B2 (en) 2016-12-30 2020-06-30 Google Llc Virtual assistant generation of group recommendations
US20180188695A1 (en) 2016-12-30 2018-07-05 Qualcomm Incorporated User location and activity based smart reminders
US20180189352A1 (en) 2016-12-31 2018-07-05 Entefy Inc. Mixed-grained detection and analysis of user life events for context understanding
US10305916B2 (en) 2017-01-02 2019-05-28 Monument Labs, Inc. Personal cloud device for digital media
US10932004B2 (en) 2017-01-24 2021-02-23 Adobe Inc. Recommending content based on group collaboration
US10146768B2 (en) 2017-01-25 2018-12-04 Google Llc Automatic suggested responses to images received in messages using language model
KR102640423B1 (ko) 2017-01-31 2024-02-26 삼성전자주식회사 음성 입력 처리 방법, 이를 지원하는 전자 장치, 및 시스템
US10176800B2 (en) 2017-02-10 2019-01-08 International Business Machines Corporation Procedure dialogs using reinforcement learning
US10467509B2 (en) * 2017-02-14 2019-11-05 Microsoft Technology Licensing, Llc Computationally-efficient human-identifying smart assistant computer
US11144718B2 (en) 2017-02-28 2021-10-12 International Business Machines Corporation Adaptable processing components
US20180286507A1 (en) 2017-03-28 2018-10-04 Ascensia Diabetes Care Holdings Ag Diabetes management systems, methods and apparatus for user reminders, pattern recognition, and interfaces
US11151992B2 (en) 2017-04-06 2021-10-19 AIBrain Corporation Context aware interactive robot
US10963493B1 (en) 2017-04-06 2021-03-30 AIBrain Corporation Interactive game with robot system
US11188808B2 (en) 2017-04-11 2021-11-30 Lenovo (Singapore) Pte. Ltd. Indicating a responding virtual assistant from a plurality of virtual assistants
CA3059234A1 (en) 2017-04-19 2018-10-25 Magic Leap, Inc. Multimodal task execution and text editing for a wearable system
US9865260B1 (en) 2017-05-03 2018-01-09 Google Llc Proactive incorporation of unsolicited content into human-to-computer dialogs
US20180330725A1 (en) 2017-05-09 2018-11-15 Microsoft Technology Licensing, Llc Intent based speech recognition priming
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
US10275651B2 (en) 2017-05-16 2019-04-30 Google Llc Resolving automated assistant requests that are based on image(s) and/or other sensor data
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
WO2018236332A1 (en) 2017-06-18 2018-12-27 Google Llc NATURAL LANGUAGE PROCESSING USING AUTOMATIC LEARNING TO DETERMINE WAFER VALUES BASED ON WAFER DESCRIPTORS
US10462281B2 (en) 2017-06-30 2019-10-29 Intel Corporation Technologies for user notification suppression
US10552204B2 (en) 2017-07-07 2020-02-04 Google Llc Invoking an automated assistant to perform multiple tasks through an individual command
US10977319B2 (en) 2017-07-10 2021-04-13 Ebay Inc. Expandable service architecture with configurable dialogue manager
US10708268B2 (en) 2017-07-31 2020-07-07 Airwatch, Llc Managing voice applications within a digital workspace
US10891621B2 (en) 2017-08-09 2021-01-12 Microsoft Technology Licensing, Llc Systems and methods of providing security in an electronic network
US10580406B2 (en) 2017-08-18 2020-03-03 2236008 Ontario Inc. Unified N-best ASR results
US11074911B2 (en) 2017-09-05 2021-07-27 First Advantage Corporation Digital assistant
US10438594B2 (en) 2017-09-08 2019-10-08 Amazon Technologies, Inc. Administration of privileges by speech for voice assistant system
US10366291B2 (en) 2017-09-09 2019-07-30 Google Llc Systems, methods, and apparatus for providing image shortcuts for an assistant application
US10685049B2 (en) 2017-09-15 2020-06-16 Oath Inc. Conversation summary
US10719507B2 (en) 2017-09-21 2020-07-21 SayMosaic Inc. System and method for natural language processing
US11531940B2 (en) 2017-09-27 2022-12-20 Microsoft Technology Licensing, Llc Implicit status tracking of tasks and management of task reminders based on device signals
US10841249B2 (en) 2017-10-02 2020-11-17 Samsung Electronics Co., Ltd. System and method for bot platform
US11450314B2 (en) 2017-10-03 2022-09-20 Google Llc Voice user interface shortcuts for an assistant application
US11004202B2 (en) 2017-10-09 2021-05-11 The Board Of Trustees Of The Leland Stanford Junior University Systems and methods for semantic segmentation of 3D point clouds
US10418023B2 (en) 2017-10-17 2019-09-17 International Business Machines Corporation Automatic answer rephrasing based on talking style
KR102421255B1 (ko) 2017-10-17 2022-07-18 삼성전자주식회사 음성 신호를 제어하기 위한 전자 장치 및 방법
US20190139150A1 (en) 2017-11-09 2019-05-09 Facebook, Inc. Systems and methods for generating multi-contributor content posts for events
US10867054B2 (en) * 2017-11-14 2020-12-15 Thomas STACHURA Information security/privacy via a decoupled security accessory to an always listening assistant device
US11544576B2 (en) 2017-11-14 2023-01-03 International Business Machines Corporation Unified cognition for a virtual personal cognitive assistant of an entity when consuming multiple, distinct domains at different points in time
US11562243B2 (en) 2017-11-17 2023-01-24 Meta Platforms, Inc. Machine-learning models based on non-local neural networks
US20190156204A1 (en) 2017-11-20 2019-05-23 Koninklijke Philips N.V. Training a neural network model
KR102424520B1 (ko) 2017-11-29 2022-07-25 삼성전자주식회사 전자 장치 및 전자 장치의 동작 방법
JP2019106054A (ja) 2017-12-13 2019-06-27 株式会社東芝 対話システム
US11409816B2 (en) 2017-12-19 2022-08-09 Motorola Solutions, Inc. Methods and systems for determining an action to be taken in response to a user query as a function of pre-query context information
US11127213B2 (en) 2017-12-22 2021-09-21 Houzz, Inc. Techniques for crowdsourcing a room design, using augmented reality
US20190208124A1 (en) 2017-12-29 2019-07-04 Gopro, Inc. Methods and apparatus for overcapture storytelling
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US11631017B2 (en) 2018-01-09 2023-04-18 Microsoft Technology Licensing, Llc Federated intelligent assistance
US11118925B2 (en) 2018-01-13 2021-09-14 Telenav, Inc. Navigation system with carryover mechanism and method of operation thereof
US11355126B2 (en) 2018-01-24 2022-06-07 Comcast Cable Communications, Llc Verification of user identity for voice enabled devices
US10599469B2 (en) 2018-01-30 2020-03-24 Motorola Mobility Llc Methods to present the context of virtual assistant conversation
US10762113B2 (en) 2018-01-31 2020-09-01 Cisco Technology, Inc. Conversational knowledge graph powered virtual assistant for application performance management
US10741176B2 (en) 2018-01-31 2020-08-11 International Business Machines Corporation Customizing responses to users in automated dialogue systems
US10885536B2 (en) 2018-02-01 2021-01-05 Ebay Inc. Garnering interest on potential listing in a photo or video
US10303771B1 (en) 2018-02-14 2019-05-28 Capital One Services, Llc Utilizing machine learning models to identify insights in a document
WO2019160613A1 (en) 2018-02-15 2019-08-22 DMAI, Inc. System and method for dynamic program configuration
US11170773B2 (en) 2018-03-12 2021-11-09 Google Llc Systems, methods, and apparatuses for managing incomplete automated assistant actions
US10930278B2 (en) 2018-04-09 2021-02-23 Google Llc Trigger sound detection in ambient audio to provide related functionality on a user interface
US10462422B1 (en) 2018-04-09 2019-10-29 Facebook, Inc. Audio selection based on user engagement
US11030412B2 (en) 2018-04-10 2021-06-08 Verizon Patent And Licensing Inc. System and method for chatbot conversation construction and management
US10979669B2 (en) 2018-04-10 2021-04-13 Facebook, Inc. Automated cinematic decisions based on descriptive models
US10679615B2 (en) 2018-04-16 2020-06-09 Google Llc Adaptive interface in a voice-based networked system
US10978056B1 (en) 2018-04-20 2021-04-13 Facebook, Inc. Grammaticality classification for natural language generation in assistant systems
US20190327330A1 (en) 2018-04-20 2019-10-24 Facebook, Inc. Building Customized User Profiles Based on Conversational Data
US10698707B2 (en) 2018-04-24 2020-06-30 Facebook, Inc. Using salience rankings of entities and tasks to aid computer interpretation of natural language input
WO2019209511A1 (en) 2018-04-25 2019-10-31 Mavenir Networks, Inc. Contextual and location based targeted communication on mobile and internet based channels via rich communication services
EP3766181B1 (en) 2018-04-25 2023-04-26 Microsoft Technology Licensing, LLC Sharing antenna across wireless endpoints
US11645529B2 (en) 2018-05-01 2023-05-09 Hewlett Packard Enterprise Development Lp Sparsifying neural network models
US11347801B2 (en) 2018-05-07 2022-05-31 Google Llc Multi-modal interaction between users, automated assistants, and other computing services
US20190348033A1 (en) 2018-05-10 2019-11-14 Fujitsu Limited Generating a command for a voice assistant using vocal input
US10997963B1 (en) 2018-05-17 2021-05-04 Amazon Technologies, Inc. Voice based interaction based on context-based directives
JP7155605B2 (ja) 2018-05-22 2022-10-19 富士フイルムビジネスイノベーション株式会社 情報処理装置及びプログラム
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US10853115B2 (en) 2018-06-25 2020-12-01 Amazon Technologies, Inc. Execution of auxiliary functions in an on-demand network code execution system
US10635939B2 (en) 2018-07-06 2020-04-28 Capital One Services, Llc System, method, and computer-accessible medium for evaluating multi-dimensional synthetic data using integrated variants analysis
US20200012930A1 (en) 2018-07-06 2020-01-09 Global Elmeast Inc. Techniques for knowledge neuron enhancements
JP7326667B2 (ja) 2018-07-31 2023-08-16 マーベル アジア ピーティーイー、リミテッド ストレージエッジにおけるメタデータ生成
US11037222B1 (en) 2018-08-27 2021-06-15 A9.Com, Inc. Dynamic recommendations personalized by historical data
US20200097814A1 (en) 2018-09-26 2020-03-26 MedWhat.com Inc. Method and system for enabling interactive dialogue session between user and virtual medical assistant
WO2020068169A1 (en) 2018-09-27 2020-04-02 Google Llc Analyzing web pages to facilitate automatic navigation
US11017764B1 (en) 2018-09-28 2021-05-25 Splunk Inc. Predicting follow-on requests to a natural language request received by a natural language processing system
US10936688B2 (en) 2018-10-12 2021-03-02 International Business Machines Corporation Dynamically enhancing query results
CN112771472B (zh) 2018-10-15 2022-06-10 美的集团股份有限公司 提供实时产品交互协助的系统和方法
US10817713B2 (en) 2018-11-15 2020-10-27 Adobe Inc. Generating modified digital images utilizing a multimodal selection model based on verbal and gesture input
US10878805B2 (en) 2018-12-06 2020-12-29 Microsoft Technology Licensing, Llc Expediting interaction with a digital assistant by predicting user responses
US11087749B2 (en) 2018-12-20 2021-08-10 Spotify Ab Systems and methods for improving fulfillment of media content related requests via utterance-based human-machine interfaces
US10929614B2 (en) 2019-01-03 2021-02-23 International Business Machines Corporation Automated contextual dialog generation for cognitive conversation
US11310172B2 (en) 2019-01-14 2022-04-19 Microsoft Technology Licensing, Llc Network mapping and analytics for bots
US11295239B2 (en) 2019-04-17 2022-04-05 International Business Machines Corporation Peer assisted distributed architecture for training machine learning models
US11030994B2 (en) 2019-04-24 2021-06-08 Motorola Mobility Llc Selective activation of smaller resource footprint automatic speech recognition engines by predicting a domain topic based on a time since a previous communication
US10997968B2 (en) 2019-04-30 2021-05-04 Microsofttechnology Licensing, Llc Using dialog context to improve language understanding
US11113481B2 (en) 2019-05-02 2021-09-07 Google Llc Adapting automated assistants for use with multiple languages
US11144727B2 (en) 2019-05-20 2021-10-12 International Business Machines Corporation Evaluation framework for intent authoring processes
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US11657094B2 (en) 2019-06-28 2023-05-23 Meta Platforms Technologies, Llc Memory grounded conversational reasoning and question answering for assistant systems
US10901689B1 (en) 2019-07-11 2021-01-26 International Business Machines Corporation Dynamic augmented reality interface creation
US10949671B2 (en) 2019-08-03 2021-03-16 VIRNECT inc. Augmented reality system capable of manipulating an augmented reality object and an augmented reality method using the same
KR20210017087A (ko) 2019-08-06 2021-02-17 삼성전자주식회사 음성 인식 방법 및 이를 지원하는 전자 장치
US11113032B2 (en) 2019-08-14 2021-09-07 Palantir Technologies Inc. Function access system
WO2021033886A1 (en) 2019-08-22 2021-02-25 Samsung Electronics Co., Ltd. A system and method for providing assistance in a live conversation
US11593572B2 (en) 2019-08-27 2023-02-28 Nuance Communications, Inc. System and method for language processing using adaptive regularization
US11295745B1 (en) 2019-09-04 2022-04-05 Amazon Technologies, Inc. Multi-tasking and skills processing
US10880384B1 (en) 2019-09-11 2020-12-29 Amazon Technologies, Inc. Multi-tasking resource management
KR20210044475A (ko) 2019-10-15 2021-04-23 엘지전자 주식회사 대명사가 가리키는 객체 판단 방법 및 장치
US11861674B1 (en) * 2019-10-18 2024-01-02 Meta Platforms Technologies, Llc Method, one or more computer-readable non-transitory storage media, and a system for generating comprehensive information for products of interest by assistant systems
US20220279051A1 (en) 2020-09-28 2022-09-01 Meta Platforms, Inc. Generating Proactive Reminders for Assistant Systems

Also Published As

Publication number Publication date
EP4046090A1 (en) 2022-08-24
US20210117479A1 (en) 2021-04-22
EP4046125A1 (en) 2022-08-24
WO2021076306A1 (en) 2021-04-22
US11699194B2 (en) 2023-07-11
US20220036013A1 (en) 2022-02-03
US11823289B2 (en) 2023-11-21
US20210120206A1 (en) 2021-04-22
US11443120B2 (en) 2022-09-13
US11966986B2 (en) 2024-04-23
US20230418875A1 (en) 2023-12-28
CN114556355A (zh) 2022-05-27
US20210118442A1 (en) 2021-04-22
US20210117624A1 (en) 2021-04-22
CN114766091A (zh) 2022-07-19
US11688022B2 (en) 2023-06-27
WO2021076305A1 (en) 2021-04-22
US11688021B2 (en) 2023-06-27
US20210117681A1 (en) 2021-04-22
US11238239B2 (en) 2022-02-01
US11948563B1 (en) 2024-04-02
CN114600099A (zh) 2022-06-07
US11314941B2 (en) 2022-04-26
US11308284B2 (en) 2022-04-19
EP4046109A1 (en) 2022-08-24
US20220327289A1 (en) 2022-10-13
US20220156465A1 (en) 2022-05-19
EP4046053A1 (en) 2022-08-24
US11636438B1 (en) 2023-04-25
US20240104668A1 (en) 2024-03-28
EP4046057A1 (en) 2022-08-24
US11861674B1 (en) 2024-01-02
US20210117712A1 (en) 2021-04-22
US20210118440A1 (en) 2021-04-22
US20220382989A1 (en) 2022-12-01
US20230099773A1 (en) 2023-03-30
CN114631091A (zh) 2022-06-14
WO2021076304A1 (en) 2021-04-22
EP4046124A1 (en) 2022-08-24
WO2021076373A1 (en) 2021-04-22
US20210117780A1 (en) 2021-04-22
US11341335B1 (en) 2022-05-24
US11704745B2 (en) 2023-07-18
US11694281B1 (en) 2023-07-04
US20210119955A1 (en) 2021-04-22
WO2021076302A1 (en) 2021-04-22
US20210117623A1 (en) 2021-04-22
CN114556333A (zh) 2022-05-27
WO2021086645A1 (en) 2021-05-06
US20240112008A1 (en) 2024-04-04
US20230214781A1 (en) 2023-07-06
US11669918B2 (en) 2023-06-06
US11403466B2 (en) 2022-08-02

Similar Documents

Publication Publication Date Title
US11314941B2 (en) On-device convolutional neural network models for assistant systems
US20210117214A1 (en) Generating Proactive Content for Assistant Systems
US11159767B1 (en) Proactive in-call content recommendations for assistant systems
US11567788B1 (en) Generating proactive reminders for assistant systems
US11658835B2 (en) Using a single request for multi-person calling in assistant systems
US20220279051A1 (en) Generating Proactive Reminders for Assistant Systems
US20230283878A1 (en) Smart Cameras Enabled by Assistant Systems

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: California, USA

Applicant after: Yuan Platform Technology Co.,Ltd.

Address before: California, USA

Applicant before: Facebook Technologies, LLC

CB02 Change of applicant information