විසඳුම් ඇගයීමේදී සහ දෝෂ සෙවීමේදී අපි Markov දාම භාවිතා කරන්නේ කෙසේද? පයිතන් පිටපතක් සමඟ

පුහුණුව අතරතුර අපගේ සිසුන්ට සිදුවන්නේ කුමක්ද සහ මෙම සිදුවීම් ප්‍රතිඵලයට බලපාන්නේ කෙසේද යන්න තේරුම් ගැනීම අපට වැදගත් වේ, එබැවින් අපි පාරිභෝගික ගමන් සිතියමක් - පාරිභෝගික අත්දැකීම් සිතියමක් ගොඩනඟමු. සියල්ලට පසු, ඉගෙනුම් ක්රියාවලිය අඛණ්ඩ හා ඒකාබද්ධ දෙයක් නොවේ, එය ශිෂ්යයාගේ අන්තර් සම්බන්ධිත සිදුවීම් සහ ක්රියාවන් දාමයක් වන අතර, මෙම ක්රියාවන් විවිධ සිසුන් අතර බෙහෙවින් වෙනස් විය හැකිය. දැන් ඔහු පාඩම සම්පූර්ණ කර ඇත: ඔහු ඊළඟට කුමක් කරයිද? ගෙදර වැඩට යයිද? එය ජංගම යෙදුමක් දියත් කරයිද? ඔහු පාඨමාලාව වෙනස් කරයිද, ගුරුවරුන් වෙනස් කිරීමට ඉල්ලන්නේද? ඔබ කෙලින්ම ඊළඟ පාඩමට යනවද? නැත්නම් ඔහු බලාපොරොත්තු සුන් වී පිටව යයිද? මෙම සිතියම විශ්ලේෂණය කිරීමෙන්, පාඨමාලාව සාර්ථකව නිම කිරීමට හෝ, අනෙක් අතට, ශිෂ්යයාගේ "හැරීම" වෙත යොමු කරන රටා හඳුනා ගැනීමට හැකිද?

විසඳුම් ඇගයීමේදී සහ දෝෂ සෙවීමේදී අපි Markov දාම භාවිතා කරන්නේ කෙසේද? පයිතන් පිටපතක් සමඟ

සාමාන්‍යයෙන්, CJM තැනීම සඳහා විශේෂිත, ඉතා මිල අධික සංවෘත මූලාශ්‍ර මෙවලම් භාවිතා වේ. නමුත් අපට අවශ්‍ය වූයේ අවම උත්සාහයක් සහ හැකි නම් විවෘත මූලාශ්‍රයක් අවශ්‍ය වන සරල දෙයක් ඉදිරිපත් කිරීමටයි. එබැවින් මාර්කොව් දම්වැල් භාවිතා කිරීමේ අදහස මතු විය - අපි සාර්ථක විය. අපි සිතියමක් ගොඩනඟා, ශිෂ්‍ය හැසිරීම් පිළිබඳ දත්ත ප්‍රස්තාරයක ආකාරයෙන් අර්ථකථනය කළෙමු, ගෝලීය ව්‍යාපාරික ගැටලු සඳහා සම්පූර්ණයෙන්ම පැහැදිලි නොවන පිළිතුරු දුටුවෙමු, සහ ගැඹුරින් සැඟවුණු දෝෂ පවා සොයා ගත්තෙමු. අපි මේ සියල්ල කළේ open source Python script solutions භාවිතයෙන්. මෙම ලිපියෙන් මම එම ඉතා පැහැදිලි නොවන ප්‍රතිඵල සහිත අවස්ථා දෙකක් ගැන කතා කර තිර රචනය සියලු දෙනා සමඟ බෙදා ගන්නෙමි.

ඉතින්, මාර්කොව් දාමයන් සිදුවීම් අතර සංක්‍රාන්ති සම්භාවිතාව පෙන්නුම් කරයි. මෙන්න විකිපීඩියාවෙන් ප්‍රාථමික උදාහරණයක්:

