ubiquity: designing a multilingual natural language interface

86
mitcho Michael Yoshitaka Erlewine 2009 SIGIR Workshop on Information Access in a Multilingual World Boston, July 23rd, 2009 ubiquity: designing a multilingual natural language interface

Upload: michael-yoshitaka-erlewine

Post on 16-Jun-2015

4.316 views

Category:

Technology


1 download

DESCRIPTION

Slides from a presentation on Ubiquity at the workshop on Information Access in a Multilingual World at ACM SIGIR 2009 in Boston.Full paper available at http://mitcho.com/academic/ .

TRANSCRIPT

Page 1: Ubiquity: Designing a Multilingual Natural Language Interface

mitchoMichael Yoshitaka Erlewine

2009 SIGIR Workshop on Information Access in a Multilingual World

Boston, July 23rd, 2009

ubiquity:designing a multilingual natural language interface

Page 2: Ubiquity: Designing a Multilingual Natural Language Interface

ubiquity:designing a multilingual natural language interface

• focus on multilingual delivery and interfaces

• reconsidering the text-based interface

• localizing ubiquity

Page 3: Ubiquity: Designing a Multilingual Natural Language Interface

ubiquity:designing a multilingual natural language interface

• focus on multilingual delivery and interfaces

• reconsidering the text-based interface

• localizing ubiquity

Page 4: Ubiquity: Designing a Multilingual Natural Language Interface

INTER

FACE

USER INFORMATION

Page 5: Ubiquity: Designing a Multilingual Natural Language Interface

INTER

FACE

USER INFORMATION

EnglishDeutschEspañolFrançais

PortuguêsРусскийItalianoPolskiTürkçe日本語中文

Page 6: Ubiquity: Designing a Multilingual Natural Language Interface

INTER

FACE

USER INFORMATION

Page 7: Ubiquity: Designing a Multilingual Natural Language Interface

INTER

FACE

USER INFORMATION

EnglishDeutschEspañolFrançais

PortuguêsРусскийItalianoPolskiTürkçe日本語中文

Page 8: Ubiquity: Designing a Multilingual Natural Language Interface

INTER

FACE

USER INFORMATION

EnglishDeutschEspañolFrançais

PortuguêsРусскийItalianoPolskiTürkçe日本語中文

this talk

Page 9: Ubiquity: Designing a Multilingual Natural Language Interface

EQUIPOTENT MULTILINGUAL INTERFACES

• not just translating content or localizing interfaces

• ensuring equal access to information

• ensuring equal generativity and potential of the platform

Page 10: Ubiquity: Designing a Multilingual Natural Language Interface

EQUIPOTENT MULTILINGUAL INTERFACES

• not just translating content or localizing interfaces

• ensuring equal access to information

• ensuring equal generativity and potential of the platform

Page 11: Ubiquity: Designing a Multilingual Natural Language Interface

EQUIPOTENT MULTILINGUAL INTERFACES

• not just translating content or localizing interfaces

• ensuring equal access to information

• ensuring equal generativity and potential of the platform

Page 12: Ubiquity: Designing a Multilingual Natural Language Interface

“We create communities of people involved in making the Internet experience better for all of us... The Internet is a global public resource that must remain open and accessible.”

—Mozilla Manifesto

Page 13: Ubiquity: Designing a Multilingual Natural Language Interface
Page 14: Ubiquity: Designing a Multilingual Natural Language Interface

AfrikaansShqipعربيঅসমীয়াEuskaraБеларускаяবাংলা (ভারত)Българскиcatalà中文 (简体)

正體中文 (繁體)

HrvatskiČeštinaDanskNederlandsEnglish (British)

English (US)EsperantoEesti keelsuomiFrançaisFryskGalegoქართულიDeutschΕλληνικάગ"જરાતીעברית!ह#दी (भारत)

MagyaríslenskaBahasa Indonesia

GaeilgeItaliano日本語Kannada한국어KurdîLatviešulietuvių kalbaМакедонскиमराठीNorsk bokmålNorsk nynorskoccitan (lengadocian)فارسیPolskiPortuguês (do Brasil)

Português (Europeu)ਪ"ਜਾਬੀromânăРусскийсрпскиසිංහලslovenčinaslovenskoEspañol (de Argentina)Español (de España)SvenskaTeluguไทยУкраїнськаTiếng ViệtCymraeg

Page 15: Ubiquity: Designing a Multilingual Natural Language Interface

ubiquity:designing a multilingual natural language interface

• focus on multilingual delivery and interfaces

• reconsidering the text-based interface

