1 Востаннє редагувалося frz (12.03.2021 02:37:54)

Тема: machine learning

Забиваю тему для подальшої дискусії.

Базова підготовка з мого боку поки що нуль, але відчуваю що це мені потрібно.

Точніше, навіть на даному проекті це робоча тема "для обраних", в число яких я наразі не входжу, максимум мене допустять до підготовки даних для моделей. Це не те щоб образливо, оскільки абсолютно відповідає моїм скілам, однак мене стимулює освоїти принаймні ази самостійно.

Тому зараз шукаю безкоштовний інтерактивний курс ML для Python.

----

Upd: почав дивитися сюди https://course.fast.ai

вимоги

The only prerequisite is that you know how to code (a year of experience is enough), preferably in Python, and that you have at least followed a high school math course.

поради

Обрати Jupyter Server замість того щоб запускати на локальному компі, "unless you're very experienced with Linux system adminstration and handling GPU drivers, CUDA, and so forth"; ну наче CUDA встановилося, побачимо наскільки страшно це робити локально.

----

Upd: і уточню про всяк випадок, що скажімо розпізнавання зображень належить до ML і його теж варто спробувати для загального розвитку, однак мені суто для роботи потрібен розрахунок імовірності на основі минулих даних (risk management).

Однак буду йти крок за кроком відповідно до матеріалів курсу, адже чомусь розрахунки рівня продажу тут викладено в подальших розділах, а спочатку пропонують опанувати все ж зображення, отже автори вважають що це від простого до складнішого і мабуть варто їм у цьому довіряти:
https://course.fast.ai/videos/?lesson=1

----

Upd: ще радять ходити на Kaggle і вирішувати там практичні задачки. А ще чомусь вперто радять старий курс від Andrew Ng на мові Octave/Matlab, хоча зараз актуальніше на Python / R.

2 Востаннє редагувалося flatliner (12.03.2021 00:12:05)

Re: machine learning

Tariq Rashid. Make your own neural network (існує російський переклад).

Прихований текст

Тарик Рашид. Создаем нейронную сеть

3

Re: machine learning

frz написав:

Upd: ще радять ходити на Kaggle і вирішувати там практичні задачки. А ще чомусь вперто радять старий курс від Andrew Ng на мові Octave/Matlab, хоча зараз актуальніше на Python / R.


на кегл ходити таки варто і порішати там хоч би десяток типових таки треба.
і не просто порішати - а й порівняти свої результати і свій шлях рішення з іншими.
також , там часто можна знайти відкриті датасети для роботи чи прототипів.

що стосується курсів - то юдемі на 90% це не курси, а щось типу диплому містечкового про вищу освіту , який видається на основі того , що клієнт заплатив гроші .

що стосується курсів Andrew Ng - це саме те, що ТРЕБА пройти.
раджу - https://www.coursera.org/specialization … ng#courses

щодо старого курсу на  Octave/Matlab - він хороший тим, що в ньому студент сам створює нутрощі алгоритмів, а не користується готовими обгортками сучасний фреймфорків.
навіть, якщо це відбувається на застарілій мові - це дає на порядок більше, аніж копіпаст на пайторчі чи керасі, де в 4 рядки абстракцій верхнього рівня (типу: data = load(file);dataset = process(data); model = DS.train();  result = DS.evaluation() )запхано кілька кілобайт реального рішення.

Подякували: frz1

4

Re: machine learning

Півтора роки назад ходив на курси по датасаєнсу, і там також рекомендували Andrew Ng. Мені він сподобався тим, що дуже класно розповідає теорію. В усіляких туторіалах онлайн розповідають, грубо кажучи, які кнопки натискати. А Ендрю пояснює чому, та як це працює. Для хеловордів ці знання абсолютно не потрібні, але як тільки починаєш заглиблюватись в глибини, починаєш розуміти усю цінність такого підходу.

Подякували: ping, frz2

5

Re: machine learning

Почав проходити курс від Andrew Ng на курсері. Безкоштовно, оскільки обрав опцію навчання без отримання сертифікату (якщо дуже потрібен сертифікат, то просять заплатити 79$).

Подякували: ping1

6

Re: machine learning

Сподобалося пояснення Andrew Ng, як працює ML на прикладі гри в шашки. Отже, суть полягає у здатності комп'ютера зіграти десятки тисяч разів проти самого себе (комп'ютеру на відміну від людини це не може набриднути) і визначити які ходи більше призводять до перемог, а які - відповідно до поразок.

7

Re: machine learning

пояснення Andrew Ng

Алгоритм supervised навчання (умовно можна перекласти "під наглядом") - це таке навчання, де є готові відповіді, наприклад:
- параметри такі як метри квадратні нерухомості, відповідь - ціна на нерухомість
- або ж параметри такі як вік пацієнта, розмір пухлини і відповідь - злоякісна/доброякісна.
Виходячи з набору вірних відповідей, алгоритм визначає імовірність потрібної відповіді для наших нових значень параметрів.

8 Востаннє редагувалося frz (17.03.2021 14:15:10)

Re: machine learning

пояснення Andrew Ng

Алгоритм unsupervised навчання ("без нагляду") - це таке навчання, де нема готових відповідей, дані на вході неструктуровані, однак однорідні, при цьому алгоритм на виході повертає структуру цих даних за різними ознаками.

9 Востаннє редагувалося ch0r_t (17.03.2021 13:58:48)

Re: machine learning

