Time-aware API Popularity Prediction via Heterogeneous - - PowerPoint PPT Presentation

time aware api popularity prediction via heterogeneous
SMART_READER_LITE
LIVE PREVIEW

Time-aware API Popularity Prediction via Heterogeneous - - PowerPoint PPT Presentation

ICWS 2015 New York, USA June 27- July 2 2015 Time-aware API Popularity Prediction via Heterogeneous Features Yao Wan 1 , Liang Chen 1 , Jian Wu 1 and Qi Yu 2 1 Zhejiang University,


slide-1
SLIDE 1

Time-­‑aware ¡API ¡Popularity ¡Prediction ¡via ¡ Heterogeneous ¡Features

Yao ¡Wan1, ¡Liang ¡Chen1, ¡Jian ¡Wu1 and ¡Qi ¡Yu2

1Zhejiang ¡University, ¡Hangzhou, ¡China 2Rochester ¡Institute ¡of ¡Technology, ¡Rochester, ¡USA

{wanyao, ¡cliang, ¡wujian2000}@zju.edu.cn, ¡qi.yu@rit.edu June ¡28, ¡2015

ICWS 2015

New York, USA June 27- July 2 2015

slide-2
SLIDE 2

4/25/16 2 Time-­‑aware ¡API ¡popularity ¡prediction

Outline

¨ Introduction ¨ Dataset ¡Characteristics ¨ Popularity ¡Prediction ¡Models ¨ Experiments ¨ Conclusion ¡& ¡Future ¡Work

slide-3
SLIDE 3

4/25/16 3 Time-­‑aware ¡API ¡popularity ¡prediction

Introduction

¨ The ¡spring ¡up ¡of ¡web ¡APIs ¡ ¡

¤ 10634 ¡APIs ¡and ¡6049 ¡mashups ¡in ¡ProgrammableWeb until ¡Nov. ¡2014

(www.programmableweb.com)

¨ The ¡advantages ¡of ¡web ¡APIs

¤ Make ¡web ¡programmable ¤ Increase ¡ecnomic ¡transactions ¡from ¡web ¡browsers ¡to ¡API-­‑driven ¡interactions ¤ eBay, ¡APIs ¡drive ¡over ¡60% ¡of ¡its ¡sellers; ¡Twitter, ¡13 ¡billion ¡calls ¡per ¡day ¡through ¡

APIs

slide-4
SLIDE 4

4/25/16 4 Time-­‑aware ¡API ¡popularity ¡prediction

Introduction

¨ Framework ¡of ¡API ¡market: more ¡and ¡more ¡Web ¡sites ¡

dedicated ¡to ¡API ¡market ¡are ¡emerging (e.g.Mashape)

  • 1. ¡Recommend
  • 2. ¡Ranking
  • 3. ¡Monitoring

Manage r Developer Provider Profit User ¡

slide-5
SLIDE 5

4/25/16 5 Time-­‑aware ¡API ¡popularity ¡prediction

Introduction

  • 1. ¡Recommend
  • 2. ¡Ranking
  • 3. ¡Monitoring

Manage r Developer Provider Profit User ¡

  • For ¡manager
  • 1. ¡Find ¡and ¡recommend ¡the ¡APIs ¡ ¡ ¡

that ¡may ¡be ¡popular ¡in ¡the ¡future

  • 2. ¡Give ¡a ¡more ¡reasonable ¡

ranking ¡to ¡APIs

  • 3. ¡Monitor ¡the ¡trend ¡of ¡API ¡growth
  • For ¡developers
  • Developers ¡can ¡select ¡the ¡

latest ¡released ¡APIs ¡whose ¡ popularities ¡may ¡be ¡low

  • For ¡API ¡providers
  • Give ¡a ¡guide ¡to ¡API ¡providers ¡that ¡

how ¡to ¡publish ¡their ¡APIs ¡effectively ¡ and ¡do ¡marketing

  • 1. ¡With ¡the ¡increasing ¡APIs, ¡the ¡need ¡to ¡search ¡and ¡manage ¡APIs ¡becomes ¡urgent
  • 2. ¡Programmable ¡manage ¡APIs ¡through ¡the ¡followers ¡number ¡at ¡one ¡monent

Motivation

slide-6
SLIDE 6

4/25/16 6 Time-­‑aware ¡API ¡popularity ¡prediction

Introduction

¨ Heterogeneous ¡features ¨ The ¡growth ¡patterns ¡of ¡two ¡APIs

Popularity ¡of ¡Youtube ¡API Popularity ¡of ¡Twilio ¡API Note: ¡In ¡our ¡paper, ¡the ¡popularity ¡of ¡API ¡is ¡defined ¡as ¡the ¡number ¡of ¡mashups ¡that ¡are ¡ composed ¡of ¡this ¡API.

Challenges

slide-7
SLIDE 7

