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

沖縄のPython・データ分析コミュニティの紹介と Tesseract-OCR ver.4による文字認識・学習手法(沖縄版)

yasubei
May 18, 2019

沖縄のPython・データ分析コミュニティの紹介と Tesseract-OCR ver.4による文字認識・学習手法(沖縄版)

・沖縄のPython・データ分析コミュニティの紹介
・まどか文字の文字認識TRY

yasubei

May 18, 2019
Tweet

More Decks by yasubei

Other Decks in Science

Transcript

  1. ΍͢΂͐ ླ໦߁ݩ

    1ZUIPO#FHJOOFSTԭೄΦʔΨφΠβʔ᷂)VHLVO͓ੈ࿩φΠβʔ
    1Z$PO,ZVTIV
    0,*/"8"
    IUUQTIVHLVODPN
    ԭೄͷ1ZUIPOɾσʔλ෼ੳίϛϡχςΟͷ঺հͱ
    5FTTFSBDU0$3WFSʹΑΔจࣈೝࣝɾֶशख๏

    View Slide



  2. ࣗݾ঺հ
    ླ໦߁ݩ :BTVIBSV4V[VLJ

    1ZUIPO#FHJOOFSTԭೄΦʔΨφΠβʔ)VHLVO͓ੈ࿩φΠβʔ
    ͪΎΒσʔλגࣜձࣾσʔλΞφϦετ)VHLVO%BUB୅දऔక໾
    1Z$PO۝भJOԭೄ࣮ߦҕһ1Z%BUB0LJOBXBΦʔΨφΠβʔ
    1$΋ങ͑ͳ͍฼ࢠՈఉͰҭͪɺಠֶͰ৽ฉ഑ୡ͠ͳ͕ΒֶඅΛશֹࣗݾෛ୲ͯ͠ϓϩά
    ϥϛϯάΛֶͼɺ෕ͷނڷͰ͋Δ๺ւಓͰήʔϜۀք΁ब৬ɻ
    ΦϦδφϧ੡඼ͷ։ൃʹ௕೥ܞΘΓגࣜձࣾ)VHLVOΛىۀɻ໊ࣾ͸ʮҭΉʯ͔Β໋໊ɻ
    ͦͷޙ฼ͷނڷͰ͋Δԭೄ΁Ҡॅ͠ɺ*P5ͷ։ൃʹܞΘΔɻ
    ؔ࿈ͯ͠σʔλαΠΤϯεʹڵຯΛ࣋ͪ࢝Ίɺ1Z%BUB0LJOBXB΁௨͍ͳ͕Β
    1ZUIPO#FHJOOFSTԭೄΛൃ଍ɻίϛϡχςΟͰͷֶͼʹώϯτΛಘֶͯੜͱͷίϥ
    ϘϨʔγϣϯࣄۀΛ্ཱͪ͛ɺݱࡏͰ͸໊΄ͲͷֶੜΤϯδχΞͱऔҾઌىۀ͞·
    ͱͷίϥϘϨʔγϣϯʹऔΓ૊Ήɻ
    ࠷ۙ͸ͪΎΒσʔλגࣜձࣾͰσʔλΞφϦετͱͯ͠ಇ͖ͭͭɺגࣜձࣾ)VHLVO
    Ͱ͸ҰาҾཱ͍ͨ৔͔Β͓ੈ࿩φΠβʔ ໾৬తʹ͸୅දऔక໾ձ௕
    ͱͯ͠׆ಈ͓ͯ͠
    Γ·͢ɻ
    झຯ͸ՇɺήʔϜɺษڧձɻ
    ZBTVCFJUXJ
    ZBTVIBSVTV[VLJ
    IUUQTIVHLVODPN
    ؾܰʹϑΥϩʔɺ༑ୡਃ੥
    ͍ͯͩ͘͠͞ʙ ʆŋТŋ
    ʎ

    View Slide



  3. ࣗݾ঺հ
    ླ໦߁ݩ :BTVIBSV4V[VLJ

    1ZUIPO#FHJOOFSTԭೄΦʔΨφΠβʔ)VHLVO͓ੈ࿩φΠβʔ
    ͪΎΒσʔλגࣜձࣾσʔλΞφϦετ)VHLVO%BUB୅දऔక໾
    1Z$PO۝भJOԭೄ࣮ߦҕһ1Z%BUB0LJOBXBΦʔΨφΠβʔ
    1$΋ങ͑ͳ͍฼ࢠՈఉͰҭͪɺಠֶͰ৽ฉ഑ୡ͠ͳ͕ΒֶඅΛશֹࣗݾෛ୲ͯ͠ϓϩά
    ϥϛϯάΛֶͼɺ෕ͷނڷͰ͋Δ๺ւಓͰήʔϜۀք΁ब৬ɻ
    ΦϦδφϧ੡඼ͷ։ൃʹ௕೥ܞΘΓגࣜձࣾ)VHLVOΛىۀɻ໊ࣾ͸ʮҭΉʯ͔Β໋໊ɻ
    ͦͷޙ฼ͷނڷͰ͋Δԭೄ΁Ҡॅ͠ɺ*P5ͷ։ൃʹܞΘΔɻ
    ؔ࿈ͯ͠σʔλαΠΤϯεʹڵຯΛ࣋ͪ࢝Ίɺ1Z%BUB0LJOBXB΁௨͍ͳ͕Β
    1ZUIPO#FHJOOFSTԭೄΛൃ଍ɻίϛϡχςΟͰͷֶͼʹώϯτΛಘֶͯੜͱͷίϥ
    ϘϨʔγϣϯࣄۀΛ্ཱͪ͛ɺݱࡏͰ͸໊΄ͲͷֶੜΤϯδχΞͱऔҾઌىۀ͞·
    ͱͷίϥϘϨʔγϣϯʹऔΓ૊Ήɻ
    ࠷ۙ͸ͪΎΒσʔλגࣜձࣾͰσʔλΞφϦετͱͯ͠ಇ͖ͭͭɺגࣜձࣾ)VHLVO
    Ͱ͸ҰาҾཱ͍ͨ৔͔Β͓ੈ࿩φΠβʔ ໾৬తʹ͸୅දऔక໾ձ௕
    ͱͯ͠׆ಈ͓ͯ͠
    Γ·͢ɻ
    झຯ͸ՇɺήʔϜɺษڧձɻ
    ZBTVCFJUXJ
    ZBTVIBSVTV[VLJ
    IUUQTIVHLVODPN
    ؾܰʹϑΥϩʔɺ༑ୡਃ੥
    ͍ͯͩ͘͠͞ʙ ʆŋТŋ
    ʎ
    ௕͍ʂ

    View Slide



  4. ͬ͘͟Γ͍͏ͱ
    ͜͏͍͏ײ͡ͷਓͰ͢
    ๺ւಓͰ೥
    ήʔϜ։ൃ
    ԭೄͰ೥
    *P5ɾ෼ੳ

    View Slide



  5. ͪͳΈʹઌ೔
    ϙϓςʹύΫΒΕ·ͨ͠ ޫӫ

    View Slide



  6. ԭೄͷ1ZUIPOɾσʔλ෼ੳίϛϡχςΟͷ঺հ
    5FTTFSBDU0$3WFSʹΑΔจࣈೝࣝɾֶशख๏
    ΍Γ͍ͨ͜ͱ
    ؀ڥͷηοτΞοϓʙͱΓ͋͑ͣจࣈೝࣝ·Ͱ
    ਪ࿦ จࣈೝࣝ
    Λ͍Ζ͍Ζࢼ͢
    -45.ʹ͍ͭͯ
    ֶशͷํ๏ εΫϥον

    ֶशͷํ๏ 'JOF5VOJOH

    Agenda

    View Slide



  7. ԭೄͷ1ZUIPOɾσʔλ෼ੳίϛϡχςΟͷ঺հ
    5FTTFSBDU0$3WFSʹΑΔจࣈೝࣝɾֶशख๏
    ΍Γ͍ͨ͜ͱ
    ؀ڥͷηοτΞοϓʙͱΓ͋͑ͣจࣈೝࣝ·Ͱ
    ਪ࿦ จࣈೝࣝ
    Λ͍Ζ͍Ζࢼ͢
    -45.ʹ͍ͭͯ
    ֶशͷํ๏ εΫϥον

    ֶशͷํ๏ 'JOF5VOJOH

    Agenda

    View Slide



  8. ूܭɾ෼ੳ
    ػցֶशɾਓ޻஌ೳ
    ݴޠ
    1ZUIPO͔3
    ˞5*0#& "QSJM
    ௐ΂
    3BOL
    1SPHSBNNJOH
    -BOHVBHF
    3BUJOHT
    1ZUIPO
    3
    Ϋϥ΢υར༻ "1*։ൃ
    ԭೄͷ1ZUIPOɾσʔλ෼ੳίϛϡχςΟ
    ର৅ͱͳΔษڧձ
    ҎԼΛର৅ʹ͍ͯ͠·͢ɻ
    ˞ΤϯδχΞֶ͕΂Δ΋ͷΛ
    ର৅ʹ͍ͯͯ͠·͢ɻ

    View Slide



  9. ԭೄͷ1ZUIPOɾػցֶशίϛϡχςΟ
    ษڧձ͝ͱͷࢀՃऀ਺ͷਪҠ
    1Z%BUB0LJOBXB
    ։࢝
    1Z%BUB0LJOBXB
    ։࢝
    1ZUIPO#FHJOOFSTԭೄ
    ։࢝
    1ZUIPO
    #FHJOOFSTԭೄ
    ։࢝
    ͪΎΒσʔλىۀ
    ͪΎΒσʔλ
    ىۀ
    খن໛ษڧձ૿
    খن໛ษڧձ
    ૿

    View Slide



  10. ԭೄͷ1ZUIPOɾσʔλ෼ੳίϛϡχςΟ
    ։࠵ճ਺ˍࢀՃऀ਺ͷूܭ
    ूܭ݁Ռ
    df_com.groupby("community_name").agg({'times': max, 'attendance': [np.sum, max, min, np.mean, np.median,np.std]})
    ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ.sort_values(('attendance','sum'), ascending=False)
    1ZUIPOίʔυ
    ߹ܭࢀՃऀ਺
    ଟ͍
    ։࠵ճ਺΋ଟ͍ʣ
    ฏۉࢀՃऀ਺
    ଟ͍
    ։࠵ճ਺গͳ͍ʣ
    දʹͯ͠Έ·ͨ͠
    ਺ࣈ͔ΒಡΈऔΔԭೄ1ZUIPOίϛϡχςΟ

    தԝ஋ಉ͡
    ෼ࢄҟͳΔ

    View Slide



  11. ԭೄͷ1ZUIPOɾσʔλ෼ੳίϛϡχςΟ
    ษڧձͷ։࠵ճ਺ͷਪҠʢ݄ฏۉʣ
    ษڧձͷ਺ʗ݄
    ɾ೥͸݄ฏۉ̍ճʢ͜Ε΋εΰΠ͜ͱͰ͕͢ʣ
    ɾ೥ʑ૿͑ͯ೥ʹ͸݄ฏۉճʹͳ͍ͬͯΔ
    1Z%BUB0LJOBXB
    ։࢝ˠ
    1ZUIPO#FHJOOFSTԭೄ
    ։࢝ˠ
    ͪΎΒσʔλ
    ىۀˠ

    View Slide



  12. ԭೄͷ1ZUIPOɾσʔλ෼ੳίϛϡχςΟ
    ษڧձ΁ͷࢀՃऀ਺ͷਪҠʢ݄ฏۉʣ
    ษڧձ΁ͷࢀՃऀ਺ʗ݄
    ɾ೥͸݄ฏۉ໊̍
    ɾ೥ʑ૿͑ͯ೥ʹ͸݄ฏۉ໊௒ʹ
    1Z%BUB0LJOBXB
    ։࢝ˠ
    1ZUIPO#FHJOOFSTԭೄ
    ։࢝ˠ
    ͪΎΒσʔλ
    ىۀˠ

    View Slide



  13. ԭೄͷ1ZUIPOɾσʔλ෼ੳίϛϡχςΟ
    ίϛϡχςΟ਺ͷਪҠ
    ίϛϡχςΟ਺
    ɾ೥͸̍ͭ
    ɾ೥ʑ૿͑ͯ೥ʹ͸ͭʹʢ͓ͦΒ݅͘ʹͳΓ·͢ʣ
    1Z%BUB0LJOBXB
    ։࢝ˠ
    1ZUIPO#FHJOOFSTԭೄ
    ։࢝ˠ
    ͪΎΒσʔλ
    ىۀˠ

    View Slide



  14. ԭೄͷ1ZUIPOɾσʔλ෼ੳίϛϡχςΟ
    ίϛϡχςΟ਺ͷਪҠ
    ίϛϡχςΟ਺
    ɾ೥͸̍ͭ
    ɾ೥ʑ૿͑ͯ೥ʹ͸ͭʹʢ͓ͦΒ݅͘ʹͳΓ·͢ʣ
    ૬ؔ܎਺Λ
    ग़ͯ͠Έ·͠ΐ͏

    View Slide



  15. ૬ؔ܎਺ͱ͸ʁ
    ૬ؔ܎਺ͱ͸ɺ̎૊ͷσʔλ͕͋Δͱ͖ʹؔ܎ͷڧ͞Λද͢܎
    ਺ͷ͜ͱͰ͢ɻʙͷؒͷ஋ΛऔΓ·͢ɻࣜ͸͜͏ˣ
    |r| = 0.91.0
    |r| = 0.70.9
    |r| = 0.40.7
    |r| = 0.20.4
    |r| = 0.00.2







    ڧ͍ෛͷ૬ؔ
    ʹ͍ۙ

    ૬͕ؔͳ͍
    ʹ͍ۙ

    ڧ͍ਖ਼ͷ૬ؔ
    ʹ͍ۙ
    ૬ؔ܎਺ͷ஋ͱ૬ؔͷڧ͞͸
    ҰൠతʹҎԼͷΑ͏ʹఆٛ͞Ε͍ͯ·͢
    ! =
    #
    $
    ∑ &'()* +'(),
    $
    '-#
    #
    $
    ∑ &'
    ()*
    .
    $
    '-#
    #
    $
    ∑ +'
    (),
    .
    $
    '-#
    =
    & +

    0 1

    View Slide



  16. |r| = 0.91.0
    |r| = 0.70.9
    |r| = 0.40.7
    |r| = 0.20.4
    |r| = 0.00.2







    ԭೄͷ1ZUIPOɾσʔλ෼ੳίϛϡχςΟ
    ίϛϡχςΟ਺ͱ֤਺஋ͱͷ૬ؔ܎਺
    ΄΅׬શͳ
    ૬͕ؔ͋Δ
    ɾษڧձͷ਺ͱࢀՃऀ਺ͱίϛϡχςΟ਺ʹ͸΄΅׬શͳ૬͕ؔ͋Δ
    ɾίϛϡχςΟ΍߹ಉษڧձ͕૿͑Δͱ1ZUIPOར༻ऀ͕૿͑ͦ͏

    View Slide



  17. ԭೄͷ1ZUIPOɾσʔλ෼ੳίϛϡχςΟ
    1Z%BUB0LJOBXB 1ZUIPO#FHJOOFSTԭೄ 5'6(0LJOBXB
    0LJOBXB(16$PNNVOJUZ ԭೄ
    "*ؔ࿈࿦จಡΈձ ͪΎΒBJ ͦͷଞ

    ΋͘΋͘ձ
    LTࡇΓ
    ΞϧΰϦζϜ࣮૷ձ
    Ϗδωεσʔλ෼ੳೖ໳
    ($16(0LJOBXB 1Z-BEJFT0LJOBXB #FHJOOFST-BC

    View Slide



  18. 1Z%BUB0LJOBXBY1ZUIPO#FHJOOFSTԭೄ

    ླྀٿେֶ
    ߹ಉษڧձ2019
    SysMLΤϯδχΞ
    ػցֶशϞσϧΛαʔϏεʹ૊ΈࠐΉΠϯϑϥ݉ϛυϧ΢ΣΞΤϯδχΞ
    ͘ʔΉ ͞Μ
    େ޷͖ͩͬͨήʔϜΛ࡞Γ͍ͨͱࢥ͍ɺ͓஡ͷਫঁࢠେֶͷ৘ใՊֶՊʹਐֶɻֶੜ࣌୅͸ڝٕϓϩάϥϛϯά΍*46$0/Λ͸͡Ί
    ༷ʑͳϓϩάϥϛϯάίϯςετʹ͸·Δɻम࢜ΛऔಘޙήʔϜϓϩάϥϚʔͱͯ͠ब৬͢Δ͕ɺήʔϜ͸࡞Δ΋ͷͰ͸ͳ͘༡Ϳ΋ͷ
    ͩͬͨͱؾ͖ͮɺσʔλΞφϦετͱͯ͠σʔλ෼ੳͷੈք΁ඈͼࠐΉɻ
    ݱࡏ͸ػցֶशϞσϧΛαʔϏεʹ૊ΈࠐΉΠϯϑϥ݉ϛυϧ΢ΣΞΤϯδχΞ 4ZT.-ΤϯδχΞ
    Λ͍ͯ͠Δɻ
    Retty Inc.
    Software Endineer; Web։ൃ/DWH/ػցֶश1+
    ஛໺ फ़ี (Shunsuke TAKENO)
    ࣾձਓྺ೥໨ͷUP$αʔϏεͰ4PGUXBSF&OHJOFFS΍ͬͯ·͢ʂ
    ੿͍ܦྺͳ͕Β΋ɺେֶࣾձਓͰͷܦݧΛ௨ͨ͠ΩϟϦΞ؍ͱσʔλͱͷ෇͖߹͍ํʹ͍͓ͭͯ࿩Ͱ͖Ε͹ͱࢥ͍·͢ʂ

    View Slide



  19. ԭೄͷ1ZUIPOɾσʔλ෼ੳίϛϡχςΟ
    ·ͱΊ
    ίϛϡχςΟ਺ɺษڧճ਺ɺࢀՃऀ਺͸͍ͣΕ΋೥ʑ૿Ճ͍ͯ͠Δɻ
    ɾԭೄͷ1ZUIPOɾσʔλ෼ੳͷίϛϡχςΟ
    ɾ࠷ۙͷ܏޲
    ࠷ۙ͸ΑΓઐ໳తͳখن໛ษڧձ͕૿͑ͭͭ͋Δɻ
    ɾͲ͏ͯ͠ԭೄͬͯ੝Μͳͷʁ
    ίΞʹͳΔϓϨΠϠʔʢσʔλαΠΤϯςΟετ΍ىۀՈʣʹܙ·Εͨɻ
    ຊ౰ʹ͋Γ͕ͱ͏͍͟͝·͢ɻ
    ͦ͏͍ͬͨํʑʹΑͬͯίϛϡχςΟ਺͕૿͑Δͱ1ZUIPOར༻ऀ͸૿͑ͦ͏ɻ

    View Slide



  20. ԭೄͷ1ZUIPOɾσʔλ෼ੳίϛϡχςΟͷ঺հ
    5FTTFSBDU0$3WFSʹΑΔจࣈೝࣝɾֶशख๏
    5FTTFSBDU0$3ͱ͸ʁ
    ΍Γ͍ͨ͜ͱ
    ਪ࿦ จࣈೝࣝ
    Λ͍Ζ͍Ζࢼ͢
    -45.ʹ͍ͭͯ
    ֶशͷํ๏ εΫϥον

    ֶशͷํ๏ 'JOF5VOJOH

    Agenda

    View Slide



  21. 5FTTFSBDU0$3WFSʹΑΔจࣈೝࣝɾֶशख๏
    5FTTFSBDU0$3ͱ͸ʁ
    Θ
    ͔
    Β
    Μ

    View Slide



  22. UFTTFSBDUPDSͱ͸ʁ
    ରԠ04
    Ҿ༻ݩ 8JLJIUUQTFOXJLJQFEJBPSHXJLJ5FTTFSBDU@ TPGUXBSF

    View Slide



  23. UFTTFSBDUPDSͱ͸ʁ
    ରԠݴޠ
    Ҿ༻ݩ 8JLJIUUQTFOXJLJQFEJBPSHXJLJ5FTTFSBDU@ TPGUXBSF

    ݴޠ

    View Slide



  24. UFTTFSBDUPDSͱ͸ʁ
    ରԠϓϩάϥϛϯάݴޠ
    Ҿ༻ݩ 8JLJIUUQTFOXJLJQFEJBPSHXJLJ5FTTFSBDU@ TPGUXBSF

    View Slide



  25. UFTTFSBDUPDSͱ͸ʁ
    ϥΠηϯε
    Ҿ༻ݩ 8JLJIUUQTFOXJLJQFEJBPSHXJLJ5FTTFSBDU@ TPGUXBSF

    View Slide



  26. จࣈΤϥʔϨʔτˋ
    ೔ຊޠ

    Ҿ༻ݩ (JUIVCIUUQTHJUIVCDPNUFTTFSBDUPDSEPDTCMPCNBTUFSEBT@UVUPSJBM#VJMEJOHB.VMUJ-JOHVBM0$3&OHJOFQEG
    UFTTFSBDUPDSͱ͸ʁ
    ೝࣝྗɾੑೳ

    View Slide



  27. ࢀߟαΠτ 1ZUIPOͱ5FTTFSBDU0$3ͰจࣈೝࣝIUUQTRJJUBDPNIFOKJHBOBJJUFNTBFGCCB
    %FFQ-FBSOJOHͱ͸ʁ
    ؆୯ʹݴ͏ͱਓؒͷ೴ͷߏ଄ʢχϡʔϥϧωοτϫʔΫʣΛ໛฿ͨ͠ػցֶ
    शख๏ͷҰͭͰ͢ɻ
    ໛฿
    UFTTFSBDUPDSͱ͸ʁ
    %FFQ-FBSOJOH -45.
    Λ࠾༻

    View Slide



  28. Ҿ༻ -45. -POHTIPSUUFSNNFNPSZ
    ֓ཁIUUQTXXXTMJEFTIBSFOFU,FOKJ6SBJLFOKJVSBJMTUN GCDMJE*X"3KIL;UJ6WK%SC1G-*Y26$HKXF(2ZN#3I*X[27J.I%PW8QD.OP
    -FBSOJOHUP'PSHFU$POUJOVBM1SFEJDUJPOXJUI-45.IUUQTQEGTTFNBOUJDTDIPMBSPSHFGCFCGDDBFBGDBDCDBFCQEG
    Θ͔Δ-45.ʙ࠷ۙͷಈ޲ͱڞʹIUUQTRJJUBDPNU@4JHOVMMJUFNTCCFCGEC
    // χϡʔϥϧωοτϫʔΫ

    3// ࣌ܥྻσʔλʹର͢Δ//ͷϞσϧͷҰछ

    -45. 3//ͷ֦ுϞσϧ

    ֦ு-45. ๨٫ήʔτɾυϩοϓΞ΢τ

    UFTTFSBDUPDSͱ͸ʁ
    -45.ʹ͍ͭͯ
    -45. -POHTIPSUUFSNNFNPSZ
    ͸ɺ3// 3FDVSSFOU/FVSBM/FUXPSL
    ͷ
    ֦ுͱͯ͠೥ʹొ৔ͨ͠ɺ࣌ܥྻσʔλ TFRVFOUJBMEBUB
    ʹର͢ΔϞσϧɺ
    ͋Δ͍͸ߏ଄ BSDIJUFDUVSF
    ͷछͰ͢ɻ
    ͦͷ໊͸ɺ-POHUFSNNFNPSZ ௕ظهԱ
    ͱ4IPSUUFSNNFNPSZ ୹ظهԱ
    ͱ
    ͍͏ਆܦՊֶʹ͓͚Δ༻ޠ͔ΒऔΒΕ͍ͯ·͢ɻ
    -45.͸3//ͷதؒ૚ͷϢχοτΛ-45.CMPDLͱݺ͹ΕΔϝϞϦͱͭͷήʔτ
    Λ࣋ͭϒϩοΫʹஔ͖׵͑Δ͜ͱͰ࣮ݱ͞Ε͍ͯ·͢ɻ

    View Slide



  29. UFTTFSBDUPDSͱ͸ʁ
    ڝ߹ͱͷҧ͍
    UFTTFSBDUPDS͸ΦʔϓϯιʔεͷจࣈೝࣝͰ͸σϑΝΫτελϯμʔ
    υͰ͕͢ɺΫϥ΢υͷ"1*ʢ(PPHMF7JTJPO"1*ͳͲʣͷํ͕ߴੑೳͱ
    ݴΘΕ͍ͯ·͢ɻ
    UFTTFSBDUPDSͷେ͖ͳΞυόϯςʔδ͸ɺ

    ৽͍͠จࣈΛֶशͰ͖Δ͜ͱ

    View Slide



  30. 5FTTFSBDU0$3WFSʹΑΔจࣈೝࣝɾֶशख๏
    5FTTFSBDU0$3Λ࢖ͬͯ΍Γ͍ͨ͜ͱ ༡ͼ

    Θ
    ͔
    Β
    Μ

    View Slide



  31. Λ
    ೝ͍ࣝͨ͠
    ຐ๏গঁ ."%0,"
    '0/5
    ˕





    View Slide



  32. ˕
    ຐ๏গঁ





    ."%0,"
    '0/5 ͱ͸ʁ
    ਖ਼໊ࣜশ͸ʮຐঁจࣈʯ
    Ͱ͢ɻ
    ҰԠଞͷຐঁจࣈͱ۠ผ
    ͢ΔͨΊʮ·Ͳ͔จࣈʯ
    ͱ͠·͢ɻ
    ຐ๏গঁ·Ͳ͔ˑϚΪΧʹొ৔͢Δຐঁͷ݁ք಺΍ຐঁొ৔γʔϯͷςϩοϓ
    ຐ๏গঁͷࢦྠͳͲʹॻ͔Ε͍ͯΔಛघจࣈͷ͜ͱɻ
    ͜ΕͰ͢ʢͪͳΈʹ͜Ε͸)0.6-*--:ͱಡΈ·͢ʣ

    View Slide



  33. ܶ৔൛ʰຐ๏গঁ·Ͳ͔ˑϚΪΧʱɹޙฤ̙̚ຐঁจࣈ͕͍ͭʹશจղಡ͞ΕΔʂIUUQKJODPNBSDIJWFTIUNM
    Ҿ༻

    View Slide



  34. ࣮ݱ͢ΔͨΊʹจࣈೝࣝΤϯδϯͷ
    5FTTFSBDU0$3Λ
    ࢖༻͠·͢ɻ
    ݁ߏ͍ͨ΁ΜͳͷͰ΍ͬͯΈ͍ͨํ͸
    1Z$PONJOJ4"11030ͷࢲͷొஃࢿ
    ྉΛࢀߟʹͯ͠Έ͍ͯͩ͘͞ɻͦͪΒͷ
    ํ͕࣮༻తͳ಺༰͕ଟΊͷͨΊηοτ
    Ξοϓ౳͸ৄ͍͠Ͱ͢ɻ
    ͓͢͢Ίࢿྉ https://speakerdeck.com/nyankoandmamenoki/di-fang-komiyuniteikaradetafen-xi-falseshi-
    shi-woshi-metahua-to-tesseract-ocr-ver-dot-4niyoruwen-zi-ren-shi-xue-xi-shou-fa-pycon-
    mini-sapporodeng-tan-zi-liao

    View Slide



  35. UFTTFSBDUPDSͱ͸ʁ
    ͳͥ·Ͳ͔จࣈͳͷ͔
    ɾֶश͢Δʹ͸ྑ͍αϯϓϧ
    ɹUFTTFSBDUPDSΛ࢖͏Ձ஋͕͋Δ
    ɾ೔ຊޠ΄Ͳจࣈ਺΋ଟ͘ͳ͍
    ɹֶश࣌ؒ΋࣌ؒఔ౓ͰऴΘΔɻ
    ɹ؆୯ʹUFTTFSBDUͷੑೳΛࢼ͢ʹ͸ͪΐ͏ͲΑ͍ɻ

    View Slide



  36. Θ
    ͔
    Β
    Μ

    5FTTFSBDU0$3WFSʹΑΔจࣈೝࣝɾֶशख๏
    Τϯδϯͷಛ௃

    View Slide



  37. UFTTFSBPDSΤϯδϯͷಛ௃
    14. 1BHF4FHNFOUBUJPO.PEF

    5FTTFSBDU0$3ʹ͸14. 1BHF4FHNFOUBUJPO.PEF
    ͱݺ͹ΕΔ
    จࣈϨΠΞ΢τͷղੳϞʔυ͕͋Γ·͢ɻ
    ɾෆద੾ͳϞʔυΛࢦఆ͢Δͱେ෯ʹೝࣝೳྗ͕௿Լ͠·͢ɻ
    ɾ͍Ζ͍Ζࢼ͠·͕ͨ͠ඈͼൈ͚ͯ༏लͳϞʔυ͸͋Γ·ͤΜɻ
    จࣈ֯౓ͷࣝผͱॻࣈܥͷΈͷೝࣝ 04%
    ͷΈ࣮ࢪʢPVUQVUCBTFPTE͕ग़ྗ͞Εɺ0$3͸ߦΘΕͳ͍ʣ
    04%ͱࣗಈϖʔδηάϝϯςʔγϣϯ
    04%ͳ͠ͷࣗಈηάϝϯςʔγϣϯʢ0$3͸ߦΘΕͳ͍ʣ
    04%ͳ͠ͷ׬શࣗಈηάϝϯςʔγϣϯʢσϑΥϧτʣ
    ՄมαΠζͷྻςΩετΛ૝ఆ͢Δ
    ॎॻ͖ͷ୯ҰͷςΩετϒϩοΫͱΈͳ͢
    ୯ҰͷςΩετϒϩοΫͱΈͳ͢ʢͱҟͳΔ఺͸ԣॻ͖ͷΈʣ
    ը૾ΛߦͷςΩετͱΈͳ͢
    ը૾Λ୯ޠͱΈͳ͢
    ԁͷதʹهࡌ͞Εͨ୯ޠͱΈͳ͢ʢྫɿᶃɺᶈͳͲʣ
    ը૾ΛจࣈͱΈͳ͢
    ·ͩΒͳςΩετɻಛఆͷॱংͰͳΔ΂͘ଟ͘ͷ୯ޠΛݕग़͢Δʢ֯౓ແ͠ʣ
    จࣈ֯౓ݕग़Λ࣮ࢪ 04%
    ͔ͭ͠ɺ·ͩΒͳςΩετͱͯ͠ͳΔ΂͘ଟ͘ͷ୯ޠΛݕग़͢Δ
    5FTTFSBDUݻ༗ͷॲཧΛճආͯ͠ߦͷςΩετͱΈͳ͢
    ࢀߟαΠτ 1ZUIPOͱ5FTTFSBDU0$3ͰจࣈೝࣝIUUQTRJJUBDPNIFOKJHBOBJJUFNTBFGCCB
    ࢀߟɿ14.͝ͱͷಛ௃

    View Slide



  38. UFTTFSBPDSΤϯδϯͷಛ௃
    14. 1BHF4FHNFOUBUJPO.PEF

    ιʔεIUUQTHJUIVCDPN1ZUIPO#FHJOOFST1Z$PO@NJOJ@4"11030CMPCNBTUFSOPUFCPPL@14. QBHF@TFHNFOUBUJPO@NPEF
    JQZOC
    14. ඵ 14. ඵ 14. ඵ 14. ඵ
    14. ඵ 14. ඵ 14. ඵ 14. ඵ
    14. ඵ 14. ඵ 14. ඵ 14. ඵ
    ͿͬͪΌ͚গʑ࢖͍ʹ͍͘ɾɾɾ ɾТɾʆ

    View Slide



  39. OFUTQFD
    χϡʔϥϧωοτϫʔΫͷߏ੒ΛࢦఆͰ͖·͢ɻ
    ҎԼͷΑ͏ʹࢦఆ͠·͢ɻ
    < $U .Q -GZT-GY-SY-GY0D>
    < $U .Q -GZT-GY-SY-GY0D> ೔ຊޠͷKQO@CFTUϞσϧ͸͜Ε

    */165΍$//ͷߏ੒ɺ-45.ͷߏ੒ɺ065165ͷߏ੒ͳͲΛܾΊΔ͜ͱ͕Ͱ͖·͢ɻ
    NPNFOUVN
    ॏΈͷߋ৽࣌ͷ׳ੑ߲ʢϞʔϝϯλϜʣΛࢦఆ͠·͢ɻʢ%FGBVMU

    աڈͷ஋ʹॏΈ෇͚ͯ͠Ճࢉ͢Δ͜ͱͰɺॏΈͷߋ৽Λ׳ੑతʹ͠ɺաֶश͠ͳ͍Α͏ʹௐ੔ͨ͠Γɺֶश
    ଎౓ʹ΋Өڹ͠·͢ɻຊདྷͰ͋Ε͹ֶशͷաఔͰม͍͖͍͑ͯͨ஋ͳͷͰ͕͢UFTTFSBDUPDSͰ͸
    DIFDLQPJOUͷ஋͕༏ઌ͞ΕΔͨΊɺ్தͰมߋ͢Δ͜ͱ͕Ͱ͖·ͤΜɻ Կ͕༏ઌ͞ΕΔ͔͸ɺৄ͘͠͸ι
    ʔεMTUNUSBJOJOHDQQΛࢀর͢Δͷ͕ྑ͍Ͱ͢ɻ

    MFBSJOHSBUF
    ֶशϨʔτͰ͢ɻͦͷ··ֶश଎౓ʹӨڹ͠·͢ɻ
    ͪ͜Β΋ֶशͷաఔͰม͍͖͍͑ͯͨ஋Ͱ͕͢ɺ్தͰมߋ͢Δ͜ͱ͕ग़དྷ·ͤΜɻ
    DPOUJOVF@GSPN
    'JOFUVOJOH༻ͷ-45.ϞσϧΛࢦఆ͢ΔύϥϝʔλͰ͢ɻ೔ຊޠͷϞσϧͳͲɺطଘͷϞσϧ͔Β
    நग़ͯ͠νϡʔχϯάΛߦ͏͜ͱ͕ग़དྷ·͢ɻεΫϥον͔ΒUSBJOJOH͢Δͷ͸೉͘͠ɺ࣌ؒ΋͔͔Δͨ
    ΊɺpOFUVOJOHͷํ͕୹ظؒͰ҆ఆͯ͠ྑ͍είΞΛग़͢͜ͱ͕ग़དྷ·͢ɻ
    -45.53"*/*/(
    .BOVBM1BHFIUUQTHJUIVCDPNUFTTFSBDUPDSUFTTFSBDUCMPCNBTUFSEPDMTUNUSBJOJOHBTD
    MTUNUSBJOJOHDQQIUUQTHJUIVCDPNUFTTFSBDUPDSUFTTFSBDUCMPCNBTUFSTSDUSBJOJOHMTUNUSBJOJOHDQQ-
    Ҿ༻
    ඇৗʹଟ͘ͷΦϓγϣϯ͕ଘࡏ͠·͕͢ɺҰ෦͚ͩ঺հ͠·͢ɻ
    UFTTFSBPDSΤϯδϯͷಛ௃
    -45.ֶशͷΦϓγϣϯ
    ͿͬͪΌ͚গʑ࢖͍ʹ͍͘ɾɾɾ ɾТɾʆ

    View Slide



  40. UFTTFSBDUPDSͷֶशํ๏
    εΫϥον͔Βͷֶश࣌ؒͱਫ਼౓
    ೔ຊޠΛ໿ສJUFSBUJPO΄Ͳֶशͯ͠Έ·ͨ͠ɻ
    ࣌ؒɿ్தࣦഊͳͲ΋͋ΓɺDYMBSHFͰҰिؒ΄Ͳ͔͔Γ·ͨ͠ɻ
    ਫ਼౓ɿ࣮ࡍͷੑೳత͸ສʙສJUFSBUJPO͋ͨΓͰ಄ଧͪͱͳΓɺਫ਼౓΋EFGBVMUͷ
    Ϟσϧʹ͸ԕ͘ٴ͹ͳ͍ਫ਼౓Ͱͨ͠ɻ
    ͿͬͪΌ͚গʑ࢖͍ʹ͍͘ɾɾɾ ɾТɾʆ

    View Slide



  41. ϑΝΠϯνϡʔχϯά pOFUVOJOH
    ͱ͸ɺطଘͷϞσϧΛ࠶ར༻͠
    ͯɺ৽͍͠ϞσϧΛߏங͢Δख๏Ͱ͢ɻ
    ʴ
    εΫϥον͔Βͷֶश
    ϑΝΠϯνϡʔχϯά
    ֶशʹ͕͔͔࣌ؒΔ
    ֶश࣌ؒΛ୹ॖ
    UFTTFSBDUPDSͷֶशํ๏
    'JOF5VOJOH࣌ͷֶश࣌ؒͱਫ਼౓
    ϑΝΠϯνϡʔχϯάͰ͸
    ສʙສJUFSBUJPOఔ౓Ͱਫ਼
    ౓͕ϐʔΫͱͳΓ·͢ɻ
    ੑೳ΋ίνϥͷ΄͏͕҆ఆ͠
    ͯग़͢͜ͱ͕ग़དྷ·͢ɻ
    ֶश࣌ؒ΋࣌ؒఔ౓ʙ࣌
    ؒఔ౓ͰऴΘΓ·͢ɻ

    View Slide



  42. 5FTTFSBDU0$3WFSʹΑΔจࣈೝࣝɾֶशख๏
    ·Ͳ͔จࣈΛೝࣝͤ͞Δ
    Θ
    ͔
    Β
    Μ

    View Slide

  43. ࠶ܝ


    Λ
    ೝ͍ࣝͨ͠
    ຐ๏গঁ ."%0,"
    '0/5
    ˕





    View Slide



  44. ·ͣ͸ը૾͔Β
    ֶशͤͯ͞ΈΔ

    View Slide



  45. ABCDEFGHIJKLM
    NOPQRSTUVWSYZ
    abcdefghijklm
    nopqrstuvwxyz
    1234567890
    จࣈͱඳըҐஔͷରԠද
    CPYϑΝΠϧ
    Λ࡞͍͖ͬͯ·͢

    View Slide



  46. 0QFO$7ͰಡΈࠐΈ

    View Slide



  47. ೔ຊޠͰը૾ೝࣝ

    View Slide



  48. CPYϑΝΠϧͬΆ͍ͷΛ
    ϑΝΠϧग़ྗͯ͠खؒΛݮΒ͠
    ͖

    ճ

    !'C

    Α


    ͷ
    (ᶇ

    View Slide



  49. ͋ͱ͸खಈͰೖྗ
    B
    C
    D
    E
    F
    G
    H
    I
    J
    K
    L
    M

    View Slide



  50. ֶश༻σʔλΛग़ྗͯ͠ΈΔͱ
    ͜Μͳײ͡

    View Slide



  51. UFTTUSBJOTIΛվྑͯ͠
    JNHUSBJOTIΛ࡞Γ දࣔ͸Ұ෦

    View Slide



  52. ࣮ߦͤ͞ΔͱΤϥʔ
    ˕

    View Slide



  53. ͍Ζ͍ΖݪҼ͸ߟ͑ΒΕΔ
    ɾܗঢ়͕ෳࡶա͗ͯྖҬ൑ఆͰ͖ͳ͍ʁ
    ɾྨࣅͨ͠จࣈ͕ੈքతʹ΋ଘࡏ͠ͳ͍ͨ
    ΊྖҬ൑ఆͰ͖ͳ͍ʁ
    ɾֶश࣌ͷྖҬ൑ఆ༻14.Ͱෳ਺ߦࢦఆʹ
    ͍ͯ͠Δ͕ɺߦͷ൑ఆ͕೉͍͠ʁ

    View Slide



  54. ҰԠҎ্ͷΑ͏ʹҰߦʹม͑ͯ
    ΈΔͱֶशͰ͖ͨ

    View Slide



  55. εΫϥονͰ΋ΠςϨʔγϣϯɻ
    ͔ͳΓ͍ܰɻ͕ͩɺɺɺ

    View Slide



  56. ը૾͔Βͷֶश
    ɾҰߦ୯Ґ͸͕͢͞ʹΊΜͲ͍
    ɾճస΍ϊΠζʹऑͦ͏
    ɹʢ૿΍͢ͷΊΜͲ͍ʣ

    View Slide



  57. ·Ͳ͔จࣈͷϑΥϯτΛ୳ͯ͠
    ֶशͤ͞Ε͹ྑ͍ͷͰ͸ʁ

    View Slide



  58. ͋ͬͨʂʂʂ
    Ҿ༻
    ຐ๏গঁ·Ͳ͔ˑϚΪΧ෩ʮຐঁจࣈϑΥϯτʯIUUQTBUTBDIJXFCDPNCMPHFOUSZIUNM

    View Slide



  59. .BEPLB3VOFT͔Β
    ֶशͤͯ͞ΈΔ

    View Slide



  60. ࣗಈੜ੒͞Εͨ
    จࣈσʔλ

    View Slide



  61. ݁Ռ

    View Slide



  62. SBUJP
    ͦͦ͜͜ಡΊͦ͏
    14.

    View Slide



  63. ͪͳΈʹϨʔτͷࢉग़ʹ͸ήγϡλϧτύλʔϯ
    ϚονϯάΛ࢖༻͍ͯ͠·͢
    "#40-65&
    0#40-&5&
    จࣈҰக จࣈҰக
    ڞ௨จࣈྻ௕ʹY

    શମจࣈྻ௕ʹ

    ྨࣅ౓ʹ

    ήγϡλϧτύλʔϯϚονϯάͱ͸
    ̎ͭͷจࣈྻͷ࠷௕ڞ௨෦෼Λ࠶ؼతʹٻΊɺڞ௨จࣈྻ௕Λશମจࣈྻ௕Ͱআࢉ
    ͢Δ͜ͱͰྨࣅ౓Λܭࢉ͢Δํ๏Ͱ͢ɻ

    View Slide



  64. SBUJP
    ը૾ͬΆ͍ϑΥϯτͷͨΊը૾ʹ΋จࣈΛ
    ݟ͚ͭͯ͠·͏ɻ೉͍͠ɻ
    14.
    )0.6-*--:

    View Slide



  65. SBUJP
    ղ૾౓͕଍Γͳͦ͞͏
    14.
    ܶ৔൛ຐ๏গঁ·Ͳ͔ˑϚΪΧɹޙฤ̙̚ຐঁจࣈ

    View Slide



  66. ͿͬͪΌ͚
    ͘΍͍͠

    View Slide



  67. SBUJP
    ΩϨΠʹ੾Γग़ͤΕ͹΄Ͳग़ΔΒ͍͠
    14.
    ܶ৔൛ຐ๏গঁ·Ͳ͔ˑϚΪΧɹޙฤ̙̚ຐঁจࣈ
    ղ૾౓ෆ଍Λิ͏ͨΊจࣈΛநग़ͨ͠΋ͷ
    )0.63"$)"/
    8"5"4)*/&
    "/"5"50
    50.0%"5*/*
    /"3&5&63&4)*,"55"

    View Slide



  68. ΋͏ͪΐͬͱ
    Ͳ͏ʹ͔ͳΒͳ͍ͷ͔ʁ
    ΋ͬͱྑ͍ਫ਼౓Λग़͢ʹ͸ɺFBSMZTUPQQJOH͕ཉ͍͠ɻ
    ແ͍ͷͰ࡞Δ͔͠ͳ͍

    ύϥϝʔλ΋HSJETFBSDIͰ͖ΔΑ͏ͳ࢓૊Έ͕ཉ͍͠ɻ
    ʢແ͍ͷͰ࡞Δ͔͠ͳ͍ʣ

    View Slide



  69. 8IBUJTFBSMZTUPQQJOH IUUQTEFFQMFBSOJOHKPSHEPDTMBUFTUEFFQMFBSOJOHKOOFBSMZTUPQQJOH
    Ҿ༻
    %FFQ-FBSOJOH༻πʔϧʹ͸͍͍ͩͨ෇͍͍ͯΔ
    &BSMZTUPQQJOHͱ͸ʁ
    5FTTFSBDUʹ͸ͳ͍ɾɾɾ ɾТɾʆ

    View Slide



  70. UFTTFSBDUֶͬͯशதʹͨ͘͞ΜDIFDLQPJOU
    ग़ͯ͠ΔΜͰ͢ΑͶɾɾɾ

    View Slide



  71. ͜ΕΛ࢖ͬͯੑೳΛࢉग़ͯ͠ΈΔͱ
    ྑ͍ͷͰ͸ʁ

    View Slide



  72. DIFDLQPJOUΛྻڍ͢Δ
    ϑΝΠϧ͔Βਫ਼౓ɺJUFSBUJPO਺Λऔಘ
    ݴޠϞσϧϑΝΠϧΛ࡞੒
    UFTTFSBDUʹ൓ө TVEPඞਢ

    શ14.͝ͱʹείΞࢉग़
    ."9είΞΛࢉग़
    ˞Πϝʔδը૾
    ΊΜͲ͍

    View Slide



  73. ϐʔΫ͕ճ
    ͋Δ
    SBUJP
    ΄Ͳ61

    ϐʔΫ͕ճ
    ͋Δ
    ֶशۂઢ

    View Slide



  74. ΋͏ͪΐͬͱ
    Ͳ͏ʹ͔ͳΒͳ͍ͷ͔ʁ
    ϩʔϚදهͷ೔ຊޠςΩετΛ܇࿅ͤ͞Δͱ
    ྑͦ͞͏ɻ
    ˞-FBLBHFʹͳͬͯ͠·͏͕ͱΓ͋͑ͣɻ

    View Slide



  75. खೖྗ
    ࣮ࡍ͸͜ͷഒ͘Β͍௥Ճͨ͠

    (&3536%ɹ46-&*,"$)"3-055&)/&--:
    ,*345&/"-#&35*/&(*4&-"
    &-4"."3*"6)3."//0,5"7*"70/
    4&$,&/%03''
    *;"#&-1"53*$*",3*&.)*-%(3&5$)&/
    30#&35"8"-163(*4/"$)5
    )0.63"$)"/8"5"4)*/&"/"5"50
    50.0%"5*/*/"3&5&63&4)*,"55"
    .06/"/*.0,08",6/"*
    403&)".".*4"//0.0/0%"
    5&.&&403&%&.0/*/(&/,"
    ೔ຊޠ
    ϩʔϚࣈදه
    ຐঁ໊
    υΠπޠଟΊ

    View Slide



  76. ݁Ռ

    View Slide



  77. ܶ৔൛ຐ๏গঁ·Ͳ͔ˑϚΪΧɹޙฤ̙̚ຐঁจࣈ
    ղ૾౓ෆ଍Λิ͏ͨΊจࣈΛநग़ͨ͠΋ͷ
    )0.63"$)"/
    8"5"4)*/&
    "/"5"50
    50.0%"5*/*
    /"3&5&63&4)*,"55"
    14.
    SBUJP
    ΄Ͳ61

    View Slide



  78. SBUJP
    ΄Ͳ61


    ֶशۂઢ

    View Slide






  79. .BEPLB3VOFTΛ࢖ͬͨͱ͜Ζ΄Ͳͷ
    ਫ਼౓͕ग़ͨɻ
    ͱ͸͍͑MFBLBHF͍ͤͯ͞ΔͷͰ
    अಓͰ͕͢ʣ
    UFTTFSBDUPDS͍Ζ͍Ζ͍ͬͯ͡Έ͚ͨͲ
    (16ͳ͠Ͱ͞Βʹ-45.ͳͷʹ͜Μͳʹ
    ଎ֶ͘शͰ͖Δͷ͸εΰΠͱࢥ͏
    ˞ٯʹݴ͏ͱࠓޙ΋վળͷ༨஍͸͋Γͦ͏

    View Slide



  80. ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ ʆŋТŋ
    ʎ
    !ZBTVCFJUXJ
    ZBTVIBSVTV[VLJ
    IUUQTIVHLVODPN
    ྑ͔ͬͨΒ͓༑ୡʹ
    ͳΓ·͠ΐ͏ʙˣ

    View Slide