Изучаю ADALINE: как работает обучение нейронной сети
Продолжаю изучать машинное обучение и разбираюсь с алгоритмом ADALINE (Adaptive Linear Neuron).
В рамках практической работы реализовал модель самостоятельно на Python и NumPy, без использования готовых алгоритмов машинного обучения из Scikit-learn.
Репозиторий: https://github.com/Kirill-LN/adaline
В качестве задачи выбрал классификацию студентов по результатам экзамена. Для обучения использовал три признака:
- количество часов подготовки; - посещаемость; - выполнение заданий.
В процессе реализации разобрался с несколькими концепциями:
- Градиентный спуск и обновление весов модели. - Функция потерь MSE (Mean Squared Error). - Стандартизация признаков с помощью StandardScaler. - Разделение данных на обучающую и тестовую выборки. - Оценка качества классификации с помощью Accuracy и матрицы ошибок.
Результаты эксперимента:
Accuracy на обучающей выборке — 85,71%. Accuracy на тестовой выборке — 100%.
Но есть важный нюанс: тестовая выборка содержит всего 4 объекта, поэтому пока рано говорить о высокой обобщающей способности модели.
Отдельно было интересно анализировать ошибки: два неправильно классифицированных объекта имели выходные значения ADALINE, близкие к нулю — границе между классами. Это помогло лучше понять, как работает линейная классификация.
Для меня эта практика стала ещё одним шагом от изучения теории к самостоятельной реализации алгоритмов машинного обучения. Дальше планирую экспериментировать с параметрами обучения и исследовать, как ADALINE справляется с задачами регрессии. #MachineLearning #Python #NumPy #ADALINE #DataScience
· 9 ч
ADALINE на NumPy без библиотек — правильный способ понять, что внутри. В студии мы тоже сначала пишем на NumPy, потом уже берём библиотеки.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
коммент удалён