විසඳුම් ඇගයීමේදී සහ දෝෂ සෙවීමේදී අපි Markov දාම භාවිතා කරන්නේ කෙසේද? පයිතන් පිටපතක් සමඟ

මෙහි "E" සහ "A" යනු සිදුවීම් වේ, ඊතල යනු ඒවා අතර සංක්‍රාන්ති වේ (සිද්ධියක සිට එම සිදුවීමට සංක්‍රමණය වීම ඇතුළුව), සහ ඊතලවල බර යනු සංක්‍රාන්ති සම්භාවිතාවයි ("බර යොමු කළ ප්‍රස්තාරය").

ඔබ භාවිතා කළේ කුමක්ද?

මෙම පරිපථය සිසුන්ගේ ක්‍රියාකාරකම් ලඝු-සටහන් වලින් පෝෂණය වූ සම්මත පයිතන් ක්‍රියාකාරීත්වය සමඟ පුහුණු කරන ලදී. ප්‍රතිඵලයක් ලෙස ලැබෙන න්‍යාසයේ ප්‍රස්ථාරය NetworkX පුස්තකාලය මගින් ගොඩනගා ඇත.

ලොගය මේ වගේ ය:

විසඳුම් ඇගයීමේදී සහ දෝෂ සෙවීමේදී අපි Markov දාම භාවිතා කරන්නේ කෙසේද? පයිතන් පිටපතක් සමඟ

මෙය තීරු තුනක වගුවක් අඩංගු csv ගොනුවකි: ශිෂ්‍ය හැඳුනුම්පත, සිදුවීමේ නම, එය සිදු වූ වේලාව. සේවාදායකයාගේ චලනයන් සොයා ගැනීමට, සිතියමක් තැනීමට සහ අවසානයේ Markov දාමයක් ලබා ගැනීමට මෙම ක්ෂේත්‍ර තුන ප්‍රමාණවත් වේ.

පුස්තකාලය විසින් සාදන ලද ප්‍රස්ථාර .dot හෝ .gexf ආකෘතියෙන් ආපසු ලබා දේ. පළමුවැන්න දෘශ්‍යමාන කිරීම සඳහා, ඔබට නොමිලේ Graphviz පැකේජය (gvedit මෙවලම) භාවිතා කළ හැකිය, අපි .gexf සහ Gephi සමඟ වැඩ කළෙමු, නොමිලේ.

මීළඟට මාර්කොව් දාමයන් භාවිතා කිරීම පිළිබඳ උදාහරණ දෙකක් දීමට මම කැමැත්තෙමි, එමඟින් අපගේ අරමුණු, අධ්‍යාපන ක්‍රියාවලීන් සහ Skyeng පරිසර පද්ධතිය ගැන නැවුම් බැල්මක් ගැනීමට අපට හැකි විය. හොඳයි, දෝෂ නිවැරදි කරන්න.

පළමු අවස්ථාව: ජංගම යෙදුම

ආරම්භ කිරීම සඳහා, අපි අපගේ වඩාත් ජනප්‍රිය නිෂ්පාදනයක් වන සාමාන්‍ය පාඨමාලාව හරහා ශිෂ්‍ය ගමන ගවේෂණය කළෙමු. ඒ මොහොතේ, මම Skyeng හි ළමා දෙපාර්තමේන්තුවේ සේවය කරමින් සිටි අතර, අපගේ ළමා ප්‍රේක්ෂකයින් සමඟ ජංගම යෙදුම කෙතරම් ඵලදායී ලෙස ක්‍රියා කරන්නේ දැයි බැලීමට අපට අවශ්‍ය විය.

ලඝු-සටහන් ගෙන ඒවා ස්ක්‍රිප්ට් හරහා ධාවනය කරන විට, මට මෙවැනි දෙයක් ලැබුණි:

විසඳුම් ඇගයීමේදී සහ දෝෂ සෙවීමේදී අපි Markov දාම භාවිතා කරන්නේ කෙසේද? පයිතන් පිටපතක් සමඟ

