Машиналық оқытуға кіріспе



Жұмыс түрі:  Курстық жұмыс
Тегін:  Антиплагиат
Көлемі: 18 бет
Таңдаулыға:   
Қазақстан Республкасының білім және ғылым министрлігіА.Байтұрсынов атындағы Қостанай өңірлік университеті

Исрар Т.Б.

Нейрондық желіні қолданып өздігінен білім алу жүйесін жасау

ДИПЛОМДЫҚ ЖОБА

6В06103 Ақпараттық технологиялар және робототехника білім беру бағдарламасы

Қостанай 2022
----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------
Мазмұны
----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------
Кipicпe ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------
1 Aнaлитикaлық бөлiм ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ...
----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------
2 Жoбaлық бөлiм ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ..
----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------
3 Тәжipибeлiк бөлiм ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ...
----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------
Қopытынды ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ... ... ... ...
----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------
Қoлдaнылғaн әдeбиeттep тiзiмi ... ... ... ... ... ... ... . ... ... ... ... ... ... ... ...
----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------
Кіріспе
----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------
1 Аналитикалық бөлім
----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------
1.1 Машиналық оқытуға кіріспе
----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------
Заманауи технологиялардың қазіргі жетілуіне байланысты бізде мол бір ресурс бар: құрылымдық және құрылымдалмаған деректердің айтарлықтай көлемі. Жиырмасыншы ғасырдың екінші жартысында ML болжау жасау үшін деректерден білімді шығаратын өздігінен білім алу алгоритмдерін қамтитын жасанды интеллекттің (AI) қосалқы саласы ретінде дамыды. Адамдардан ережелерді қолмен шығаруды және деректердің үлкен көлемін талдау арқылы үлгілерді құруды талап етудің орнына, ML болжамдық үлгілердің өнімділігін біртіндеп жақсартатын және деректерге негізделген шешімдерді қабылдайтын деректерде білім жинауға тиімдірек балама ұсынады. ML маңыздылығы тек информатикамен байланысты зерттеулерде ғана емес; оның біздің күнделікті өміріміздегі рөлі бұрынғыдан да арта түседі. ML бізге сенімді спам сүзгілерін, пайдаланушыға ыңғайлы мәтін мен сөзді тану бағдарламалық құралын, дәлелденген іздеу жүйелерін және перспективалы шахмат бағдарламаларын пайдалануға мүмкіндік береді. Жақында біз бұл тізімге қауіпсіз және тиімді өздігінен жүретін көліктерді қосамыз деп үміттенеміз. Сонымен қатар, медициналық қолдануда айтарлықтай прогреске қол жеткізілді; мысалы, зерттеушілер терең оқыту үлгілері тері обырын адамға жақын дәлдікпен анықтай алатынын көрсетті. Жақында DeepMind зерттеушілері тағы бір маңызды кезеңге қол жеткізді, олар белоктардың үшінші құрылымдарын болжау үшін терең оқытуды қолданды, бірінші рет физикалық тәсілдерден асып түсті.
----------------------------------- ----------------------------------- ----------
Машиналық оқыту кең ауқымды және сонымен қатар пәнаралық сала болып табылады, өйткені ол басқа зерттеу салаларындағы көптеген ғалымдарды біріктіреді. Әдеттегідей, көптеген терминдер мен ұғымдар қайта ашылды немесе қайта анықталды және сізге бұрыннан таныс болуы мүмкін, бірақ әртүрлі атаулармен.
----------------------------------- ----------------------------------- ----------
Дәстүрлі компьютерлік бағдарламалау құрылымдық деректерге нақты ережелерді қолдануды қамтиды. Адам әзірлеушісі компьютерді қажетті нәтижеге қол жеткізу үшін деректерге нұсқаулар жинағын қолдану үшін бағдарламалайды. Салық декларациясын елестетіп көріңіз: әрбір өрістің нақты анықталған мағынасы бар және оны толтыру нақты ережелерге бағынады. Бұл ережелердің күрделілігі сіз тұратын жеріңізге байланысты. Толтыру кезінде адам қателесуі мүмкін, бірақ компьютерлік бағдарламалар бұл тапсырманы өте жақсы орындайды. Дәстүрлі бағдарламалау парадигмасынан айырмашылығы, машиналық оқыту - бұл бағдарламаны немесе алгоритмді тікелей жүзеге асырудың орнына кейбір деректерден шығаруға мүмкіндік беретін әдістер тобы. Сонымен, машиналық оқытуда сіз бұрынғыдай компьютеріңізге деректерді бересіз, бірақ нақты нұсқауларды жүктеп, нәтижені күтудің орнына сіз күтілетін нәтижені бересіз және машинаға алгоритмді өздігінен табуға мүмкіндік бересіз. Фотосуреттегі бетті тану үшін компьютер бағдарламасын жасау үшін досыңыздың суреттердің үлкен жинағын талдайтын және оларға сәйкес функцияны жасайтын алгоритмді қолдануға болады. Егер сіз бәрін дұрыс жасасаңыз, жасалған функция сіз әлі көрмеген жаңа фотосуреттерге сәйкес келеді. Әрине, бағдарлама оның мақсаты туралы білмейді. Ол тек өзіне берілген түпнұсқаларға ұқсас кескіндерді анықтай алады.
----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------
Сур.1. Бағдарламалық жасақтаманы жасаушылардың көпшілігіне таныс стандартты бағдарламалау парадигмасы. Әзірлеуші алгоритмді анықтайды және кодты қолданады, ал пайдаланушылар деректерді ұсынады
----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------
Бұл жағдайда бағдарламада берілген суреттер оқу деректері деп аталады, ал суреттердегі адамдардың есімдері - белгілер. Алгоритмді оқығаннан кейін сіз оны тестілеу мақсатында жаңа деректердегі белгілерді болжау үшін қолдана аласыз. - Сур.2 осы мысалды көрсетеді және машиналық оқыту парадигмасы схемалық түрде ұсынылған.
----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------
Машиналық оқыту парадигмасы
----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------
Сур. 2. Машиналық оқыту парадигмасы: даму барысында сіз алгоритмді мәліметтер жиынтығы негізінде жасайсыз, содан кейін оны соңғы бағдарламаға қосасыз
----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------
Машиналық оқыту ережелер анық емес жағдайларда қажет. Оны "мен оны көрген кезде білемін"сияқты мәселелерді шешу үшін қолдануға болады. Функцияны тікелей бағдарламалаудың орнына сіз бұл функцияның не істеу керектігін көрсететін деректерді бересіз, содан кейін сіздің деректеріңізге сәйкес келетін функцияны әдістемелік түрде жасайсыз.
----------------------------------- ----------------------------------- ----------
Іс жүзінде Машиналық оқыту әдетте пайдалы бағдарламаны құру мақсатында дәстүрлі бағдарламалаумен біріктіріледі. Біздің бет-әлпетті тану қолданбасы жағдайында, машинаны оқыту алгоритмін қолданбас бұрын, компьютерге мысал суреттерін қалай табуға, жүктеуге және түрлендіруге болатындығын үйрету керек. Сонымен қатар, сіз эвристикалық алгоритмдерді бет суреттерін күн батуы мен латте өнерінің фотосуреттерінен ажырату үшін қолдана аласыз, содан кейін атаулар мен тұлғаларды сәйкестендіру үшін машиналық оқыту әдістерін қолдана аласыз. Көбінесе дәстүрлі бағдарламалау әдістері мен машиналық оқытудың жетілдірілген алгоритмдерінің үйлесімі олардың біреуін қолданудан гөрі жақсы нәтиже береді.
----------------------------------- ----------------------------------- ----------
Машиналық оқыту - бұл арнайы әдіс. Келесі жағдайларда дәстүрлі бағдарламалауға артықшылық беріледі:
oo ----------------------------------- ----------------------------------- ----------
мәселені дәстүрлі алгоритмдердің көмегімен шешуге болады: егер сіз мәселені шешу үшін код жаза алсаңыз, онда оны түсіну, қолдау, тексеру және жөндеу оңайырақ болады;
oo ----------------------------------- ----------------------------------- ----------
тамаша дәлдікті күтесіз: барлық күрделі бағдарламаларда қателер бар. Дегенмен, бағдарламалық жасақтаманы әзірлеуге дәстүрлі көзқараста сіз оларды әдістемелік түрде анықтап, түзетесіз. Бұл машиналық оқытуды пайдалану кезінде әрқашан мүмкін емес. Сіз машиналық оқыту жүйесін жақсарта аласыз, бірақ белгілі бір қатеге тым көп көңіл бөлу жүйені жиі нашарлатады;
oo ----------------------------------- ----------------------------------- ----------
қарапайым эвристикалық алгоритмдер жақсы жұмыс істейді:
----------------------------------- ----------------------------------- ----------
егер сіз кодтың бірнеше жолымен жеткілікті жақсы ережені жүзеге асыра алсаңыз, оны жасаңыз және бақытты болыңыз. Қарапайым жақсы орындалған эвристика түсінуге және қолдауға оңай болады. Машиналық оқытуды қолдану арқылы іске асырылатын мүмкіндіктер анық емес және оларды жаңарту үшін бөлек оқу процесін қажет етеді. (Екінші жағынан, эвристикалық алгоритмдердің күрделі тізбегін сақтау қажет болса, оларды машиналық оқытумен ауыстыруға болады.)
----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------
Көбінесе дәстүрлі бағдарламалау арқылы шешуге болатын мәселелер мен тіпті машиналық оқыту арқылы шешу мүмкін емес мәселелер арасында жиі жұқа сызық бар. Суреттердегі беттерді тану және оларды атауларға сәйкестендіру бір ғана мысал. Тағы бір мысал, мәтіннің қай тілде жазылатынын анықтау және мәтінді белгілі бір тілге аудару.
----------------------------------- ----------------------------------- ----------
Біз жиі дәстүрлі бағдарламалауды машиналық оқыту көмектесетін кезде таңдаймыз, мысалы, мәселе өте күрделі болған кезде. Өте күрделі, ақпаратқа бай сценарийлермен бетпе-бет келгенде, адамдар макроэкономика, қор нарығы немесе саясатқа қатысты сияқты қарапайым және нақты есеп беру ережелеріне жүгінеді. Процесс менеджерлері мен сарапшылар деп аталатын адамдар көбінесе машиналық оқыту арқылы жасалған түсініктерден үлкен пайда ала алады. Көбінесе нақты дүние деректері күтілгеннен гөрі құрылымдалған және біз осы салалардың көпшілігінде автоматтандыру мен интеллект мүмкіндіктерін енді ғана пайдалана бастаймыз.
----------------------------------- ----------------------------------- ----------
Жалпы алғанда, машиналық оқытуды осы заңдылықтарды анықтайтын немесе "зерттейтін" алгоритмдердің құрылысы ретінде сипаттауға болады.
----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------

