Itera&vely Learning Condi&onal Statements in - - PowerPoint PPT Presentation

itera vely learning condi onal statements in transforming
SMART_READER_LITE
LIVE PREVIEW

Itera&vely Learning Condi&onal Statements in - - PowerPoint PPT Presentation

Itera&vely Learning Condi&onal Statements in Transforming Data by Example Bo Wu and Craig A. Knoblock University of Southern California


slide-1
SLIDE 1

Itera&vely ¡Learning ¡Condi&onal ¡Statements ¡in ¡ Transforming ¡Data ¡by ¡Example ¡ Bo ¡Wu ¡and ¡Craig ¡A. ¡Knoblock ¡ University ¡of ¡Southern ¡California ¡

slide-2
SLIDE 2

¡ ¡

Introduc&on ¡

slide-3
SLIDE 3

Mo&va&on ¡

Data ¡Source ¡A ¡ Data ¡Source ¡B ¡ Data ¡Source ¡C ¡ Data ¡Transforma&on ¡ ¡ Data ¡in ¡the ¡ready ¡format ¡

slide-4
SLIDE 4

A ¡Data ¡Table ¡

Accessi

  • n ¡

Credit ¡ Dimensions ¡ Medium ¡ Name ¡

01.2 ¡ GiK ¡of ¡the ¡ar&st ¡ 5.25 ¡in ¡HIGH ¡x ¡9.375 ¡in ¡WIDE ¡ ¡ Oil ¡on ¡canvas ¡ John ¡Mix ¡Stanley ¡ ¡ 05.411 ¡ GiK ¡of ¡James ¡L. ¡Edison ¡ ¡20 ¡in ¡HIGH ¡x ¡24 ¡in ¡WIDE ¡ ¡ Oil ¡on ¡canvas ¡ Mor&mer ¡L. ¡Smith ¡ ¡ 06.1 ¡ GiK ¡of ¡the ¡ar&st ¡ Image: ¡20.5 ¡in. ¡HIGH ¡x ¡17.5 ¡in. ¡WIDE ¡ ¡ Oil ¡on ¡canvas ¡ Theodore ¡ScoV ¡Dabo ¡ ¡ 06.2 ¡ GiK ¡of ¡the ¡ar&st ¡ 9.75 ¡in|16 ¡in ¡HIGH ¡x ¡13.75 ¡in|19.5 ¡in ¡ WIDE ¡ ¡ Oil ¡on ¡canvas ¡ Leon ¡Dabo ¡ ¡ … ¡ 09.8 ¡ GiK ¡of ¡the ¡ar&st ¡ 12 ¡in|14 ¡in ¡HIGH ¡x ¡16 ¡in|18 ¡in ¡WIDE Oil ¡on ¡canvas ¡ Gari ¡Melchers ¡ ¡ 4 ¡

slide-5
SLIDE 5

Programming ¡by ¡Example ¡

Raw ¡Value ¡ Target ¡Value ¡ R1 ¡ 5.25 ¡in ¡HIGH ¡x ¡9.375 ¡in ¡WIDE ¡ ¡ R2 ¡ ¡20 ¡in ¡HIGH ¡x ¡24 ¡in ¡WIDE ¡ ¡ R3 ¡ Image: ¡20.5 ¡in. ¡HIGH ¡x ¡17.5 ¡in. ¡WIDE ¡ ¡ R4 ¡ 9.75 ¡in|16 ¡in ¡HIGH ¡x ¡13.75 ¡in|19.5 ¡in ¡WIDE ¡ ¡ R5 ¡ 12 ¡in|14 ¡in ¡HIGH ¡x ¡16 ¡in|18 ¡in ¡WIDE . ¡. ¡. ¡

5 ¡

9.375 ¡ 24 ¡ 17.5 ¡ null ¡ null ¡ 24 ¡ 17.5 ¡

19.5 ¡

null ¡ 24 ¡ 17.5 ¡ 19.5 ¡ 18 ¡

slide-6
SLIDE 6

¡ ¡

Problem: ¡

Learn ¡accurate ¡condi&onal ¡statements ¡ efficiently ¡for ¡data ¡with ¡heterogeneous ¡ formats ¡using ¡few ¡examples ¡

slide-7
SLIDE 7

GUI ¡ Examples ¡ Par&&ons ¡ Condi&onal ¡ Branch ¡ ¡ Transforma&on ¡program ¡ Data ¡Preprocessing ¡ Transforma&on ¡Program ¡