• localizing ubiquity

Page 16: Ubiquity: Designing a Multilingual Natural Language Interface

BUILDING A SCALABLE INTERFACE PARADIGM

Page 17: Ubiquity: Designing a Multilingual Natural Language Interface

BUILDING A SCALABLE INTERFACE PARADIGM

The web is offering more and morefunctionality and API’s...

Page 18: Ubiquity: Designing a Multilingual Natural Language Interface

BUILDING A SCALABLE INTERFACE PARADIGM

The web is offering more and morefunctionality and API’s...

...but how do you use them?

Page 19: Ubiquity: Designing a Multilingual Natural Language Interface

BUILDING A SCALABLE INTERFACE PARADIGM

• Following the GUI paradigm...

The web is offering more and morefunctionality and API’s...

...but how do you use them?

Page 20: Ubiquity: Designing a Multilingual Natural Language Interface

BUILDING A SCALABLE INTERFACE PARADIGM

• Following the GUI paradigm...

• add more buttons?

The web is offering more and morefunctionality and API’s...

...but how do you use them?

Page 21: Ubiquity: Designing a Multilingual Natural Language Interface

BUILDING A SCALABLE INTERFACE PARADIGM

• Following the GUI paradigm...

• add more buttons?

• add more menus?

The web is offering more and morefunctionality and API’s...

...but how do you use them?

Page 22: Ubiquity: Designing a Multilingual Natural Language Interface

CC-BY-SA: flickr.com/photos/daveduarte/2678853923/

Page 23: Ubiquity: Designing a Multilingual Natural Language Interface

ACM interactions 2008

Page 24: Ubiquity: Designing a Multilingual Natural Language Interface

CC-BY: flickr.com/photos/striatic/1629254/

Page 25: Ubiquity: Designing a Multilingual Natural Language Interface
Page 26: Ubiquity: Designing a Multilingual Natural Language Interface

?

Page 27: Ubiquity: Designing a Multilingual Natural Language Interface
Page 28: Ubiquity: Designing a Multilingual Natural Language Interface

CC-BY-SA: flickr.com/photos/seanosh/3307290530/

Aza Raskin on

text-based interfaces

“...maybe this confusion isn’t the fault of command-line interfaces in general; maybe it’s just the command lines we’re used to. If commands were memorable, and their syntax forgiving, perhaps we wouldn’t be so scared to reconsider these interface paradigms.”

Page 29: Ubiquity: Designing a Multilingual Natural Language Interface

CC-BY-SA: flickr.com/photos/seanosh/3307290530/

Aza Raskin on

text-based interfaces

“...maybe this confusion isn’t the fault of command-line interfaces in general; maybe it’s just the command lines we’re used to. If commands were memorable, and their syntax forgiving, perhaps we wouldn’t be so scared to reconsider these interface paradigms.”

Page 30: Ubiquity: Designing a Multilingual Natural Language Interface

a natural language interface

Page 31: Ubiquity: Designing a Multilingual Natural Language Interface

ubiquityubiquity.mozilla.com

Page 32: Ubiquity: Designing a Multilingual Natural Language Interface

[demo 1]

inserting a map into email(video not included in PDF)

Page 33: Ubiquity: Designing a Multilingual Natural Language Interface

without ubiquity

Page 34: Ubiquity: Designing a Multilingual Natural Language Interface

without ubiquity

Page 35: Ubiquity: Designing a Multilingual Natural Language Interface

without ubiquity

Page 36: Ubiquity: Designing a Multilingual Natural Language Interface

without ubiquity

Page 37: Ubiquity: Designing a Multilingual Natural Language Interface

[demo 1]

inserting a map into email:one step with ubiquity

(video not included in PDF)

Page 38: Ubiquity: Designing a Multilingual Natural Language Interface

[demo 2]

translating and emailing web content(video not included in PDF)

Page 39: Ubiquity: Designing a Multilingual Natural Language Interface

without ubiquity

Page 40: Ubiquity: Designing a Multilingual Natural Language Interface

without ubiquity

Page 41: Ubiquity: Designing a Multilingual Natural Language Interface

without ubiquity

Page 42: Ubiquity: Designing a Multilingual Natural Language Interface

without ubiquity

Page 43: Ubiquity: Designing a Multilingual Natural Language Interface

without ubiquity

Page 44: Ubiquity: Designing a Multilingual Natural Language Interface

[demo 2]

translating and emailing web content:fast and straightforward with ubiquity

(video not included in PDF)

Page 45: Ubiquity: Designing a Multilingual Natural Language Interface