----------------------------------- ----------------------------------- ----------
1.2 Машиналық оқыту әдістері мен тәсілдері
----------------------------------- ----------------------------------- ----------

Негізінен, машиналық оқыту рұқсат етілген диапазонда Шығыс мәндерін болжау үшін кіріс деректерін алатын және талдайтын бағдарламаланған алгоритмдерді қолданады. Осы алгоритмдерге жаңа мәліметтер енген сайын, олар уақыт өте келе "интеллект" дамыта отырып, өнімділікті арттыру үшін өз операцияларын үйренеді және оңтайландырады.

Мұғаліммен оқыту (ағылш. Supervised learning)
Мұғаліммен бірге оқыту-бұл бұрыннан дайындалған деректердің сипаттамалары арасындағы қатынастарды іздеуге мамандандырылған Машиналық оқыту бөлімі. Мұғаліммен оқытуда машина үлгі бойынша оқытылады. Оператор машинаны оқыту алгоритмін қажетті кірістер мен шығыстарды қамтитын белгілі деректер жиынтығымен қамтамасыз етеді және алгоритм сол кірістер мен шығыстарға жету жолын анықтау әдісін табуы керек. Оператор есептің дұрыс жауаптарын білгенде, алгоритм деректердегі заңдылықтарды анықтайды, бақылаулардан үйренеді және болжам жасайды. Алгоритм болжам жасайды және оны оператор түзетеді - және бұл процесс алгоритм жоғары дәлдікөнімділік деңгейіне жеткенше жалғасады.
Мұғаліммен оқытудың қолшатырына мыналар жатады: жіктеу, регрессия және болжау.
Жіктеу: жіктеу есептерінде машинаны оқыту бағдарламасы бақыланатын мәндерден қорытынды жасап, жаңа бақылаулардың қай санатқа жататынын анықтауы керек. Мысалы, электрондық поштаны "спам" немесе "спам емес" деп сүзгілеу кезінде бағдарлама бар бақылау деректерін қарап, электрондық пошталарды тиісті түрде сүзгілеуі керек.
Регрессия: регрессия есептерінде машинаны оқыту бағдарламасы айнымалылар арасындағы қатынасты бағалауы және түсінуі керек. Регрессиялық талдау бір тәуелді айнымалыға және басқа да өзгермелі айнымалыларға назар аударады, бұл оны болжау мен болжау үшін өте пайдалы етеді.
Болжау: болжау-бұл әдетте трендтерді талдау үшін қолданылатын өткен және қазіргі мәліметтерге негізделген болашақты болжау процесі.