ආරම්භක නෝඩය ආරම්භක නෝඩය වන අතර, පතුලේ ප්රතිදාන නෝඩ් තුනක් ඇත: ශිෂ්යයා "නින්දට වැටුණි", පාඨමාලාව වෙනස් කර පාඨමාලාව අවසන් කළේය.

  • නින්දට වැටුණා, “නින්ද ගියා” - මෙයින් අදහස් කරන්නේ ඔහු තවදුරටත් පන්ති නොයන බවයි, බොහෝ විට ඔහු වැටී ඇත. අපි ශුභවාදීව මෙම තත්වය හඳුන්වන්නේ "නිදි", මන්ද ... න්‍යායාත්මකව, ඔහුට තවමත් ඔහුගේ අධ්‍යයන කටයුතු කරගෙන යාමට අවස්ථාව තිබේ. නරකම ප්‍රතිඵලය අපට.
  • ජෙනරල් අතහැරියා, පාඨමාලාව වෙනස් කළා - ජෙනරල් සිට වෙනත් දෙයකට මාරු වී අපගේ මාර්කොව් දාමයට අහිමි විය.
  • පාඨමාලාව අවසන්, පාඨමාලාව අවසන් - පරිපූර්ණ තත්ත්වය, පුද්ගලයා පාඩම් 80% සම්පූර්ණ කර ඇත (සියලු පාඩම් අවශ්ය නොවේ).

සාර්ථක පන්ති නෝඩයට ඇතුළු වීම යනු ගුරුවරයා සමඟ එක්ව අපගේ වේදිකාවේ පාඩම සාර්ථකව නිම කිරීමයි. එය පාඨමාලාවේ ප්‍රගතිය සහ අපේක්ෂිත ප්‍රතිඵලය වෙත ප්‍රවේශය වාර්තා කරයි - “පාඨමාලාව සම්පූර්ණ කළා.” සිසුන් හැකි තරම් සහභාගී වීම අපට වැදගත් වේ.

ජංගම යෙදුම (යෙදුම් සැසි නෝඩය) සඳහා වඩාත් නිවැරදි ප්‍රමාණාත්මක නිගමන ලබා ගැනීම සඳහා, අපි එක් එක් අවසාන නෝඩ් සඳහා වෙන වෙනම දාම සාදා ඉන්පසු දාර බර යුගල වශයෙන් සංසන්දනය කළෙමු:

  • යෙදුම් සැසියේ සිට එය වෙත ආපසු;
  • යෙදුම් සැසියේ සිට සාර්ථක පන්තිය දක්වා;
  • සාර්ථක පන්තියේ සිට යෙදුම් සැසිය දක්වා.

විසඳුම් ඇගයීමේදී සහ දෝෂ සෙවීමේදී අපි Markov දාම භාවිතා කරන්නේ කෙසේද? පයිතන් පිටපතක් සමඟ
වම් පසින් පා course මාලාව සම්පූර්ණ කළ සිසුන් සිටින අතර දකුණු පසින් “නින්දට වැටුණු” අය සිටිති.

මෙම දාර තුනෙන් ශිෂ්‍යයෙකුගේ සාර්ථකත්වය සහ ඔවුන් ජංගම යෙදුම භාවිතා කිරීම අතර සම්බන්ධය පෙන්වයි. නින්දට වැටුණු සිසුන්ට වඩා පාඨමාලාව සම්පූර්ණ කළ සිසුන්ට අයදුම්පත්‍රයට ප්‍රබල සම්බන්ධයක් තිබෙනු දැකීමට අපි අපේක්ෂා කළෙමු. කෙසේ වෙතත්, යථාර්ථයේ දී අපට හරියටම ප්රතිවිරුද්ධ ප්රතිඵල ලැබුණි:

  • විවිධ පරිශීලක කණ්ඩායම් ජංගම යෙදුම සමඟ වෙනස් ලෙස අන්තර් ක්‍රියා කරන බවට අපි වග බලා ගත්තෙමු;
  • සාර්ථක සිසුන් ජංගම යෙදුම අඩු දැඩි ලෙස භාවිතා කරයි;
  • නින්දට වැටෙන සිසුන් ජංගම යෙදුම වඩාත් ක්‍රියාශීලීව භාවිතා කරයි.