Пане frz, коли дозволите питання, - що там у вас зі швидкістю (виконання) всього цього ML magic на Python, - ви задоволені? Тестів не робили, чи ви поки лише експерементуєте під час навчання?

10 Востаннє редагувалося frz (17.03.2021 16:27:13)

Re: machine learning

frz написав:

пояснення Andrew Ng

Алгоритм unsupervised навчання ("без нагляду") - це таке навчання, де нема готових відповідей, дані на вході неструктуровані, однак однорідні, при цьому алгоритм на виході повертає структуру цих даних за різними ознаками.

Було розглянуто два типи задач що стосуються даного алгоритму:

а) кластеризація неструктурованих даних, наприклад:

a1) покупців товарів що належать до різних ринків, аби краще позиціонувати свій товар для правильної категорії потенційних клієнтів;

a2) групування новин за тематикою;

б) розподіл аудіопотоку на різні частини, задача називається "коктейль-вечірка", записано загальний звук де було просто два голоси що розмовляють різними мовами, а також голос на фоні музики, потрібно виділити лише одну так би мовити "доріжку".

Для вирішення підпункту "б" продемонстровано супер лаконічний код на Octave/Matlab, поки що без пояснення як саме це працює:

https://replace.org.ua/uploads/images/9801/c47e91f3fda7e644b6edd946bd0da92e.jpg

Пояснено що коли використовувати вірне середовище, то код буде дуже стислим; а якщо порівняти з такими мовами як Java, C++, Python, то потрібно буде завантажувати спеціалізовані бібліотеки і сам код буде більш громіздким.

Дивлячись знову і знову на цю стрічку коду, усвідомлюю що варто зрозуміти принаймні основи Octave/Matlab (далі протягом курсу Andrew Ng планує розповісти більше про це середовище).

----

ML magic на Python

Ще не починав. Зосередився поки що на курсі від Andrew Ng (Octave/Matlab), оскільки тут повинна йти мова про базові речі, а не про використання вже готових бібліотек. Наступним кроком буде вже ML на Python.

----

Upd: а пишу я ці короткі нотатки, бо це порадив робити Andrew Ng - обговорювати з іншими що вивчили і в подальшому також обговорювати практичні завдання. Власне для цього обговорення існує форум на самій платформі курсера, однак вирішив це робити поки що тут.

11

Re: machine learning

що там у вас зі швидкістю (виконання) всього цього ML magic на Python,

дозволю собі пркоментувати.

ML не пишеться на пітоні. тобто, можна, але хіба з метою зрозуміти що там під капотом.
ML пишеться на C++ чи продібному. а назовні стирчить АПІ, яке і смикає Python, Java чи  ще хтось

Перевага пітона тут в тому, що прості речі (а їх 80% - завантаження, чистка, аналіз, нормалізація, агрегація, збагачення, евалюація, оцінка, тощо) можна відпрацювати ітерактивно, гарно візуалізувати, розбити на етапи і виконувати поблочно в jupyter notebook (Lab)

Подякували: ch0r_t, frz2

12

Re: machine learning

frz написав:

Тому зараз шукаю безкоштовний інтерактивний курс ML для Python

Як на мене МН починається з усвідомлення того, а як би я навчав свою дитину.
І на мою думку, поки розробник цього не усвідомлює ні про які МН не може й бути мови.

13 Востаннє редагувалося frz (18.03.2021 00:10:29)

Re: machine learning

як би я навчав свою дитину

Я би тут виправив: "як би я навчав дитину", не обов'язково свою.

поки розробник цього не усвідомлює

То для цього ж і є курси, як ось згаданий вище від Andrew Ng. Навчитися вчити когось - це ж ціла наука і є для цього педагогічні вузи. Є люди в кого природний дар до цього, іншим потрібне навчання.

ні про які МН не може й бути мови

Так як навчання на курсі Andrew Ng вже розпочато, то чи може бути мова чи ні - буде видно після закінчення.

Та й розглядаю МН як додаткові скіли, бо мені поки що моїх для роботи достатньо, а це - вийде то й добре, а ні то все ж послухав розумні речі від мудрої людини (Andrew Ng).

14

Re: machine learning

ШІ це не просто курси.
Штучний Інтелект. Що ви собі уявляєте під цим терміном?

15

Re: machine learning

Свого часу займався машинним зором. Але доктрина компанії забанила цей напрям. І то залишилося хобійним інтересом для мене.

16

Re: machine learning

Иии, я щось не зрозумів звідки взялося поняття ШІ в цьому топіку. Ні, воно звісно в тому ж напрямку, але все ж МН це всього лише малесенький сегмент від ШІ.

17

Re: machine learning

Тоді МН це що?
Невже машинне навчання це не є ІІ?

18 Востаннє редагувалося frz (18.03.2021 00:41:52)

Re: machine learning

визначення англійською

AI is a bigger concept to create intelligent machines that can simulate human thinking capability and behavior, whereas, machine learning is an application or subset of AI that allows machines to learn from data without being programmed explicitly.

https://www.javatpoint.com/difference-b … e-learning

AI (ШІ) > ML (МН)

----

Upd: додам що на мою думку, AI (ШІ) просто не існує в реальному житті, принаймні поки що. Існує в науковій фантастиці і також в голові маркетологів, котрі видають просунуте ML (МН) за штучний інтелект...

Подякували: ping1

19

Re: machine learning

І що я мав зрозуміти із сказаного?
Це щось з того:
палицею по лобі, або лобом об палицю
Що обрати?

20

Re: machine learning

Доречі як Ваший АІ(МН) таке запитання обробить?