4/25/16 7 Time-­‑aware ¡API ¡popularity ¡prediction

Outline

¨ Introduction ¨ Dataset ¡Characteristics ¨ Popularity ¡Prediction ¡Models ¨ Experiments ¨ Conclusion ¡& ¡Future ¡Work

slide-8
SLIDE 8

4/25/16 8 Time-­‑aware ¡API ¡popularity ¡prediction

Dataset ¡Characterstics

¨ An ¡overview ¡of ¡ProgrammableWeb ¡data

Number ¡of ¡APIs 10,634 Number ¡of ¡mashups 6,049 Number ¡of ¡users 52,512

¨ Top-­‑20 ¡API ¡categories

  • Popularity ¡Ranking
  • 1. ¡Mapping
  • 2. ¡Photos
  • 3. ¡Video
  • 4. ¡Search
  • 5. ¡Social
slide-9
SLIDE 9

4/25/16 9 Time-­‑aware ¡API ¡popularity ¡prediction

Dataset ¡Characterstics

¨ Statistical ¡analysis

  • Observations
  • 1. ¡The ¡lower ¡the ¡rank ¡of ¡provider ¡the ¡lower ¡of ¡its ¡

popularity

  • 2. ¡The ¡provider ¡of ¡API ¡that ¡with ¡a ¡higher ¡information ¡

integrity ¡is ¡more ¡prudent ¡to ¡release ¡the ¡API, ¡the ¡API ¡ may ¡be ¡of ¡higher ¡quality

  • 3. ¡The ¡category ¡of ¡API ¡has ¡an ¡effect ¡on ¡it's ¡

popularity

Rank ¡of ¡provider ¡is ¡obtained ¡from ¡Alexa.com API ¡information ¡integrity ¡means ¡the ¡degree ¡of ¡ details ¡providers ¡describe ¡the ¡API

slide-10
SLIDE 10

4/25/16 10 Time-­‑aware ¡API ¡popularity ¡prediction

Outline

¨ Introduction ¨ Dataset ¡Characteristics ¨ Popularity ¡Prediction ¡Models ¨ Experiments ¨ Conclusion ¡& ¡Future ¡Work

slide-11
SLIDE 11

4/25/16 11 Time-­‑aware ¡API ¡popularity ¡prediction

Popularity ¡Prediction ¡Models

¨ Evaluation ¡metrics ¨ Szabo-­‑Huberman ¡(S-­‑H) ¡model

¤ Szabo ¡and ¡Huberman ¡found ¡a ¡strong ¡linear ¡correlation ¡

between ¡the ¡early ¡and ¡future ¡popularity

slide-12
SLIDE 12

4/25/16 12 Time-­‑aware ¡API ¡popularity ¡prediction

Popularity ¡Prediction ¡Models

¨ Linear ¡regression ¡(LR) ¡model

¤ Feature ¡vector ¡of ¡API ¤ Optimization ¡problem ¤ Let ¡ ¤ Can ¡be ¡solved ¡by ¡ordinary ¡linear ¡squares

slide-13
SLIDE 13

4/25/16 13 Time-­‑aware ¡API ¡popularity ¡prediction

Popularity ¡Prediction ¡Models

¨ Linear ¡regression ¡with ¡heterogeneous ¡features

¤ Heterogeneous ¡features

n Time ¡features n Numerical ¡features n Categorical ¡features n Textual ¡features

¨ Optimization ¡problem

where ¡ ¡ ¡ ¡ ¡ ¡ ¡is ¡the ¡feature ¡vector ¡and ¡ ¡ ¡ ¡ ¡is ¡the ¡tunning ¡parameter, is ¡the ¡L2 ¡penality ¡item.

slide-14
SLIDE 14

4/25/16 14 Time-­‑aware ¡API ¡popularity ¡prediction

Outline

¨ Introduction ¨ Dataset ¡Characteristics ¨ Popularity ¡Prediction ¡Models ¨ Experiments ¨ Conclusion ¡& ¡Future ¡Work

slide-15
SLIDE 15

4/25/16 15 Time-­‑aware ¡API ¡popularity ¡prediction

Experiments

¨ Dataset ¡extraction

¤ The ¡target ¡date ¡tt varies ¡from ¡24 ¡months ¡to ¡48 ¡months. ¤ We ¡extract ¡the ¡APIs ¡whose ¡releasing ¡date ¡is ¡between ¡2005 ¡

and ¡Nov. ¡2010

¤ Discard ¡those ¡APIs ¡whose ¡popularity ¡are ¡alway ¡zero ¤ We ¡get ¡613 ¡APIs

¨ Experimental ¡datasets

¤ Full ¡dataset ¤ Popular ¡dataset: ¡APIs ¡whose ¡popularities ¡are ¡greater ¡than ¡5 ¤ Junk ¡dataset: ¡APIs ¡whose ¡popularities ¡are ¡smaller ¡than ¡5