Cluster ¡ Learn ¡ ¡ classifier ¡ Derive ¡branch ¡program ¡ Combine ¡ Examine ¡Results ¡and ¡ ¡ provide ¡examples ¡ Get ¡examples ¡and ¡ ¡ provide ¡results ¡

Previous ¡Approach ¡

Compa&bility ¡score ¡ (O(n3)) ¡ ¡ ¡ Few ¡Training ¡Data ¡

slide-8
SLIDE 8

Transforma&on ¡Program ¡

BNK: ¡blankspace ¡ NUM[0-­‑9]+: ¡98 ¡ UWRD[A-­‑Z]: ¡I ¡ LWRD[a-­‑z]: ¡mage ¡ WORD[a-­‑zA-­‑Z] ¡ START: ¡ END: ¡

8 ¡

Example: ¡9.75 ¡in|16 ¡in ¡HIGH ¡x ¡13.75 ¡in|19.5 ¡in ¡WIDE ¡è ¡19.5 ¡

slide-9
SLIDE 9

¡ ¡ ¡

Our ¡Approach ¡

¡ ¡ ¡

slide-10
SLIDE 10

Main ¡Idea ¡

Learning ¡the ¡condi?onal ¡statement ¡itera?vely ¡

Input: ¡5.25 ¡in ¡HIGH ¡x ¡9.375 ¡in ¡WIDE ¡ ¡ Output: ¡9.375 ¡ Input: ¡9.75 ¡in|16 ¡in ¡HIGH ¡x ¡13.75 ¡in|19.5 ¡in ¡WIDE ¡ Output: ¡13.35 ¡ 10 ¡

slide-11
SLIDE 11

Our ¡Approach ¡

Utilize previous constraints U&lize ¡Unlabeled ¡ Data

11 ¡

Examples ¡ Par&&ons ¡ Condi&onal ¡ Branch ¡ ¡ Transforma&on ¡program ¡ Data ¡Preprocessing ¡ Transforma&on ¡Program ¡

Cluster ¡ Learn ¡ ¡ classifier ¡ Derive ¡branch ¡program ¡ Combine ¡

Convert data into feature vectors

slide-12
SLIDE 12

Data ¡Preprocessing ¡

slide-13
SLIDE 13

Our ¡Approach ¡

Utilize previous constraints U&lize ¡Unlabeled ¡ Data

13 ¡

Examples ¡ Par&&ons ¡ Condi&onal ¡ Branch ¡ ¡ Transforma&on ¡program ¡ Data ¡Preprocessing ¡ Transforma&on ¡Program ¡

Cluster ¡ Learn ¡ ¡ classifier ¡ Derive ¡branch ¡program ¡ Combine ¡

Convert data into feature vectors

slide-14
SLIDE 14

Constraints ¡

  • Two ¡Types ¡of ¡Constraints: ¡
  • Cannot-­‑merge ¡Constraints: ¡ ¡
  • Ex: ¡
  • Must-­‑merge ¡Constraints: ¡ ¡
  • Ex: ¡ ¡ ¡

5.25 ¡in ¡HIGH ¡x ¡9.375 ¡in ¡WIDE ¡ 9.375 ¡ 9.75 ¡in|16 ¡in ¡HIGH ¡x ¡13.75 ¡in|19.5 ¡in ¡WIDE ¡ 13.75 ¡ 20 ¡in ¡HIGH ¡x ¡24 ¡in ¡WIDE ¡ 24 ¡ 5.25 ¡in ¡HIGH ¡x ¡9.375 ¡in ¡WIDE ¡ 9.375 ¡ 20 ¡in ¡HIGH ¡x ¡24 ¡in ¡WIDE ¡ 24 ¡ 9.75 ¡in|16 ¡in ¡HIGH ¡x ¡13.75 ¡in|19.5 ¡in ¡WIDE ¡ 13.75 ¡ Image: ¡20.5 ¡in. ¡HIGH ¡x ¡17.5 ¡in. ¡WIDE ¡ 17.5 ¡

P1 ¡ P2 ¡ P3 ¡

14 ¡

slide-15
SLIDE 15

Constrained Agglomerative Clustering

r1 ¡ r3 ¡ r4 ¡ r2 ¡ r1 ¡ r2 ¡ r4 ¡ r3 ¡ r1 ¡ r3 ¡ r2 ¡ Update ¡constraints ¡ Learn ¡distance ¡metric ¡ r2 ¡ r1 ¡ r3 ¡ r4 ¡ r4 ¡