මෙයින් අදහස් කරන්නේ නින්දට වැටෙන සිසුන් ජංගම යෙදුමේ වැඩි වැඩියෙන් කාලය ගත කිරීමට පටන් ගන්නා අතර අවසානයේ එය සදහටම පවතින බවයි.

විසඳුම් ඇගයීමේදී සහ දෝෂ සෙවීමේදී අපි Markov දාම භාවිතා කරන්නේ කෙසේද? පයිතන් පිටපතක් සමඟ

මුලදී අපි පුදුමයට පත් වූ නමුත් ඒ ගැන සිතා බැලූ විට මෙය සම්පූර්ණයෙන්ම ස්වාභාවික බලපෑමක් බව අපට වැටහුණි. එක් අවස්ථාවක, මම මෙවලම් දෙකක් භාවිතා කරමින් තනිවම ප්‍රංශ භාෂාව ඉගෙන ගත්තෙමි: ජංගම යෙදුමක් සහ YouTube හි ව්‍යාකරණ දේශන. මුලදී, මම ඔවුන් අතර කාලය 50 සිට 50 දක්වා අනුපාතයකින් බෙදා ගත්තෙමි. නමුත් යෙදුම වඩාත් විනෝදජනකයි, සූදුවක් ඇත, සෑම දෙයක්ම සරල, වේගවත් සහ පැහැදිලි ය, නමුත් දේශනයේදී ඔබට එය සොයා බැලිය යුතුය, යමක් ලියන්න. , සටහන් පොතක පුහුණු වන්න. ක්‍රමයෙන්, මම මගේ ස්මාර්ට් ජංගම දුරකතනයේ වැඩි කාලයක් ගත කිරීමට පටන් ගතිමි, එහි කොටස 100% දක්වා වර්ධනය වන තුරු: ඔබ ඒ සඳහා පැය තුනක් ගත කරන්නේ නම්, ඔබ සම්පූර්ණ කළ වැඩ පිළිබඳ ව්‍යාජ හැඟීමක් ඇති කරයි, එම නිසා ඔබට ගොස් කිසිවක් ඇසීමට ආශාවක් නැත. .

නමුත් මෙය විය හැක්කේ කෙසේද? සියල්ලට පසු, අපි විශේෂයෙන් ජංගම යෙදුමක් නිර්මාණය කළෙමු, එය තුළට Ebbinghaus වක්‍රය ගොඩනගා ඇත, එය සූදු කළා, මිනිසුන් එහි කාලය ගත කරන පරිදි එය ආකර්ශනීය කර ඇත, නමුත් එයින් පෙනී යන්නේ එය ඔවුන්ගේ අවධානය වෙනතකට යොමු කරන බවයි? ඇත්ත වශයෙන්ම, හේතුව නම්, ජංගම යෙදුම් කණ්ඩායම එහි කාර්යයන් සමඟ හොඳින් කටයුතු කළ අතර, එහි ප්‍රතිඵලයක් ලෙස එය සිසිල්, ස්වයංපෝෂිත නිෂ්පාදනයක් බවට පත් වූ අතර අපගේ පරිසර පද්ධතියෙන් ඉවත් වීමට පටන් ගත්තේය.

පර්යේෂණයේ ප්‍රතිඵලයක් ලෙස, ප්‍රධාන අධ්‍යයන පාඨමාලාවට අවධානය වෙනතකට යොමු නොවන පරිදි ජංගම යෙදුම කෙසේ හෝ වෙනස් කළ යුතු බව පැහැදිලි විය. සහ දරුවන් සහ වැඩිහිටියන් යන දෙකම. මෙම කාර්යය දැනට සිදු වෙමින් පවතී.

දෙවන අවස්ථාව: ඇතුල්වීමේ දෝෂ

