WSDM 2018 論文読み会の資料 https://atnd.org/events/95510
*OEFY$PNQSFTTJPO6TJOH#ZUF"MJHOFE"/4$PEJOHBOE5XP%JNFOTJPOBM$POUFYU84%.ಡΈձ$IJF)BZBTIJEB
View Slide
Θͨ͠ͷ͠ΐ͏͔͍$IJF)BZBTIJEB !DIJFΫοΫύουɹػցֶशνʔϜ$POUSJCVUFUP"QBDIF4QBSL )BEPPQ FUDൃചͷ8%#13&44ͷ1ZUIPOͱՊֶٕज़ܭࢉͷষॻ͍ͨɻ
"#453"$5• #MPDLCBTFEJOWFSUFEJOEFYDPNQSFTTJPOͷ࣮ݧΛߦͬͨɻ• "TZNNFUSJD/VNFSBM4ZTUFNT "/4ΤϯτϩϐʔίʔσΟϯάʹରͯ͠ҎԼͷ֦ுΛߦ͏͜ͱʹΑΔվળ͕ಘΒΕͨɻ– ͭͷूύϥϝʔλʹΑΔ࣍ݩͷ݅ίϯςΩετʹΑͬͯɺγϯϘϧͷΧςΰϥΠζΛߦ͏ɻ– #ZUFGSJFOEMZͳϚοϐϯάΛͬͯγϯϘϧΛ"/4ͷDPEFXPSECVDLFUʹΘ͚Δ– ίϯςΩετϚʔδͷϓϩηεʹΑΓɺෳͷEJTUSJCVUJPOΛͭͱΈͳ͞ΕΔɻ• ͜ͷख๏ʹΑΓɺJOUFSQʹΑΔΠϯσοΫεͷѹॖͷੑೳج४Λ্ճͬͨɻ• ࣮ݧ(#ͷHPWίʔύεͱ৽͍͠χϡʔεهࣄΛ͍ɺΫΤϦධՁผͷCMPDLCBTFEͷख๏ͱൺֱͨ͠ɻ
*/530%6$5*0/• *OWFSUFE సஔΠϯσοΫεςΩετσʔλʹର͢ΔߴͳΫΤϦ࣮ߦͷॏཁͳߏͰ͋Δɻterm Posting listJ1IPOFϏοάσʔλΧόϝϩϯ postingͦΕͧΕͷυΩϡϝϯτ*%ʹରͯ͠୯ޠͷग़ݱසϙδγϣϯͷใ࣋ͭɻίϯύΫτͳQPTUJOHMJTUTʹɺCZUFBMJHOFEDPEFT XPSEBMJHOFEDPEFT CJOBSZQBDLFEΞϓϩʔν͕͋Δɻ
*/530%6$5*0/• ϋϑϚϯූ߸ԽͷΑ͏ͳΤϯτϩϐʔϕʔεͷख๏ఏҊ͞Ε͍͕ͯͨɺҎલ͋·ΓސΈΒΕΔ͜ͱ͕ͳ͔ͬͨɻલʹ+FSFL%VEB͕"/4ϝΧχζϜΛ։ൃͨ͜͠ͱʹΑΓɺΤϯτϩϐʔίʔσΟϯά͕࠶ͼ͞ΕΔΑ͏ʹͳͬͨɻ• 7#ZUF 4JNQMF 1BDLFEͷख๏Λ༻͍ͯɺͦΕͧΕѹॖޮ͕վળ͞Εͨɻ• 1BDLFE"/4ΞϓϩʔνͷఏҊ– ݻఆϒϩοΫͷγϯϘϧ͕ηϨΫλʹΑͬͯಛఆ͞Εͨ֬ͱؔ࿈ͯ͠ූ߸Խ͞ΕΔɻ– 1BDLFE"/4Ξϓϩʔνͷհʹ͓͍ͯɺηϨΫλϒϩοΫͷ࠷্Ґ͕ར༻͞ΕΔɻ– QBDLFEGSBNFPGSFGFSFODF 1'03ϝΧχζϜͷΑ͏ͳར͕͋Δɻ– ΤϯτϩϐʔίʔσΟϯάͷϝϦοτ• ΤϯτϩϐʔίʔσΟϯάͷॊೈੑʹΑΓɺࣅ௨ͬͨූ߸ͷ֬ٴͼූ߸ͷ໘Ͱѹॖޮ্͕͕ͬͨɻ– ϒϩοΫͷूʹ͓͍ͯ࣍ݩͷηϨΫλ͕ར༻Ͱ͖ͨɻ• γϯϘϧͷࣝผࢠ͔Β"/4ͷͱϚοϐϯάΛม͑ΔলϝϞϦͰCZUFGSJFOEMZͳग़ྗ• σίʔυͷࡍͷϝϞϦ༻ྔΛݮ͢ΔͨΊͷ$POUFYU.FSHJOH
#"$,(306/%ɿ*OEFY$PNQSFTTJPO˙$PNQSFTTJPO"QQSPBDI• طଘͷํࣜ– ౷తͳख๏ɹ&MJBTDPEFT– 7#ZUFͦͷมܗ– ϫʔυϕʔεͷγϯϓϧͳΞϓϩʔν– *OUFSQNFDIBOJTN• εέʔϧͨ͠ͱ͖ʹྑ͍ѹॖޮ͕ಘΒΕ͕ͨɺEFDPEF͕&MJBTΑΓ͔ͬͨɻ
ิɿ&MJBT(BNNBhttps://en.wikipedia.org/wiki/Elias_gamma_coding
ิɿ7#ZUF1 0 0 0 0 0 1 0valueEnd marker1000000110000010整数自体を符号化するのでなく、逐次差分を符号化する方法
#"$,(306/%ɿQBDLFEDPEFT˙1BDLFE$PEFT• ݻఆͷQPTUJOHTʹର͢ΔQBDLFEDPEFT• ൺֱత࠷ۙͷٕज़• ΩʔΞΠσΞɺϩʔΧϧͳҰ؏ੑΛར༻͢Δํ๏Ͱ͋Δɻ• ݻఆʢେʣͷϒϩοΫ͝ͱͷΛͭͷϢχοτͱͯ͠ॲཧ͢Δɻ• ྫ͑ɺ͔ΒηϨΫλΛબͿ͜ͱͰɺ͋ΔΛͱ͍ͬͨॻ͖ํͰදͤΔɻ
#"$,(306/%ɿ1BUDIFE'SBNFPG3FGFSFODF2 1 31 1 0 … 210 01 01 01 00 … 10b=5 b’=2 1exception position3• ϒϩοΫຖʹͦͷϒϩοΫͷͷ΄ͱΜͲΛද͢͜ͱ͕Ͱ͖ΔϏοτΛܾΊͯΤϯίʔυ͢Δɻ• খ͍͞ϏοτͰදͤΔͨΊσʔλαΠζ͕খ͘͞ͳΔɻ• 1'03ͷมܗͰ͋Δ0QU1'03Ͱɺ࠷શମͷύοέʔδ͕͜Μͺ͘ͱʹͳΔΑ͏ʹηϨΫλΛબͿΑ͏ʹͳ͍ͬͯΔɻbb’metadata
#"$,(306/%ɿ7BSJBCMF-FOHUI#SPDLT• ՄมͷϒϩοΫʹύʔςΟγϣχϯάͨ͠߹ͷख๏Λ0UUBWJBOPFUBM͕ఏҊ͍ͯ͠Δɻ• ಉҰͷσʔλ͕ग़ݱͨ͠ͱ͖ʹେ͖ͳΠϯϓοτϢχοτΛ࣋ͭηϨΫλετϨʔδΛঈ٫͢ΔΑ͏ʹγʔΫ͢Δɻ͕ہॴతʹόʔετ͢Δ߹ʹ༗ޮͳํ๏Ͱ͋Δɻ
#"$,(306/%ɿ"TZNNFUSJD/VNFSBM4ZTUFNTʢ"/4ʣ• +BSFL%VEBʹΑͬͯ։ൃ͞Εͨ৽͍͠Τϯτϩϐʔූ߸Խํࣜ• ϋϑϚϯූ߸Խࢉज़ූ߸ͱಉׂ͡ΛՌͨ͢ɻ• ग़ݱසͷߴ͍γϯϘϧʹϏοτͷখ͍͞ූ߸ɺग़ݱසͷ͍γϯϘϧʹϏοτͷେ͖͍ූ߸ΛׂΓͯΔɻ
"/4Λ༻͍ͨΠϯσοΫεѹॖͷྫ• γϯϘϧ1 2 3ͦΕͧΕग़ݱ֬ɺɺͱ͢Δ• ϋϑϚϯූ߸ԽͰɺ1͕̍Ϗοτɺ2ͱ3͕̎ϏοτͱͳΔɻ• "/4ූ߸ԽͰɺ.ݸͷཁૉͷ͕1ɺ͕2ɺ͕3ʹϥϕϦϯά͞ΕɺͦͷΞϧϑΝϕοτ্ͷه߸ͷγʔέϯεɺରԠ͢ΔϑϨʔϜͷঢ়ଶͱͯ͠දݱ͞ΕΔɻ• ଞͷϑϨʔϜΛ࡞Δ߹ɺଞͷॱྻ͘͠.ΑΓେ͖͍Λ༻͢Δɻ• ϑϨʔϜͷූ߸ԽɺભҠؔ5 ɾ ɾΛ༻͍ͯߦ͏ɻ5্ͷΧϥϜɺεςʔτมͰΠϯσοΫεԽ͞ΕΔɻ• શମΛූ߸Խ͢Δ߹ɺεςʔτม͕େ͖͘ͳΔɻ• σίʔυ͢Δͱ͖ɺɹɹɹ͕ΘΕΔɻ
"/4Λ༻͍ͨΠϯσοΫεѹॖͷྫʢଓ͖ʣ• TFRVFODF2222222222ݸͷεςʔτΛ࣋ͪɺϏοτͰද͞ΕΔɻϋϑϚϯූ߸ԽͩͱϏοτͰ͋Δɻ• ରͯ͠ɺTRVFODF3333333333εςʔτ͕ݸͱͳΓɺϏοτʹͳΔɻ• ͜ͷख๏ɺ4LFXͷ͋Δσʔλʹ༗ޮͰ͋Δɻ39364118096….
"/4$PNQBSFE• ϋϑϚϯූ߸ٴͼ"SJUINFUJDDPEJOHͱͷൺֱ– "/4ཧతͳූ߸Խ͕"SJUINFUSJDDPEJOHͱۙ͘ͳΔɻ– ߴ͍ग़ݱසͷγϯϘϧΛൃੜ͢ΔͨΊʹɺϏοτͷίʔυ͢Βൃੜ͠ͳ͍͍ͯ͘߹͕͋ΔɻʢϋϑϚϯූ߸ͩͱৗʹϏοτҎ্͕ඞཁɻʣ– "SJUINFUSJDDPEJOHΑΓ͘ɺߴʹઃܭ͞ΕͨϋϑϚϯූ߸ͷ࣮ʹ͍ۙεϧʔϓοτϨʔτΛग़͢͜ͱ͕Ͱ͖Δɻ– "/4"SJUINFUJDDPEJOHͱҟͳΓ੩తϝΧχζϜͰ͋ΓɺҟͳΔίϯςΩετͷͱͰγϯϘϧΛੜ͢Δ͜ͱ͕Ͱ͖ͳ͍ɻͨͩ͜͠ͷ͜ͱΠϯσοΫεѹॖʹӨڹ͠ͳ͍ɻ
"/4GPS*OEFY$PNQSFTTJPO• Ҏલͷݚڀ– "/4Λ̏ͭͷҟͳΔΠϯσοΫεѹॖํࣜͱΈ߹Θͤͨɻ– ಛʹ7#ZUFͱΈ߹ΘͤΔΞϓϩʔνΛQPTUJOHMJTUͷѹॖʹ༻ͨ͠ɻ– σίʔυͷεϧʔϓοτগ͠Լ͢Δ͚ͩͰɺετϨʔδΛ͔ͳΓઅͰ͖Δ͜ͱΛ֬ೝͨ͠ɻ• ࠓճͷख๏ɿʮ1BDLFE"/4ʯϝΧχζϜ– ʮͭͷύϥϝʔλʯΛ͏– গͳ͍ϝϞϦ༻ྔͷίϯύΫτͳ࣮– ίϯςΩετϚʔδ• ͜ΕΒͷख๏ͷ༗༻ੑΛ࣮ূ͢ΔͨΊʹɺͭͷେ͖ͳςΩετίϨΫγϣϯΛ༻ͯ͠ɺѹॖͷ༗ޮੑͱΫΤϦͷεϧʔϓοτʹؔ͢Δৄࡉͳ࣮ݧ݁ՌΛఏڙ͢Δɻ
1BDLFE"/4• ඪ४తͳ1BDLFEBSSBOHFNFOUͰɺίϯςΩετΛಛఆ͢ΔηϨΫλ͕֤ϒϩοΫͷූ߸Խͷௐʹར༻͞ΕΔɻ• ූ߸Խεςοϓ͕όΠφϦίʔυΛ༻͢Δ߹ɺηϨΫλɺϒϩοΫͷ࠷େΛݟग़͠ɺόΠφϦͷେ͖͞Λܾఆ͢Δɻ• ࣍ʹɹɹɹɹͱͳΔΑ͏ͳୈͷɹΛٻΊΔɻैདྷͷ1BDLFEߏͰɺM൪ͷίϯςΩετΛ༻ͯ͠ɹɹɹɹɹΛؚΉϖΠϩʔυ͕ੜ͞ΕΔɻ
*.1307&%1"$,&%$0.13&44*0/1BDLFE"/4• 1BDLFE"/4ϝΧχζϜͰɺ͜ΕΒͷ͞·͟·ͳཁૉ͕ີʹ݁ͼ͔ͭͳ͍ɻ• ηϨΫλϒϩοΫͷ࠷େͱ͠ɺ"/4ϑϨʔϜϓʔϧΛࣝผ͢Δɻ• ֤ϑϨʔϜʹɺͷϙεςΟϯάΛॲཧ͢Δ࠷ॳͷύεதʹ౷ܭΛੵ͠ɺ֬Λর߹͢ΔͨΊʹߏங͞ΕͨҟͳΔγϯϘϧ֬ηοτΛؚΉɻ• γϯϘϧͷසਐͷόέοτʹੵ͞ΕɺͦͷΑ͏ͳ֤όέοτͷͯ͢ͷγϯϘϧʢͨͱ͑ʣʹͳΔɻ• ྫ͑ɺʜ ʜͱʜ֬Ͱ͋ΔͱԾఆ͞ΕΔɻ• ͕͠γʔέϯεɹͷ൪ͷγϯϘϧ͕ϒϩοΫͷηοτͱͯ͠ූ߸Խ͞Ε͍ͯΔͳΒɺͱಉ͡ϒϩοΫͷγϯϘϧʹΘͨΔ࠷େਐ͔Βܭࢉ͞ΕͨηϨΫλͰ͋Δɻ
5XP%JNFOUJPOBM$POUFYUT• ίϯςΩετΛ֦ு͢Δ͜ͱͰɺηϨΫλΛ֨ೲ͢Δίετ૿Ճ͢Δ͕ɺਖ਼֬ʹλʔήοτͷ֬Λ༻͢Δ͜ͱ͕Ͱ͖Δ• ίϯςΩετͷՃํ๏ͱͯ͠ɺҎԼ͕ڍ͛ΒΕΔ– ̎ͷྦྷʹΑΓηϨΫλϕΫτϧΛऔಘ͢Δ– όέοτ͕খ͘͞ͳΔΑ͏ʹରͷఈΛมߋ͢Δ• ্ͨͩ͠ه྆ํڞϒϩοΫͷ࠷େʹΑܾͬͯ·ͬͯ͠·͏ͷͰɺΤϯτϩϐʔίʔσΟϯάͷརΛ׆͔ͤͳ͍
5XP%JNFOUJPOBM$POUFYUT• ࣍ݩͷηϨΫλΛར༻͍ͨ͠ɻ– ୈҰ࣍ݩ͕ϒϩοΫͷ࠷େɺୈೋ࣍ݩ͕ϒϩοΫͷ࠷খͱ͢Δɻ• ͜ͷ্ݶΑΓେ͖͍ɺԼݶΑΓখ͍͞ྫ֎ͱͯ͠ѻ͏͜ͱ͕Ͱ͖Δɻ– ϒϩοΫͷதԝΛར༻͢Δ͜ͱͰ͖Δɻ
5XP%JNFOUJPOBM$POUFYUT• ࣍ݩ͔Βೋ࣍ݩͷίϯςΩετʹΓସ͑ͨ߹ͷ༷ࢠɻ
3FEVDJOHUIF'SBNFTJ[F• 1BDLFE"/4Ͱɺσίʔυʹ༻͞ΕΔςʔϒϧͷҡ࣋ίετ͕͔͔Δͱ͍͏σϝϦοτ͕͋Δɻ• "/4ΛγϯϘϧͷਐͷൣғͰ༻͠ɺ"/4ετϦʔϜͱิॿϏοτετϦʔϜΛฒྻʹॲཧ͢Δ͜ͱͰΛ࠶ߏ͢Δͱ͍͏खஈ͕͋Δɻ• ͜ͷ߹ՃͷΞϥΠϝϯτʹΑΔίετ͕͔͔Δ͜ͷͨΊɺ1'030QU1'03Ͱར༻͞ΕΔྫ֎Λఆٛͯ͠γϯϘϧͱ"/4λʔήοτͷؒͷϚοϐϯάΛఆٛ͢Δɻ• ͜ΕʹΑΓѹॖͷ༗ޮੑΛߴΊΔ͜ͱ͕Ͱ͖Δɻ
1BDLFE"/4ͷσίʔυ
$POUFYU.FSHJOH• ίϯςΩετΛՃ͢ΔͱɺηϨΫλ͕ՃϏοτΛඞཁͱ͢ΔͨΊɺίϯςΩετ͕ଟ͗͢Δͱޮ͕ѱ͘ͳΔՄೳੑ͕͋ΔɻίϯςΩετ͕ͷྦྷͰ͋Δ͜ͱΛอূ͢Δ͖ɻ• ίϯςΩετͷϖΞΛϚʔδ͢Δ͜ͱͰɺ୯ҰͷίϯςΩετʹஔ͖͑ΔҊɻγϯϘϧT͕ίϯςΩετB্ͰOB Tճൃੜ͢Δͱ͢ΔͱɺτʔλϧͷPDDVSSFODFΤϯτϩϐʔίʔσΟϯάՄೳͰɺͦͷίϯςΩετͷτʔλϧίετ
&YQFSJNFOUT&YQFSJNFOUBM$POUFYU• ࣍ݩͷηϨΫλΛར༻ͨ͠ࡍͷOFXTHBQͷ֬ͷਤ
γϯϘϧग़ݱසʹجͮ͘ѹॖ༗ޮੑ
.FBTVSFE*NQSPWFNFOU
࣮ߦ࣌ؒɺϝϞϦ༻ྔɺΫΤϦεϧʔϓοτ• *OUFSQΑΓΫΤϦϨεϙϯε͕ૣ͘ɺѹॖ࠷ྑ͍ͱ͍͏݁Ռ͕ಘΒΕͨɻ
$0/$-64*0/4"/%'6563&803,˙$PODMVTJPOT• 1BDLFE"/4ϝΧχζϜʹΑΓɺͭͷҟͳΔख๏Λվળͨ͠ɻ– ࣍ݩίϯςΩετ– ࠷্ҐόΠτϚοϐϯά– ίϯςΩετϚʔδϯά• લͷ*OUFSQͷϕϯνϚʔΫʹউͬͨɻ• 1BDLFE"/4ͷ࣮0QU1'03&'PQUʹൺͯΫΤϦεϐʔυʹ͓͍ͯྼ͍ͬͯΔ͕ɺ"/4ʹ·ͩվળͷ༨͕͋Δɻ• ͢Ͱʹ΄ͱΜͲͷQPTUJOHT͕খ͍͞αΠζʹූ߸ԽͰ͖Δ͜ͱΛ֬ೝͨ͠ɻ˙'VUVSFXPSL• ෳͷঢ়ଶΛฒߦͯ͠෮߸͢ΔͨΊʹ֦ு͞Εͨ෮߸Խςʔϒϧ͓Αͼ4*.%ػߏΛ༻͢Δͱɺ෮߸ԽΛഒҎ্ʹ૿Ճͤ͞ΔՄೳੑ͕͋Δɻ• ՄมϒϩοΫͷ༻• ΫΤϦͷ౷ܭใΛར༻ͯ͠ҟͳΔѹॖϝΧχζϜΛมߋ͢Δ