15 ¡

slide-16
SLIDE 16

Distance ¡Metric ¡Learning ¡

  • Distance ¡Metric ¡(Weighted ¡Euclidean) ¡Learning ¡
  • Objec&ve ¡Func&on ¡

Too ¡far ¡away ¡ Close ¡to ¡each ¡other ¡

16 ¡

slide-17
SLIDE 17

Our ¡Approach ¡

Utilize previous constraints U&lize ¡Unlabeled ¡ Data

17 ¡

Examples ¡ Par&&ons ¡ Condi&onal ¡ Branch ¡ ¡ Transforma&on ¡program ¡ Data ¡Preprocessing ¡ Transforma&on ¡Program ¡

Cluster ¡ Learn ¡ ¡ classifier ¡ Derive ¡branch ¡program ¡ Combine ¡

Convert data into feature vectors

slide-18
SLIDE 18

U&lize ¡Unlabeled ¡data ¡in ¡Learning ¡Classifier ¡

Filter ¡unlabeled ¡data ¡ 1. Filter ¡unlabeled ¡data ¡on ¡ the ¡boundary ¡ 2. Only ¡choose ¡top ¡K ¡ unlabeled ¡data ¡ ¡ Learn ¡a ¡SVM ¡classifier ¡

18 ¡

slide-19
SLIDE 19

¡ ¡

Results ¡

slide-20
SLIDE 20

Evalua&on ¡

  • Dataset: ¡30 ¡edi&ng ¡scenarios ¡

– Museum ¡ ¡ – Google ¡Refine ¡and ¡Excel ¡user ¡forums ¡

  • Comparing ¡Methods: ¡

– SP ¡

  • The ¡state-­‑of-­‑the-­‑art ¡approach ¡that ¡uses ¡compa&bility ¡score ¡to ¡select ¡par&&ons ¡

to ¡merge ¡

– SPIC ¡

  • U&lize ¡previous ¡constraints ¡besides ¡using ¡compa&bility ¡score ¡

– DP ¡

  • Learn ¡distance ¡metric ¡ ¡

– DPIC ¡

  • U&lize ¡previous ¡constraints ¡besides ¡learning ¡distance ¡metric ¡

– DPICED ¡

  • Our ¡approach ¡in ¡this ¡paper ¡

20 ¡

slide-21
SLIDE 21

Results ¡

Success ¡Rates: ¡ Time ¡and ¡Examples: ¡

21 ¡

slide-22
SLIDE 22

Related ¡Work ¡

  • Wrapper ¡induc&on ¡approaches ¡

– WIEN ¡[Kushmerick, ¡1997], ¡SoKMealy ¡[Hsu ¡et ¡al., ¡ 1998], ¡STALKER ¡[Muslea ¡et ¡al., ¡1999] ¡

  • Programming-­‑by-­‑example ¡approaches ¡

– FlashFill[Gulwani, ¡2011][Perelman ¡et ¡al., ¡2014], ¡Data ¡ Wrangler ¡[Kandel ¡et ¡al., ¡2011], ¡SmartEditor ¡[Lau ¡et ¡al. ¡ 2003] ¡

  • Clustering ¡with ¡constraints ¡

– Clustering ¡with ¡constraints ¡[Xing ¡et ¡al., ¡2002][Bilenko ¡ et ¡al., ¡2004][Bade ¡et ¡al., ¡2006][Zhao ¡et ¡al., ¡2010] [Zheng ¡et ¡al., ¡2011] ¡

slide-23
SLIDE 23

Discussion ¡

  • Itera&vely ¡learn ¡condi&onal ¡statements ¡in ¡PBE ¡

selng ¡

– Improve ¡the ¡efficiency ¡ – Learn ¡more ¡accurate ¡condi&onal ¡statements ¡ – generate ¡a ¡small ¡number ¡of ¡branches. ¡

  • Incorporate ¡ML ¡tools ¡as ¡external ¡func&ons ¡in ¡

induc&ve ¡programming ¡

slide-24
SLIDE 24

Future ¡Work ¡

  • Integrate ¡the ¡par&&oning ¡and ¡classifica&on ¡

steps ¡

– Reduce ¡accumulated ¡errors ¡

  • Improve ¡GUI ¡to ¡help ¡user ¡verifying ¡the ¡data ¡

– Iden&fy ¡unseen ¡formats ¡ – Iden&fy ¡incorrectly ¡classified ¡records ¡

slide-25
SLIDE 25
  • Thanks ¡