Upgrade to Pro — share decks privately, control downloads, hide ads and more …

異常検知ライブラリを作った話

tsurubee
November 18, 2017

 異常検知ライブラリを作った話

ライブラリの特徴:特異スペクトル変換による変化点検知

tsurubee

November 18, 2017
Tweet

More Decks by tsurubee

Other Decks in Technology

Transcript

  1. ҟৗݕ஌ϥΠϒϥϦ
    Λ࡞ͬͨ࿩

    ۝भ %BUB4DJFOUJTU.FFU6Q

    View Slide

  2. ࣗݾ঺հ
    ௽ా തจ
    ʢ!UTVSVCFFʣ
    ΤϯδχΞྺɿ
    ೥ͪΐ͍
    େֶͷઐ߈͸Խֶ
    લ৬͸ফ๷࢜
    झຯ͸ےτϨ
    ʢಛʹϕϯνϓϨεʣ

    View Slide

  3. ࠓճͷ಺༰͸ɾɾ
    ೥൒લʹθϩ͔ΒϓϩάϥϛϯάΛ࢝Ίͨࢲ͕ɺ
    ϊϦͱؾ߹͍Ͱҟৗݕ஌ϥΠϒϥϦΛ࡞ͬͨ࿩
    ɾҟৗݕ஌ʹ͍ͭͯ
    ɾϥΠϒϥϦΛ࡞ͬͨഎܠ
    ɾ࣮૷ΞϧΰϦζϜ
    ɾϦΞϧλΠϜҟৗ؂ࢹͷσϞ
    ͳͲͳͲɾɾ

    View Slide

  4. ҟৗݕ஌ͱ͸ʁ

    View Slide

  5. େଟ਺ͷσʔλͱ͸ৼΔ෣͍͕
    ҟͳΔσʔλΛݕग़͢Δٕज़
    σʔλϚΠχϯά
    نଇੑ ҟৗ
    σʔλͷࢁ

    View Slide

  6. ҟৗݕ஌ͷԠ༻ྫ
    ίϯϐϡʔλ΢Πϧε΍%PT߈ܸͷૣظൃݟ
    ηΩϡϦςΟ෼໺
    ނো༧ஹݕ஌
    ػց෼໺
    ྲྀߦͷݕ஌ɾ৽τϐοΫͷൃݟɾ
    ϢʔβߦಈͷมԽݕ஌
    ϚʔέςΟϯά෼໺

    View Slide

  7. ҟৗσʔλྫ ʙͦͷ̍

    View Slide

  8. ҟৗσʔλྫ ʙͦͷ̍
    ҟৗʂ

    View Slide

  9. ҟৗʂ
    if value > 120:
    print('ERROR!')
    JGจͰݕ஌Ͱ͖ͦ͏ʂ
    ҟৗσʔλྫ ʙͦͷ̍

    View Slide

  10. ҟৗσʔλྫ ʙͦͷ̎

    View Slide

  11. Կ͔ҟৗ͕ى͖ͯΔ
    ҟৗʹ΋͍Ζ͍Ζ͋Δ
    ҟৗσʔλྫ ʙͦͷ̎

    View Slide

  12. ҟৗݕ஌ͷ෼ྨ
    ֎Ε஋ݕ஌ มԽ఺ݕ஌
    ҟৗݕ஌
    ٸܹͳৼΔ෣͍ͷมԽΛݕ஌
    ࣌ܥྻϞσϧ
    ଞͱ͸େ͖͘ҟͳΔ஋Λݕ஌
    ಠཱϞσϧ

    View Slide

  13. ҟৗݕ஌ͷ෼ྨ
    ֎Ε஋ݕ஌ มԽ఺ݕ஌
    ҟৗݕ஌
    ࠓճ͸ίονͷ࿩ʂ
    ٸܹͳৼΔ෣͍ͷมԽΛݕ஌
    ࣌ܥྻϞσϧ
    ଞͱ͸େ͖͘ҟͳΔ஋Λݕ஌
    ಠཱϞσϧ

    View Slide

  14. ҟৗݕ஌ϥΠϒϥϦ
    ʹ͍ͭͯ

    View Slide

  15. ͳͥ࡞͔ͬͨ
    ͍ͭͷ೔͔ɺٕज़Λ࢖͍͜ͳ͢ଆͰ͸ͳ͘
    ࡞ΔଆʹͳΓ͍ͨ
    ϚΠϯυతഎܠ
    σʔλαΠΤϯεతഎܠ
    Ϗδωεͷݱ৔ʹᷓΕΔ࣌ܥྻσʔλ
    ʢྫ͑͹ɺച্σʔλɾΞΫηεϩάͳͲʣ
    ͷมԽͷஹީΛ͍ͪૣ͘ݕ஌͍ͨ͠

    View Slide

  16. ࡞ͬͨ΋ͷ
    ಛ௃ʢڧΈʣ͸Կʁ
    #BOQFJʢ൪ฌʣ
    ɿ1ZUIPO੡ҟৗݕ஌ύοέʔδ
    "ಛҟεϖΫτϧม׵ʹΑΔ࣌ܥྻσʔλͷมԽ఺ݕ஌
    ಛఆͷ֬཰෼෍ΛԾఆ͍ͯ͠ͳ͍ͨΊɺ
    ᶃଟ༷ͳมԽʹؤڧʹରԠͰ͖ɺ
    ᶄύϥϝʔλνϡʔχϯά͕༰қͳ
    มԽ఺ݕ஌͕Մೳ

    View Slide

  17. ಛҟεϖΫτϧม׵
    ࣌ࠁ
    ཤྺߦྻ"
    ςετߦྻ#
    ओ෦෼ۭؒ ",''', ( ",''', (
    มԽ౓

    શମΠϝʔδ
    ʮೖ໳ػցֶशʹΑΔҟৗݕ஌
    ʕ3ʹΑΔ࣮ફΨΠυʯͷਤ
    Λࢀߟʹ࡞੒
    աڈଆͱݱࡏଆͷߦྻಉ࢜ͷ৯͍ҧ͍ͷେ͖͞ΛఆྔԽ

    View Slide

  18. มԽ౓ͷఆٛ
    ಛҟ஋෼ղʹΑΔಛ௃ύλʔϯͷநग़
    9 6 7

    ಛҟ஋্ҐͷࠨಛҟϕΫτϧΛ
    NຊऔΓग़͢
    աڈଆ
    ݱࡏଆ
    ( ͷ࠷େಛҟ஋)
    4
    ֊਺SΛ΋ͭNºOߦྻ9
    N
    O S S O
    S
    มԽ౓

    View Slide

  19. #BOQFJͷ࢖͍ํ
    ҟৗݕ஌
    ϋΠύʔύϥϝʔλʢXʣɿεϥΠυ૭ͷαΠζ
    ΠϯϓοτʢEBUBʣϦετܕ΍/VN1Z BSSBZͳͲͷσʔλ഑ྻ
    Ξ΢τϓοτʢSFTVMUTʣΠϯϓοτͱಉ͡αΠζͷ/VN1Z BSSBZ
    git clone https://github.com/tsurubee/banpei.git
    cd banpei
    pip install .
    Πϯετʔϧ
    import banpei
    model = banpei.SST(w=50)
    results = model.detect(data)
    ˞ͨͬͨ̏ߦʂ

    View Slide

  20. #BOQFJʹΑΔप೾਺ҟৗݕ஌

    View Slide

  21. #PLFIͱͷ࿈ܞʹΑΔ
    ϦΞϧλΠϜҟৗ؂ࢹ
    ΁ͷ௅ઓ

    View Slide

  22. #PLFIͱ͸ʁ
    IUUQTCPLFIQZEBUBPSHFOMBUFTU
    ɾ*OUFSBDUJWFWJTVBMJ[FUJPO
    ɾ/PWFMHSBQIJDT
    ɾ4USFBNJOH EZOBNJD MBSHFEBUB
    ɾ/POFFEUPXSJUF+BWBTDSJQU
    ର࿩ܕՄࢹԽ؀ڥΛఏڙ͢Δ1ZUIPOϥΠϒϥϦ
    IUUQTXXXTMJEFTIBSFOFUDPOUJOVVNJPIBTTMFGSFFEBUBTDJFODFBQQTXJUICPLFIXFCJOBS

    View Slide

  23. σ Ϟ

    View Slide

  24. • ʮಛҟεϖΫτϧม׵ʹΑΔप೾਺ҟৗݕ஌ʯ
    IUUQTZPVUVCFF'7/,"7U/1
    • ʮಛҟεϖΫτϧม׵ʹΑΔ܏͖ͷมԽ఺ݕ஌ʯ
    [email protected]"I9L
    :PV5VCFʹσϞಈըΛެ։͍ͯ͠·͢ʂ

    View Slide

  25. (JU)VCʹެ։͍ͯ͠·͢ʂ
    IUUQTHJUIVCDPNUTVSVCFFCBOQFJ

    View Slide

  26. ϒϩάॻ͍͍ͯ·͢ʂ
    IUUQTHJUIVCDPNUTVSVCFFCBOQFJ

    View Slide

  27. ࠓޙͷల๬
    l ಛҟεϖΫτϧม׵ͷߴ଎ԽʹΑΔߋͳΔ
    ϦΞϧλΠϜੑͷ௥ٻ
    l ҟৗ௨஌ػೳͷ࣮૷ʹΑΔ࣮༻ੑͷ޲্
    ͋ͱɺ৽ͨͳΞϧΰϦζϜ΋࣮૷͍ͨ͠ɾɾ

    View Slide

  28. 1ZUIPOίϛϡχςΟ
    ʹ͍ͭͯ

    View Slide

  29. 1Z'VLVPLB΍ͬͯ·͢ʂ
    ݄ʹ-5ΠϕϯτΛ։࠵༧ఆͰ͢ʂ

    View Slide

  30. 1Z$PO ,ZVTIV΍Γ·͢ʂ
    ελοϑืूதʂ
    ڵຯ͕͋Δํ͸࠙਌ձͰ͓੠͔͚͍ͩ͘͞ʂ
    IUUQLZVTIVQZDPOKQ

    View Slide

  31. ͝ਗ਼ௌ͋Γ͕ͱ͏
    ͍͟͝·ͨ͠ʂ

    View Slide