Мұғалімді ішінара тарта отырып оқыту (ағылш. Semi-supervised learning)
Мұғалімнің ішінара қатысуымен оқыту Мұғаліммен оқыту сияқты, бірақ оның орнына таңбаланған және таңбаланбаған деректерді қолданады. Белгіленген Деректер-бұл алгоритм деректерді түсінуі үшін маңызды тегтері бар ақпарат, ал таңбаланбаған деректер бұл ақпараттан айырылған. Осы комбинацияны қолдана отырып, машинаны оқыту алгоритмдері таңбаланбаған деректерді таңбалауды үйренеді.

Мұғалімсіз оқыту (ағылш. Unsupervised learning)
Мұнда Машиналық оқыту алгоритмі заңдылықтарды анықтау үшін деректерді зерттейді. Нұсқаулар беру үшін жауап кілті немесе адам операторы жоқ. Оның орнына, машина қол жетімді деректерді талдау арқылы корреляциялар мен қатынастарды анықтайды. Машиналарды оқыту алгоритмін мұғалімсіз оқыту процесінде үлкен деректер жиынтығын түсіндіру және соған сәйкес деректерді өңдеу қалады. Алгоритм бұл деректерді құрылымын сипаттау үшін қандай-да бір жолмен ұйымдастыруға тырысады. Бұл деректерді кластерлерге топтастыруды немесе оларды ұйымдасқан етіп ұйымдастыруды білдіруі мүмкін.
Ол көбірек деректерді бағалаған сайын, оның осы мәліметтер негізінде шешім қабылдау қабілеті біртіндеп жақсарады және жетілдіріледі.