Setup

slide-16
SLIDE 16

4/25/16 16 Time-­‑aware ¡API ¡popularity ¡prediction

Experiments

¨ Feature ¡extraction

¤ Numerical ¡feagure

n Normalization

¤ Category ¡feature

n Encoded ¡into ¡binary ¡code

¤ Textual ¡feature ¡extraction

n Case-­‑folding ¡and ¡tokenization: ¡tokenized ¡by ¡white ¡space n Pruning: ¡filter ¡stopwords ¡(e.g. is, ¡very, ¡should), ¡keep ¡

adjectives ¡using ¡a ¡part-­‑of-­‑speech ¡tagger

n Stemming: ¡strip ¡word ¡to ¡obtain ¡the ¡stem ¡word n Spell ¡correcting

¨ Training ¡and ¡testing

¤ KFold ¡cross ¡validation

¤ 50% ¡traing ¡+ ¡25% ¡crossvalidation ¡+25% ¡testing

slide-17
SLIDE 17

4/25/16 17 Time-­‑aware ¡API ¡popularity ¡prediction

Experiments

¨ Performance ¡evaluation ¡on ¡full ¡dataset

slide-18
SLIDE 18

4/25/16 18 Time-­‑aware ¡API ¡popularity ¡prediction

Experiments

¨ Performance ¡evaluation ¡on ¡popular ¡dataset

  • Observations
  • 1. ¡Our ¡model ¡has ¡and ¡obviously ¡better ¡performance ¡over ¡S-­‑H ¡and ¡LR ¡

model, ¡especially ¡when ¡the ¡reference ¡date ¡is ¡small

  • 2. ¡With ¡the ¡reference ¡time ¡becoming ¡closer ¡to ¡the ¡target ¡time, ¡the ¡

mRSE ¡decreases ¡for ¡all ¡models

  • 3. ¡With ¡the ¡reference ¡time ¡becoming ¡closer ¡to ¡the ¡target ¡time, ¡the ¡

advantages ¡of ¡our ¡model ¡shrink, ¡S-­‑H ¡and ¡LR ¡model ¡is ¡enough

slide-19
SLIDE 19

4/25/16 19 Time-­‑aware ¡API ¡popularity ¡prediction

Experiments

¨ Performance ¡evaluation ¡on ¡junk ¡dataset

  • Observations
  • 1. ¡Our ¡LR-­‑HF ¡model ¡still ¡has ¡an ¡ ¡better ¡performance
  • 2. ¡The ¡improvement ¡is ¡small ¡when ¡just ¡introducing ¡API's ¡textual ¡features
  • 3. ¡Our ¡model ¡is ¡particularly ¡suitable ¡for ¡predicting ¡the ¡popularity ¡of ¡APIs ¡

that ¡not ¡changes ¡frequently

slide-20
SLIDE 20

4/25/16 20 Time-­‑aware ¡API ¡popularity ¡prediction

Experiments

¨ Impact ¡of ¡lambda

  • Observations
  • 1. ¡The ¡value ¡of ¡lambda ¡really ¡has ¡an ¡impact ¡on ¡the ¡prediction ¡accuracy
  • 2. ¡The ¡most ¡appropriate ¡value ¡of ¡lambda ¡is ¡between ¡0.2 ¡and ¡0.4
slide-21
SLIDE 21

4/25/16 21 Time-­‑aware ¡API ¡popularity ¡prediction

Outline

¨ Introduction ¨ Dataset ¡Characteristics ¨ Popularity ¡Prediction ¡Models ¨ Experiments ¨ Conclusion ¡& ¡Future ¡Work

slide-22
SLIDE 22

4/25/16 22 Time-­‑aware ¡API ¡popularity ¡prediction

Conclusion& ¡Future ¡Work

¨ Conclusion

¤ Crawl ¡the ¡APIs ¡and ¡mashups ¡until ¡Nov. ¡2014 ¡from ¡

ProgrammableWeb.

¤ Analyze ¡some ¡factors ¡that ¡may ¡have ¡an ¡effect ¡on ¡the ¡

popularities ¡of ¡APIs

¤ Propose ¡an ¡approach ¡for ¡predicting ¡future ¡popularities ¡

  • f ¡APIs ¡by ¡integrating ¡heterogeneous ¡features

¨ Future ¡work

¤ Collect ¡more ¡time ¡series ¡records ¡of ¡APIs ¡and ¡find ¡more ¡

features ¡that ¡may ¡effect ¡the ¡popularity ¡of ¡APIs

¤ Discove ¡the ¡popularity ¡trends ¡of ¡APIs ¤ Infer ¡the ¡impacts ¡of ¡other ¡data ¡sources ¡on ¡APIs, ¡such ¡as ¡

social ¡media

slide-23
SLIDE 23

Thank ¡you!

wanyao@zju.edu.cn http://www.wanyao.me