අනාගතයේදී ඇති විය හැකි තාක්ෂණික ගැටළු ඉවත් කරමින් නව ශිෂ්‍යයෙකු ලියාපදිංචි කිරීමේදී ඇතුළත් කිරීම විකල්ප අතිරේක ක්‍රියා පටිපාටියකි. මූලික දර්ශනය උපකල්පනය කරන්නේ පුද්ගලයෙකු ගොඩබෑමේ පිටුවේ ලියාපදිංචි වී ඇති බවත්, ඔහුගේ පුද්ගලික ගිණුමට ප්‍රවේශය ලබාගෙන ඇති බවත්, සම්බන්ධ වී හඳුන්වාදීමේ පාඩමක් ලබා දෙන බවත්ය. ඒ අතරම, හඳුන්වාදීමේ පාඩම අතරතුර තාක්ෂණික දුෂ්කරතා විශාල ප්‍රතිශතයක් අපි සටහන් කරමු: බ්‍රව්සරයේ වැරදි අනුවාදය, මයික්‍රොෆෝනය හෝ ශබ්දය ක්‍රියා නොකරයි, ගුරුවරයාට වහාම විසඳුමක් යෝජනා කළ නොහැක, සහ මේ සියල්ල පැමිණෙන විට විශේෂයෙන් දුෂ්කර ය. දරුවන්ට. එමනිසා, අපි ඔබගේ පුද්ගලික ගිණුමේ අතිරේක යෙදුමක් සකස් කර ඇත, ඔබට සරල පියවර හතරක් සම්පූර්ණ කළ හැකිය: ඔබගේ බ්‍රව්සරය, කැමරාව, මයික්‍රෆෝනය පරීක්ෂා කර හඳුන්වාදීමේ පාඩම අතරතුර දෙමාපියන් අසල සිටින බව තහවුරු කරන්න (සියල්ලට පසු, ඔවුන් ගෙවන්නේ ඔවුන්ය. ඔවුන්ගේ දරුවන්ගේ අධ්‍යාපනය).

මෙම ඇතුල්වීමේ පිටු කිහිපය මෙවැනි පුනීලයක් පෙන්වයි:

විසඳුම් ඇගයීමේදී සහ දෝෂ සෙවීමේදී අපි Markov දාම භාවිතා කරන්නේ කෙසේද? පයිතන් පිටපතක් සමඟ
1: තරමක් වෙනස් (සේවාදායකයා මත පදනම්ව) පිවිසුම් සහ මුරපද ඇතුළත් කිරීමේ ආකෘති තුනකින් ආරම්භක වාරණ.
2: අමතර ඇතුළත් කිරීමේ ක්‍රියා පටිපාටියට එකඟ වන කොටුව.
2.1-2.3: මාපිය පැමිණීම, Chrome අනුවාදය සහ ශබ්දය පරීක්ෂා කරන්න.
3: අවසාන කොටස.

එය ඉතා ස්වාභාවික ලෙස පෙනේ: පළමු පියවර දෙකේදී, බොහෝ අමුත්තන් පිටත්ව යන්නේ, පිරවීමට, පරීක්ෂා කිරීමට යමක් ඇති බව වටහාගෙන, නමුත් කාලය නැත. සේවාදායකයා තුන්වන පියවරට පැමිණ තිබේ නම්, ඔහු නිසැකවම අවසන් තරඟයට පැමිණෙනු ඇත. පුනීලයේ කිසිවක් සැක කිරීමට එක හේතුවක් නැත.

එසේ වුවද, අපගේ ඇතුල්වීම සම්භාව්‍ය ඒකමාන පුනීලයක් මත නොව Markov දාමයක් භාවිතයෙන් විශ්ලේෂණය කිරීමට අපි තීරණය කළෙමු. අපි තවත් සිදුවීම් ටිකක් ක්‍රියාත්මක කර, පිටපත ධාවනය කර මෙය ලබා ගත්තෙමු:

විසඳුම් ඇගයීමේදී සහ දෝෂ සෙවීමේදී අපි Markov දාම භාවිතා කරන්නේ කෙසේද? පයිතන් පිටපතක් සමඟ

