При получении вами критического (красного) замечания по проекту, проведу правки.
Решение сдесь: Добавь в корзину - Перейди в корзину - Укажи Email - Оплатить по СБП - СБП (приложение вашего банка) - Получи решение на Email
Не можешь оплатить, тогда через "Помощь" запроси другую систему оплаты (Webmoney, Alipay, Telegram (USDT, TON)).
Спринт 19/25 → Тема 5/6: Самостоятельный проект → Урок 1/5
- Определение возраста покупателей с помощью компьютерного зрения.
- Фотофиксация в прикассовой зоне для определения возраста клиентов.
- Анализ покупок и предложение товаров для клиентов определенного возраста.
- Контроль добросовестности кассиров при продаже алкоголя.
- Построение модели определения возраста по фотографии.
- Исследовательский анализ и подготовка данных к обучению.
- Обучение нейронной сети и оценка ее качества.
- Критерии оценки проекта для ревьюеров.
- Учет шагов инструкции, исследовательского анализа, подготовки данных и выбора нейронных сетей.
- Аккуратность кода и соблюдение структуры проекта.
Определение возраста покупателей
Поздравляем! Вы прошли курс в тренажёре. Самое время проверить знания и решить новую задачу. Выполнять работу будете самостоятельно.
Когда закончите, отправьте её на проверку ревьюеру: он пришлёт комментарии в течение суток. После этого нужно доработать проект и пройти повторную проверку.
Скорее всего, вы будете дорабатывать кейс по комментариям ещё несколько раз. Это нормально.
Проект завершён, когда ревьюер одобрит все доработки.
Описание проекта
Сетевой супермаркет «Хлеб-Соль» внедряет систему компьютерного зрения для обработки фотографий покупателей. Фотофиксация в прикассовой зоне поможет определять возраст клиентов, чтобы:
- Анализировать покупки и предлагать товары, которые могут заинтересовать покупателей этой возрастной группы;
- Контролировать добросовестность кассиров при продаже алкоголя.
Постройте модель, которая по фотографии определит приблизительный возраст человека. В вашем распоряжении набор фотографий людей с указанием возраста.
Инструкция по выполнению проекта
- Проведите исследовательский анализ набора фотографий.
- Подготовьте данные к обучению.
- Обучите нейронную сеть и рассчитайте её качество.
Как будут проверять проект?
Мы подготовили критерии оценки проекта, которыми руководствуются ревьюеры. Прежде чем приступить к решению кейса, внимательно их изучите.
На что обращают внимание ревьюеры, проверяя проект:
- Все ли шаги по инструкции выполняете?
- Как проводите исследовательский анализ данных?
- Как готовите данные к обучению?
- Какие нейронные сети рассматриваете?
- Какие выводы делаете?
- Следите ли за структурой проекта?
- Поддерживаете аккуратность кода?
Всё, что вам нужно знать, есть в шпаргалках и конспектах прошлых тем.
Успеха!
Прежде чем приступать к выполнению проекта, нужно детально разобрать задачу сетевого супермаркета «Хлеб-Соль».
По фотографии нужно определить возраст человека. Какую задачу предстоит решить?
Правильный ответ
- Регрессии
Верно! Число в ответе — это количество лет. Прогноз и верный ответ можно сравнить: чем дальше предсказание от реального ответа, тем оно хуже.
Допустим, вы работаете с сетью ResNet50, предобученной на датасете ImageNet. В нём 1000 классов, то есть в выходном слое будет 1000 нейронов. Сколько нужно нейронов для задачи?
Правильный ответ
- 1
Верно! Нужен всего один нейрон, который вернёт число-предсказание. Слой с 1000 нейронов следует просто удалить из сети.
В конце сети должен остаться только один нейрон! Какую для него активацию сто́ит выбрать?
Правильный ответ
- ReLU
Положительные прогнозы сети функция ReLU не меняет, а все отрицательные — приводит к нулю. Чисел меньше 0 быть не может.
Какие функции потерь в задаче допустимы?
Правильный ответ
- Mean Squared Error
Да, это возможная функция потерь для регрессии.
Правильный ответ
- Mean Absolute Error
Да, это возможная функция потерь для регрессии.
- Исследовательский анализ данных в Jupyter
- Метрика качества: Mean Absolute Error (MAE)
- Анализ данных с сайта ChaLearn Looking at People
- Данные находятся в папке /datasets/faces/
- CSV-файл labels.csv с двумя колонками: file_name и real_age
- Метод ImageDataGenerator для извлечения данных из папки
- Задание 1: исследовательский анализ данных
- Анализ размера выборки, графика распределения возраста
- Вывод о влиянии результатов исследования на обучение модели
Ознакомьтесь с инструкцией по выполнению проекта.
Вашей метрикой качества будет MAE.
План выполнения проекта такой:
- В этом уроке проведите исследовательский анализ набора данных в Jupyter. Затем скачайте свою тетрадь Jupyter Notebook.
- В 4-м уроке обучите модель в GPU-тренажёре и сохраните результат вывода модели на экран.
- В 5-м уроке объедините в финальной тетради Jupyter Notebook исследовательский анализ данных, код и вывод модели. Затем проанализируйте результат обучения модели.
Описание данных
Данные взяты с сайта ChaLearn Looking at People. Они находятся в папке /datasets/faces/.
В вашем распоряжении одна папка со всеми изображениями (/final_files) и CSV-файл labels.csv с двумя колонками: file_name и real_age.
Извлечь данные из папки вам поможет новый метод ImageDataGenerator —flow_from_dataframe(dataframe, directory, ...).
Проведите исследовательский анализ данных:
- Посмотрите на размер выборки.
- Постройте график распределения возраста в выборке.
- Напечатайте на экране 10–15 фотографий и посмотрите, как устроен датасет.
Сделайте выводы о том, как результаты исследования повлияют на обучение модели.
Подсказка
Загрузку данных можно сделать так:
labels = pd.read_csv('/datasets/faces/labels.csv')
train_datagen = ImageDataGenerator(rescale=1./255)
train_gen_flow = train_datagen.flow_from_dataframe(
dataframe=labels,
directory='/datasets/faces/final_files/',
x_col='file_name',
y_col='real_age',
target_size=(224, 224),
batch_size=32,
class_mode='raw',
seed=12345)
Спринт 19/25 → Тема 5/6: Самостоятельный проект → Урок 4/5
- Обучение модели в GPU-тренажере.
- Функцией потерь может быть MSE, а не MAE.
- Нейронные сети с большим числом слоев могут переобучаться.
- Качество на валидационной выборке может ухудшаться, но не стоит менять модель.
- Курс «Компьютерное зрение - практика обучения нейронных сетей» поможет в обучении модели.
Обучите модель в GPU-тренажёре и сохраните результат вывода модели на экран. Но прежде ознакомьтесь с несколькими рекомендациями:
- Функцией потерь не обязательно должна быть MAE. Зачастую нейронные сети с функцией потерь MSE обучаются быстрее.
- Качество на валидационной выборке улучшается, но модель при этом переобучается всё сильнее? Не спешите менять модель. Обычно нейронные сети с большим числом слоёв сильно переобучаются.
Чтобы выполнить задание, перейдите на курс «Компьютерное зрение — практика обучения нейронных сетей», выберите тему «Самостоятельный проект», а в теме — урок «Обучение модели».
В финальную тетрадь Jupyter Notebook скопируйте исследовательский анализ данных, код и вывод модели. Затем проанализируйте результат обучения модели.
Подготовьте отчёт по исследованию данных и обучению модели.
Дорогой друг!
Я внимательно наблюдал за твоими действиями на сайте через вебвизор.
Если ты добрался до этой страницы, то скорее всего ты проходишь платное обучение на курсах.
Благодаря моим стараниям, целую главу ты можешь закрыть за сутки, а то и быстрее.
Думаю, что сэкономленное время, ты потратил с пользой, в то время как я сидел и пыхтел над заданиями.
Лучшая благодарность от тебя, это пожертвования на мой IT - проект.
Жертвуй столько, сколько не жалко, но и не скупись, чтобы было не стыдно.
Большое тебе спасибо, за твою благодарность!