Бақылаусыз оқыту қамқорлығына жатады:
1. Кластерлеу: кластерлеу ұқсас мәліметтер жиынтығын топтастыруды қамтиды (белгілі бір критерийлер негізінде). Бұл деректерді бірнеше топқа бөлуге және үлгіні іздеу үшін әр мәліметтер жиынтығын талдауға пайдалы.
2. Өлшемді азайту: өлшемді азайту дәл қажетті ақпаратты табу үшін қарастырылатын айнымалылардың санын азайтады.

Күшейтумен оқыту (ағылш. Reinforcement learning)

Күшейтумен оқыту машиналық оқыту алгоритмі әрекеттер жиынтығымен, параметрлермен және соңғы нүктелермен қамтамасыз етілген реттелген оқыту процестеріне бағытталған. Ережелерді анықтау арқылы машиналық оқыту алгоритмі қайсысы оңтайлы екенін анықтау үшін әр нәтижені қадағалап, бағалай отырып, әртүрлі опциялар мен мүмкіндіктерді зерттеуге әрекеттенеді. Күшейтетін оқыту машинаны сынақ және қате арқылы үйретеді. Ол бұрынғы тәжірибелерден сабақ алады және ең жақсы нәтижеге жету үшін өз көзқарасын жағдайға сәйкес бейімдей бастайды.

