Motivation:smart personal assistant Tell information Ask questions Use natural language! How to build smart personal assistants? Systems like Apple's Siri,Microsoft Cortana,Amazon Echo (Alexa).and Google Now (Assistant) Smart speaker(current):Intent Detection Slot Filling Search Smart speaker(future):Semantic Parsing Reasoning Need to: Digest heterogenous information Reason deeply with that information
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Motivation: smart personal assistant ▶ How to build smart personal assistants? ▶ Systems like Apple’s Siri, Microsoft Cortana, Amazon Echo (Alexa), and Google Now (Assistant) ▶ Smart speaker (current): Intent Detection + Slot Filling + Search ▶ Smart speaker (future): Semantic Parsing + Reasoning ▶ Need to: ▶ Digest heterogenous information ▶ Reason deeply with that information
Language Language is a mechanism for expression Natural languages (informal): ·汉语:二能除偶数。 English:Two divides even numbers. Programming languages (formal): Python:def even(x):return x 2 ==0 C++:bool even(int x)return x 2 ==0; Logical languages (formal): First-order logic:Vx.Even(x)-Divides(x,2) 4口◆4⊙t1三1=,¥9QC
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Language ▶ Language is a mechanism for expression ▶ Natural languages (informal): ▶ 汉语:二能除偶数。 ▶ English: Two divides even numbers. ▶ Programming languages (formal): ▶ Python: def even(x): return x % 2 == 0 ▶ C++: bool even(int x) { return x % 2 == 0; } ▶ Logical languages (formal): ▶ First-order logic: ∀x. Even(x) → Divides(x, 2)
Two goals of logic Represent knowledge about the world Reason with that knowledge 口卡4三,4色,进分QC
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Two goals of logic
Elaboration Tolerance Elaboration Tolerance (McCarthy,1998) "A formalism is elaboration tolerant if]it is convenient to modify a set of facts expressed in the formalism to take into account new phenomena or changed circumstances." Uniform problem representation For solving a problem instance of a problem class C, I is represented as a set of facts P. C is represented as a set of rules Pc.and Pc can be used to solve all problem instances in C 4口◆4⊙t1三1=,¥9QC
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Elaboration Tolerance ▶ Elaboration Tolerance (McCarthy, 1998) “A formalism is elaboration tolerant [if] it is convenient to modify a set of facts expressed in the formalism to take into account new phenomena or changed circumstances.” ▶ Uniform problem representation For solving a problem instance I of a problem class C, ▶ I is represented as a set of facts PI , ▶ C is represented as a set of rules PC, and ▶ PC can be used to solve all problem instances in C
Traditional Software User Problem Programmer Program Solving Computer 口卡B·三4色进分双0
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Traditional Software