goal:

how?

Page 46: Ubiquity: Designing a Multilingual Natural Language Interface

goal:accomplish more on the web

how?

Page 47: Ubiquity: Designing a Multilingual Natural Language Interface

goal:accomplish more on the web

how?connect the web with language

Page 48: Ubiquity: Designing a Multilingual Natural Language Interface
Page 49: Ubiquity: Designing a Multilingual Natural Language Interface

verbs*

*JavaScript

Page 50: Ubiquity: Designing a Multilingual Natural Language Interface

ubiquity:designing a multilingual natural language interface

• focus on multilingual delivery and interfaces

• reconsidering the text-based interface

• localizing ubiquity

Page 51: Ubiquity: Designing a Multilingual Natural Language Interface

• The goal: “natural syntax”

• Users must expect that not all natural inputs are understandable.

• But the parser must not add restrictions which go against the user’s natural syntax.

LOCALIZING UBIQUITY

Page 52: Ubiquity: Designing a Multilingual Natural Language Interface

• The goal: “natural syntax”

• Users must expect that not all natural inputs are understandable.

• But the parser must not add restrictions which go against the user’s natural syntax.

LOCALIZING UBIQUITY

Page 53: Ubiquity: Designing a Multilingual Natural Language Interface

• EX: The following must behave equivalently:

(Japanese, a scrambling language)

• 太郎にボールを投げろ Tarō-ni ball-o nager=o

Tarō-dat ball-acc throw=imper

• ボールを太郎に投げろ

LOCALIZING UBIQUITY

Page 54: Ubiquity: Designing a Multilingual Natural Language Interface

• EX: The following must behave equivalently:

(Japanese)

• ...投げろ nager=o (imperative)

• ...投げる nager=u (infinitive)

• ...投げて nage=te (linking form)

LOCALIZING UBIQUITY

Page 55: Ubiquity: Designing a Multilingual Natural Language Interface

• Putting theoretical linguistic research and insights into practice

• Writing individual language parsers is difficult and time-intensive

• A Principles and Parameters model

• One universal parser with minimal language settings

LOCALIZING UBIQUITY

Page 56: Ubiquity: Designing a Multilingual Natural Language Interface

• Putting theoretical linguistic research and insights into practice

• Writing individual language parsers is difficult and time-intensive

• A Principles and Parameters model

• One universal parser with minimal language settings

LOCALIZING UBIQUITY

Page 57: Ubiquity: Designing a Multilingual Natural Language Interface

• Putting theoretical linguistic research and insights into practice

• Writing individual language parsers is difficult and time-intensive

• A Principles and Parameters model

• One universal parser with minimal language settings

LOCALIZING UBIQUITY

Page 58: Ubiquity: Designing a Multilingual Natural Language Interface

• Putting theoretical linguistic research and insights into practice

• Writing individual language parsers is difficult and time-intensive

• A Principles and Parameters model

• One universal parser with minimal language settings

LOCALIZING UBIQUITY

Page 59: Ubiquity: Designing a Multilingual Natural Language Interface

parser (animation not included in PDF)

Page 60: Ubiquity: Designing a Multilingual Natural Language Interface

parser

花子にケーキを送って

(animation not included in PDF)

Page 61: Ubiquity: Designing a Multilingual Natural Language Interface

花子に 送ってケーキを

parser (animation not included in PDF)

Page 62: Ubiquity: Designing a Multilingual Natural Language Interface

花子に 送ってケーキをVNN

parser (animation not included in PDF)

Page 63: Ubiquity: Designing a Multilingual Natural Language Interface

花子に 送ってケーキをVNN

goal object

parser (animation not included in PDF)

Page 64: Ubiquity: Designing a Multilingual Natural Language Interface

花子に 送ってケーキをVNN

goal object

V ( goal, object )

parser (animation not included in PDF)

Page 65: Ubiquity: Designing a Multilingual Natural Language Interface

Argument identification via semantic role

