初心者向けの勉強会のため前半はデータサイエンスに関する紹介をしています。 後半からベイズ統計学とEMアルゴリズムの紹介を行っています。 気になるところだけ見たほうが効率よいと思います。
動画はこちらです。 https://www.youtube.com/watch?v=DM2zyS4aaRg&t=710
ࠓिͷΘ͔ΒΜઌੜϕΠζ౷ܭֶ͕Θ͔ΒΜ1ZUIPO#FHJOOFSTԭೄΦʔΨφΠβʔ͐͢
View Slide
ࣗݾհ:BTVCFJ ͐͢ZBTVCFJUXJZBTVIBSVTV[VLJIUUQTIVHLVODPNΤϯδχΞͰ͢ɻࡳຈͰήʔϜ։ൃɹˠɹԭೄͰ։ൃੳͳͲΛ)VHLVOͱ)VHLVO%BUBͱ͍͏ձࣾΛ͍ͬͯ·͢ɻاۀ͞Μͱֶੜ͞ΜͱҰॹʹࣄͯ͠8JO8JO8JOͳؔΛங͘ͷ͕͖Ͱ͢ɻ࠷ۙҿΈձͷ૿ՃʹΜͰ͓ΓɺςΩύΩؾ͕ར͘पΓͷਓͨͪͱൺֱͯ͠ɺ૬มΘΒͣؾ͕ར͔ͳ͍ࣗʹࣦ͍ͯ͠ΔɻؤுͬͯτʔΫΛ͢ΔΑ͏ʹ৺͕͚͍ͯΔ͕ɺͨͿΜۭؾಡΊ͍ͯͳ͍ͱࢥΘΕΔɻ࠷͖ۙͳϚϯΨͷՖՇɺ੨ͷΦʔέετϥɺༀͷͻͱΓ͝ͱɻ
ΏΔ΅)VHLVOגࣜձࣾ)VHLVOIUUQTIVHLVODPN̓ϲ݄ͿΓʹืूதͰ͢ɻۀΛ௨ͯ͡εΩϧΞοϓ͍ͨ͠ํɺੳ8ΞϓϦ։ൃʹڵຯ͕͋Δํ͓͓ͪͯ͠Γ·͢ɻདྷֶͨੜશһʹݴͬͯΔͷͰ༧Ίݴ͓͖ͬͯ·͕͢ϨϕϧߴΊͰ͢ɻظؒݶఆͳͷͰڵຯͷ͋ΔํΕͣʹ͓ਃ͠ࠐΈ͍ͩ͘͞ʔɻ ɾТɾϊγ͐͢!ZBTVCFJUXJ
"HFOEBରऀσʔλαΠΤϯεͱʁ ͓͞Β͍ϕΠζ౷ܭֶͬͯͳʹʁϕΠζ౷ܭֶɾࣄྫհ&.ΞϧΰϦζϜʲ͓·͚ʳ1ZUIPO#FHJOOFSTԭೄऩࢧ
ରऀΘ͔ΒΜ
ೖɹɹ#FHJOOFSॳڃɹɹ&MFNFOUBSZதڃɹɹ*OUFSNFEJBUF४্ڃɹ6QQFS*OUFSNFEJBUF্ڃɹɹ"EWBODFEͨͿΜ͜ͷล1ZUIPOগ͍͍ͬͯ͠͡Δํ͔Βػցֶशͷ͜ͱΛগ͠ਂֶ͘ͼ͍ͨਓ·ͰϕΠζ౷ܭֶ&.ΞϧΰϦζϜରऀͷϨϕϧ
ϕΠζ౷ܭֶ&.ΞϧΰϦζϜϨϕϧ͝ͱͷֶͼํೖɹɹ#FHJOOFSॳڃɹɹ&MFNFOUBSZதڃɹɹ*OUFSNFEJBUF४্ڃɹ6QQFS*OUFSNFEJBUF্ڃɹɹ"EWBODFEΠϝʔδΛ௫Ή͚ͩͰকདྷʹཱ͔ͭϨϕϧײʹֶ͋ͬͨͼΛಘ͚ͯΔͱ͍Ͱ͢ɻશʹཧղ͠·͠ΐ͏νϡʔτϦΞϧࣜͷಋग़ѻ͍·ͤΜΓͳ͍͔
·ͣཧղͰ͖ͳͯ͘Πϝʔδ͢Δ͜ͱ͕େࣄͰ͢
Ώͬ͘ΓσΟεΧογϣϯ͠ͳ͕ΒਐΊ͍ͨͱࢥ͍ͬͯΔͷͰԕྀͳ࣭͘Լ͍͞
͋ͱɺϕΠζ౷ܭֶʹ͍ͭͯࢲࣗษڧதͷͨΊؒҧ͍ͬͯΔ͋Δͱࢥ͍·͢ɻԕྀͳ͘ࢦఠ͍͚ͯͨͩ͠Δͱ͍Ͱ͢ɻ
σʔλαΠΤϯεͱʁʢ͓͞Β͍ʣΘ͔ΒΜ※ ॳ৺ऀͷͨΊͷ͓͞Β͍ίʔφʔͰ͢ɻ※ 2019/02/09() ʹߦΘΕͨPythonBeginnersԭೄ#20ͷॳ৺ऀ͚ͷ༰ͱॏෳ͠·͢ɻ
σʔλαΠΤϯεͱʁᶃ(wikipediaΑΓൈਮ)σʔλαΠΤϯεͱɺσʔλΛ༻͍ͯ৽ͨͳՊֶత͓Αͼࣾձʹ༗ӹͳݟΛҾ͖ग़ͦ͏ͱ͢ΔΞϓϩʔνͷ͜ͱͰ͋ΓɺͦͷதͰσʔλΛѻ͏ख๏Ͱ͋ΔใՊֶɺ౷ܭֶɺΞϧΰϦζϜͳͲΛԣஅతʹѻ͏ɻใՊֶ౷ܭֶΞϧΰϦζϜσʔλΛऩू ՊֶతʹݟΛҾ͖ग़͢ ࣾձʹཱͯΔ
σʔλαΠΤϯεͱʁᶄ(wikipediaΑΓൈਮ)σʔλαΠΤϯεΛɺ౷ܭతɺܭࢉతɺਓؒతࢹ͔Β၆ᛌ͢Δ͜ͱ͕Ͱ͖Α͏ɻͦΕͧΕͷࢹ͕σʔλαΠΤϯεΛߏ͢Δຊ࣭తͳଆ໘Ͱ͋Δ͕ɺ͜ΕΒͷ̏ͭͷࢹͷ༗ػత݁߹͕ͦ͜σʔλαΠΤϯεͱ͍͏ֶͷਆͰ͋Δɻʢ#MFJBOE4NZUI ʣ౷ܭతɺܭࢉతɺਓؒతࢹͷ༗ػత݁߹౷ܭత ܭࢉతਓؒత
σʔλαΠΤϯεͱʁᶅ(wikipediaΑΓൈਮ)σʔλαΠΤϯεɺ͖ͬΓͱͨ͠Ԡ༻ͷจ຺ DPOUFYUPGBQQMJDBUJPOΛͪɺྖҬੑUSBOTEJTDJQMJOBSZͷ༷૬Λఄ͍ͯͯ͠ɺ·ͨݚڀՌʹରͯ͠໌֬ͳࣾձతઆ໌ TPDJBMBDDPVOUBCJMJUZ͕ٻΊΒΕɺ͞ΒʹɺݚڀՌͷ࣭తอূͷͨΊʹैདྷͷ࠲ֶతج४Ҏ֎ʹ࣭ͷίϯτϩʔϧͷͨΊͷՃͷج४ OPWFMRVBMJUZDPOUSPMTPVSDF͕ඞཁͱ͞ΕΔɻσʔλαΠΤϯεͷ༗ޮͳਪਐͷͨΊʹ৫ͷҟछࠞ߹ੑॏཁͰ͋Δɻ☓ࣾձతઆ໌ɾج४Ԡ༻ɾྖҬ ৫ͷҟछࠞ߹ੑ
ࣾձతɾࣄྫఆࣙୀ͚ͩͰͳ͍ʂʮϦΫφϏγϣοΫʯͰਓࡐۀքશମ্͕͕͑Δཧ༝ɹIUUQTBTDJJKQFMFNϦΫϧʔτΩϟϦΞʮϦΫφϏब׆ࣄ݅ʯ͕ϓϥΠόγʔʹ͔͚͛ͨͷIUUQTOFXTZBIPPDPKQCZMJOFZBNBNPUPJDIJSPࢀߟ63-ࢀߟɿ৬ۀ҆ఆ๏ୈޒेҰɹ৬ۀհࣄۀऀɺٻਓऀɺ࿑ಇऀͷืूΛߦ͏ऀɺืूडୗऀɺ࿑ಇऀڙڅࣄۀऀٴͼ࿑ಇऀڙڅΛड͚Α͏ͱ͢ΔऀʢҎԼ͜ͷʹ͓͍ͯʮ৬ۀհࣄۀऀʯͱ͍͏ɻʣฒͼʹ͜ΕΒͷཧਓɺ༻ਓͦͷଞͷैۀऀɺਖ਼ͳཧ༝ͳ͘ɺͦͷۀ্औΓѻͭͨ͜ͱʹ͍ͭͯΓಘͨਓͷൿີΛ࿙Βͯ͠ͳΒͳ͍ɻ৬ۀհࣄۀऀٴͼ͜ΕΒͷཧਓɺ༻ਓͦͷଞͷैۀऀͰͳ͘ͳͭͨޙʹ͓͍ͯɺಉ༷ͱ͢Δɻ˓̎ɹ৬ۀհࣄۀऀٴͼ͜ΕΒͷཧਓɺ༻ਓͦͷଞͷैۀऀɺલ߲ͷൿີͷ΄͔ɺͦͷۀʹؔͯ͠Γಘͨݸਓใͦͷଞްੜ࿑ಇলྩͰఆΊΔऀʹؔ͢ΔใΛɺΈͩΓʹଞਓʹΒͤͯͳΒͳ͍ɻ৬ۀհࣄۀऀٴͼ͜ΕΒͷཧਓɺ༻ਓͦͷଞͷैۀऀͰͳ͘ͳͭͨޙʹ͓͍ͯɺಉ༷ͱ͢Δɻɾब৬αΠτʮϦΫφϏʯͷར༻ཤྺΛ%.1ϑΥϩʔͱ͍͏ผαʔϏεͰར༻ɻఆࣙୀΛఏڙ͓ͯ͠Γɺब׆ੜͷΒͳ͍ͱ͜ΖͰब৬׆ಈ͕ෆརʹͳΔՄೳੑ͕͋ͬͨɻʢސ٬֤ࣾ࠾༻ɾෆ࠾༻ͷஅʹӨڹͨ͠ࣄ࣮Λ൱ఆ͍ͯ͠Δʣɾ৬ۀ҆ఆ๏ҧୈ߲ʹҧ Լهࢀߟɻް࿑ল͔Βߦࢦಋɻɾຊਓಉҙ͕͋ͬͯΞτʢ΄΅Չঢ়ଶͷͨΊʣɾϚΠφϏͷྨࣅαʔϏεʮ13BJ0ʯఆࣙୀΛࢉग़͍ͯ͠Δ͕ɺೖྗιʔε͕ΤϯτϦʔγʔτͷͨΊʹͳ͍ͬͯͳ͍ɻʢͱֶ͍͑ੜ͕ϚΠφϏʹొͨ͠σʔλΛత֎Ͱ༻͍ͯ͠ΔՄೳੑ͕͋ΓɺάϨʔͰ͋Δʣɾʮࣗͷݸਓใ͋ΔఔऔΒΕͯྑ͍ʯͱߟ͑Δਓ͕͍Δ͕ɺָ؍తʹߟ͑͗͢Δͷ/(Ͱ͋ΔɻϦΫφϏʮఆࣙୀʯఏڙ
σʔλαΠΤϯεͷࣄͷछྨҎԼͷΑ͏ͳछྨ͕͋Γ·͢※্هศ্ٓΘ͔Γ͚ͨ͘͢ͷͰ͢(ݸਓͷओ؍)※࣮ࡍʹ͞Βʹ༻͢Δٕज़ʹΑͬͯେ͖͘ҟͳ͖ͬͯ·͢ɾधཁ༧ଌ(ച্༧ଌ)ɾҟৗݕɾࣗવݴޠॲཧɾ࣌ܥྻੳɾը૾ೝࣝɾୀձ༧ଌɾԻೝࣝͳͲͳͲ
σʔλαΠΤϯεͷࣄͷछྨᶃधཁ༧ଌʢച্༧ଌʣσʔλ͔ΒকདྷͷधཁΛ༧ଌ͢ΔྫɿαοΧʔͷ؍٬ಈһɺاۀͷച্༧ଌͳͲ
σʔλαΠΤϯεͷࣄͷछྨᶄը૾ೝࣝը૾͔Β͋ΔಛΛݕग़ʗτϥοΩϯά͢Δྫɿإೝࣝɺਓݕग़ɺମݕग़ɺจࣈೝࣝ
σʔλαΠΤϯεͷࣄͷछྨᶅҟৗݕσʔλ͔ΒҟৗͳΛݕग़͢ΔྫɿͷػثͷނোݕɺגՁ௨՟ͷຊ࣭తมಈݕͳͲ
σʔλαΠΤϯεͷࣄͷछྨᶆୀձ༧ଌར༻ऀσʔλ͔Βୀձʹܨ͕ΔཁૉΛݕग़͢ΔྫɿαʔϏεͷୀձऀ༧ଌͳͲ
σʔλαΠΤϯεͷࣄͷछྨᶇԻೝࣝԻ͔ΒಛΛൈ͖ग़͠ੳ͢Δྫɿײੳɺऀࣝผɺٞࣄ࡞ͳͲ
σʔλαΠΤϯεͷࣄͷछྨᶈࣗવݴޠॲཧਓ͕͍ͬͯΔݴޠΛίϯϐϡʔλʹॲཧͤ͞ΔҰ࿈ͷٕज़ྫɿ୯ޠׂɺߏจղੳɺωΨϙδఆɺࣗಈཁɺ࣭ٙԠͳͲ#&351SFUSBJOJOHPG%FFQ#JEJSFDUJPOBM5SBOTGPSNFSTGPS-BOHVBHF6OEFSTUBOEJOHIUUQTBSYJWPSHQEGQEGࢀߟ63-
σʔλαΠΤϯεͷࣄͷྲྀΕ※্هศ্ٓΘ͔Γ͚ͨ͘͢ͷͰ͢※࣮ࡍʹ͞Βʹࡉ͔͍λεΫʹผΕ͓ͯΓɺϏδωεϞσϧʹΑͬͯେ͖͘ҟͳ͖ͬͯ·͢ɾϏδωε՝ઃఆɾσʔλͷೖखʗલॲཧɾϞσϦϯάɾධՁʢKPIͷݕূʣ
σʔλαΠΤϯεͷࣄͷྲྀΕᶃϏδωε՝ઃఆϏδωε্ͷ՝υϝΠϯࣝΛώΞϦϯά͠ͳ͕ΒσԾઆཱҊඪઃఆΛେےͰߦ͍·͢ɻɾυϝΠϯࣝɾσʔλͷཧղ(֓ཁ)ɾԾઆཱҊɾඪઃఆɾεέδϡʔϧ
σʔλαΠΤϯεͷࣄͷྲྀΕᶄσʔλͷೖखʗલॲཧ࣮σʔλΛೖखٙ͘͠ࣅσʔλΛ࡞͠લॲཧΛ࣮ࢪ͍͖ͯ͠·͢ɻɾܽଛɾಛྔͷ࡞ɾٙࣅσʔλ࡞ɾՄࢹԽɾجૅूܭ
σʔλαΠΤϯεͷࣄͷྲྀΕᶅϞσϦϯά౷ܭֶػցֶशʢਂֶशؚΉʣΛۦͯ͠ճؼɾྨΛߦ͍Ϗδωε՝ΛղܾͰ͖Δ͔ͷݕূɾࢼߦΛ܁Γฦ͠·͢ɻɾճؼɾྨɾΫϥελϦϯάɾ౷ܭֶɾਂֶशใՊֶ౷ܭֶΞϧΰϦζϜ
σʔλαΠΤϯεͷࣄͷྲྀΕᶆධՁʢ,1*ͷݕূʣੳ݁ՌϞσϦϯάͷ݁ՌΛͱʹࢿྉΛ࡞͠KPIͷݕূΛߦ͍͖ͬͯ·͢ɻɾࢿྉ࡞ɾKPIͷ֬ೝʗೝࣝ߹Θͤɾ࣍ΞΫγϣϯͷఏҊ
ػցֶशϋϯζΦϯᶃ࣮ࡍʹػցֶशΛߦͬͯΈ·͠ΐ͏ͪ͜Βˣ͔ΒιʔείʔυΛμϯϩʔυ͍ͯͩ͘͠͞git clone [email protected]:PythonBeginners/Meetup025_EM_Algorithm.git (SSH)git clone https://github.com/PythonBeginners/Meetup025_EM_Algorithm.git (HTTPS)+VQZUFS/PUFCPPLͰҎԼͷϑΝΠϧΛ։͍͍ͯͩ͘͞notebook/01_scikit_learn_tutorial.ipynb४උ͕Ͱ͖ͨΒϋϯζΦϯΛ։࢝͠·͢ʂ
σʔλαΠΤϯεͱʁ·ͱΊɾσʔλαΠΤϯεͱʁɹσʔλΛใՊֶɺ౷ܭֶɺΞϧΰϦζϜΛ༻͍ͯՊֶతʹΞϓϩʔνɻɹ౷ܭతɺܭࢉతɺਓؒతࢹΛ༗ػతʹ݁߹͠ɺࣾձతʹ༗ӹͳݟΛҾ͖ग़͢ɻɹࣾձతઆ໌ඞཁɻɾσʔλαΠΤϯεͷࣄͷछྨɹधཁ༧ଌɺը૾ೝࣝɺҟৗݕɺࣗવݴޠॲཧɺ࣌ܥྻੳͳͲଟذʹΔɻɾσʔλαΠΤϯεͷࣄͷྲྀΕɹ՝ઃఆɺσʔλͷೖखલॲཧɺϞσϦϯάɺධՁɻɾػցֶशͷ࣮ߦɹϋϯζΦϯΛ࣮ࢪ͠·ͨ͠ɻ
ϕΠζ౷ܭֶͱʁΘ͔ΒΜ
Βͳ͍͔ͨڍख ɾТɾϊγϕΠζ౷ܭֶ
ϕΠζ౷ܭֶͱʁهड़౷ܭֶͱਪܭ౷ܭֶͷҧ͍ɹIUUQTUPLFJOFUCBTJDJOEVDUJWFTUBUJTUJDTϕΠζ౷ܭֶͱʁॳ৺ऀ͚ͷ͍͞͠ղઆɹIUUQTUPLFJOFUCBTJDCBZFTJBOTUBUJTUJDTϕΠζ౷ܭͱʁී௨ͷ౷ܭͱԿ͕ҧ͏ʁపఈղઆʂɹIUUQTVEFNZCFOFTTFDPKQBJCBZFTJBOTUBUJTUJDTIUNMࢀߟ63-छྨ ֓ཁ ྫهड़౷ܭֶ σʔλͷಛΛΘ͔Γ͘͢දݱ͢Δֶதԝɾඪ४ภࠩՄࢹԽਪܭ౷ܭֶ ඪຊΛੳͯ͠ूஂʹ͍ͭͯਪଌ͢Δֶ̓ݕఆɾРೋݕఆɾ૬ؔੳճؼɾྨɾΫϥελϦϯάϕΠζ౷ܭֶ ใ͕ೖΔͨͼʹ֬Λมߋ͍͖ͯ͠σʔλͷશମ૾Λ௫ΜͰֶ͍͘ϕΠζͷఆཧ࠷ਪఆɾ."1ਪఆɾϕΠζਪఆਖ਼نͷਪఆɾΧςΰϦΧϧͷਪఆࣝผϞσϧɾੜϞσϧ(..ɾ̓ɾҼࢠੳɾ&.ΞϧΰϦζϜΨεաఔɾ࠷ٸ߱Լ๏ɾϒʔεςΟϯάϕΠδΞϯωοτϫʔΫɾϚϧίϑ࿈ϞϯςΧϧϩ๏
ϕΠζ౷ܭֶͱʁ1ZUIPO#FHJOOFSTެࣜTMBDLɹ[email protected]ɹࢀߟ֬ɾ౷ܭߴߍେֶϕΠζ౷ܭ"*σʔλαΠΤϯεසओٛ ओ؍ओܾٛ֬ఆࡁΈશମΛ෦͔Βਪଌʮநग़ʯ֬ະܾఆશମͰͳ͘ະདྷʮΞοϓσʔτʯશମूஂσʔλ੩త෦ඪຊ؍ଌऀΑΓશମաڈʹࣄલ֬σʔλಈతʹ؍ଌະདྷʹࣄޙ֬શମΑΓ؍ଌऀ౷ܭͷߟ͑ํΛࠜఈ͔Βม͑Δඞཁ͋Γ
ϕΠζ౷ܭֶͱʁ1ZUIPO#FHJOOFSTެࣜTMBDLɹ[email protected]ɹࢀߟ֬౷ܭϕΠζ౷ܭ
ਓೳֶձIUUQTXXXBJHBLLBJPSKQQEGBJNBQ"*[email protected][email protected]ࢀߟ63-"*Ϛοϓ
ϕΠζͷఆཧ8JLJQFEJBϕΠζͷఆཧΑΓࢀߟP(B|A) =P(A|B)P(B)P(A)ࣄޙ֬ ࣄલ֬P(B) =P(B|A) =P(A|B) =ࣄલ֬ࣄޙ֬
ϕΠζͷఆཧP(B|A) =P(A|B)P(B)P(A)ࣄޙ֬ ࣄલ֬ϕΠζ౷ܭɺσʔλ͕ෆेͰɺz͋Δࣄଶ͕ൃੜ͢Δ֬zʢʹࣄલ֬ʣΛ࠷ॳʹઃఆͨ͠ޙɺ͞ΒͳΔใ͕ಘΒΕΔʹz͋Δࣄଶ͕ൃੜ͢Δ֬zʢʹࣄޙ֬ʣΛߋ৽͍͖ͯ͠ɺຊདྷى͜ΔͰ͋Ζ͏ࣄͷ֬ʢओ؍֬ʣΛಋ͖ग़͠·͢ɻ
ʮ̑ͷՖՇʯΒͳ͍͔ͨڍख ɾТɾϊγྫΛ͋͛ͯݟ·͠ΐ͏
ͭࢠΫʔΠζʂ
ͷϕΠζ౷ܭֶͷՖՇΛಡΜͩ͜ͱ͕ͳ͍ຖिϚΨδϯͰಡΜͰΔίϛοΫεશרॴ࣋Կϧʔϓࣄલ֬ ΄΅θϩʹ͍ۙҰՖγϣʔτೋ೫େ͖ΊϦϘϯࡾۢϔουϑΥϯ࢛༿͏͗͞ϦϘϯޒ݄ΞΫηҰՖෲࠇˍϚΠϖʔεೋ೫πϯσϨˍՈࢥ͍ࡾۢେਓ͍͠ˍরΕ࢛༿ݩؾˍԕྀ͕ͪޒ݄ਅ໘ ΄΅θϩʹ͍ۙ ߴ͍ ඇৗʹߴ͍ࣄޙ֬θϩʹ͍ۙͣʢ·͙Ε͋Δʣ͓ͦΒ͘ߴ͍͓ͦΒ͘ඇৗʹߴ͍ʢޱบͰ༧ଌՄೳʣ
͏͍ͬͪΐ ɾТɾʆ
ਖ਼ղͪ͜Β
Ͱͪ͜Β Тʆݱࡏ ະདྷաڈ
ਖ਼ղ ʆŋТŋʎݱࡏ ະདྷաڈ ˞͜Εͪΐͬͱࣗ৴ͳ͍
શһมόʔδϣϯ
͜Μͳײ͡Ͱ͢ ɾТɾ
ͷϕΠζ౷ܭֶͷՖՇΛಡΜͩ͜ͱ͕ͳ͍ຖिϚΨδϯͰಡΜͰΔίϛοΫεશרॴ࣋Կϧʔϓࣄલ֬ ΄΅θϩʹ͍ۙҰՖγϣʔτೋ೫େ͖ΊϦϘϯࡾۢϔουϑΥϯ࢛༿͏͗͞ϦϘϯޒ݄ΞΫηҰՖෲࠇˍϚΠϖʔεೋ೫πϯσϨˍՈࢥ͍ࡾۢେਓ͍͠ˍরΕ࢛༿ݩؾˍԕྀ͕ͪޒ݄ਅ໘ ΄΅θϩʹ͍ۙ ߴ͍ ඇৗʹߴ͍ࣄޙ֬θϩʹ͍ۙͣʢ·͙Ε͋Δʣ͓ͦΒ͘ߴ͍͓ͦΒ͘ඇৗʹߴ͍ʢޱบͰ༧ଌՄೳʣࠓೋ೫͚ͩͯͯΈ·͠ΐ͏ ʆŋТŋ
ೋ೫Θ͔Γ·͢ʁ ɾТɾ
Ͱͪ͜Βͷೋ೫ Тʆݱࡏ ະདྷաڈ
ਖ਼ղ ʆŋТŋʎݱࡏ ະདྷաڈ˞͜Εͪΐͬͱࣗ৴ͳ͍
શһมόʔδϣϯʢೋ೫Λ͍ͯͯͩ͘͞ʣ
͜Μͳײ͡Ͱ͢ πϯσϨ
ಥવͰ͕ࠞ͢߹ΨεͰߟ͑ͯΈ·͠ΐ͏
8JLJQFEJBΑΓൈਮΨε ਖ਼نͱʁΨε ਖ਼نͱɺฏۉͷۙʹूੵ͢ΔΑ͏ͳσʔλͷΛදͨ͠࿈ଓతͳมʹؔ͢Δ֬Ͱ͋Δɻத৺ۃݶఆཧʹΑΓɺಠཱͳଟͷҼࢠͷͱͯ͠ද͞ΕΔ֬มਖ਼نʹै͏ɻ͜ͷ͜ͱʹΑΓਖ਼ن౷ܭֶࣗવՊֶɺࣾձՊֶͷ༷ʑͳ໘ͰෳࡶͳݱΛ؆୯ʹද͢Ϟσϧͱͯ͠༻͍ΒΕ͍ͯΔɻͨͱ࣮͑ݧʹ͓͚Δଌఆͷޡࠩਖ਼نʹैͬͯ͢ΔͱԾఆ͞Εɺෆ͔֬͞ͷධՁ͕ܭࢉ͞Ε͍ͯΔɻ֬ີؔඪ४ਖ਼ن͕࣋ͭ֬ີؔͷάϥϑ
ࠞ߹Ψεͱʁࠞ߹ΨεͱɺෳݸͷΨεΛॏͶ߹Θͤͨ֬ີؔͰ͢ɻ֬ີؔෳݸͷΨεͷॏͶ߹Θͤ&.ΞϧΰϦζϜపఈղઆɹIUUQTRJJUBDPNLFONBUTVJUFNTFBFEGBEDFGC6EFNZϕΠζਪఆͱάϥϑΟΧϧϞσϧࠞ߹ਖ਼نIUUQTXXXVEFNZDPNDPVSTFDPNQVUFSWJTJPOMFBSOMFDUVSFPWFSWJFXࢀߟ63-
ೋ೫ɾਖ਼نᶃࣄલ֬ͳ͠ʢ΄΅ϥϯμϜʣຖिϚΨδϯಡΉਓίϛοΫεશר㱣ϧʔϓݰਓ΄Ͳࢄ͕গͳ͘ฏۉ͕ೋ೫ʹूத
ೋ೫ɾਖ਼نᶄࣄલ֬ͳ͠ຖिϚΨδϯಡΉਓίϛοΫεશר㱣ϧʔϓݰਓ΄Ͳࢄ͕গͳ͘ฏۉ͕ೋ೫ʹूத
ʲ࠶ܝʳϕΠζ౷ܭֶͱʁ֬ɾ౷ܭߴߍେֶϕΠζ౷ܭ"*σʔλαΠΤϯεසओٛ ओ؍ओܾٛ֬ఆࡁΈશମΛ෦͔Βਪଌʮநग़ʯ֬ະܾఆશମͰͳ͘ະདྷʮΞοϓσʔτʯશମूஂσʔλ੩త෦ඪຊ؍ଌऀΑΓશମաڈʹࣄલ֬σʔλಈతʹ؍ଌະདྷʹࣄޙ֬શମΑΓ؍ଌऀฏۉͱू߹͕ऩଋ͞ΕΔ·Ͱଟ͘ͷσʔλ͕ඞཁগͳ͍σʔλͰਖ਼نʹԾఆͯ͠ஔ͖͑Δ͜ͱͰϞσϧΛߋ৽͍ͯ͘͜͠ͱ͕Մೳ
ϕΠζ౷ܭֶͱʁ·ͱΊɾϕΠζ౷ܭֶͱʁɹใ͕ೖΔͨͼʹ֬Λมߋ͍͖ͯ͠σʔλͷશମ૾Λ௫ΜͰֶ͍͘ɻɹओ؍ओٛͰࣄલࣝΛөͰ͖ɺϞσϧΛߋ৽͍ͯ͘͜͠ͱ͕ՄೳɾࣄલɺɺࣄޙɹϕΠζ౷ܭͷֶशͱɺਖ਼نͷΠϝʔδΛ௫ΜͰ͍͖ͨͩ·ͨ͠ɻ
ϕΠζ౷ܭֶɾࣄྫհΘ͔ΒΜ
ख़࿅ͷݚڀऀͷʮצͱܦݧʯΛ୭Ͱ؆୯ʹ࠶ݱʙՊֶٕज़ৼڵػߏIUUQTXXXKTUHPKQQSBOOPVODFJOEFYIUNMࢀߟ63-ࣄྫᶃख़࿅ͷݚڀऀͷʮצͱܦݧʯΛ୭Ͱ؆୯ʹ࠶ݱతʢΓ͍ͨ͜ͱʣ୯݁থߏղੳͷߴਫ਼ԽͱߴޮԽ՝ʢϘτϧωοΫʣదͳࢼྉͷબผͱܭଌ݅ͷઃఆΛߦ͏ඞཁ͕͋Δˠɹݚڀऀͷʮצͱܦݧʯʹཔ͍ͬͯͨˠɹਖ਼֬ͳࢉग़ʹ͔͔࣌ؒΔະܦݧͷݚڀऀख़࿅ͷݚڀऀຊݚڀάϧʔϓͷ։ൃͨ͠γεςϜࣄલ֬ θϩ צͱܦݧ ͷ༧උܭଌͰಘΒΕΔඦఔͷσʔλ͔Β༧ଌ θϩ ߴ͍ ख़࿅ͷܦݧऀΑΓ͞Βʹߴ͍ࣄޙ֬ θϩ ߴ͍ ख़࿅ͷܦݧऀΑΓ͞Βʹߴ͍
1Z$PO+1ػցֶशʹ͓͚ΔϋΠύʔύϥϝʔλ࠷దԽͷཧͱ࣮ફIUUQTTQFBLFSEFDLDPNONBTBIJSPKJKJFYVFYJOJPLFSVIBJIBIBSBNFUB[VJTIJIVBGBMTFMJMVOUPTIJKJBOࢀߟ63-ࣄྫᶄ"VUP.-ͷϋΠύʔύϥϝʔλ࠷దԽతʢΓ͍ͨ͜ͱʣϋΠύʔύϥϝʔλ࠷దԽ՝ʢϘτϧωοΫʣదͳύϥϝʔλΛઃఆ͢Δਓࡐ͕ݶΒΕΔύϥϝʔλΛߟ͑Δͷʹ͕͔͔࣌ؒΔˠɹϕΠζ౷ܭֶ͕༷ʑͳΞϧΰϦζϜͰ༻͞Ε͍ͯΔී௨ͷΤϯδχΞख़࿅ͷΤϯδχΞ"VUP.-ࣄલ֬ ϥϯμϜ ࣝɾܦݧ (1&*ɾ51&ɾ#0)#ɾ.5#0ͳͲ֤छΞϧΰϦζϜ ͍ ߴ͍ ߴ͍ʢख़࿅ͷΤϯδχΞΑΓߴ͍͔Ͳ͏͔ෆ໌ʣࣄޙ֬ ͍ ߴ͍ ߴ͍ʢख़࿅ͷΤϯδχΞΑΓߴ͍͔Ͳ͏͔ෆ໌ʣ
1Z$PO+11ZUIPOͱ"VUP.-IUUQTXXXZPVUVCFDPNXBUDI W8ILXV%H#TUࢀߟ63-ࣄྫᶄ"VUP.-ͷϋΠύʔύϥϝʔλ࠷దԽࢀߟ63-1Z$PO+11ZUIPOͱ"VUP.-ɹIUUQTXXXZPVUVCFDPNXBUDI W8ILXV%H#TU1Z$PO+1ػցֶशʹ͓͚ΔϋΠύʔύϥϝʔλ࠷దԽͷཧͱ࣮ફɹIUUQTXXXZPVUVCFDPNXBUDI W'((12MSB&UʢΑΓৄ͘͠Γ͍ͨํ͚ʣϕΠζ࠷దԽͷֶɹIUUQTRJJUBDPNXBUBLBOEIJJUFNTDBCFGEBCDEBDF
ࣄྫᶅϏοΫσʔλͷੳ٬؍త͔Βओ؍తϏοάσʔλͷੳ٬؍త͔Βओ؍తɺϕΠζਪఆ͕͞ΕΔཧ༝IUUQTEDSPTTJNQSFTTDPKQEPDTDPMVNODPMVNOIUNM
ϕΠζ౷ܭͷద༻֬ɾ౷ܭɾਂֶशϕΠζҎ֎ͷख๏ϕΠζ౷ܭཧϞσϧΫϥυͰͷֶशը૾ೝࣝɾࣗવݴޠॲཧʣ(16ͷϦονͳϦιʔε͕༻Ͱ͖ΔͳΒਂֶशͰߴ͍ਫ਼Λग़͢͜ͱ͕ՄೳཧϞσϧͷͨΊઆ໌͍͢͠ਫ਼ͰྼΔΤοδ"*ΤοδΞφϦςΟΫεਂֶशʢਪʣ͕͑ΔͳΒߴ͍ਫ਼˞J1IPOFͳͲిྗʹ༨༟͕͋ΔσόΠεͰ༻Մೳগͳ͍Ϧιʔεɾগͳ͍σʔλͰ͋ΔఔੑೳΛग़͢͜ͱ͕Մೳ"VUP.-ʢػցֶशͷࣗಈԽʣগͳ͍&QPDIͰֶशͰ͖Δ͜ͱΛࢦ͢ͷʹগʑෆ͖(1&*ɾ51&ɾ#0)#ɾ.5#0ͳͲ༷ʑͳܗͰ༻͍ΒΕ͍ͯΔগͳ͍ࢼߦճΛޮతʹར༻ՄೳਂֶशΑΓઆ໌͍͢͠
ϕΠζ౷ܭֶͷࣄྫ·ͱΊɾʮצͱܦݧʯͷஔ͖͑ˠਫ਼ͷ্ɹ୯݁থߏղੳͷߴਫ਼ԽͱߴޮԽʹ͍ͭͯϕΠζ࠷దԽ͕ར༻͞Ε͍ͯΔࣄྫΛհ͍͖ͤͯͨͩ͞·ͨ͠ɻɾ"VUP.-ͷϋΠύʔύϥϝʔλ࠷దԽɹϋΠύʔύϥϝʔλ࠷దԽʹϕΠζ͕ར༻͞Ε͍ͯΔ͜ͱΛհ͠·ͨ͠ɻɾϏοΫσʔλੳͷมԽʢ٬؍త͔Βओ؍తʣɹ੩తͳશମ͔Βσʔλͷશ༰Λ௫Ήैདྷܕͷ౷ܭֶͰɺશମ͕ෆ҆ఆͳݱ࣮ͱ߹ੑ͕͋Θͳ͘ͳ͖͍ͬͯͯΔɻओ؍తͳߟ͑Ͱ݅Λઃఆ͠ɺෆ҆ఆͳશମ͔Βநग़ͨ͠σʔλ܈ʹର͠ɺ݅Λ͚ͭͳ͕Β͑ΛٻΊ͍ͯ͘ϕΠζ౷ܭֶͷߟ͑ํ͕ݱ࣮ʹϚον͍ͯ͠ΔɻɹϏϧɾήΠπʰੈلͷ.JDSPTPGUͷઓྗϕΠζͷςΫϊϩδʔͩʱ
&.ΞϧΰϦζϜΘ͔ΒΜ
ਖ਼ن୯७ͳϞσϧ NJOIUUQTXXXVEFNZDPNDPVSTFDPNQVUFSWJTJPOMFBSOMFDUVSFਖ਼نͷ̏ͭͷ֦ு NJOIUUQTXXXVEFNZDPNDPVSTFDPNQVUFSWJTJPOMFBSOMFDUVSFજࡏมͱ&.ΞϧΰϦζϜ NJOIUUQTXXXVEFNZDPNDPVSTFDPNQVUFSWJTJPOMFBSOMFDUVSFࠞ߹ਖ਼ن NJOIUUQTXXXVEFNZDPNDPVSTFDPNQVUFSWJTJPOMFBSOMFDUVSF6EFNZϕΠζਪఆͱάϥϑΟΧϧϞσϧਖ਼ن୯७ͳϞσϧʙࠞ߹ਖ਼ن6EFNZϕΠζਪఆͱάϥϑΟΧϧϞσϧ
࣮ࡍʹ&.ΞϧΰϦζϜΛߦͬͯΈ·͠ΐ͏ͪ͜Βˣ͔ΒιʔείʔυΛμϯϩʔυ͍ͯͩ͘͠͞git clone [email protected]:PythonBeginners/Meetup025_EM_Algorithm.git (SSH)git clone https://github.com/PythonBeginners/Meetup025_EM_Algorithm.git (HTTPS)+VQZUFS/PUFCPPLͰҎԼͷϑΝΠϧΛ։͍͍ͯͩ͘͞notebook/02_k-means_demo-animation.ipynb४උ͕Ͱ͖ͨΒղઆΛॳΊ·͢ʂ
ॳΊ͍͔͠͠Ε·ͤΜ͕ܧଓ͢Δͱ࣮֬ʹྗʹͳΓ·͢ɻؾܰʹࢀՃ͍ͯͩ͘͠͞ ʆŋТŋʎ#FHJ-BCϕΠζษڧձ΄΅ຖि։࠵͍ͯ͠·͢ʂ#FHJ-BCϕΠζษڧձͰ6EFNZͷແྉ৴ΛͱʹϕΠζͷษڧձΛߦ͍ͬͯ·͢ɻؾʹͳΔਓTMBDLͷ[email protected]νϟϯωϧΛ͍ͯΈ͍ͯͩ͘͞ɻใͰʹ͖ͭʹ͍ࣜ͘ͷಋग़ͳͲߦ͍ͬͯͯɺগʑߴͳ༰Ͱ͢ɻ
&.ΞϧΰϦζϜ·ͱΊɾ୯७ͳਖ਼نͷݶքͱ̏ͭͷΞϓϩʔνɹ୯७ͳਖ਼نͰݶք͕͋Γɺղܾํ๏ͭͷΞϓϩʔν͕͋Δɻɾࠞ߹Ψε (..ͱ&.ΞϧΰϦζϜɹղܾํ๏ͷ̍ͭͰ͋Δࠞ߹Ψεղ͘ͷ͕͘͠ɺղΛٻΊΔͨΊʹ&.ΞϧΰϦζϜΛ͏ɻɾ&.ΞϧΰϦζϜͷ1ZUIPOίʔσΟϯάɹ࣮ࡍʹ1ZUIPOͰಈ͘ͱ͜ΖΛ+VQZUFS/PUFCPPL্Ͱମݧ͖ͯ͠·ͨ͠ɻ
ʲ͓·͚ʳ1ZUIPO#FHJOOFSTԭೄͷऩࢧΘ͔ΒΜ
1ZUIPO#FHJOOFSTԭೄɾऩࢧ߲ ֹۚ ิऩೖ = Ͱ༗ྉԽ͞Ε͔ͯΒͷੵཱۚʢճ߹ಉษڧձͰܦඅΛ1Z%BUB0LJOBXB͔Βෛ୲͍ͯͨͨ͠Ίɺ1Z#FHJͰऩ͍ͯ͠·ͤΜɻࢧग़ =·͍ͬͨͬͯ͘ͳ͍ঢ়ଶͰ͢ɻ࣍ճ1ZUIPO#FHJOOFSTͰొஃऀΛݝ֎͔ΒݺͿࡍͷߤඅʹͯΔ༧ఆͰ͢ɻऩࢧ = ͪΐͬͱཷ·͖ͬͯ·ͨ͠Ͷʔɻ
©)VHLVOJODCONFIDENTIAL͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠(ʆŋωŋ´)ʎ!ZBTVCFJUXJZBTVIBSVTV[VLJIUUQTIVHLVODPN← ྑ͔ͬͨΒ͓༑ୡʹͳΓ·͠ΐ͏ʙ