1.3 Python және машиналық оқыту

Python - деректер ғылымында қолданылатын ең танымал бағдарламалау тілдерінің бірі және оның ашық бастапқы коды өте белсенді қауымдастығы ғылыми есептеулер мен ML үшін көптеген пайдалы кітапханаларды шығарды.
Python сияқты интерпретацияланған тілдердің есептеу қарқынды тапсырмалардағы өнімділігі төмен деңгейлі бағдарламалау тілдерінің өнімділігінен нашар болса да, NumPy және SciPy сияқты кеңейтім кітапханалары жылдам векторланған операциялар үшін төмен деңгейлі Fortran және C енгізулерін қолданатын әзірленген. көпөлшемді массивтер.
ML үшін бағдарламалау есептерін шешу кезінде біз негізінен қазіргі уақытта ең танымал және қолжетімді ашық бастапқы ML кітапханаларының бірі болып саналатын scikit-Ieam кітапханасына жүгінеміз. Кейінгі тарауларда терең оқыту деп аталатын ML ішкі өрісіне назар аударған кезде біз графикалық тақталарды қолдану арқылы терең нейрондық желі үлгілерін өте тиімді үйретуге арналған TensorFlow кітапханасының соңғы нұсқасын қолданамыз.
Python тілі сандық есептеулерге арналған таңғажайып пакеттер жиынтығының арқасында машиналық оқыту саласында кеңінен қолданылады. Мен өз бағдарламамда келесілерді қолданамын:
1. Natural Language ToolKit
NLTK -- адам тілінің деректерімен жұмыс істеу үшін Python бағдарламаларын жасауға арналған жетекші платформа. Ол WordNet сияқты 50-ден астам корпустық және лексикалық ресурстарға пайдалану оңай интерфейстерді, сондай-ақ жіктеу, таңбалау, штрихтау, тегтеу, талдау және семантикалық талдау үшін мәтінді өңдеу кітапханаларының жиынтығын, өнеркәсіптік NLP кітапханаларына арналған қаптаманы және белсенді талқылау тақтасы.форум.
Есептеу лингвистикасының тақырыптарымен бірге бағдарламалау негіздерін, сонымен қатар жан-жақты API құжаттамасын таныстыратын практикалық нұсқаулықпен NLTK лингвистер, инженерлер, студенттер, мұғалімдер, зерттеушілер және сала пайдаланушылары үшін қолайлы. NLTK Windows, Mac OS X және Linux үшін қол жетімді. Ең бастысы, NLTK - бұл тегін, ашық бастапқы коды бар, қоғамдастыққа негізделген жоба.
NLTK Python көмегімен есептеуіш лингвистикада оқыту және жұмыс істеу үшін тамаша құрал және табиғи тілде ойнауға арналған таңғажайып кітапхана деп аталды.
2. NumPy
NumPy -- Python тіліндегі ғылыми есептеулерге арналған негізгі пакет. ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
КОМПЬЮТЕРЛІК КӨРУ ТЕХНОЛОГИЯСЫНЫҢ ӘДІСТЕРІ
Жол қозғалысы мен қоғамдық көлікті басқару жүйелері сияқты ақылды қала инфрақұрылымы
Машиналық оқыту әдісімен әлеуметтік желілердің деректер анализаторын әзірлеу
Машиналық оқыту алгоритмін құжаттарды топтау үшін қолдану
Машиналық оқыту әдістерінің болжау жасаудағы маңызы
Жүйелік бағдарлау
Мектепте алгоритмдеу және Паскаль тілін оқыту әдістемесі
Қазақша ымдау тілінің лексикалық ерекшеліктері
Қашықтан оқыту жүйесі
КЕСКІНДІ ЖӘНЕ БЕЙНЕНІ СЕГМЕНТТЕУ ӘДІСТЕРІ
Пәндер