CN114556354A - 自动确定和呈现来自事件的个性化动作项 - Google Patents
自动确定和呈现来自事件的个性化动作项 Download PDFInfo
- Publication number
- CN114556354A CN114556354A CN202080069639.9A CN202080069639A CN114556354A CN 114556354 A CN114556354 A CN 114556354A CN 202080069639 A CN202080069639 A CN 202080069639A CN 114556354 A CN114556354 A CN 114556354A
- Authority
- CN
- China
- Prior art keywords
- event
- action item
- meeting
- user
- action
- 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
Links
- 230000009471 action Effects 0.000 title claims abstract description 460
- 238000000034 method Methods 0.000 claims description 73
- 239000013598 vector Substances 0.000 claims description 56
- 238000013518 transcription Methods 0.000 claims description 36
- 230000035897 transcription Effects 0.000 claims description 36
- 238000003860 storage Methods 0.000 claims description 33
- 238000010801 machine learning Methods 0.000 claims description 21
- 230000006399 behavior Effects 0.000 claims description 17
- 238000003058 natural language processing Methods 0.000 claims description 15
- 238000013527 convolutional neural network Methods 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 13
- 238000001514 detection method Methods 0.000 claims description 8
- 238000004891 communication Methods 0.000 abstract description 24
- 230000008520 organization Effects 0.000 abstract description 8
- 230000000694 effects Effects 0.000 description 50
- 238000013480 data collection Methods 0.000 description 26
- 230000006870 function Effects 0.000 description 22
- 230000008569 process Effects 0.000 description 17
- 230000004044 response Effects 0.000 description 14
- 238000012549 training Methods 0.000 description 14
- 238000004422 calculation algorithm Methods 0.000 description 13
- 230000033001 locomotion Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 10
- 238000013528 artificial neural network Methods 0.000 description 7
- 230000007717 exclusion Effects 0.000 description 5
- 238000004140 cleaning Methods 0.000 description 4
- 230000007812 deficiency Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 3
- 238000013145 classification model Methods 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000003909 pattern recognition Methods 0.000 description 3
- 238000011176 pooling Methods 0.000 description 3
- 238000007637 random forest analysis Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000007476 Maximum Likelihood Methods 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000010420 art technique Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005352 clarification Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000005055 memory storage Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000013526 transfer learning Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 206010011224 Cough Diseases 0.000 description 1
- 208000003028 Stuttering Diseases 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001364 causal effect Effects 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000007596 consolidation process Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000004886 head movement Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 210000002364 input neuron Anatomy 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000009940 knitting Methods 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 102000002022 plexin Human genes 0.000 description 1
- 108050009312 plexin Proteins 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012358 sourcing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000699 topical effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
- G06N5/046—Forward inferencing; Production systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/109—Time management, e.g. calendars, reminders, meetings or time accounting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/109—Time management, e.g. calendars, reminders, meetings or time accounting
- G06Q10/1093—Calendar-based scheduling for persons or groups
- G06Q10/1095—Meeting or appointment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Operations Research (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
计算机化***被提供用于自动确定诸如会议之类的事件的动作项。所确定的动作项可以针对特定用户例如会议出席者进行个性化,并且可以包括使得用户能够理解所述动作项的上下文信息。具体而言,可以部分基于以下各项来确定个性化动作项:结合事件对话确定和利用特定因素,例如事件说话者的语言风格;组织中的用户角色;交流的历史模式;事件目的、名称或位置;事件参与者或其他上下文信息。对特定语句进行评估以确定所述语句是否可能是或不是动作项。可以针对动作项确定上下文信息,然后可以在事件期间或之后将其提供给特定用户。
Description
背景技术
各种计算机实现的事件或会议技术可用于协助用户组织事件。例如,一些技术被配置为接收来自用户的手动输入,例如会议主题、会议日期或与会议相关的其他笔记,并将输入存储在计算机存储器中,以便用户可以以图形显示的格式回顾信息。但是,可用的所存储的信息和这些技术的功能是有限的。通常,此类解决方案不会自动确定和呈现会议或其他事件的动作项等。计算技术的进步和现代计算设备的日益普及造成关于事件的可用数据急剧增加。传统的解决方案没有跟上这些进步的步伐,也未能利用可用数据,或提供强大的功能来解决这些新挑战。
发明内容
提供本发明内容以便以简化的形式对下面在具体实施方式中进一步描述的设计构思的选择进行介绍。本发明内容并不旨在标识要求保护的主题的关键特征或必要特征,也不旨在用于协助确定要求保护的主题的范围。
本公开内容的方面涉及用于自动确定在事件(例如,会议)期间说出的语句或话语是否为动作项的计算机化***。用于会议或其他事件的手动记笔记或手动计算机用户输入以及CPU处理非常耗时,并且在许多情况下,重要的动作项被遗漏或未被记录。本公开内容的各个方面通过至少部分基于特定因素,例如说话者(或用户)的语言风格、组织中的用户角色、通信中的历史模式、事件目的、事件名称、事件位置、事件中的参与者的姓名、语句中的特定词等,确定动作项来减轻这些缺陷。在一些情况下,这些因素可以包括或用于识别、提取、澄清和/或归属动作项的一个或多个模型或与其结合使用。此外,本公开内容的一些方面可以计算事件中的特定语句或语句集是动作项或不是动作项的概率。
现有技术(例如,虚拟助手和会议应用)具有各种功能缺陷,例如需要繁琐且通常不准确的手动用户输入。现有技术在计算资源消耗(例如存储器、网络延时、I/O等)方面也很昂贵。本公开内容的各种实施例经由这些现有技术或计算设备现在没有采用的新功能来改进这些技术,例如基于某些因素或规则(例如,用户的角色、会议类型、过去的会议历史等)来使确定动作项自动化。本公开内容的各种实施例还通过减少诸如存储器、网络延时、I/O等的计算资源消耗来改进现有技术。
附图说明
参考附图详细描述了本公开内容的方面,其中:
图1是适合用于实现本公开内容的一些实施例的示例性计算环境的框图;
图2是示出可以在其中使用本公开内容的一些实施例的示例动作项捕捉***的框图;
图3是示出可以在其中使用本公开内容的一些实施例的示例动作项捕捉***的框图;
图4描绘了根据本公开内容的实施例的、用于确定一个或多个动作项的示例模型流的示意图;
图5描绘了根据本公开内容的实施例的、用于确定和提供来自会议的个性化动作项的过程;
图6是示出根据本公开内容的实施例的、用于生成丰富事件的方法的流程图;
图7是适合用于实现本公开内容的实施例的示例性计算环境的框图;以及
图8说明性地描绘了根据本公开内容的实施例的示例会议事件,其中针对会议参与者自动确定个性化动作项目。
具体实施方式
本公开内容的方面的主题在本文中用具体细节来描述以满足法定要求。然而,该描述本身并非旨在限制本专利的范围。而是本发明考虑了也可以结合其他当前或未来的技术用其他方式来体现要求保护的主题以包括不同步骤或与该文档中描述的步骤类似的步骤的组合。另外,虽然术语“步骤”和/或“框”可在本文中用于意指所使用的方法的不同的元素,但这些术语不应该被解释为暗示本文中公开的各个步骤之中或之间的任何特定的顺序,除非并且除了各个步骤的顺序被明确描述之外。本文描述的每种方法可以包括可以使用硬件、固件和/或软件的任何组合来执行的计算过程。例如,各种功能可由执行在存储器存储中的指令的处理器来执行。该方法还可以被体现为存储在计算机存储介质上的计算机可用指令。所述方法可以由独立应用、服务或托管服务(独立或与另一托管服务组合)或另一产品的插件(仅举几例)提供。
本公开内容的某些方面自动确定事件(例如,会议、交互式研讨会、非正式聚会等)的个性化动作项。本文所述的术语“动作项”被广泛使用,并且可以例如但不限于包括事件中指示的任务,要求或希望完成该任务以促进可能与事件相关联的某个目标或目的。在各种情况下,动作项可以经由命令、提示或由人员发出的其他请求发出,以使另一人员(或他们自己)执行一些动作。在动作项的说明性示例中,在关于开发某个计算机应用的会议期间,一个人可能会说,“Bob,can you perform a round of debugging on the app today(Bob,你今天可以对应用执行一轮调试吗)”,这是Bob今天执行调试动作以使应用准备好部署的动作项。
在高层次上,图8中示出了本文所述技术的一个实施例的说明性示例用例。该示例实施例用于确定会议参与者的个性化动作项。具体而言,图8描绘了会议的两个场景810和850。会议包括亲自出现在会议处的会议出席者(例如,出席者807和809)以及在线出席的会议出席者(例如,出席者830),它们被显示在计算机显示器820上。在第一场景810中,显示出经理805在语句815中说会议已经结束并且许多重要的细节被涵盖。(此外,可以从语句815中推断出会议时间很长,因为它持续了整个下午。)经理805在语句815中进一步指出,“noweveryone should know what they need to do,right?(现在每个人都应该知道他们需要做什么,对吧?)”响应于经理805的该语句,场景810中的其他会议出席者显得很担心,因为他们不知道他们需要做什么。例如,出席者807在思想气泡817中显示想法“I have no ideawhat I’m supposed to do(我不知道我应该做什么)”,出席者809在思想气泡819中显示想法“I hope someone else got all of that because I sure didn’t(我希望其他人都知道,因为我肯定不知道)。”
通常,如果这些会议出席者错过了与经理805的冗长讨论中的重要动作项,他们可能会遇到麻烦,甚至可能面临失去工作的风险。出席者可能已经记下了一些笔记,但在尝试捕捉重要信息(例如动作项)时,通常很难或不可能积极参与讨论。使用传统的会议记录技术,例如记录或听写设备,出席者807和809可能能够返回并收听会议,以便尝试找出动作项。但正如本文进一步描述的那样,该任务是繁重的并且仍然可能导致丢失或错误的动作项,因为它没有考虑其他重要信息,例如关于动作项的说话者的信息、来自先前会议的历史信息或其他相关的上下文信息。
现在转向图8的场景850,描绘了示例实施例的一些方面。具体而言,该示例实施例是使用虚拟助手实现的,例如公司的助手,其与会议或通信应用(例如Microsoft )结合操作。如场景850中所示,计算机显示器820描绘了虚拟助理860的表示,例如Cortana虚拟助理。如本文所述,基于会议讨论和相关上下文信息,虚拟助理860已自动确定每个会议出席者的个性化动作项。虚拟助理860然后在语句865中说出“I havesent each meeting attendee their personal action items(我已经向每位会议出席者发送了他们的个人动作项)。”如本文所述,可以向每个会议参与者(或负责动作项的任何个人)提供来自会议的他们负责的动作项或与他们相关的动作项。
响应于语句865,会议出席者(例如,出席者807和809)似乎松了一口气,且不那么担心了。此外,出席者809持有用户设备859,该设备正在显示从虚拟助理860接收到的她的动作项的列表。以这种方式并且如下文进一步描述的,本文描述的技术的实施例改进了传统的会议相关技术。(尽管该示例描绘了向会议出席者提供动作项,但在某些情况下,如本文进一步描述的,可以向未出席会议但负责动作项的用户提供对动作项的指示。)
如图8的示例中所述,手动记笔记(或手动计算机用户输入和用于会议或其他事件的CPU处理)是繁重的、耗时的,并且在许多情况下,重要的动作项及其上下文被遗漏。由于各种原因,可能会错过动作项,例如注意力不集中、对动作项是什么感到困惑、中断、不合逻辑或在会议讨论期间改变主题(例如,在讨论关于动作项的细节时,在会议讨论返回继续讨论细节之前,会议可能会被打断或无关的讨论可能会发生片刻时间或延长的时间间隔),以及沟通不畅等。人们与他人交谈和互动有很多不同方式,这可能会导致没有识别出动作项。
本公开内容的一些方面通过至少部分基于特定因素(例如说话者或用户的语言风格、用户在组织中的角色、通信的历史模式(例如,即时聊天、电子邮件、文档)、事件目的、事件名称、事件位置、事件参与者等)确定动作项以减轻这些问题。在一些实施例中,除了说话者的话语之外,还可以利用这些因素中的一个或多个,以便确定可能的动作项。以这种方式,本文描述的技术的实施例通过能够以更高程度的确定性或概率确定语句或语句集是动作项还是不是动作项对传统技术进行了改进。
例如并且如本文进一步描述的,本公开内容的一些实施例可以检测(例如经由语音识别功能)谁在事件中说话,识别该人的用户简档(其包括该人的角色和其他历史),识别会议属性,并基于该信息生成一个或多个可能的动作项的集合。例如,假设特定用户定期以“Ok let's get this started(好的,让我们开始吧)”的语句开始会议。本文中描述的技术的实施例可以从用户的语音中识别出说出该语句的用户,然后例如使用用户的简档来确定该特定用户几乎在每次会议开始时都会说出该语句,这指示会议开始,而不是要采取的动作项。(还可以想到,不管说话者是谁,一些实施例都可以将该语句识别为开始会议的指示,而不是要采取的动作项。)因此,可以选择性地标记该实施例或以其他方式指示该语句不是动作项。(或者如本文进一步描述的,可以确定该语句是动作项的可能性较低。)
在另一个示例中,假设在会议期间,特定参与者说:“we need to remove alloutliers before conducting the analysis(我们需要在进行分析之前去除所有异常值)”。在这种情况下,实施例可以识别说话者,确定说话者是管理软件工程师,该会议涉及聚类机器学习模型技术,并且类似上下文中的类似语句先前被视为过去会议中的动作项。因此,该实施例可以基于关于说话者、会议和其他上下文的该信息来确定用户的语句是动作项。或者,例如,如果确定对于这个相同语句,说话者和会议中的那些参与者是销售代表,并且他们的讨论背景很幽默,那么相同语句可能被视为不是动作项(或者可以接收到作为动作项的较低概率)。
如上所述,可用于确定会议中的动作项的传统技术具有各种技术和功能缺陷。例如,传统技术可用于记录会议或捕捉手动用户输入,例如用户在文字处理器应用上记笔记。然而,这些技术缺乏基于会议讨论来自动确定动作项的功能,且更具体地说,针对特定用户的具体的个性化动作项。此外,虽然语音识别技术(或语音到文本技术)可用于捕捉会议的转录,然后进行分析以识别关键词(例如命令),以尝试确定动作项,但这种方法仍然会很容易出错。具体而言,如本文描述的示例所示,用户经常说出听起来像动作项但并不是的语句。例如,像“let’s get this started(让我们开始吧)”或“I need to leave now topick up my kids(我现在需要离开去接我的孩子)”这样的语句在这种传统方法下会被错误地归类为动作项。
本公开内容的各种实施例解决了这些问题并因此经由这些现有技术或计算设备现在没有采用的新功能来改进这些现有技术。例如,一些实施例通过提供经由某些逻辑或规则(例如,用户的角色、会议类型、过去的会议历史、用户行为历史、用户偏好、事件位置等)自动确定动作项的功能来改进现有软件技术。如上所述,在各种现有技术中,任务必须手动执行,并且历史上仅由人或用户手动输入来执行。在特定实施例中,结合这些特定逻辑和规则通过提供自动且更准确地有效执行这些任务的新功能来改进现有技术过程,将在下文对其进行更详细地描述。
在功能缺陷的另一个示例中,一些技术,例如虚拟助手(例如,智能扬声器)无法自动确定动作项。虽然这些技术通常可以处理自然语言请求并执行关键词识别,但这些技术通常不能解析会议转录或其他数据集以确定数据集的哪些部分是事件的动作项以及同一数据集的哪些部分不是动作项。各种实施例改进了这些虚拟助理,因为它们可以解析会议转录或音频输入(例如,近乎实时地)以确定什么输入是动作项。
现有技术在计算机资源消耗(例如,CPU、存储器、I/O、网络延时)方面也效率低下。例如,现有技术需要将事件的整个转录通过网络发送到用户设备或存储到存储器设备,以便用户能够手动解析出数据内的相关信息。这样的转录可以包括输入,例如会议参与者的姓名、会议时间、会议名称以及所有会议内容。这会增加存储设备I/O(例如,非易失性磁盘上过多的物理读/写磁头移动)或网络延时,因为每次用户输入这些数据时,组件必须反复接触存储设备才能执行读/写操作,这既费时又容易出错,并且最终会磨损组件,例如读/写头。此外,在基于会话或网络的Web应用中,每个用户输入需要网络协议(例如,TCP/IP)的分组生成成本(例如,输入报头信息),这会增加每次通过网络发送用户输入时的网络延时。此外,存储或发送事件的整个转录可能会消耗不必要的存储器的量。
本公开内容的各个实施例通过改进计算设备的计算资源消耗来进一步改进这些技术。例如,一些方面仅发送或存储事件的动作项(可能还有少量元数据,例如会议名称)。例如,在确定动作项之后,特定实施例可以通过计算机网络将动作项(而不是整个会议转录)发送到作为“所有者”或负责执行动作项的一方的用户的用户设备。通过这种方式,降低了分组生成成本,因为通过网络只发送动作项,这在一些情况下允许通过网络发送更多比特。在另一示例中,可以提供用户界面,其仅包括动作项或仅记录动作项,而不是会议的整个转录。通过这种方式,存储器存储得到优化,并且存在较少的I/O操作。
现在转到图1,提供了示出在其中可以使用本公开内容的一些实施例的示例操作环境100的框图。应该理解的是:本文中描述的这种布置和其他布置是仅作为示例阐述的。其他布置和单元(例如,机器、接口、功能、顺序和功能组)可在这些示出的布置和单元以外或替代它们来使用,并且为了清楚起见,可以完全省略一些单元。另外,本文中描述的单元中的许多单元是功能实体,可以实现为分立或分布式组件,或者结合其他组件来实现,以及在任何合适的组合和位置中实现。本文中描述为由一个或多个实体执行的各种功能可由硬件、固件和/或软件来执行。例如,一些功能可由运行存储在存储器中的指令的处理器来执行。
在未示出的其他组件中,示例操作环境100包括多个用户设备(例如用户设备102a以及102b至102n)、多个数据源(例如数据源104a以及104b至104n)、服务器106、传感器103a和107,以及网络110。应该理解的是:图1中示出的操作环境100是一个合适的操作环境的示例。图1中示出的每个组件可以经由任何类型的计算设备来实现,例如,诸如结合图7描述的计算设备700。这些组件可以经由网络110彼此通信,联网装置可以包括但不限于一个或多个局域网(LAN)和/或广域网(WAN)。在示例性实现中,网络110包括互联网和/或蜂窝网络,以及各种可能的公共和/或私有网络中的任何一种。
应该理解的是:在本公开内容的范围内,可以在操作环境100内使用任意数量的用户设备、服务器和数据源。每个可以包括单个设备或者在分布式环境中协作的多个设备。例如,服务器106可以经由布置在分布式环境中的、共同提供本文描述的功能的多个设备来提供。另外,未示出的其他组件也可以包括在分布式环境之内。
用户设备102a以及102b至102n可以是操作环境100的客户端侧上的客户端设备,而服务器106可以在操作环境100的服务器侧上。服务器106可以包括服务器侧软件,该服务器侧软件被设计为连同用户设备102a以及102b至102n上的客户端侧软件一起工作,以实现本公开内容中讨论的特征和功能的任何组合。提供操作环境100的这种划分以说明合适环境的一个示例,并且针对每种实现,不要求服务器106与用户设备102a以及102b至102n的任意组合保持为单独的实体。
用户设备102a以及102b至102n可以包括能够由用户使用的任何类型的计算设备。例如,在一个实施例中,用户设备102a至102n可以是本文关于图7描述的计算设备的类型。通过举例而非限制的方式,用户设备可以被体现为个人计算机(PC)、膝上型计算机、移动装置或移动设备、智能电话、平板计算机、智能手表、可穿戴计算机、个人数字助理(PDA)、音乐播放器或MP3播放器、全球定位***(GPS)或设备、视频播放器、手持通信设备、游戏设备或***、娱乐***、车辆计算机***、嵌入式***控制器、摄像头、遥控器、条形码扫描仪、计算机化的测量设备、家用电器、消费电子设备、工作站,或者这些所阐述的设备的任意组合,或者任何其他合适的计算机设备。
数据源104a以及104b至104n可以包括数据源和/或数据***,其被配置为使数据可用于操作环境100的各个组成部分中的任何一个,或者结合图2描述的***200。(例如,在一个实施例中,一个或多个数据源104a至104n向图2的用户数据收集组件210提供用户数据(或使用户数据可供访问)。)数据源104a以及104b至104n可以与用户设备102a以及102b至102n和服务器106分离,或者可以被结合和/或集成到那些组件中的至少一个中。在一个实施例中,数据源104a至104n中的一个或多个包括一个或多个传感器103a、107,它们可以被集成到用户设备102a、102b或102n或服务器106中的一个或多个中或与之关联。结合图2的用户数据收集组件210还描述了数据源104a至104n可获得的感测到的用户数据的示例。
操作环境100可用于实现图2中描述的动作项捕捉***200的一个或多个组件,包括用于自动动作项提取的组件。操作环境100也可以用于实现图6中描述的过程流程600的各个方面。现在参照图2,结合图1,提供了示出适合用于实现本公开内容的实施例并总体上标示为动作项捕捉***200的示例计算***架构的方面的框图。动作项捕捉***200仅表示合适的计算***架构的一个示例。除了所示出的那些之外或代替所示出的那些(例如,***300中所示的),可以使用其他布置和元件,并且为了清楚起见,可以完全省略一些元件。另外,针对操作环境100,本文中描述的元件中的许多元件是功能实体,可以实现为分立或分布式组件,或者结合其他组件来实现,以及在任何合适的组合和位置中实现。
示例***200包括结合图1描述的网络110,并且其通信地耦合***200的组件,这些组件包括用户数据收集组件210、会议监测器250、动作项生成器260、动作项汇编器(assembler)269、用户简档240、用户数据收集组件210以及呈现组件220。这些组件可以体现为例如,在一个或多个计算机***(例如诸如结合图7所述的计算设备700)上执行的经编译的计算机指令或函数的集合、程序模块、计算机软件服务或过程的排列。
在一个实施中,***200的组件执行的功能与一个或多个个人助理应用、服务或例程相关联。具体而言,这样的应用、服务或例程可以在一个或多个用户设备(例如用户设备102a)、服务器(例如服务器106)上操作,可以分布跨越在一个或多个用户设备和服务器上,或者可以在云中实现。此外,在一些实施例中,***200的这些组件可以分布在整个网络中,包括云中的一个或多个服务器(例如服务器106)和客户端设备(例如用户设备102a),或者可以驻留在用户设备(例如用户设备102a)上。此外,这些组件、由这些组件执行的功能或由这些组件执行的服务可以在合适的抽象层(例如计算***的操作***层、应用层、硬件层)处实现。替代地或另外地,本文中描述的这些组件的功能和/或实施例可以至少部分地由一个或多个硬件逻辑组件来执行。举例而非限制性地,可使用的硬件逻辑组件的示例性类型包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、***芯片***(SOC)、复杂可编程逻辑设备(CPLD)。另外,尽管本文中针对示例***200中示出的特定组件描述了功能,但是可以预期,在一些实施例中,这些组件的功能可以跨越其他组件共享或分布。
继续图2,用户数据收集组件210通常负责从一个或多个数据源(例如图1的数据源104a和104b至104n)访问或接收(在某些情况下还标识)用户数据。在一些实施例中,可以使用用户数据收集组件210来促进特定用户(或在一些情况下,包括众包数据的多个用户)的用户数据的累积,以用于会议监测器250或动作项生成器260。数据可以由用户数据收集组件210接收(或访问),并可选地进行累积、重新格式化,和/或组合,并存储在一个或多个数据存储(例如存储225)中,在其中,数据可以是***200的其他组件可用的。例如,如本文所述,用户数据可以被存储在用户简档240中或与用户简档240相关联。在一些实施例中,任何个人标识数据(即,专门标识特定用户的用户数据)要么不上传,要么以其他方式从一个或多个数据源与用户数据一起提供、不被永久存储,和/或对于***200的组件或子组件是不可获得的。在一些实施例中,用户可以选择加入或退出由本文描述的技术提供的服务和/或选择哪些用户数据和/或用户数据的哪些资源将由这些技术利用。
可以从各种源接收用户数据,其中数据可以以各种格式可获得。例如,在一些实施例中,经由用户数据收集组件210接收的用户数据可以经由一个或多个传感器来确定,这些传感器可以在一个或多个用户设备(例如用户设备102a)、服务器(例如服务器106)和/或其他计算设备上或与之相关联。如本文所使用的,传感器可以包括用于感测、检测或以其他方式从数据源104a获得信息(例如用户数据)的功能、例程、组件或其组合,并且可以被体现为硬件、软件或这二者。通过举例而非限制的方式,用户数据可以包括:从一个或多个传感器感测或确定的数据(在本文中被称为传感器数据),例如用户设备的位置信息,用户设备的属性或特性(例如设备状态、计费数据、日期/时间或从用户设备(如移动设备)得出的其他信息),用户活动信息(例如:应用使用情况;在线活动;搜索;语音数据,例如自动语音识别;活动日志;通信数据,包括呼叫、文本、即时消息和电子邮件;网站帖子;与通信事件相关联的其他用户数据),在一些实施例中包括发生在一个以上用户设备上的用户活动、用户历史、会话日志、应用数据、联系人数据、日历和时间表数据、通知数据、社交网络数据、新闻(包括搜索引擎或社交网络上的流行或热门项目)、在线游戏数据、电子商务活动(包括来自诸如视频流式传输服务、游戏服务或Xbox的在线帐户的数据),用户帐户数据(其可以包括来自与个人助理应用或服务相关联的用户偏好或设置的数据)、家用传感器数据、电器数据、GPS数据、车辆信号数据、交通数据、天气数据(包括预报)、可穿戴设备数据、其他用户设备数据(其可以包括设备设置、简档、与网络相关的信息(例如,网络名称或ID、域信息、工作组信息、连接数据、Wi-Fi网络数据、或者配置数据,关于型号、固件或设备、设备配对的数据,例如,其中用户将手机与蓝牙耳机配对,或其他与网络相关的信息))、回转仪数据、加速度计数据、支付或***使用情况数据(其可以包括来自用户的PayPal帐户的信息)、购买历史数据(例如来自用户的XboxLive、Amazon.com或eBay帐户的信息)、传感器(或其他检测器)组件可以感测到或以其他方式检测到的其他传感器数据,包括从与用户相关联的传感器组件得到的数据(包括位置、运动、方向、定位、用户访问、用户活动、网络接入、用户设备计费,或者一个或多个传感器组件能够提供的其他数据),基于其他数据得出的数据(例如,可以从Wi-Fi、蜂窝网络或IP地址数据得出的位置数据),以及可以如本文所述感测或确定的几乎任何其他数据源。
用户数据可以由用户数据收集组件210从与用户相关联的一个或多个传感器和/或计算设备接收。尽管可以设想,用户数据可以例如由传感器或未示出的其他组件进行处理,以便由用户数据收集组件210进行解释,但是本文所述的实施例并不将用户数据限制为经处理的数据,而是可以包括原始数据。在一些实施例中,用户数据收集组件210或***200的其他组件可以从接收到的用户数据中确定解释性数据。解释性数据与***200的组件用来解释用户数据的数据相对应。例如,解释性数据可用于提供针对用户数据的上下文,其可支持***200的组件或子组件做出的确定或推断,例如来自位置的场所信息、来自用户语音的文本语料库(即,语音到文本),或口语理解的各个方面。此外,可以设想的是,对于一些实施例,***200的组件或子组件可以使用用户数据和/或用户数据与解释性数据的组合以实现本文所述子组件的目标。
在一些方面,可以在用户数据流或信号中提供用户数据。“用户信号”可以是来自相应数据源的用户数据的订阅(feed)或流。例如,用户信号可以来自智能手机、家庭传感器设备、智能扬声器、GPS设备(例如,用于位置坐标)、车辆传感器设备、可穿戴设备、用户设备、回转仪传感器、加速度计传感器、日历服务、电子邮件帐户、***帐户,或者其他数据源。在一些实施例中,用户数据收集组件210连续地、定期地、当数据变得可用时或在需要时来接收或访问与用户相关的数据。
继续图2,示例***200包括会议监测器250。会议监测器250通常负责确定和/或检测来自在线会议和/或在场(in-person)会议的会议特征,并使会议特征对***200的其他组件可用。例如,这种被监测的活动可以是会议位置(例如,由用户设备的地理位置确定)、会议的主题、会议的受邀者、会议是否重复、相关截止期限、项目等。在一些方面,会议监测器250针对特定会议以及针对与该会议相关联的每个用户确定并提供会议特征集合(如下所述)。在一些方面,会议可以是过去(或历史)会议或当前会议。此外,应当理解,会议监测器250可以负责监测任何数量的会议,例如,与***200相关联的每个在线会议。因此,与由会议监测器250确定的在线会议相对应的特征可用于分析多个会议并确定相应的模式(例如,通过动作项识别逻辑230)。
在一些实施例中,到会议监测器250的输入是一个或多个用户在事件中的传感器数据和/或用户设备数据和/或来自会议邀请和/或电子邮件或会议上用户的其他设备活动的上下文信息。在一些实施例中,这包括由用户数据收集组件210收集的用户数据(其是经由用户简档240可访问的)。
会议活动监测器252经由一个或多个传感器(例如,麦克风、视频)、设备、聊天、呈现的内容等来监测用户活动。在一些实施例中,会议活动监测器252输出在会议期间发生的转录或活动。例如,活动或内容可以盖时间戳或以其他方式与会议转录相关联。在说明性示例中,会议活动监测器252可以指示会议开始和结束的时钟时间。在一些实施例中,会议活动监测器252监测来自与用户相关联的多个用户设备和/或来自与用户相关联的基于云的服务(例如电子邮件、日历、社交媒体或类似信息源)的用户活动信息,并且其可以包括与事件的转录或内容相关联的上下文信息。例如,电子邮件可以详细说明两个参与者之间的对话,这些对话通过描述会议的详细信息(例如会议的目的)提供会议转录的上下文。会议活动监测器252可以确定当前或近实时的用户活动信息,并且在一些实施例中还可以确定历史用户活动信息,这可以基于收集随时间的用户活动的观察和/或访问过去活动的用户日志(例如,浏览历史记录)来确定。此外,在一些实施例中,会议活动监测器可以确定来自其他类似用户(即,众包)的用户活动(其可以包括历史活动)。
在使用与用户设备有关的上下文信息的实施例中,可以由会议活动监测器252通过检测和分析用户设备的特性来识别用户设备,例如设备硬件、软件(例如OS)、与网络相关的特性、通过设备访问的用户帐户以及类似特性。例如,如先前所述,可以使用许多操作***的功能来确定关于用户设备的信息,以提供关于硬件、OS版本、网络连接信息、所安装的应用等的信息。在一些实施例中,可以针对与用户相关联的每个设备确定设备名称或标识(设备ID)。关于与用户相关联的所标识的用户设备的该信息可以被存储在与用户相关联的用户简档中,例如在用户简档240的用户帐户和设备244中。在实施例中,可以轮询、询问或以其他方式分析用户设备以确定关于设备的上下文信息。该信息可以用于确定设备的标签或标识(例如,设备ID),使得可以识别一个用户设备上的用户活动并将其与另一用户设备上的用户活动区分开。此外,如先前所述,在一些实施例中,用户可以声明或注册用户设备,例如通过经由该设备登录帐户、在该设备上安装应用、连接到询问该设备的在线服务,或者以其他方式向应用或服务提供关于该设备的信息。在一些实施例中,识别并确定登录到与用户相关联的帐户(例如帐户或Net Passport、电子邮件帐户、社交网络等)的设备是与用户相关联的。
用户简档240可以包括关于会议参与者或出席者的获知信息、会议出席者的个人偏好等。在一些实施例中,用户简档240包含图3的用户简档340中包含的全部或部分信息,如下文更详细描述的。在说明性示例中,用户简档240可以包括用户模式/模型242。这可以包括关于出席者或说话者何时倾向于提及动作项的指示(例如,经由先前会议中的模式识别的)。例如,特定出席者可能总是在会议的最后5分钟内说出动作项。此信息可用于在整个会议期间进行预测,以确定语句是否为动作项。用户简档240还可以包括出席者或说话者如何提及动作项目。例如,历史会议事件可以指示特定用户总是在每个动作项结束后声明“let’s mark it(让我们标记它)”,以确保动作项在笔记中被标记为重要,否则完成。
用户简档240可以包括用户偏好244,其通常包括与会议监测器250相关联的用户设置或偏好。通过示例而非限制的方式,这样的设置可以包括与用户期望被明确监测或不监测的特定事件(和相关信息)或者要监测或不监测的事件类别有关的用户偏好,众包偏好,例如是否使用众包信息,或者用户的事件信息是否可以作为众包数据共享;关于哪些事件消费者可以使用用户的事件模式信息的偏好;以及阈值,和/或通知偏好,如本文所述。
在一些实施例中,会议活动监测器252跨多个计算设备(例如,与会议中的所有参与者相关联)或在云中监测与用户设备相关联的用户数据和用户设备上的其他相关信息。关于用户的设备的信息可以从经由用户数据收集组件210可获得的用户数据中确定,并且可以被提供给动作项目生成器260,以及***200的其他组件,以预测字符序列或其他内容是否是动作项。在会议活动监测器252的一些实施方式中,可以通过检测和分析用户设备的特性来识别用户设备,例如设备硬件、软件(例如OS)、与网络相关的特性、通过设备访问的用户帐户以及类似特性,如上所述。例如,可以使用许多操作***的功能来确定关于用户设备的信息,以提供关于硬件、OS版本、网络连接信息、所安装的应用等的信息。类似地,会议活动监测器252或其子组件的一些实施例可以确定与用户相关联的每个设备的设备名称或标识(设备ID)。
上下文信息提取器/确定器254确定关于事件的上下文信息。该信息可以是元数据或不是实际会议内容或有效载荷本身的其他数据,而是描述了相关信息。例如,上下文信息可以包括谁出席或受邀参加会议、会议的主题、会议是否重复、会议的位置、会议的数据、其他项目或其他会议之间的关系、关于会议的受邀或实际出席者的信息(例如,公司角色、参与者是否来自相同公司等)。在一些实施例中,上下文信息提取器/确定器254确定图3的用户简档340或事件简档370内的一些或全部信息,如下文更详细描述的。
会议内容汇编器256接收事件内容和相关上下文信息并生成丰富的会议活动时间线。在一些实施例中,该时间线是包括标签和/或其他相关联内容的转录。例如,时间线可以包括结构化数据(例如,数据库),其包括记录,其中每条记录包括每个对话的时间线和指示对话何时开始/停止的时间戳。记录可以替代地或附加地包括上下文信息,例如关于事件参与者或事件本身的信息(例如,事件的主题、文件、幻灯片或用户简档240中的任何信息)。丰富的会议活动时间线可以是会议监测器250的输出。
动作项生成器260从事件内容中识别可能的动作项。在一些实施例中,输入包括会议监测器250(例如,来自传感器(麦克风、视频、用户活动等)的用户数据和会议相关数据)、用户数据收集组件210以及来自用户的用户简档240的输出。在一些实施例中,输出是可能的动作项和相关相应信息的列表,例如相关文件、动作项归属于谁或必须完成动作项的人、日期等。在一些实施例中,动作项生成器260的输出是结构化数据记录(例如,数据库记录),其包括各种属性,例如动作项名称、属性(谁必须完成动作项)、动作项类别/类型、相关文件和/或要提供以提醒用户完成动作项的内容。
会议内容澄清器261构造或清理会议内容(例如,转录和上下文数据)。例如,可以使用词性(POS)标识符来标记句子,可以删除、替换和添加词语。在一些实施例中,会议内容澄清器261与图3的自然语言序列规范器312相同或包含相似的功能,将在下文对其进行更详细地描述。在说明性示例中,可以执行自然语言处理(NLP)技术来替换某些词语或短语。例如,短语“I am going to expect you to finish project X(我希望你完成项目X)”可以被重构为“person will finish project X(某人将完成项目X)”。将在下文更详细地描述NLP技术。
在一些实施例中,动作项候选识别器262可以基于语法或其他内容结构(例如,句子是否是命令)来确定候选。在一些实施例中,动作项候选识别器262基于可能在会议期间完成的候选或者是不相关的私人命令或请求或者不是事件的一部分的候选来排除内容或动作项候选。例如,语句“I will finish talking about X in the next slide(我将在下一张幻灯片中结束对X的讨论)”可以被排除在动作项之外,因为它可能是在会议期间完成的。在一些实施例中,动作项候选识别器262与图3的动作项候选确定器321相同或包含相似的功能,如下文更详细描述的。
在一些实施例中,动作项候选识别器262使用动作项识别逻辑230来识别动作项候选。动作项识别逻辑230可以包括模式识别逻辑。模式识别逻辑可以包括规则、关联、条件、预测和/或分类模型,或者模式推断算法。动作项识别逻辑230可以取决于特定的响应活动模式或用于识别响应活动模式的机制来采取许多不同的形式,或者识别观察到的响应活动事件之间的特征相似度以确定模式,该模式与执行和用户命令相关联的任务相对应。例如,动作项目识别逻辑230的一些实施例可以使用机器学习机制来确定特征相似度,或使用其他统计测量结果来确定属于支持所确定的响应活动模式的示例响应动作集合的响应活动事件,如下文进一步描述的。可以从会议监测器250接收事件活动,并且可以从动作项候选识别器262接收关于识别出的相似特征的信息。
动作项候选分类器264将动作项候选分类为动作项或不是动作项。在一些实施例中,动作项分类器与图3的分类组件330相同或包括相似的功能,如下文更详细描述的。在一些实施例中,动作项分类器264至少部分基于由会议监测器250检索的信息和/或用户简档240中的信息来对动作项候选进行分类。例如,动作项分类器264可以从上下文信息提取器/确定器254接收上下文信息,该上下文信息指示在当前会议之前所讨论的动作项Y的到期日期X。然后在当前会议期间,管理参与者John Doe可能会说“okay,let’s start doing Ybeginning tomorrow(好吧,让我们从明天开始做Y)。”动作项分类器264然后可以基于作为说话者的管理者和指示Y是动作项并且具有到期日期的先前信息来预测Y是动作项。
在一些实施例中,动作项候选分类器264使用机器学***可用于检测非动作项。新数据集通常与用于预训练的原始数据集类似。因此,相同的权重可用于从新数据集中提取特征。在说明性示例中,原始数据集可以包括被分类为动作项的会议参与者所说的语句。也可能是参与者在发布动作项时95%的时间都说了该语句的情况。因此,经由迁移学习和对于新的传入数据集,用户可能不会说出该语句。使用相同的权重,可以推断出该语句不是动作项。
在一些实施例中,动作项候选分类器使用逻辑235。逻辑235可以包括规则、关联、条件、预测和/或分类模型,或者模式推断算法。逻辑235可以取决于特定的响应活动模式或用于识别响应活动模式的机制来采取许多不同的形式,或者识别观察到的响应活动事件之间的特征相似度以确定模式,该模式与执行和用户命令相关联的任务相对应。例如,逻辑235的一些实施例可以使用机器学习机制来确定特征相似度,或使用其他统计测量来确定动作项候选是否是动作项。
动作项归属器266确定归属或动作项归属于谁。例如,动作项归属器266可以确定负责完成该动作项的人和/或说出该动作项的人。在一些实施例中,归属可以基于由会议监测器250获得的信息、用户简档240中的信息和/或动作项分类器264进行的分类。例如,在会议或其他事件期间说出的一些语句是不完整的或以其他方式对于其余上下文来说是不明确的。因此,动作项归属器266可以使用该外部上下文信息作为信号来对动作项进行归属。例如,会议中的语句可能是“okay go do X starting tomorrow(好的,从明天开始做X)”。单独从这个语句来看,可能不清楚谁在说话,以及谁应该从明天开始执行X。然而,会议监测器250从会议之前的聊天中获得的上下文信息可以指示Jane Doe应该执行X并且她的老板Alexis将在会议期间告诉她何时完成X。因此,Alexis可能是动作项的所有者,且因此动作项可以归属于她。
动作项归属器266可以将内容字符序列映射到说话者或负责以任何合适方式完成动作项的人的身份。例如,在一些实施例中,语音识别组件可用于音频内容输入以将输入的音素映射到特定用户的已知或预定音素库(例如,在参与者行为历史346中发现的)。因此,语音识别组件可以在用户简档240中记录每个用户的语音(例如,潜在地出席会议的每个用户)。以这种方式,可以做出关于特定解析的字符序列是由特定用户说出的预测。替代地或附加地,映射或关联可以包括在每个字符序列旁边带有人名或其他标识符的书面转录。在说明性示例中,动作项归属器266可以将会议的书面转录作为输入。句子“we need tofinish the draft by Friday(我们需要在星期五之前完成草案)”可以被标记化为个体词语,其中句子的主语被标记(例如,we(我们)),句子的动词被标记(例如,finish(完成)),句子的宾语被识别(例如,draft(草案)),以及语义上下文,例如“action item draft to befinished by Friday(动作项草案将在星期五完成)”被识别,以及指示经理John说了这句话。
动作项澄清器268执行动作项的去重、合并动作项和/或验证动作项之间的一致性。动作项的去重可以包括删除冗余或重复说出的动作项。例如,动作项“Get Y done byFriday(在星期五之前完成Y)”可能会在会议中被说出了两次,因此可以移除其中一个语句。验证一致性和合并可以包括对相同办公室动作的不同说出的版本进行组合。例如,第一动作项可能是“Rex,let’s perform project Y(Rex,让我们执行项目Y)”。第二动作项可能会说“so yes...let’s keeping plugging away to get project Y done(所以是的……让我们继续努力完成项目Y)。”这两个动作项可以合并为一个动作项,该动作项以与这两个语句一致的方式进行转换,例如“Rex will perform project Y(Rex将执行项目Y)”。在一些实施例中,动作项澄清器使用去重逻辑237。在一些实施例中,可以使用词嵌入模型(例如,WORD2VEC)或其他结构来指示语句在语义上是否相似(例如,在联署距离内)。因此,当语句在语义上相似时,可以通过线性组合或生成单个句子(例如,经由NLP)来对它们进行组合以表示所有语句。
动作项汇编器269生成动作项的列表并且还可以提供相关信息。例如,这样的相关信息可以是所归属的人、动作项的到期日期、文件、项目名称、不同对话的时间戳、正在说话的人、动作项的所有者,等等。在一些实施例中,相关信息可以从会议监测器250获得的上下文信息中获得。
示例***200还包括呈现组件220,其通常负责向用户呈现内容和相关信息,例如与用户反馈相关的内容。呈现组件220可以包括在用户设备上、跨越多个用户设备或在云中的一个或多个应用或服务。例如,在一个实施例中,呈现组件220管理跨越与该用户相关联的多个用户设备向用户呈现内容。基于内容逻辑、设备特征、相关联的逻辑集线器、用户的推断逻辑位置和/或其他用户数据,呈现组件220可以确定在哪些用户设备上呈现内容,以及呈现的上下文,例如如何呈现(或以什么格式呈现以及呈现多少内容,这可能取决于用户设备或上下文)和/或何时呈现该上下文。具体而言,在一些实施例中,呈现组件220将内容逻辑应用于设备特征、相关联的逻辑集线器、推断的逻辑位置或感测的用户数据以确定内容呈现的方面。例如,可以经由呈现组件220向用户呈现澄清和/或反馈请求。
在一些实施例中,呈现组件220生成与澄清和/或反馈请求相关联的用户界面特征。这些功能可以包括界面元素(例如图形按钮、滑块、菜单、音频提示、提醒、警报、振动、弹出窗口、通知栏或状态栏项、应用内通知或用于与用户对接的其他类似特征)、查询和提示。
在一些实施例中,结合呈现组件220操作的个人助理服务或应用确定何时以及如何(例如,仅呈现动作项或与元数据一起呈现动作项,而不是呈现整个会议转录)呈现内容。在这样的实施例中,包括内容逻辑的内容可以被理解为针对何时以及如何呈现通知对呈现组件220(和/或个人助理服务或应用)的推荐,其可以被个人助理应用或呈现组件220重写。
现在转向图3,***300包括网络110,结合图1对网络110进行了描述,网络110通信地耦合***300的组件,包括自然语言序列规范器312、动作项候选确定器321、分类组件330、用户数据收集组件310、呈现组件320、用户简档340(通过存储325)以及事件简档370(通过存储325)。如本文所述,用户简档340中的用户特征是基于不同的用户信号生成的,例如用户偏好、用户角色(例如,组织内的职位)等。此外,来自事件简档370的信号和额外的用户信号可以组合在一起以生成组合的见解或特征。作为示例,可以结合具有特定出席者的会议来考虑用户历史行为历史模式。***300的组件可以被体现为一组经编译/解释的计算机指令或功能、程序模块、计算机软件服务或者在一个或多个计算机***上执行的过程的布置。在一些实施例中,***300是相对于图2的***200的替代或额外的***实施例。
应该理解,图3中所示的动作项捕捉***300是在其中可以使用本公开内容的实施例的一个***的示例。所示的一些组件或每个组件可以包括与参考照图7描述的计算设备700相似的一个或多个计算设备。动作项捕捉***300不应被解释为具有与其中示出的任何单个模块/组件或模块/组件的组合有关的任何依赖性或要求。每个可以包括单个设备或者在分布式环境中协作的多个设备。例如,***300可以包括布置在分布式环境中的、共同提供本文描述的功能的多个设备。另外,未示出的其他组件也可以包括在网络环境之内。应当理解,根据各个实施例,***300和/或其各种组件可以位于任何地方。
动作项捕捉***300通常操作以确定作为动作项的事件中的特定内容并且确定哪些内容字符序列不是动作项。***300收集、组织和分析包括用户偏好、用户角色、事件位置、事件名称等的数据以确定内容是否与动作项相关联。
用户数据收集组件310通常负责从一个或多个数据源(例如图1A的数据源104a和104b至104n)访问或接收(在某些情况下还识别)事件和用户数据。在一些实施例中,可以使用用户数据收集组件310来促进***300的所有用户的事件/会议数据(包括众包数据)的积累。数据可以由用户数据收集组件310接收(或访问),并可选地进行累积、重新格式化和/或组合,并被存储在一个或多个数据存储(例如存储325)中,其中,数据对日历项丰富***300的其他组件是可获得的。此外,用户数据收集组件310可以被配置为:将每个事件数据单元与一个或多个用户简档相关联,并将相关联的日历事件数据单元存储在相应的用户简档340中。
示例***300还包括存储325。存储325通常存储包括在本文描述的技术的实施例中使用的数据、计算机指令(例如,软件程序指令、例程或服务)和/或模型(例如,机器学习模型)的信息。在实施例中,存储325包括数据存储(或计算机数据存储器)。此外,虽然被描绘为单个数据存储组件,但存储325可以被实现为一个或多个数据存储,或者可以在云中。
事件和用户数据可以接收自各种来源,其中数据可以以各种格式获得。例如,在一些实施例中,经由用户数据收集组件310接收的事件和用户数据可以经由一个或多个传感器(诸如图1的传感器103a和107)来确定,这些传感器可以在一个或多个用户设备(例如用户设备102a)、服务器(例如服务器106)和/或其他计算设备上或与之相关联。如本文所使用的,传感器可以包括用于感测、检测或以其他方式从数据源104a获得信息(例如事件和用户数据)的功能、例程、组件或其组合,并且可以被体现为硬件、软件或这二者。通过举例而非限制的方式,事件和用户数据可以包括:从一个或多个传感器感测或确定的数据(在本文中被称为传感器数据),例如移动设备的位置信息、智能手机数据(例如电话状态、计费数据、日期/时间或从智能手机得到的其他信息),用户活动信息(例如:应用使用情况;在线活动;搜索;语音数据,例如自动语音识别;活动日志;通信数据,包括呼叫、文本、即时消息和电子邮件;网站帖子;与事件相关联的其他用户数据等),包括发生在一个以上用户设备上的用户活动、用户历史、会话日志、应用数据、联系人数据、日历和时间表数据、通知数据、社交网络数据、新闻(包括搜索引擎或社交网络上的流行或热门项)、家用传感器数据、电器数据、GPS数据、车辆信号数据、交通数据、天气数据(包括预报)、可穿戴设备数据、其他用户设备数据(可以包括设备设置、简档、网络连接(例如Wi-Fi网络数据)或配置数据,有关型号、固件或设备、设备配对(例如,用户将移动电话与例如蓝牙耳机配对的情况)的数据)、回转仪数据、加速度计数据、传感器(或其他检测器)组件可以感测到或以其他方式检测到的其他传感器数据,包括从与用户相关联的传感器组件得到的数据(包括位置、运动、方向、定位、用户访问、用户活动、网络接入、用户设备计费,或者一个或多个传感器组件能够提供的其他数据),基于其他数据得出的数据(例如,可以从Wi-Fi、蜂窝网络或IP地址数据得出的位置数据),以及可以如本文所述感测或确定的几乎任何其他数据源。在一些方面,可以在用户信号中提供日历事件数据。用户信号可以是来自相应数据源的事件数据的订阅。例如,用户信号可以来自智能手机、家庭传感器设备、GPS设备(例如,用于位置坐标)、车辆传感器设备、可穿戴设备、用户设备、回转仪传感器、加速度计传感器、日历服务、电子邮件帐户、***帐户,或者其他数据源。在一些实施例中,用户数据收集组件210连续地、定期地或在需要时接收或访问数据。
自然语言序列规范器312解析或标记事件内容和/或其他外部信息(例如,由用户数据收集组件310接收的信息)并重构信息。在一些实施例中,事件内容是或包括以自然语言编写的事件中所说的一切的顺序和内容的文档或转录。例如,事件内容可以是在会议的整个持续时间期间所说的每件事的书面转录。在一些实施例中,事件内容可以替代地或附加地包括在事件期间所说的每件事的音频内容。在一些实施例中,自然语言序列规范器312近乎实时地(例如,在会议期间说出每个语句时或说出每个语句之后不久)处理事件内容。替代地或附加地,在一些实施例中,自然语言序列规范器312在每个事件或会议结束之后处理事件内容。
解析和连接组件314对来自内容的字符序列(例如,句子、词语)进行标记化和分解,并将其他字符序列(例如,语义相似的词语)和/或标签(例如,词性)连接到经标记化的字符序列。在一些实施例中,连接的字符序列是NLP组件或库的一部分,其中每个内容都被解析成它的词语,并且一些或每个词语用词性标识符来标记。
各种实施例中的“标记化”或解析对应于将内容分割成词语、句子、符号、字符序列和/或内容的其他元素的计算机实现的过程。“语法”或语法属性是指内容的字符序列的结构(与语义或意义相反),例如句子的结构。这可以包括用于对消息进行分析的规则集合,例如词语和/或POS顺序。例如,对于句子“the girl jumped happily(女孩高兴地跳起来)”,语法可以对应于结构为主语-动词-副词(或主语、动词、宾语等)的词序。在各种实施例中,对消息元素的POS进行标记。
在一些实施例中,NLP得出半结构化或非结构化数据(例如,图像文件中的数据、博客中的数据、帖子、网站、分类器模型的文本描述)的语义和语法内容。这与分析“结构化”数据(例如数据库中的数据)形成对比。NLP可以被配置为:解析内容以确定语义上下文(例如,通过对照彼此以及对照训练数据而分析内容中的每个词语确定的词语的含义)和语法上下文(例如,管理给定语言中句子结构的规则集)。NLP被配置为识别与数据集的一个或多个部分相关联的关键字、上下文信息和元数据标签。在某些实施例中,NLP对包含在数据集中的概要信息、关键字、文本描述进行分析,并使用该信息中出现的语法和语义元素来识别兴趣上下文。语法和语义元素可以包括诸如词频、词义、文本字体、斜体、超链接、专有名称、名词短语、词性(例如,名词、副词、形容词等)的信息,和/或周围词语的上下文。其他语法和语义元素也是可能的。
清理组件316从内容中移除冗余或重复的字符序列。这考虑到会议参与者口吃、结巴、喃喃自语、不小心说出相同的事情,或以其他方式提供冗余或重复的数据。例如,会议参与者可能会说:“I will...[pause because someone interjects]...Ok I will sendthe mmm file(我将......[暂停,因为有人插话]......好吧,我将发送mmm文件)”。在该示例中,清理组件316可以从字符序列中移除“I will(我将)”短语,因为它是冗余的(例如,它已经被说过)。
序列结构组件318对内容中的字符序列进行替换、移除和/或添加词或词组以使内容更易于处理。在一些实施例中,该组件使用上文关于NLP描述的语义和语法分析。替代地或附加地,在一些实施例中,该组件使用词嵌入模型(例如,WORD2VEC、GloVe等)来确定语义上相似的词。在一些实施例中,如上所述的内容的字符序列到会议参与者的映射还可以用于经由序列结构组件318添加或替换词语。例如,序列结构组件318可以将短语“I’m goingto make sure you aren’t blocked(我将确保你不被阻挡)”修改为“[person][will]makesure that[person][is not]blocked([某人][将]确保[某人][不]被阻挡)”。因此,序列结构组件318可以确定“I'm going to”在语义上与“I will”相似,并且“aren’t”在语义上与“is not”相似,并进行相应的替换。此外,序列结构组件318可以确定“person”(人)正在说话或者是句子的主语和/或宾语。
动作项候选确定器321确定内容的哪些部分是成为动作项的候选。在一些实施例中,这发生在自然语言序列规范器312的处理之后或者是对该处理的响应。候选识别器323识别内容中字符序列中的模式或语法关系以定义动作项的边界或截止。例如,使用上面的说明,在自然语言序列规范器确定字符序列为“person will make sure that person isnot blocked(某人会确保某人不被阻挡)”之后,可以通过候选识别器将其识别为候选进行进一步处理。在一些实施例中,候选识别器323识别内容中的语言或自然中断,例如句点、分号、何时发出命令等,以确定这些字符或命令之间的内容是用于进一步处理的候选。例如,如果事件内容总共具有4个句子,并且4个句子中的3个句子是命令,则候选识别器323将这3个句子命令识别为单独的动作项候选以供进一步处理。
特征提取器325提取与内容相关联的特征值以准备预测或分类(例如,由用户数据收集组件310收集的)。例如,对于每个动作项候选,特征提取器325可以提取谁在说话、会议中的所有人或参与者(例如,事件参与者数据376)、会议中所有参与者的参与者角色344、事件名称372、会议中所有参与者的参与者偏好342、会议中所有参与者的参与者行为历史346、事件位置374以及外部数据378。参与者偏好342对应于一个或多个参与者的个人偏好,并且可以用于确定候选动作项是否确实是动作项、设置动作项的到期日期、将动作项传递给用户等。例如,这样的个人偏好可以是或包括:用于通过其发送动作项的特定的用户选择的通信渠道(例如,SMS文本、即时聊天、电子邮件、视频等)。附加地或替代地,个人偏好可以包括娱乐、爱好或其他兴趣。例如,如果已知会议参与者喜欢模型号Y的汽车制造商X,则参与者在事件中对此的任何提及都可以被加权为不太可能成为动作项。在另一示例中,参与者可能具有特定的事件偏好,例如偏好每个动作项在时间窗口内完成。因此,例如,当预测或发送动作项时,额外数据(例如完成动作项的时间)也可以基于参与者偏好342与动作项耦合。
参与者角色344对应于事件参与者头衔或其他ID。例如,参与者角色344可以是或者包括参与者的一个或多个职位,例如软件工程师、市场总监、CEO、CIO、管理软件工程师、副总法律顾问、内部事务副总裁等。在一些实施例中,用户简档340包括事件中每个参与者的参与者角色。参与者角色344可以用作帮助确定动作项候选是否确实是动作项的信号。这是因为某些语句更有可能或不太可能成为动作项,这取决于说出该语句的参与者的角色。例如,如果高级工程师或管理工程师提到“we should create a different design forthis customer(我们应该为该客户创建不同的设计)”,该语句可能是一个动作项,而如果新员工说出同样的语句,它不一定是一个动作项,因为典型的雇佣结构要求动作项要么由权威人士说出,要么由权威人士批准。
参与者行为历史346对应于事件的一个或多个参与者的历史行为的识别出的模式。此类模式可能是或者包括:参与者说话方式的模式(例如,参与者A即使在发出命令时也总是开玩笑,这使得候选不太可能成为动作项)、倾向于在事件的特定时间或时间窗口提及动作项、从不拥有或发布任何动作项的模式、总是拥有或发布任何动作项的模式、人们表达动作项或与他人互动方式的模式(例如,作为经理的人A总是在动作项之前说“homeworkassignment number[x],...(作业分配编号[x],......)”,这是后面的句子是动作项的信号)、用户的语言和风格、作为参与者之间先前通信(例如,聊天、电子邮件和文档)的对话历史,等等。历史模式可用于预测候选动作项是否确实是动作项。例如,如果两个参与者之间的对话历史显示,下一次即将举行的会议Y将是他们决定即将到来的事件Z的位置的地方,则会议Y期间的短语“Ok John,let’s have it at Glendale(好的,John,让我们在格伦代尔举行吧)”可以至少部分基于关于事件和事件位置的对话历史被确定为是动作项。在一些实施例中,被识别为参与者行为历史346的模式由一个或多个机器学习模型(例如,贝叶斯图、随机森林、线性回归等)确定。
在一些实施例中,用户简档340包括用于帮助确定候选动作项是否确实是动作项的替代或额外信息,例如参与者的年龄、参与者的家庭成员和相关信息、参与者的地址等。例如,如果知道说话者A有一个孩子Jane Doe在学校,并且说话者A说“I have to pick upJane Doe today(我今天必须去接Jane Doe)”,则可以基于家庭成员数据选择性地不将其选择作为动作项。
事件简档370对应于事件(例如会议)以及相关联的细节(例如,由用户数据收集组件310收集的)。事件名称372对应于事件的标题或主题(或子主题)。可以至少部分基于事件名称372来确定动作项。这是因为对于某些事件和相关联的主题来说,某些短语或语句或多或少可能是动作项。例如,与例如主题是基于手势和其他肢体语言习惯的销售策略的会议相比,对于主题是机器学习模型的准确性的会议,任何有关模型细节的语句(例如提供更多测试数据、降低错误率等)都更有可能是动作项。
事件位置374对应于事件的地理位置或类型。例如,事件位置374可以指示会议的物理地址或会议位置的建筑物/房间标识符。事件位置374可替代地或附加地指示会议是虚拟或在线会议或者在场会议。事件位置374也可以是用于确定候选动作项是否确实是动作项的信号。这是因为某些事件位置与某些主题相关联,并且至少部分基于该位置或主题,事件的内容不太可能或很可能被认为是动作项。例如,如果确定会议在建筑物B处,建筑物B是发生工程测试的建筑物,则某些语句比其他语句(例如是针对测试、建筑物等的命令的那些语句)更有可能是动作项。
事件参与者数据376指示特定事件的参与者的姓名或其他标识符。在一些实施例中,事件参与者数据376包括事件中用户之间的关系。例如,事件参与者数据376可以包括图形视图或分层树结构,其指示顶部或根部的最高管理职位,经理职位之下为分支处的中层经理,中层经理之下为叶子级别处的高级工人。在一些实施例中,事件参与者的姓名或其他标识符在用户说话时自动或近实时地确定(例如,基于语音识别算法),或者可以基于出席者、受邀者或会议管理员的手动输入来确定。在一些实施例中,响应于确定事件参与者数据376,***300然后检索或生成针对事件的每个参与者的用户简档(例如,用户简档340)。
外部数据378对应于不是实际会议内容本身的、可用于预测内容是否为动作项的任何其他合适的信息。在一些实施例中,外部数据378包括仍可用于进行预测的任何非个性化数据。例如,即使当前事件的当前参与者池与参加历史事件的参与者池不同,外部数据378也可以包括在若干会议/事件的人类***台或与当前事件无关的其他数据源)获得。在说明性示例中,随着时间的推移可以确定:对于特定组织或业务单位,动作事件总是在会议的最后10分钟列出。因此,对于其特定参与者池以前从未遇到的当前会议的最后10分钟,候选很有可能基于特定组织或业务单位的历史被预测为动作项。
候选排除组件327排除或移除被标记为动作项的动作项候选。在一些实施例中,该排除基于候选可能在事件期间完成或作为动作项被明确移除。例如,如果参与者声明“Iwill explain it in the next slide(我将在下一张幻灯片中解释它)”,这是向***200发出的信号,表明该候选不是真正的动作项,因为该候选将在会议期间的某个时间完成。或者参与者可能会说,“thanks for all the input everyone...after further thinking,let’s not do Y(感谢大家的所有投入……经过进一步思考,我们不要做Y)。”因此,作为动作项的Y可以被移除。因此,***300的实施例可以使用规则集合,其指示仅当待完成的动作项候选仍将在会议结束之后的某个时间发生时,才指示该动作项候选是动作项。在一些实施例中,这种排除基于这样的候选:虽然它们看起来是动作项,但对于特定事件是不相关或不重要的。例如,会议参与者可能会说“Jake,can you pick up Robert today(Jake,你今天能去接Robert吗)?”但是,会议可能是关于销售或其他不相关的主题,并且说话者(例如,Dan)可能有一个儿子Robert需要去接。
分类组件330分类或以其他方式做出与动作项候选是否是实际动作项的预测。这样的组件可以使用任何合适的模型或模型集合或技术来进行预测,例如随机森林模型、深度神经网络、贝叶斯网络或任何其他合适的机器学习模型。在模型被监督的一些实施例中,例如,标签或分类目标是候选是否是动作项。例如,在随机森林实施例中,每个叶节点可以指示候选是否是动作项,这基于分支节点和根节点处的决策(例如,基于在用户简档340和事件简档370内提取的值)。
事件类型检测器332根据会议的类型来检测或分类书面或音频转录。例如,事件类型检测器332可以对事件是否是广播会议、辅导课、董事会会议等(例如,基于事件简档370中的信息)进行分类。替代地或附加地,事件类型检测器332还至少部分基于事件的类型和/或事件简档370内的其他信息来计算动作项将存在于内容之内的概率。在一些实施例中,该概率用于确定额外概率以指示特定候选是否确实是动作项。例如,如果确定事件是辅导课或演讲,说话者和出席者之间几乎没有反馈或对话,则可以预测事件将包含动作项的概率很低(例如,低置信度级别)。因此,在事件期间特别陈述或说出的任何事情都可能自动被加权或以其他方式朝向低概率评分。
在一些实施例中,事件类型检测器332使用朴素贝叶斯或其他贝叶斯网络模型进行预测。朴素贝叶斯算法是使用概率论和贝叶斯定理来预测文本的标签的概率算法集合。例如,如果事件名称372没有自动提供会议的名称或主题,则事件类型检测器332可以使用朴素贝叶斯算法来推测或预测事件的主题或名称。在说明性示例中,语句“let’s do morerounds of tracing and debugging(让我们进行更多轮次的跟踪和调试)”可以被标记为“software performance engineering(软件性能工程)”等。贝叶斯网络图根据概率来映射节点(例如事件)之间的关系。这些图表显示了特定事件的发生如何影响其他事件发生的概率。每个节点也有条件地独立于其非后代。这些图表遵循贝叶斯定理的基本原理,表示为:
其中,A和B是事件,并且P(B)≠0。即,在给定B的情况下A的概率(P)=在给定A的情况下B的概率乘以(A)的概率遍及B的概率。有向无环图包括各种节点、有向边和条件概率表。例如,每个节点可以表示事件简档370之内的特征,使得概率是相互依赖的,例如因为偶数位置在X处的概率很高,因此事件的主题或事件名称372为Z的概率为Y,并且因为概率Y,参与者1、2和3将出席会议的概率为T。
事件部分概率组件334将内容的部分(例如,动作项候选、段落、句子、页面等)分类为具体的(该部分是动作项的可能性较高)或描述性的(该部分是动作项的可能性较低)。事件部分概率组件334因此对内容进行解析,并在存储器中将这些部分映射为可能或不可能是动作项(例如,基于语法结构)。例如,没有任何命令或请求的句子或短语(例如,不是祈使句的句子),例如“item X was great for our customers(项目X非常适合我们的客户)”或“we have much fun at the last meeting(上次会议我们玩得很开心)”或“we made lotsof progress since the last meeting(我们自上次会议以来取得了很大进展),”是动作项的可能性较低。相反,作为祈使句或以其他方式包括命令或请求的句子或短语更有可能是动作项。祈使句用于发出命令、提出请求或提供建议。祈使句通常以句号或感叹号结尾或具有其他语法属性,例如主语,后跟动词,然后是宾语(例如,“John[subject],please join[verb]in on the project[object](John[主语],请加入[动词]项目[宾语])”)。在一些实施例中,事件部分概率组件334可以在动作项和那些看似是动作项但基于例如语法属性和/或历史(例如参与者行为历史)不是动作项的项之间进行辨别。例如,语句“you can presson it(你可以按下它)”可能会基于列出说出的口语术语或短语而不是动作项的字典或其他数据结构被标记为不是动作项。
在一些实施例中,事件部分概率组件334使用预测模型,例如隐马尔可夫模型(HMM)。HMM是一种计算工具,用于表示观察序列上的概率分布。这些工具对时间序列数据进行建模。HMM扩增了马尔可夫链。马尔可夫链是一种模型,它提供了关于随机变量序列或状态序列的概率的洞察力,每个随机变量或状态都从数据集中获取值。这些数据集可以是文字、标签、符号等。马尔可夫链的假设是任何预测都仅基于当前状态,而非当前状态之前的状态。当前状态之前的状态对未来状态没有影响。在各种情况下,感兴趣的事件是隐藏的,因为它们不能被直接观察到。例如,POS标签通常不会在文本中被观察到。而是直接观察到词语本身,并推断出POS标签(隐藏状态)。
HMM允许模型同时使用观察到的事件和隐藏事件,它们本质上是概率算法中的因果因素。HMM由以下分量表示:N个状态的集合Q=q1q2……qN,转移概率矩阵AA=a11……aij……aNN,每个aij表示从状态i移动到状态j的概率,T个观察的序列O=o1o2……oT,每一个都来自词汇表V=v1,v2,……vT,观察可能性的序列B=bi(ot),也被称为发射概率,每个都表示观察ot从状态i生成的概率,以及状态上的初始概率分布π=π1π2...πN。πi是马尔可夫链从状态i开始的概率。一些状态j可以有πj=0,这意味着它们不能是初始状态。
特定状态的概率仅取决于前一个状态,因此引入了马尔可夫假设:P(qi|q1...qi-1)=P(qi|qi-1)。输出观察oi的概率仅取决于产生观察qi的状态,而不取决于任何其他状态或任何其他观察,因此导致输出独立性O(oi|q1...qi...,qr,o1,...,oi,...oT)=P(oi|qi)。。这允许组件陈述给定观察o(例如,句子是命令的形式、会议的类型或事件简档370内的任何其他值),算法可以找到Q状态的隐藏序列(例如,内容的一部分是否可能是动作项)。
在一些实施例中,动作项确定器336将由特征提取器325获得的所有计算的特征、候选识别器323动作项候选的结果(例如,由动作项候选确定器321确定)和/或其他字符序列或上下文作为输入,并对每个候选动作项是动作项还是不是动作项进行分类或以其他方式进行预测。在一些实施例中,本文所述的“上下文”是特定字符序列的周围文本。例如,第一个句子的上下文可以是第一个句子之前的第二个句子和第一个句子之后的第三个句子。
在动作项确定器336如何进行预测的说明性示例中,首先自然语言序列规范器312可以将整个转录作为输入以如上所述重构转录。作为响应,动作项候选确定器321可以基于句子语法、排除规则来识别候选动作项,和/或可以如上所述从用户简档340和事件简档370中提取各种特征。作为响应,分类组件330可以对事件进行分类(例如,经由朴素贝叶斯),确定转录中的部分或动作项候选是否是动作项的概率(例如,经由HMM),然后最终对候选动作项是否确实是动作项进行分类。例如,动作项确定器336可以至少部分基于特定会议中的每个参与者的参与者行为历史346、参与者角色344和参与者偏好342来以某个置信度级别确定候选是否是动作项。动作项确定器336可以附加地或替代地至少部分基于事件名称372、事件位置374、事件参与者数据376和/或外部数据378来确定候选是否是动作项。
在一些实施例中,动作项确定器336使用机器学习模型,例如深度学习分类神经网络(例如,CNN)。使用CNN,可以首先识别标记、类别或目标分类,例如“动作项”或“不是动作项”。神经网络可以包括卷积层、池化层和全连接层。机器学习模型神经网络可以被馈送或接收在卷积层处由自然语言序列规范器312、动作项候选确定器321和/或事件类型检测器332/事件部分概率组件334提供的输出作为输入。每个输入都可以被转换成值的二维输入向量阵列,例如整数1和0。每个值表示或描述输入的特定值和值的强度。例如,某个词语或字符序列可以用一来表示,而其他词语或字符序列可以用零来表示。卷积层使用一个或多个过滤器映射,每个过滤器映射表示输入的一个特征(例如,参与者角色344)。可以存在输入的各种特征,因此对于给定输入可以存在各种线性堆叠的过滤器映射。过滤器映射也是表示值集和权重的值的阵列,其中,当某个值与输入的相应部分中的相应值(例如,指示参与者行为历史346的训练数据)或值的集合相匹配时,它被更高地加权。卷积层包括使用每个过滤器映射来扫描或分析输入的每个部分的算法。因此,每个过滤器映射的每个值都相对于输入的每个部分中的相应值进行比较和匹配,并根据相似度进行加权。在一些实施例中,卷积层执行线性函数或运算以通过将每个值与其自身值相乘然后执行每个乘积的求和函数来得到过滤器映射,然后将其除以输入特征中的值的总量。
在特定实施例中,池化层通过选择窗口大小(即,将在特征图中分析的维度值的数量)并选择特征图中所有值的最大值作为经修改的特征图的唯一输出来减少维度或压缩每个特征图。在一些实施例中,全连接层将每个经修改特征的每个值映射或投票到每个分类(即,候选是“动作项”还是“不是动作项”)。每个值的投票强度基于其权重或值分数。输出是分数(例如,浮点值,其中1是100%匹配),其指示给定输入或经修改的特征的集合适合特定定义的分类(是“动作项”或“不是动作项”)的概率。例如,输入可以包括文本集合,上面写着“let’s get this meeting started after I tell a joke....Jake tell John tofinish the product by Monday(我讲完一个笑话之后让我们开始这个会议……Jake告诉John在星期一之前完成产品)”。分类类型可以是“动作项”或“不是动作项”。在第一字符序列“let’s get this meeting started after I tell a joke...”被馈送通过每一层之后,输出可以包括每个损坏分类类型的浮点值分数,该分数指示“动作项:0.21”和“不是动作项:0.90”,这指示该字符序列有90%的概率不是动作项。训练或调整可以包括使目标变量或输出(例如,0.90)和预期输出(例如,100%)之间的损失函数最小化。因此,可能需要尽可能接近特定分类的100%置信度以减少预测误差。随着更多的训练输入和基线数据集被馈送到学习模型中,这可能会随着时间的推移而发生,从而可以出现具有更高的预测概率的分类。
呈现组件320用于以可以在用户设备上显示的格式呈现由日历项丰富***300及其组件生成的各种界面和各种其他输出。举例来说,呈现组件320可以将动作项事件的界面(而不是整个事件内容)呈现给拥有动作项的那些适当的个人。
现在转向图4,图4示出了根据一些实施例的用于确定一个或多个动作项的示例模型流400的示意图。在一些实施例中,模型流400由图2和/或图3的一个或多个组件使用。模型流包括输入层404、数个中间或隐藏层406、408和410,以及输出层412,用于执行指示字符序列是否为动作项的分类414。转录402是对应于在事件内发生的整个话语主体或自然语言语音的书面或音频内容。例如,转录402可以包括在会议期间发生的在参与者之间的所有对话,包括问题、命令或动作项、停顿、打喷嚏、咳嗽、大笑、解释、其他声音等。流400将转录402的至少一部分作为输入,例如单独的字符序列402-1(例如,在时间上一个接一个地出现的3个有序句子)。在一些实施例中,层404在单个时刻摄取整个转录402作为输入。替代地或附加地,层404在不同的时刻(例如,在每个话语或参与者语音发生时近乎实时地)摄取转录402的部分。例如,可以在第一时间摄取第一字符序列集合402-1,并且在第一时间之后的第二时间摄取第二字符序列集合402-2,直到摄取转录402的所有字符序列为止。
在一些实施例中,字符序列(例如,402-1)包括句子或句子片段之前的上下文以及同一句子或句子片段之后的上下文,和/或动作项候选(例如,由动作项候选确定器321确定的)。例如,转录的一部分可以读取“...I’m feeling like we can accomplish task X.SoJohn do task X by Friday.That should give us enough time to accomplish task Y(……我觉得我们可以完成任务X。所以John在星期五之前完成任务X。那应该能给我们足够的时间来完成任务Y)”。因此,“so John do task X by Friday(所以John在星期五之前完成任务X)”可以是动作项候选,而“I’m feeling like we can accomplish task X(我觉得我们可以完成任务X)”以及“That should give us enough time to accomplish task Y(那应该能给我们足够的时间来完成任务Y)”是动作项候选的上下文。在一些实施例中,输入层404(或层406、408、410和/或412中的任何一个层)包括被加权或未被加权的人工输入神经元以获取转录402内的一些或每个信息。
层406接收层404的输出(具有其上下文的字符序列),并且识别(例如,经由动作项候选识别器262)动作项候选、特定字符序列(例如,句子),以及后向上下文(例如,特定字符序列之前的上下文)和前向上下文(例如,特定字符序列之后的上下文)。在一些实施例中,层408将此作为输入并将信息转换为向量或确定句子之间的语义相似度。在一些实施例中,层408是或者包括词嵌入向量模型,例如WORD2VEC或GloVe。在这些实施例中,对层408的输入是自然语言文本序列(字符序列、动作项候选、前向和后向上下文),并且层408使自然语言文本转换为向量(例如,实数)并映射到向量空间中,为机器学***均以形成向量空间中的单个向量表示,这将在本文中更详细地描述。这样,其他机器学习模型就可以将这些向量作为输入进行预测。
在一些实施例中,词嵌入向量模型是WORD2VEC模型。WORD2VEC模型是两层网络模型,它通过隐藏层(即,列行矩阵)和投影层(例如,softmax分类器)运行一个或多个输入向量(例如,其表示消息元素)。WORD2VEC模型从源上下文词预测目标字符串(即经由连续词袋(CBOW)算法)或从目标词反向预测源上下文词(即,经由skip-gram算法)。
在各种情况下,向量根据它们与表示其他文本的其他向量的语义相似度在向量空间中进行映射。以这种方式,例如,输入可以被规范化或以其他方式清理(例如,通过清理组件316)以重构文本或动作项候选。为了在向量空间中绘制输入向量,使用训练数据来训练模型。在各种实施例中,训练数据包括具有非结构化数据(例如,文档、新闻文章、社交媒体帖子、新闻订阅或博客)、半结构化数据和/或结构化数据(例如,数据库值)的大型语料库。训练数据也可以是词嵌入向量模型的输入。在一些实施例中,向量空间表示“经预训练的”嵌入。经预训练的嵌入是静态模型,其在没有反馈、重新训练或参考通过它馈送的数据集的情况下生成。例如,用户可以从在线资源下载静态词嵌入向量模型,该模型已经经过训练,并且包括已经根据词之间的语义相似度映射到向量空间中的向量或数据点。在其他实施例中,向量空间表示“经重新训练的”或经训练的嵌入。经重新训练或经训练的词嵌入模型是在接收到初始训练会话后接收训练反馈并针对特定数据集进行优化或生成的嵌入。例如,在将初始数据点绘制到一个或多个词嵌入向量模型之后,一些实施例可以第二次“重新训练”一个或多个词嵌入向量模型,使得根据实施的策略,未来数据集中的任何向量或词语都会始终映射到其最近的邻居或其他词语。在一些实施例中,再训练包括发布反馈以确保使用正确的数据点配对。
为了将每个词语映射到向量空间中其上下文适当的点,使用了训练算法。例如,在一些实施例中,使用最大似然(ML)原理训练词嵌入向量模型,以根据softmax函数,在给定先前词语h(即“历史”)的情况下使下一个词语wt(即“目标”)的概率最大化:
其中,score(wt,h)计算词语wt与上下文h的兼容性。该模型是通过使其在训练集上的对数似然最大化来训练的,即最大化。
这产生了用于语言建模的适当归一化的概率模型。在每个训练步骤中,使用针对当前上下文h中所有其他词语w’的分数来计算和归一化每个概率。在一些实施例中,使用二元分类目标(例如逻辑回归)对一些模型(例如WORD2VEC)进行训练,以在相同上下文中区分真实目标词wt和K个噪声词w”。因此,代替softmax分类器,使用噪声分类器。
在一些词嵌入实施例中,训练算法的输出和/或实际数据输入是向量空间中的每个位置词,其显示语义相似的词的群组。“语义相似度”是两个或更多个概念(例如,完整形式的词)之间的语义距离。在一些实施例中,任意两个或更多个词之间的“距离”是基于它们的含义和/或语义内容的相似度,而不是任何语法相似度。例如,“car”和“far”在语法上相似,但具有两个不同的定义,因此它们在语义上并不相似。
在一些实施例中,层408包括独热编码层和坐标层以表示和映射向量空间中的词。例如,词“meeting(会议)”可以被转换为独热编码向量表示[1,0,0,0,0]。该向量表示显示五个值,其中每个值对应于输入中的有序输入元素以及会议元素是真还是存在。因为“meeting”是通过词嵌入向量模型运行的词,因此使用整数1来指示它的表示。“Meeting”不包含任何其他词,因此其他向量被表示为0。然后,输出嵌入向量表示可以是坐标或其他值,指示该词应该绘制在向量空间中的什么位置(例如,[1,2])。在一些实施例中,基于与其他词的语义相似度和/或对输入内的所有词的输出嵌入向量进行平均或以其他方式进行组合,在向量空间中绘制该坐标映射。
根据任何合适的方法来测量任何两个向量或词之间的距离。例如,在一些实施例中,使用自动余弦相似度来计算距离。余弦相似度是内积空间的两个非零向量之间的相似度的测量,用于衡量这两个非零向量之间的角度的余弦。没有相似度被表示为90度角,而总相似度为1(即同一个词)是0度角。例如,两个词之间的距离为0.98反映了非常高的语义相似度,而距离为0.003反映了很小的语义相似度。在另一个示例中,“man(男人)”和“king(国王)”以及“woman(女人)”和“queen(王后)”之间的余弦相似度是相同的余弦距离,因此在某些情况下,考虑到man和woman的输入,king在语义上与queen相似。
在输入通过层408(例如,被转换为向量并映射到向量空间)之后,层410对它接收到的输入进行过滤或加权。例如,层410可以是或包括CNN的卷积层和整流线性单元(Relu)。Relu是一种激活函数,其可以被某些机器学习模型(例如神经网络、特定CNN)使用。在一些实施例中,Relu被表示为y=max(0,x)。
在一些实施例中,事件类型检测器432和事件部分概率组件334可以使用层412来进行预测。在一些实施例中,事件类型检测器432是与图3的事件类型检测器332相同的组件和/或被包括在图2的动作项分类器264中。例如,组件432可以使用如上所述的朴素贝叶斯模型来对特定事件进行分类。在一些实施例中,事件部分概率组件434是与图3的事件部分概率组件334相同的组件和/或被包括在图2的动作项分类器264中。例如,该组件可以在存储器中映射可能或不可能是动作项的部分。
在一些实施例中,层412是在做出关于动作项候选是否是动作项的分类414之前的最终预测层。在一些实施例中,层412是全局最大池化层或类似层,其在层410取多个值的求和向量并计算或输出单个最大值。在说明性示例中,关于事件类型检测器432,对于字符序列402-1、402-2中的每一个以及转录402的其余部分,可以生成向量化的值,该向量化的值指示是否是某个事件(例如广播)的概率或分数。在一些实施例中,层412替代或以其他方式用于代替CNN的全连接层。因此,可以生成相应类别或标记的单个特征图。代替在特征图之上添加全连接层,可以计算每个特征图的平均值,并且可以将结果向量直接馈送到softmax层(例如,输出414)。
输出414是分类估计或指示预测字符序列或动作项候选是否是动作项的其他预测。在一些实施例中,输出414是softmax层(例如,如上所述)。softmax层是一种挤压函数,它将函数的输出限制在0到1的范围内,其中值越接近1,则输入落入某个分类的置信度越大或概率越高,反之亦然。Softmax层也可以是多类sigmoid,这意味着它们可以用于一次确定多个类的概率。Softmax层通常具有与输出层(例如层410)相同数量的节点或神经元。
现在转到图5,其描绘了根据本公开内容的实施例的、用于确定和提供会议中的个性化动作项的过程500。过程500(和/或本文描述的任何功能)可以由包括硬件(例如,电路、专用逻辑、可编程逻辑、微代码等)、软件(例如,在处理器上运行以执行硬件模拟的指令)、固件或者它们的组合的处理逻辑来执行。尽管本公开内容中描述的特定框以特定顺序以特定数量引用,但应理解,任何框可与任何其他框基本平行或在任何其他框之前或之后发生。此外,可以存在比所说明的更多(或更少)的框。这种添加的框可以包括体现在本文中描述的任何功能的框。本文所述的计算机实现的方法、***(其包括具有至少一个处理器和至少一个计算机可读存储介质的至少一个计算设备)和/或计算机存储介质可以执行或被使得执行过程500或本文描述的任何其他功能。在一些实施例中,框510至560中的一些或每一个可以自动化地或另外地以非手动(例如,没有肯定的用户设备请求)方式发生,这改进了现有技术,如上所述。
根据框510,(例如,由会议监测器250)确定会议内容。例如,会议活动监测器252可以使用一个或多个传感器或其他组件来监测聊天、呈现的上下文或转录的一些部分。上下文信息提取器/确定器254可以确定事件的上下文信息,例如谁出席或受邀参加会议、会议的主题、会议的位置,或者转录或会议内容本身中的其他上下文或字符序列。然后,会议内容汇编器256可以生成丰富的会议活动时间线,例如包括每个对话的时间线和指示对话何时开始/停止的时间戳的标签或结构化数据。在框510的某些实施例中,从会议中确定内容,这可以通过监测关于会议的会议接收信息(例如转录信息)或者关于会议的其他信息(例如出席者、会议主题和/或相关的上下文信息)来确定。在一些实施例中,框510包括:监测会议以确定会议内容集合。具体而言,在一个实施例中,会议监测器可以接收对在聊天或其他在线论坛中的每个用户输入的指示,这指示现场会议。
根据框520,确定动作项候选集合(例如,通过动作项候选识别器262)。步骤520的实施例基于在步骤510中确定的会议内容信息来确定候选动作项候选集合。例如,基于会议的对话和上下文信息,可以确定可能的动作项的集合。步骤520的一些实施例可以如结合动作项候选识别器262(图2)所描述的那样执行。在步骤530的一些实施例中,可以首先澄清会议内容,例如结合图2的会议内容澄清器261所描述的。结合图2中的动作项生成器260描述了步骤520的额外细节。
根据框530,在框520处确定的候选动作项被分类。例如,CNN或其他机器学习模型可以用于将动作项候选分类为是动作项还是不是动作项,它们都可以是例如分类模型中的标签。通过这种方式,动作项候选可以被排除或实际上变成动作项。在一些实施例中,分类可以基于会议内容或其他上下文信息,例如当模型学习到用户总是指示特定短语是动作项的上下文信息时。因此,当说出短语时,可以将短语分类为动作项的概率较高。步骤530的实施例可以如结合动作项候选分类器264(图2)所描述的那样执行。结合图2中的动作项生成器260描述了步骤530的额外细节。
根据框540,对动作项进行归属。步骤540的实施例将一个或多个候选动作项归属于特定个人,例如会议出席者。例如,动作项可以归属于负责完成动作项的会议参与者或者负责说出动作项的会议参与者。步骤540的实施例可以如结合动作项归属器266(图2)所描述的那样执行。结合图2中的动作项生成器260描述了步骤540的额外细节。
根据框550,对动作项进行汇编。步骤550的实施例通过相关的动作项上下文(例如,动作项的到期日期、动作项的重要性等)、上下文信息(例如,转录中除了动作项之外的字符序列)等来汇编动作项。例如,可以对会议中讨论的文件、靠近动作项的会议转录部分或其他信息进行汇编。步骤550的实施例可以如结合动作项汇编器269(图2)所描述的那样执行。结合图2中的动作项汇编器269描述了步骤550的额外细节。
框560的实施例提供在步骤550中汇编的动作项。框560的实施例可以向特定人员提供旨在由该人员执行的动作项。动作项还可以包括上下文信息(例如到期日期),和/或其他相关上下文,例如背景信息、解释性信息、关于为针对谁准备动作项或谁正在监督动作项的执行的监督或责任信息,这些信息可以在会议期间(或从先前的相关会议中)确定或提取。以这种方式,可以针对该特定人员对动作项进行个性化。在一些实施例中,框560还可以将动作项集合提供给监督者或正在针对其执行动作项的人员。以这种方式,本文中描述的技术的实施例提供了一种用于监测和确保问责的技术手段。在一些情况下,仅提供或显示最强/最高置信度的动作项,而不提供其他动作项。在一些实施例中,用户可以查看更多的动作项,包括具有较少置信度的那些动作项,或者用户可以配置针对要提供多少动作项或者要使用多高的关于动作项的置信度来确定要提供哪些项的阈值的设置(经由用户偏好244)。在框560的一些实施例中,在提供动作项之前,可以澄清动作项,例如结合动作项澄清器268(图2)所描述的。例如,可以移除(去重)冗余或重复状态的动作项,可以合并动作项(例如,合并到没有其他会议内容的可查看列表中),并且可以验证动作项的一致性。
框560的一些实施例可以经由通信消息(例如电子邮件)或者在应用(例如通信应用、日历应用、任务列表/待办事项应用或在线会议应用)之内向负责完成和/或说出那些动作项的用户提供动作项的个性化的集合。框560的实施例可以如结合动作项汇编器266(图2)所描述的那样执行。结合图2中的动作项生成器260描述了步骤540的额外细节。
现在转到图6,图6示出了根据一些实施例的、用于确定事件的字符序列是否是动作项的示例过程600。过程600和/或本文描述的任何功能可以由包括硬件(例如,电路、专用逻辑、可编程逻辑、微代码等)、软件(例如,在处理器上运行以执行硬件模拟的指令)、固件或者它们的组合的处理逻辑来执行。尽管本公开内容中描述的特定框以特定顺序以特定数量引用,但应理解,任何框可与任何其他框基本平行或在任何其他框之前或之后发生。此外,可以存在比所说明的更多(或更少)的框。这种添加的框可以包括体现在本文中描述的任何功能的框。本文所述的计算机实现的方法、***(包括具有至少一个处理器和至少一个计算机可读存储介质的至少一个计算设备)和/或计算机存储介质可以执行或被使得执行过程600或本文描述的任何其他功能。在一些实施例中,框602、604、606和/或608中的一些或每一个可以自动化地或另外地以非手动(例如,没有肯定的用户设备请求)方式发生,这改进了现有技术,如上所述。
根据框602,检测到针对事件或事件的一个或多个部分的指示(例如,通过会议监测器250或自然语言序列规范器312)。该事件包括由一个或多个事件参与者或出席者在会议事件中讨论的自然语言内容。例如,该事件可以是3个参与者的会议,并且可以检测到的会议事件的一部分是第一参与者的开场白。在一些实施例中,查询(例如,通过会议监测器250)一个或多个用户设备、传感器或其他设备以确定会议已经开始或将要开始,这可以是对事件的指示。因此,当会议参与者开始参与讨论时或当识别出会议将开始的时间点时,可以近乎实时地检测到对该事件的指示。例如,使用来自日历、文本或其他数据的上下文数据,可以确定会议将在下午4点开始。因此,例如,会议监测器250可以使得要被发送到会议位置附近或在线的麦克风设备的控制信号变成激活的,此时,响应于接收到会议的会议参与者的第一话语,检测到或将检测到会议事件。在一些实施例中,检测对事件的“指示”包括检测何时开始。替代地或附加地,检测对事件的指示可以包括:检测事件的至少一部分或事件的转录(例如,检测人员何时说出话语以开始会议)。
在一些实施例中,当事件完成时,可以检测到事件的完整转录或副本。例如,设备可以记录整个会议事件并且管理员可以将会议事件上传到计算设备上,这使得输出自然语言文本(例如,经由语音到文本转换),此时可以检测到转录。出于说明目的并针对下文描述的示例,会议事件的完整示例转录可以如下:“...how was your weekend.Great...wewent fishing.Looks like Bob is arriving.Ok,let’s begin,as you recall wetalked about sales figures last meeting.We did ok this quarter but we need todo more.John,how did your business unit do?We did fair,with a profit of X.Wedefinitely need to improve.Set a goal for[telephone rings,pause]set a goalfor X amount in profit next quarter.Ok.Jake,did we ever call the eventcoordinator?Yes,but I have not got a hold of him.Okay,give him a text thistime.Sometimes he doesn’t answer his phone.Actually,I’ll text him rightnow.Jake,before I forget,my daughter also needs to be picked up fromschool.Can you do that?Yes.(你的周末过得怎么样。太好了...我们去钓鱼了。看起来Bob要到了。好吧,让我们开始吧,你还记得我们上次会议谈到了销售数据。本季度我们做得很好,但我们需要做更多。John,你的业务部门做的怎么样?我们做得不错,利润为X。我们肯定需要改进。设置一个目标[电话响起,暂停],设置下个季度的利润金额为X的目标。好的,Jake,我们有没有给事件协调员打电话?是的,但我没有联系到他。好的,这次给他发短信。有时他不接电话。实际上,我现在就给他发短信。Jake,在我忘记之前,我女儿也需要从学校接走。你能去做吗?是的。)”。
根据框604,可以确定动作项候选集合(例如,通过动作项生成器260或动作项候选确定器321)。一些实施例可以从与事件相关联的多个字符序列中计算动作项候选集合。动作项可以是会议事件中指示的任务,该任务被请求完成以促进与会议事件相关联的特定目标或目的。在一些实施例中,框604包括:经由自然语言处理对会议事件的转录进行标记化,以清理或以其他方式提供对预测动作项的洞察力(例如,通过自然语言序列规范器312)。标记化可以包括:针对多个字符序列生成词性标签。例如,使用上面的示例转录,可以解析每个词语并用POS标识符进行标记(例如,“how[疑问代词]was[动词]your[代词]weekend[名词]。”以这种方式,语法或其他短语结构可用于识别动作项候选。例如,英语祈使句的典型语法在句首使用动词原型,没有主语。因此,在示例转录中,具有相似结构的仅有的句子或短语可以是“Okay,give him a text this time(好的,这次给他发短信)”以及“set agoal for[telephone rings,pause]set a goal for X amount in profit next quarter(设置目标[电话响铃,暂停],设置下个季度的利润金额为X的目标)”,“Actually,I’lltext him right now.Jake,before I forget,my daughter also needs to be pickedup from school.Can you do that...(实际上,我现在就给他发短信。Jake,在我忘记之前,我女儿也需要从学校接走。你能去做吗……)”其都可以被识别为候选。
在一些实施例中,框604附加地或替代地包括:排除(例如,通过候选排除组件327)在会议事件期间可能完成的动作项候选和/或排除为与所述会议事件无关的命令或请求的动作项候选。例如,在示例转录中,可以排除“actually,I’ll text him right now(实际上,我现在就给他发短信)”,因为它很可能在会议期间完成。此外,也可以排除“can you[pick up my daughter from school](你能[去学校接我女儿])”,因为它与会议无关。
在一些实施例中,框604附加地或替代地包括排除重复或冗余的动作项候选中的语言(例如,通过清理组件316)。例如,使用上文的示例转录,“Set a goal for[telephonerings,pause]set a goal for X amount in profit next quarter(设置目标[电话响铃,暂停],设置下个季度的利润金额为X的目标)”可以被修改为“PERSON will try to sell Xamount in profit next quarter(人员将尝试在下个季度销售利润金额X)”以移除“set agoal(设置目标)”,因为它被说了两次。
在一些实施例中,框604包括通过词嵌入向量模型或语义模型来处理转录的字符序列。词嵌入向量模型将自然语言字符改变为表示到机器学习模型中的输入的数值向量(例如,如关于图4所描述的)。以这种方式,向量可以作为到机器学习模型的输入。语义模型(例如WORD2VEC)可以包括通过移除、添加或替换特定词来重构动作项候选的集合。重构指示澄清动作项候选是什么。以这种方式,基于语义上下文来清理或以其他方式添加、移除或替换语言。例如,使用示例转录,“Set agoal for[telephone rings,pause]set a goalfor X amount in profit next quarter(设置目标[电话响铃,暂停],设置下个季度的利润金额为X的目标)”可以被修改为“PERSON will try to sell X amount in profit nextquarter(人员将尝试在下个季度销售利润金额X)”。可以在各种实施例中针对上述示例转录的所有文本(或仅针对识别出的动作项候选)完成这种重构以清理文本。如上所述,在一些实施例中,重构基于使用自然语言处理组件来识别POS标签和语义上下文并且至少部分基于POS标签和语义上下文来重构动作项的集合。
根据框606,(例如,通过会议监测器250经由用户数据收集组件210)检测到事件和/或事件参与者的一个或多个特征(也被称为属性)。例如,可以检测到用户简档240、340和/或事件简档370内的一些或全部数据,或者如参考会议监测器250所描述的检测到任何其他数据。在说明性示例中,可以检测到一组特征中的一个或多个用户简档特征,例如一个或多个事件参与者的参与者偏好、一个或多个事件参与者中的每个参与者的参与者角色,以及一个或多个事件参与者中的每个参与者的过去行为历史。在一些实施例中,过去行为历史包括一些特征,例如在事件中的特定时间或时间窗口提及动作项的倾向,以及参与者谈话方式的模式,如上文关于图3所描述的。在一些实施例中,参与者偏好包括娱乐、爱好或其他兴趣。
在一些实施例中,事件简档特征可以包括组中的一个或多个特征,该组包括例如事件的名称或主题、事件的位置以及事件参与者数据,例如关于图3所描述的。在一些实施例中,事件参与者数据包括事件中的一个或多个参与者的姓名以及之间的关系。在一些实施例中,关系指示组织内的一个或多个参与者的角色层次,例如关于事件简档370所描述的。
根据框608,指示是否确定了动作项候选的预测估计(例如,通过动作项生成器260或分类组件330)。预测估计可以指示动作项候选集合是动作项还是不是动作项。在一些实施例中,至少部分基于对会议事件的一个或多个特征/属性和一个或多个会议参与者的至少一部分的检测(框606),自动生成框608处的预测。在一些实施例中,至少部分基于对事件或一个或多个事件参与者的一个或多个属性的检测(例如,经由框606),生成至少包括第一标记和第二标记的分类估计(例如,经由CNN机器学习模型)。第一标记指示动作项候选是否是动作项。第二标记指示动作项候选是否不是动作项,例如关于图4所描述的。
在一些实施例中,在框608之前可以是或者框608可以包括:经由朴素贝叶斯模型确定事件的类型或分类,从而至少部分基于对事件的类型或分类的确定进一步生成预测估计,例如,如关于图3的事件类型检测器332所描述的。在一些实施例中,在框608之前可以是或者框608可以包括:经由HMM确定该动作项候选集合有较低概率还是较高概率为动作项,例如,如关于图3和/或图4的事件部分概率组件334或434所描述的。在一些实施例中,自动生成预测估计包括:使用CNN并且还至少部分基于在事件转录内被排序在相应的动作项候选之前以及在该相应的动作项候选之后的内容,例如,如关于图4的内容所描述的(前向上下文和后向上下文)。在一些实施例中,自动生成预测估计包括:使用至少三种概率模型,例如关于图3的分类组件330的朴素贝叶斯模型、CNN模型和HMM模型所描述的。例如,框608可以包括或者在框608之前可以是:经由朴素贝叶斯模型确定事件的类型或分类,从而至少部分基于对事件的类型或分类的确定进一步生成分类估计(例如,如关于事件类型检测器332和事件部分概率组件334所描述的)。
在一些实施例中,预测估计或对分类估计的确定至少部分基于如上文关于框606所描述的一个或多个用户简档特征。例如,分类可以基于一个或多个事件参与者的参与者偏好、一个或多个事件参与者中的每个参与者的参与者角色和/或一个或多个事件参与者中的每个参与者的过去行为历史。例如,使用上文的示例转录,因为“set a goal for Xamount of profit next quarter(设置下个季度的利润金额为X的目标)”被确定为Bob,他是John和Jake的经理,因此该语句被预测为动作项。但是,例如,如果过去的用户历史显示,过去每次被询问时,参与者总是必须在会议结束前设定目标,那么它可能不是动作项。
在一些实施例中,在框608处的对预测估计的确定附加地或替代地至少部分基于一个或多个事件简档特征(例如,在事件简档370内),例如事件的名称或主题、事件的位置以及事件参与者数据。例如,可以确定会议事件包括主题销售,并且上下文数据(例如,如关于会议监测器250所描述的)揭示示例转录中描述的关于“event coordinator(事件协调员)”的讨论是关于与会议无关的个人话题。因此,可以预测“Okay,give him a text thistime(好吧,这次给他发短信)”的动作项候选不是基于会议主题和上下文数据的动作项。
在框610处,针对一个或多个会议参与者生成动作项集合。框610的实施例生成一个或多个动作项的集合。动作项可以是针对特定会议参与者的,因为特定参与者负责执行动作项或查看它们已完成。在一些实施例中,可以为不一定出席会议的用户生成动作项。(该不出席的用户可以被视为参与者,因为她仍在参与执行来自会议的动作项。)
在框610的一些实施例中,至少部分基于框608的预测估计来生成该动作项集合。例如,如果存在超过阈值的高可能性或置信度级别,则可以将动作项提供给用户,例如经由与用户相关联的用户设备上的应用或计算服务。在一些实施例中,动作项的生成可以发生在用户界面内或作为其一部分或者向特定用户的用户设备呈现的其他数据内或作为其一部分。以这种方式,可以使得所生成的动作项被显示在用户设备上(例如,通过呈现组件220),例如经由用户界面,该用户界面可以是应用或服务的一部分。在各种实施例中,输出可以包括所有预测的或可能的动作项的所显示的列表。例如,使用上文的所有示例和示例转录,具有成为动作项的阈值概率的仅有动作项候选可以是“set agoal for X amountofprofit next quarter(设置下个季度的利润金额为X的目标)”。因此,示例转录的所有其他部分已被移除或以其他方式排除在成为被显示或以其他方式呈现的动作项之外。通过这种方式,可以将传送、呈现(例如,显示)或存储到设备的内容量减少为动作项。在各种实施例中,可以将可能的或预测的候选归属、发送、澄清和/或发送到与用户相关联的一个或多个计算应用或计算服务,和/或与用户相关联的用户设备,例如,诸如关于动作项归属器266、动作项澄清器268、呈现组件220、动作项汇编器269所描述的和/或如图8的用户设备859上所示的。相反,不会被预测为动作项的非可能动作项或候选可以不被归属、发送、澄清和/或发送到用户设备,这可以减少计算资源消耗,例如如上所述的存储器、CPU、磁盘I/O等等。
已经描述了各种实现,现在对适用于实现本公开内容的实施例的示例性计算环境进行描述。参考图7,提供了示例性计算设备并通常将其称为计算设备700。计算设备700只是合适的计算环境的一个示例,并不意在建议对本公开内容的实施例的使用范围或功能的任何限制。计算设备700也不应该被解释为具有与所说明的任一组件或组件组合相关的任何依赖性或要求。
本公开内容的实施例可以在计算机代码或机器可使用指令的一般性上下文中进行描述,其包括计算机可使用或计算机可执行指令,如由计算机或诸如个人数据助理、智能电话、平板PC或其他手持设备的其他机器执行的程序模块。一般而言,包括例程、程序、对象、组件、数据结构等的程序模块指的是执行特定任务或实现特定抽象数据类型的代码。本公开内容的实施例可以在各种各样的***配置中实施,这些***配置包括:手持设备、消费电子产品、通用计算机、更专业的计算设备等。本公开内容的实施例还可以在分布式计算环境中实施,其中,任务由通过通信网络链接的远程处理设备执行。在分布式计算环境中,程序模块可以位于本地和远程计算机存储介质(包括存储器存储设备)二者中。
参考图7,计算设备700包括:直接或间接耦接以下设备的总线10:存储器12、一个或多个处理器14、一个或多个呈现组件16、一个或多个输入/输出(I/O)端口18、一个或多个I/O组件20以及说明性电源22。总线10表示什么可以是一个或多个总线(如地址总线、数据总线或者它们的组合)。虽然为了清楚起见,用线示出了图7的各个框,但实际上,这些框表示逻辑的,不一定是实际的组件。例如,可以认为呈现组件(如显示设备)是I/O组件。另外,处理器具有存储器。本发明人认识到这是本领域的特性,并重申:图7的图示仅是可结合本公开内容的一个或多个实施例来使用的示例性计算设备的例示。在诸如“工作站”、“服务器”、“膝上型计算机”、“手持设备”等的类别之间不做区分,设想这些类别都在图6的范围之内,并且涉及“计算设备”。
计算设备700通常包括各种各样的计算机可读介质。计算机可读介质可以是可由计算设备700访问的任何可用介质,并且包括易失性和非易失性介质,可移除和不可移除介质。通过举例而非限制的方式,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质包括用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息、以任何方法或技术实现的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于:RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁带盒、磁带、磁盘存储或其他磁存储设备、或者可用于存储所需的信息且可由计算设备700访问的任何其他介质。计算机存储介质不包括信号本身。通信介质通常体现为计算机可读指令、数据结构、程序模块或调制数据信号(如载波波形)或其他传输机制中的其他数据并且包括任何信息传递介质。术语“调制数据信号”意指具有其特性集合中的一个或多个特性或以对信号中的信息进行编码的方式改变的信号。通过举例而非限制的方式,通信介质包括诸如有线网络或直接线连接的有线介质,以及诸如声音、RF、红外线和其他无线介质的无线介质。上述各项中任意项的组合也应该包括在计算机可读介质的范围之内。
存储器12包括易失性和/或非易失性存储器形式的计算机存储介质。存储器可以是可移除的、不可移除的或它们的组合。示例性硬件设备包括固态存储器、硬盘驱动器、光盘驱动器等。计算设备700包括从诸如存储器12或I/O组件20的各个实体读取数据的一个或多个处理器14。呈现组件16向用户或其他设备呈现数据指示。在一些实现中,***200的呈现组件220(或320)可以被体现为呈现组件16。呈现组件的其他示例可以包括显示设备、扬声器、打印组件、振动组件等。
I/O端口18允许计算设备700逻辑地耦接到其他设备,包括I/O组件620,其中一些可以是内置的。说明性组件包括麦克风、操纵杆、游戏垫、碟形卫星天线、扫描仪、打印机、无线设备等等。I/O组件20可以提供对空中手势、语音或由用户生成的其他生理输入进行处理的自然用户界面(NUI)。在一些实例中,输入可以被发送到合适的网络单元用于进一步处理。NUI可以实现下列各项的任意组合:语音识别、触摸和手写笔识别、面部识别、生物计量识别、在屏幕上以及邻近屏幕的手势识别、空中手势、头眼跟踪以及与计算设备600上的显示相关联的触摸识别。计算设备700可以配备深度相机(诸如立体相机***、红外相机***、RGB相机***以及这些的组合)来用于手势检测和识别。另外,计算设备700可以配备能够进行运动检测的加速计或回转仪。加速计或回转仪的输出可以被提供给计算设备700的显示器,以呈现融入式增强的现实或虚拟现实。
计算设备700的一些实施例可以包括一个或多个无线电单元24(或类似的无线通信组件)。无线电单元24发送和接收无线电或无线通信。计算设备700可以是适于通过各种无线网络来接收通信和媒体的无线终端。计算设备700可以经由诸如码分多址(“CDMA”)、全球移动***(“GSM”)或时分多址(“TDMA”)等的无线协议来进行通信,以便与其他设备通信。无线电通信可以是短程连接、远程连接,或者短程和远程无线电信连接二者的组合。当我们提及“短”和“长”连接类型时,我们并不是意指两个设备之间的空间关系。而是,我们通常将短距离和长距离称为连接的不同类别或类型(即主要连接和次要连接)。通过示例而非限制的方式,短程连接可以包括到设备(例如,移动热点)的连接,该设备提供对无线通信网络的访问(例如使用802.11协议的WLAN连接);到另一个计算设备的蓝牙连接是短程连接的第二示例,或者近场通信连接。通过示例而非限制的方式,远程连接可以包括使用CDMA、GPRS、GSM、TDMA和802.16协议中的一个或多个的连接。
在不脱离所附权利要求书的范围的前提下,所描绘的各个组件以及未示出的组件的许多不同布置是可能的。已经用旨在是说明性而非限制性的方式对本公开内容的实施例进行了描述。在阅读本公开内容之后以及由于阅读本公开内容,对于本公开内容的读者而言,替代实施例将变得显而易见。在不脱离所附权利要求书的范围的前提,可以完成实现前述内容的替代手段。某些特征和子组合是有用的,并且可以在不参考其他特征和子组合的情况下使用,并且被认为在权利要求书的范围内。
以下实施例表示本文所设想的构思的示例性方面。以下实施例中的任何一个可以以多重依赖方式组合以依赖于一个或多个其他条款。此外,可以组合从属实施例的任何组合(例如,明确地依赖于先前条款的条款),同时保持在本文所设想的方面的范围内。以下条款本质上是示例性的而非限制性的:
条款1、一种计算机化***,包括:一个或多个处理器;以及计算机存储存储器,其具有存储在其上的计算机可执行指令,当由所述一个或多个处理器执行时,所述指令实现一种方法,所述方法包括:检测对会议事件的指示,其中,所述会议事件包括由一个或多个会议参与者在所述会议事件中提供的自然语言内容;从与所述自然语言内容相关联的多个字符序列中计算或确定动作项候选集合,其中,动作项是在所述会议事件中指示的、被请求完成以促进与所述会议事件相关联的特定目标或目的的任务;检测所述会议事件的一个或多个特征以及所述一个或多个会议参与者中的至少一部分的属性;至少部分基于对所述会议事件的一个或多个特征和所述一个或多个会议参与者中的至少一部分的属性的检测,自动生成预测估计,所述预测估计指示所述动作项候选集合是动作项或者不是动作项;以及至少部分基于自动生成所述预测估计,生成动作项集合并将所述动作项集合呈现给与所述一个或多个参与者相关联的一个或多个用户设备。
条款2、根据条款1所述的***,其中,所述方法包括:经由自然语言处理对所述会议事件的转录进行标记化,其中,所述标记化包括为所述多个字符序列生成词性标签。
条款3、根据条款1所述的***,所述方法还包括:排除在所述会议事件期间可能完成的动作项候选,并且排除为与所述会议事件无关的命令或请求的动作项候选。
条款4、根据条款1所述的***,所述方法还包括:经由朴素贝叶斯模型确定所述会议事件的类型或分类,并且其中,所述预测估计是至少部分基于对所述会议事件的所述类型或分类的确定进一步生成的。
条款5、根据条款1所述的***,还包括:经由隐马尔可夫模型确定所述动作项候选集合具有为动作项的低概率还是高概率。
条款6、根据条款1所述的***,其中,自动生成所述预测估计包括使用卷积神经网络并且还至少部分基于所述会议事件的转录内的、被排序在相应动作项候选之前以及在所述相应动作项候选之后的内容。
条款7、根据条款1所述的***,其中,自动生成所述预测估计包括使用至少三种概率模型。
条款8、一种计算机实现的方法,包括:检测事件的至少一个转录部分,所述转录包括由一个或多个事件参与者在所述事件中讨论的自然语言内容;从所述转录内的多个字符序列中确定动作项候选集合,其中,动作项是在所述事件中指示的、被请求完成以促进与所述事件相关联的特定目标或目的的任务;检测所述事件或所述一个或多个事件参与者的一个或多个属性;以及至少部分基于对所述事件或所述一个或多个事件参与者的所述一个或多个属性的所述检测,经由机器学习模型生成至少包括第一标记和第二标记的分类估计,所述第一标记指示动作项候选是否是动作项,所述第二标记指示动作项候选是否不是动作项。
条款9、根据条款8所述的方法,还包括:从重复或冗余的动作项候选中排除语言。
条款10、根据条款8所述的方法,其中,生成所述分类估计至少部分基于一组特征中的一个或多个用户简档特征,所述特征包括:所述一个或多个事件参与者的参与者偏好、所述一个或多个事件参与者中的每个参与者的参与者角色,以及所述一个或多个事件参与者中的每个参与者的过去行为历史。
条款11、根据条款10所述的方法,其中,所述过去行为历史包括在事件中的特定时间或时间窗口提及动作项的倾向以及参与者谈话方式的模式。
条款12、根据条款10所述的方法,其中,所述参与者偏好包括娱乐、爱好或其他兴趣,并且其中,生成所述分类估计还基于所述一个或多个事件参与者的娱乐、爱好或其他兴趣。
条款13、根据条款8所述的方法,还包括:通过将自然语言字符变为数字向量的词嵌入向量模型来处理所述多个字符序列,所述数字向量表示到所述机器学习模型的输入。
条款14、根据条款8所述的方法,还包括:经由朴素贝叶斯模型确定所述事件的类型或分类,并且其中,所述分类估计是至少部分基于对所述事件的所述类型或分类的确定进一步生成的。
条款15、具有在其上体现的计算机可执行指令的一个或多个计算机存储介质,当由一个或多个处理器执行时,所述指令使所述一个或多个处理器执行一种方法,所述方法包括:确定会议内容,所述会议内容包括一个或多个会议参与者在会议中提供的自然语言内容;基于所述会议内容确定动作项候选集合;将所述动作项候选集合分类为动作项或不是动作项;将经分类的动作项归属于负责完成所述经分类的动作项的所述一个或多个会议参与者中的会议参与者集合或者说出所述经分类的动作项的会议参与者集合;至少部分基于以下至少一项来汇编所述经分类的动作项:所述会议内容和上下文信息;以及向与所述一个或多个会议参与者相关联的一个或多个用户设备提供汇编的经分类的动作项。
条款16、根据条款15所述的计算机存储介质,所述方法还包括:通过移除、添加或替换特定词来重构所述动作项候选集合,所述重构指示澄清所述动作项候选是什么。
条款17、根据条款15所述的计算机存储介质,其中,所述重构基于使用自然语言处理组件来识别词性标签和语义上下文并且至少部分基于所述词性标签和所述语义上下文来重构所述动作项集合。
条款18、根据条款15所述的计算机存储介质,其中,所述归属至少部分基于一组特征中的一个或多个事件简档特征,所述一组特征包括:所述事件的名称或主题、所述事件的位置,以及事件参与者数据。
条款19、根据条款18所述的计算机存储介质,其中,所述事件参与者数据包括所述事件中的所述一个或多个参与者之间的名称和关系,其中,所述关系指示组织内的所述一个或多个参与者的角色层次。
条款20、根据条款15所述的计算机存储介质,所述方法还包括:对所述会议内容的转录进行标记化,并作为响应为所述多个字符序列生成词性标签。
Claims (15)
1.一种计算机化***,包括:
一个或多个处理器;以及
计算机存储存储器,其具有存储在其上的计算机可执行指令,当由所述一个或多个处理器执行时,所述指令实现一种方法,所述方法包括:
检测对会议事件的指示,其中,所述会议事件包括由一个或多个会议参与者在所述会议事件期间提供的自然语言内容;
从与所述自然语言内容相关联的多个字符序列中确定动作项候选集合,其中,动作项是在所述会议事件中指示的、被请求完成以促进与所述会议事件相关联的特定目标或目的的任务;
检测所述会议事件的一个或多个特征以及所述一个或多个会议参与者中的至少一部分的属性;
至少部分基于对所述会议事件的所述一个或多个特征和所述一个或多个会议参与者中的至少一部分的属性的检测,自动生成预测估计,所述预测估计指示所述动作项候选集合是动作项还是不是动作项;以及
至少部分基于所述自动生成所述预测估计,生成动作项集合并将所述动作项集合呈现给与所述一个或多个参与者相关联的一个或多个用户设备。
2.根据权利要求1所述的***,其中,所述方法包括:经由自然语言处理对所述会议事件的转录进行标记化,其中,所述标记化包括为所述多个字符序列生成词性标签。
3.根据权利要求1所述的***,所述方法还包括:排除在所述会议事件期间可能完成的动作项候选,以及排除以下动作项候选:所述动作项候选是与所述会议事件无关的命令或请求。
4.根据权利要求1所述的***,所述方法还包括:经由朴素贝叶斯模型确定所述会议事件的类型或分类,并且其中,所述预测估计是至少部分基于对所述会议事件的所述类型或分类的所述确定进一步生成的。
5.根据权利要求1所述的***,还包括:经由隐马尔可夫模型确定所述动作项候选集合具有为动作项的低概率还是高概率。
6.根据权利要求1所述的***,其中,所述自动生成所述预测估计包括使用卷积神经网络并且还至少部分基于所述会议事件的转录内的、被排序在相应动作项候选之前以及在所述相应动作项候选之后的内容。
7.根据权利要求1所述的***,其中,所述自动生成所述预测估计包括使用至少三种概率模型。
8.一种计算机实现的方法,包括:
检测事件的至少一个转录部分,其中,所述转录包括由一个或多个事件参与者在所述事件期间讨论的自然语言内容;
从所述转录内的多个字符序列确定动作项候选集合,其中,动作项是在所述事件中指示的、被请求完成以促进与所述事件相关联的特定目标或目的的任务;
检测所述事件或所述一个或多个事件参与者的一个或多个属性;以及
至少部分基于对所述事件或所述一个或多个事件参与者的所述一个或多个属性的所述检测,经由机器学习模型生成至少包括第一标记和第二标记的分类估计,其中,所述第一标记指示动作项候选是否是动作项,以及所述第二标记指示动作项候选是否不是动作项。
9.根据权利要求8所述的方法,还包括:
从重复或冗余的动作项候选中排除语言。
10.根据权利要求8所述的方法,其中,所述生成所述分类估计至少部分基于一组特征中的一个或多个用户简档特征,所述一组特征包括:所述一个或多个事件参与者的参与者偏好、所述一个或多个事件参与者中的每个参与者的参与者角色,以及所述一个或多个事件参与者中的每个参与者的过去行为历史。
11.根据权利要求10所述的方法,其中,所述过去行为历史包括在事件中的特定时间或时间窗口提及动作项的倾向以及参与者谈话方式的模式。
12.根据权利要求10所述的方法,其中,所述参与者偏好包括娱乐、爱好或其他兴趣,并且其中,所述生成所述分类估计还基于所述一个或多个事件参与者的所述娱乐、爱好或其他兴趣。
13.根据权利要求8所述的方法,还包括:
通过将自然语言字符变为数字向量的词嵌入向量模型来处理所述多个字符序列,所述数字向量表示到所述机器学习模型的输入。
14.根据权利要求8所述的方法,还包括:
经由朴素贝叶斯模型确定所述事件的类型或分类,并且其中,所述分类估计是至少部分基于对所述事件的所述类型或分类的所述确定进一步生成的。
15.具有在其上体现的计算机可执行指令的一个或多个计算机存储介质,当由一个或多个处理器执行时,所述指令使所述一个或多个处理器执行一种方法,所述方法包括:
确定会议内容,其中,所述会议内容包括由一个或多个会议参与者在会议中提供的自然语言内容;
基于所述会议内容确定动作项候选集合;
将所述动作项候选集合分类为动作项或不是动作项;
将经分类的动作项归属于负责完成所述经分类的动作项的所述一个或多个会议参与者中的会议参与者集合或者说出所述经分类的动作项的会议参与者集合;
至少部分基于以下至少一项来汇编所述经分类的动作项:所述会议内容和上下文信息;以及
向与所述一个或多个会议参与者相关联的一个或多个用户设备提供汇编的经分类的动作项。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962909060P | 2019-10-01 | 2019-10-01 | |
US62/909,060 | 2019-10-01 | ||
US16/736,522 US11983674B2 (en) | 2019-10-01 | 2020-01-07 | Automatically determining and presenting personalized action items from an event |
US16/736,522 | 2020-01-07 | ||
PCT/US2020/045685 WO2021066939A1 (en) | 2019-10-01 | 2020-08-11 | Automatically determining and presenting personalized action items from an event |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114556354A true CN114556354A (zh) | 2022-05-27 |
Family
ID=75163292
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080069639.9A Pending CN114556354A (zh) | 2019-10-01 | 2020-08-11 | 自动确定和呈现来自事件的个性化动作项 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11983674B2 (zh) |
CN (1) | CN114556354A (zh) |
WO (1) | WO2021066939A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117787941A (zh) * | 2023-12-26 | 2024-03-29 | 广东智慧门牌科技有限公司 | 一种基于智慧办公的会议室使用优化方法 |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11625155B2 (en) * | 2020-03-23 | 2023-04-11 | Ricoh Company, Ltd. | Information processing system, user terminal, method of processing information |
US11862168B1 (en) * | 2020-03-30 | 2024-01-02 | Amazon Technologies, Inc. | Speaker disambiguation and transcription from multiple audio feeds |
CN111461304B (zh) * | 2020-03-31 | 2023-09-15 | 北京小米松果电子有限公司 | 分类神经网络的训练方法、文本分类方法、装置及设备 |
EP4143693A4 (en) * | 2020-05-01 | 2024-05-22 | Outreach Corporation | RECOGNITION AND ASSIGNMENT OF ACTION ELEMENTS TO CONVERSATION PARTICIPANTS IN REAL TIME AND DETECTION OF THE TERMINATION THEREOF |
US20210406839A1 (en) * | 2020-06-29 | 2021-12-30 | Capital One Services, Llc | Computerized meeting system |
US20220100800A1 (en) * | 2020-09-29 | 2022-03-31 | International Business Machines Corporation | Automatic knowledge graph construction |
US12045843B2 (en) * | 2020-10-09 | 2024-07-23 | Jpmorgan Chase Bank , N.A. | Systems and methods for tracking data shared with third parties using artificial intelligence-machine learning |
JP2022062874A (ja) * | 2020-10-09 | 2022-04-21 | ヤマハ株式会社 | 話者予測方法、話者予測装置、およびコミュニケーションシステム |
US11830081B2 (en) * | 2021-08-04 | 2023-11-28 | Hrb Innovations, Inc. | Automated return evaluation with anomoly detection |
US20230098137A1 (en) * | 2021-09-30 | 2023-03-30 | C/o Uniphore Technologies Inc. | Method and apparatus for redacting sensitive information from audio |
US20230155850A1 (en) * | 2021-11-16 | 2023-05-18 | Mitel Networks Corporation | Scheduled conference recording |
US11837219B2 (en) * | 2021-11-18 | 2023-12-05 | International Business Machines Corporation | Creation of a minute from a record of a teleconference |
US20230186198A1 (en) * | 2021-12-09 | 2023-06-15 | Google Llc | Building A Pragmatic Action-Item System |
US20230230586A1 (en) * | 2022-01-20 | 2023-07-20 | Zoom Video Communications, Inc. | Extracting next step sentences from a communication session |
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 |
CN114625972B (zh) * | 2022-05-12 | 2022-07-15 | 中航信移动科技有限公司 | 一种信息推送方法、设备及介质 |
US12047186B2 (en) * | 2022-06-20 | 2024-07-23 | International Business Machines Corporation | Artificial intelligence supporting content delivery |
US20230419270A1 (en) * | 2022-06-27 | 2023-12-28 | Microsoft Technology Licensing, Llc | Meeting attendance prompt |
CN114820225B (zh) | 2022-06-28 | 2022-09-13 | 成都秦川物联网科技股份有限公司 | 基于关键词识别和处理制造问题的工业物联网及控制方法 |
US11978104B2 (en) | 2022-08-24 | 2024-05-07 | Maplebear Inc. | Verifying association between physical products and identifiers of physical products |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008140089A (ja) * | 2006-11-30 | 2008-06-19 | Fuji Xerox Co Ltd | 情報管理装置、会議システム及びプログラム |
US20170161258A1 (en) * | 2015-12-08 | 2017-06-08 | International Business Machines Corporation | Automatic generation of action items from a meeting transcript |
WO2017184468A1 (en) * | 2016-04-22 | 2017-10-26 | Microsoft Technology Licensing, Llc | Meeting scheduling resource efficiency |
CN108537508A (zh) * | 2018-03-30 | 2018-09-14 | 上海爱优威软件开发有限公司 | 会议记录方法及*** |
CN109313747A (zh) * | 2016-06-11 | 2019-02-05 | 苹果公司 | 用于会议空间管理和交互的设备、方法和图形用户界面 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7519589B2 (en) * | 2003-02-04 | 2009-04-14 | Cataphora, Inc. | Method and apparatus for sociological data analysis |
US9049259B2 (en) * | 2011-05-03 | 2015-06-02 | Onepatont Software Limited | System and method for dynamically providing visual action or activity news feed |
CA2834877A1 (en) * | 2012-11-28 | 2014-05-28 | Henry Leung | System and method for event monitoring and detection |
US10296187B1 (en) * | 2016-04-04 | 2019-05-21 | Hca Holdings, Inc | Process action determination |
US9336776B2 (en) * | 2013-05-01 | 2016-05-10 | Sap Se | Enhancing speech recognition with domain-specific knowledge to detect topic-related content |
US10079013B2 (en) * | 2013-11-27 | 2018-09-18 | Sri International | Sharing intents to provide virtual assistance in a multi-person dialog |
US10262654B2 (en) * | 2015-09-24 | 2019-04-16 | Microsoft Technology Licensing, Llc | Detecting actionable items in a conversation among participants |
US10755195B2 (en) * | 2016-01-13 | 2020-08-25 | International Business Machines Corporation | Adaptive, personalized action-aware communication and conversation prioritization |
US11568337B2 (en) * | 2016-06-24 | 2023-01-31 | Microsoft Technology Licensing, Llc | Identifying task assignments |
US11341439B2 (en) * | 2017-08-14 | 2022-05-24 | Accenture Global Solutions Limited | Artificial intelligence and machine learning based product development |
US10796281B2 (en) * | 2017-10-28 | 2020-10-06 | Zensar Technologies Ltd. | Computer implemented system for monitoring meetings and action items and method thereof |
US20190129749A1 (en) * | 2017-11-01 | 2019-05-02 | Microsoft Technology Licensing, Llc | Automated extraction and application of conditional tasks |
US10728200B2 (en) * | 2018-03-12 | 2020-07-28 | Microsoft Technology Licensing, Llc | Messaging system for automated message management |
US11809983B2 (en) * | 2018-08-30 | 2023-11-07 | Qualtrics, Llc | Machine-learning-based digital survey creation and management |
KR20190114932A (ko) * | 2019-09-19 | 2019-10-10 | 엘지전자 주식회사 | 액션 아이템 제안 장치 및 방법 |
US11062270B2 (en) * | 2019-10-01 | 2021-07-13 | Microsoft Technology Licensing, Llc | Generating enriched action items |
US11615799B2 (en) * | 2020-05-29 | 2023-03-28 | Microsoft Technology Licensing, Llc | Automated meeting minutes generator |
US11349679B1 (en) * | 2021-03-19 | 2022-05-31 | Microsoft Technology Licensing, Llc | Conversational AI for intelligent meeting service |
US11909784B2 (en) * | 2021-07-29 | 2024-02-20 | Vmware, Inc. | Automated actions in a conferencing service |
US20230267922A1 (en) * | 2022-02-18 | 2023-08-24 | Google Llc | Meeting speech biasing and/or document generation based on meeting content and/or related data |
EP4239496A1 (en) * | 2022-03-01 | 2023-09-06 | Microsoft Technology Licensing, LLC | Near real-time in-meeting content item suggestions |
-
2020
- 2020-01-07 US US16/736,522 patent/US11983674B2/en active Active
- 2020-08-11 CN CN202080069639.9A patent/CN114556354A/zh active Pending
- 2020-08-11 WO PCT/US2020/045685 patent/WO2021066939A1/en active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008140089A (ja) * | 2006-11-30 | 2008-06-19 | Fuji Xerox Co Ltd | 情報管理装置、会議システム及びプログラム |
US20170161258A1 (en) * | 2015-12-08 | 2017-06-08 | International Business Machines Corporation | Automatic generation of action items from a meeting transcript |
WO2017184468A1 (en) * | 2016-04-22 | 2017-10-26 | Microsoft Technology Licensing, Llc | Meeting scheduling resource efficiency |
CN109313747A (zh) * | 2016-06-11 | 2019-02-05 | 苹果公司 | 用于会议空间管理和交互的设备、方法和图形用户界面 |
CN108537508A (zh) * | 2018-03-30 | 2018-09-14 | 上海爱优威软件开发有限公司 | 会议记录方法及*** |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117787941A (zh) * | 2023-12-26 | 2024-03-29 | 广东智慧门牌科技有限公司 | 一种基于智慧办公的会议室使用优化方法 |
Also Published As
Publication number | Publication date |
---|---|
US11983674B2 (en) | 2024-05-14 |
WO2021066939A1 (en) | 2021-04-08 |
US20210097502A1 (en) | 2021-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11983674B2 (en) | Automatically determining and presenting personalized action items from an event | |
US11062270B2 (en) | Generating enriched action items | |
CN110869969B (zh) | 用于在通信会话内生成个性化响应的虚拟助手 | |
CN110892395B (zh) | 提供增强的通信会话服务的虚拟助手 | |
US11669918B2 (en) | Dialog session override policies for assistant systems | |
US20210407520A1 (en) | Detecting user identity in shared audio source contexts | |
US11861315B2 (en) | Continuous learning for natural-language understanding models for assistant systems | |
US11816609B2 (en) | Intelligent task completion detection at a computing device | |
EP4239496A1 (en) | Near real-time in-meeting content item suggestions | |
CN116018791A (zh) | 在助手***中使用单个请求进行多人呼叫 | |
US10770072B2 (en) | Cognitive triggering of human interaction strategies to facilitate collaboration, productivity, and learning | |
US20230419270A1 (en) | Meeting attendance prompt | |
US20230385778A1 (en) | Meeting thread builder | |
US20230409615A1 (en) | Systems and Methods for Providing User Experiences on Smart Assistant Systems | |
WO2023167758A1 (en) | Near real-time in-meeting content item suggestions |
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 |