CmdUtils.CreateCommand({names:["email","mail"],arguments:[{role:"object",nountype:noun_arb_text},{role:"goal",nountype:noun_type_contact}],...

LOCALIZING UBIQUITY

Page 66: Ubiquity: Designing a Multilingual Natural Language Interface

CmdUtils.CreateCommand({names:["email","mail"],arguments:[{role:"object",nountype:noun_arb_text},{role:"goal",nountype:noun_type_contact}],...

LOCALIZING UBIQUITY

Argument identification via semantic role

Page 67: Ubiquity: Designing a Multilingual Natural Language Interface

LOCALIZING UBIQUITY

Argument identification via semantic role

Page 68: Ubiquity: Designing a Multilingual Natural Language Interface

LOCALIZING UBIQUITY

Argument identification via semantic role

Page 69: Ubiquity: Designing a Multilingual Natural Language Interface

role English Japanese

object ø を o

goal to に ni, へ e

location at, on で de

LOCALIZING UBIQUITY

Argument identification via semantic role

Page 70: Ubiquity: Designing a Multilingual Natural Language Interface

role English Japanese

object ø を o

goal to に ni, へ e

location at, on で de

LOCALIZING UBIQUITY

Argument identification via semantic role

Page 71: Ubiquity: Designing a Multilingual Natural Language Interface

role English Japanese

object ø を o

goal to に ni, へ e

location at, on で de

LOCALIZING UBIQUITY

Argument identification via semantic role

Page 72: Ubiquity: Designing a Multilingual Natural Language Interface

role English Japanese

object ø を o

goal to に ni, へ e

location at, on で de

LOCALIZING UBIQUITY

Argument identification via semantic role

Page 73: Ubiquity: Designing a Multilingual Natural Language Interface

[demo 3]

ubiquity in Japanese: “hello to Spanish”(video not included in PDF)

Page 74: Ubiquity: Designing a Multilingual Natural Language Interface

LOCALIZING UBIQUITY

• Support for various linguistic structures

• Equal support for verb-initial and -final languages

• Smart argument-first suggestions

Page 75: Ubiquity: Designing a Multilingual Natural Language Interface

Minimal language descriptions

branching:'left',usespaces:false,joindelimiter:'',anaphora:["これ","それ","あれ"],roles:[{role:'object',delimiter:'を'},{role:'goal',delimiter:'に'},{role:'source',delimiter:'から'},{role:'position',delimiter:'で'},{role:'position',delimiter:'に'},{role:'instrument',delimiter:'で'},{role:'alias',delimiter:'として'},]

LOCALIZING UBIQUITY

Page 76: Ubiquity: Designing a Multilingual Natural Language Interface

LOCALIZING UBIQUITY

• An equipotent multilingual platform par excellence

• Equivalent underlying parse structures

• Commands via semantic role: write once, use in any language

• Easy to add new languages

Page 77: Ubiquity: Designing a Multilingual Natural Language Interface

LOCALIZING UBIQUITY

• An equipotent multilingual platform par excellence

• Equivalent underlying parse structures

• Commands via semantic role: write once, use in any language

• Easy to add new languages

Page 78: Ubiquity: Designing a Multilingual Natural Language Interface

LOCALIZING UBIQUITY

• An equipotent multilingual platform par excellence

• Equivalent underlying parse structures

• Commands via semantic role: write once, use in any language

• Easy to add new languages

Page 79: Ubiquity: Designing a Multilingual Natural Language Interface

ubiquity 0.5with Parser 2

Page 80: Ubiquity: Designing a Multilingual Natural Language Interface

CatalàDansk

EnglishEspañolFrançais

Italiano日本語

PortuguêsSvenska中文

ubiquity 0.5with Parser 2

Languagesettings:

Page 81: Ubiquity: Designing a Multilingual Natural Language Interface

ubiquity 0.5with Parser 2

Page 82: Ubiquity: Designing a Multilingual Natural Language Interface

CatalàDansk

EnglishPortuguês日本語

ubiquity 0.5with Parser 2

Page 83: Ubiquity: Designing a Multilingual Natural Language Interface

ubiquity:designing a multilingual natural language interface

• Conclusion

• broad and equal access to information requires equipotent multilingual interfaces

• ubiquity: an equipotent platform par excellence

• challenging internationalization possible through application of linguistic research

Page 84: Ubiquity: Designing a Multilingual Natural Language Interface

ubiquity:designing a multilingual natural language interface

• Conclusion

• broad and equal access to information requires equipotent multilingual interfaces

• ubiquity: an equipotent platform par excellence

• challenging internationalization possible through application of linguistic research

Page 85: Ubiquity: Designing a Multilingual Natural Language Interface

ubiquity:designing a multilingual natural language interface

• Conclusion

• broad and equal access to information requires equipotent multilingual interfaces

• ubiquity: an equipotent platform par excellence

• challenging internationalization possible through application of linguistic research

Page 86: Ubiquity: Designing a Multilingual Natural Language Interface

mitchoMichael Yoshitaka Erlewine

by-nc-sa

mitcho.com

@mitchoyoshitaka

Thank you!Questions?