Как прост ръководител на проекти в 1C-Bitrix отиде да научи машинно обучение от Yandex и MIPT, и
За специализацията като цяло
След като се записах, започнах да гледам лекции и да решавам задачи. Беше много трудно, т.к. висшата математика остана далеч назад в университета, аз работя като мениджър на уеб проекти, а не като анализатор и никога не съм виждал питон в очите си.
Курс за млади бойци по умения на python от codecademy и съм готов за подвизи.
Разбира се, Coursera обработи незабавно молбата за финансова помощ и получих достъп до заданията.
1 седмица беше победена почти моментално, но 2...
Три дни се борих с проблем на тема "котка". Побеждавайки една грешка след друга, осъзнавайки, че не съм разбрал тази или онази задача, изведнъж се озовах лице в лице с най-простия, много кратък код. Което наистина избра от списък с предложения 2 подобни на примерния. Те наистина имаха обща тема. Беше магия!
Толкова прост алгоритъм и такава мощност.
Това ми замая главата и исках да споделя радостта си с други (ако питате колеги, сигурно ще кажат, че буквално съм им бръмчал в ушите от възхищение от косинусното разстояние като цяло и този проблем в частност).
Имаше обаче малка неприятност, която не позволяваше да живеем в мир. Съвестта буквално ме изгаряше, че поисках финансова помощ. Все пак обективно можех да платя. Въпреки че това е значителна сума. Затова реших да помогна по някакъв начин, ако е възможно в замяна.
Първо, реших, че би било готино, ако има някакъв вид интерактивна книга със задачи, където можете не само да практикувате решаванезадачи, подобни на задачи от курса (за придобиване на повече опит), но също и където хора, които не са платили за сертификата, могат да приемат задачи, идентични на задачите за курсова работа, безплатно. Смешно е, но моят прототип се оказа работещ и задачата по темата „змия“ (написването беше малко повече и Anaconda стана основната тема) беше решена по същия алгоритъм като курсовата задача.
Второ, започнах да отговарям във форума, опитвайки се да помогна на онези, които намират курса дори по-труден от мен. Някои трябваше да дадат моя имейл за връзка с молба да не публикувам кода във форума - това нарушава правилата на Cursera. Беше много интересно преживяване. Вече съм забравил какво значи да си "учител"...
И трето, реших да проверя курсовите работи на други студенти. Един прекрасен ден проверих повече от 80 броя. И всички те бяха изпратени предния ден. Просто бях изумен колко много хора учат с мен ...
Знаех ли тогава, че ще стана ментор на курс? Да, дори не знаех кои са и че съществуват!
Завърших 1-ви курс. Не беше лесно, но не беше и невъзможно. Дори успях да кандидатствам за финансова помощ за 2-рата година от изтичащото записване.
Едва на 2-рата година разбрах, че всички проблеми, с които съм се сблъсквал преди, са били "цветенца". Беше много готино, но в същото време отрезвяващо.
Страхувам се, че бях малко полезен, но наистина не ми беше лесно - след като пропуснах част от 2-ри курс, овладявайки python в движение, се опитах поне да наваксам колегите си (това беше натоварено с тази задача с добра причина).
Трудно ми е да кажа нещо интересно за 3 курс. Той е добър. Със сигурност имаше места повече от веднъж или два пъти, където ми се искаше да си разбия главата в монитора заради адски формули, които едва се побираха на екрана (това ми напомни за университетски курс по елементарни частици, къдетохардкор уравненията на теоретичната физика не бяха поставени на дъската). Не съм готов да кажа, че разбирам този курс. Но го овладях. И с изненада разбрах, че тези задачи и проблеми, които реших с такъв студент 1-ва година, всъщност са много прости, наистина прости.
Едва след като завърших 3, успях да се върна към 2. Отне ми повече от два месеца (общо 3 сесии на Coursera), за да завърша този курс. И съм 100% сигурен, че 2-ри и 3-ти курс са с порядък по-трудни от 1. Но те също са с порядък по-полезни, защото всяка седмица се демонстрират нови концепции и подходи в работата. Не знам за други, но дори в моята глава има много варианти как това може да бъде полезно на колегите ми в основната им работа.
Какво ми даде работата по тази (все още незавършена) специализация?
Ами, първо, много удоволствие от онези задачи, които успяхме да решим, от тези върхове, които успяхме да покорим. За мен това е истинско изпитание.
Второ, докоснах „красивите“ - MIPT и Yandex. Най-добрият (и не ми спорете, ще ви ухапя!) технически (и следователно най-добрият по принцип) университет в страната, и един от световните IT лидери.
И трето, докато бях ментор в този курс, неочаквано получих покана от Cursera да стана ментор. Да, отново станах ментор. Оказва се, че менторите също са различни. И това също е определено предизвикателство! Сега дори имам сертификат за ментор. ;-)
И сега, с необходимия късмет, можете да ме срещнете и на курса по геймификация...
Подробно за всяка от специализациите
За 1-ви курс - "Математика и Python за анализ на данни"
Отличен курс с отлично структуриране на информацията и добро представяне.
Малките лекции представят основна информация под формата на резюмета, а непретоварени с подробности. Ако възникне въпрос, винаги можете да проучите подробно информацията на ресурс на трета страна, тук е стискане.
Изненадващо практични задачи 2 седмици. Това са просто някакви чудеса! Никога не бих си помислил какви прости методи са, толкова малък алгоритъм може да реши такава на пръв поглед нетривиална задача. Още едно доказателство, че математическите модели са толкова универсални в своята простота, че с подходящи умения могат да опишат почти всичко!
Разбира се, курсът изисква подготовка. Трябва да научите основите на Python преди или по време на курса. Но познанията по линейна алгебра почти не са необходими за този курс. Проста алгебра от училище, малко внимание в лекциите и сега вече разбирате принципите на основните операции на линейната алгебра и тогава дори и да не можете да ги правите „на ръка“, винаги имате подходящия софтуерен пакет наблизо.
Този курс е въвеждащ, ще бъде по-труден, но е много добре да загреете, да започнете да се включвате и да работите допълнително.
Курсът се преминава без много затруднения, ако покажете търпение и постоянство (и колкото повече, толкова по-приятна е победата над всяка от задачите на курса).
Страхотно начало! Препоръчвам!
Относно 2-ри курс - "Обучение на етикетирани данни"
Много труден, но интересен курс.
Ако ви е било трудно в първия курс на специализация, тогава вероятно ще трябва да работите много повече (включително сами).
Успехът през седмица 3 ще бъде критичен - има много голяма и трудна курсова работа, много етапи от която се дават с голяма трудност. В случай на затруднения си струва да потърсите отговори във форума.
Невероятно разкритие беше седмицата за невронните мрежи. Както се оказва, те са просто подредени.Когато прочетоха невронните мрежи чрез определението за „персептрон“ в университета, те само ги объркаха. Няма нужда от никакви мравки, аналогии с живи системи - формулата тук е много проста и обяснява всичко много по-лесно от неподходящите аналогии.
Наборът от методи, показани в курса, е буквално хипнотизиращ - за почти всяка задача можете да намерите нещо „свое“. Кара те да се втурнеш да решаваш практически проблеми, изглежда, че вече си всемогъщ (градиентното усилване в даден момент предизвиква асоциации с BFG9000, за тези, които разбират).
Отне ми повече от 2 месеца - явно нямаше достатъчно подготовка (както по python, така и по математика).
Но най-важното е, че курсът е много интересен!
За 3-ти курс - "Търсене на структура в данни"
След 2-ри курс тук почти си почивате (но това е почти, много задачи са много по-коварни, отколкото изглеждат на пръв поглед).
Курсът не изисква материал от 2, но 1 е много полезен (освен ако вече не сте запознати с Python и не сте успели да забравите линейната алгебра и матан от времето на университета).
Отделно е доста забавно как с помощта на описаните методи е възможно да се оптимизира функционалното пространство и да се превърнат огромни масиви от „информационен боклук“ в данни, графики, хистограми, диаграми, разбираеми и интерпретируеми дори от човешкото око…