මෙම අවුල්සහගත තත්ත්වය තුළ, එක් දෙයක් පමණක් පැහැදිලිව වටහා ගත හැකිය: යමක් වැරදී ඇත. ඇතුළත් කිරීමේ ක්‍රියාවලිය රේඛීය ය, මෙය සැලසුමට ආවේනික ය, එහි එවැනි සම්බන්ධතා ජාලයක් නොතිබිය යුතුය. පරිශීලකයා පියවර අතරට විසි කර ඇති බව මෙහිදී වහාම පැහැදිලි වේ, ඒ අතර කිසිදු සංක්‍රාන්තියක් නොතිබිය යුතුය.

විසඳුම් ඇගයීමේදී සහ දෝෂ සෙවීමේදී අපි Markov දාම භාවිතා කරන්නේ කෙසේද? පයිතන් පිටපතක් සමඟ

මෙම අමුතු පින්තූරය සඳහා හේතු දෙකක් තිබිය හැකිය:

  • ෂෝල්ස් ලොග් දත්ත ගබඩාවට රිංගා ඇත;
  • නිෂ්පාදනයේම වැරදි තිබේ - ඇතුල්වීම.

පළමු හේතුව බොහෝ දුරට සත්‍ය වේ, නමුත් එය පරීක්ෂා කිරීම තරමක් ශ්‍රමය-දැඩි වන අතර, ලඝු-සටහන් නිවැරදි කිරීම UX වැඩිදියුණු කිරීමට උපකාරී නොවේ. නමුත් දෙවැන්න සමඟ, එය තිබේ නම්, යමක් ඉක්මනින් කළ යුතුව තිබුණි. එමනිසා, අපි නෝඩ් දෙස බැලීමට, නොතිබිය යුතු දාර හඳුනා ගැනීමට සහ ඒවායේ සිදුවීමට හේතු සොයා බැලීමට ගියෙමු. සමහර පරිශීලකයින් සිරවී රවුමක ඇවිද ගිය බව අපි දුටුවෙමු, අනෙක් අය මැද සිට ආරම්භයට වැටී ඇති අතර අනෙක් අයට ප්‍රතිපත්තිමය වශයෙන් පළමු පියවර දෙකෙන් පිටතට යාමට නොහැකි විය. අපි දත්ත QA වෙත මාරු කළෙමු - ඔව්, ඔන්බෝඩ් කිරීමේදී ප්‍රමාණවත් දෝෂ ඇති බව පෙනී ගියේය: මෙය එවැනි අතුරු නිෂ්පාදනයක්, කිහිලිකරු ටිකක්, එය ප්‍රමාණවත් තරම් ගැඹුරින් පරීක්‍ෂා කර නැත, මන්ද ... අපි කිසිම ප්‍රශ්නයක් බලාපොරොත්තු වුණේ නැහැ. දැන් මුළු පටිගත කිරීමේ ක්‍රියාවලියම වෙනස් වී ඇත.

මෙම කථාව QA ක්ෂේත්රයේ Markov දාමවල අනපේක්ෂිත යෙදුමක් අපට පෙන්වා දුන්නේය.

එය ඔබම උත්සාහ කරන්න!

මම මගේ එක දැම්මා Markov දාමයන් පුහුණු කිරීම සඳහා Python පිටපත පොදු වසම තුළ - ඔබේ සෞඛ්යය සඳහා එය භාවිතා කරන්න. GitHub හි ලේඛනගත කිරීම, මෙහි ප්‍රශ්න ඇසිය හැක, මම සියල්ලට පිළිතුරු දීමට උත්සාහ කරමි.

හොඳයි, ප්රයෝජනවත් සබැඳි: NetworkX පුස්තකාලය, Graphviz Visualizer. මෙහි Habré ගැන ලිපියක් තියෙනවා Markov දාම ගැන. ලිපියේ ඇති ප්‍රස්ථාර භාවිතා කර ඇත ගෙපි.

මූලාශ්රය: www.habr.com

අදහස් එක් කරන්න