Покéдетектив:
дело о странном соседе
В лаборатории перепутали не покемонов, а смысл слова «похож». Ваша задача — построить признаки, исследовать группы и соседей, проверить модель и объяснить, чему доверять рано.

Перед началом: изображения, а не только CSV
Основа прежнего задания сохранена: осмотр изображений, VGG-19 и cosine, иерархическое разбиение на три группы, поиск соседей для Beldum. Теперь проверяем и альтернативы. Число картинок и имена ближайших соседей определите по своему набору — готового универсального ответа здесь нет.
Исходный набор
Открыть папку из старого задания ↗
Google Drive может потребовать доступ. Ссылка сохранена из исходного PDF; этот набор не включён в архив сайта.
Независимый учебный набор
Кнопка ниже собирает 121 PNG из открытого репозитория PokéAPI: номера 1–120 и Beldum (374). Это другой, компактный набор — его результаты не обязаны совпадать со старым.
Нужен интернет. Изображения скачиваются в браузер; ваши файлы никуда не отправляются.
Распакуйте изображения в отдельную папку images. Для кластеризации не используйте названия видов как target. Не добавляйте дубликаты, почти одинаковые версии одной картинки и фоновые изображения, не относящиеся к задаче.
Составьте паспорт набора
Не начинаем с кнопки «обучить». Начинаем с того, что загрузили.
Подключите Import Images → Image Viewer и отдельную ветку Import Images → Data Table. Осмотрите несколько десятков объектов: фон, размеры, прозрачность, дубликаты, повреждения. Выберите один и тот же рабочий набор для следующих сравнений.
Попробуйте стать фабрикой признаков
Ручной baseline до нейросети.
Выберите шесть разных покемонов. Придумайте два простых признака: например, доля определённого цвета и вытянутость силуэта. Сначала предположите, кто окажется рядом по этим признакам, затем найдите контрпример. Точные вычисления не обязательны: здесь мы проверяем идею признака, а не пишем обработчик изображений.
Получите embedding и проверьте таблицу
Предобученная сеть — источник признаков, а не финальный ответ.
Import Images → Image Embedding (SqueezeNet local) → Data Table Image Embedding → Select Columns → дальнейшие методы
Посчитайте embeddings. Сравните таблицу до и после: сколько новых признаков появилось, сколько изображений обработано и сколько пропущено. Число координат выпишите из своей версии, не угадывайте по названию сети. В Select Columns оставьте embedding-координаты в Features; имя и путь изображения — в Meta. Ширину, высоту и размер файла тоже уберите из Features. Для кластеризации target не нужен.
Дополнительный эксперимент: VGG-19 из старого задания
На тех же картинках получите второй embedding через VGG-19, если удалённый сервис доступен. Сравните время и состав соседей. Меняется именно представление. Недоступность сервиса не препятствует выполнению основного задания: используйте SqueezeNet и явно запишите выбор.
Разделите покемонов — и усомнитесь в результате
Три группы из старого задания теперь становятся началом исследования.
Embeddings → Distances (Rows, Cosine)
→ Hierarchical Clustering (Average, Top N = 3)
→ Image Viewer
Изучите каждую из трёх групп. Дайте ей осторожное описание, приведите два примера и одного неожиданного участника. Сохраните скриншот дендрограммы. Затем не меняя embedding и cosine, сравните Average и Complete; отдельно сравните разрезы k = 3 и k = 5. Меняйте по одному решению за раз.
Найдите соседей Beldum
Важны оба входа Neighbors и исключение самого запроса.
Embeddings → Neighbors: Data Embeddings → Image Viewer: выбрать Beldum Image Viewer: Selected Data → Neighbors: Reference Neighbors (Cosine, 3 соседа) → второй Image Viewer
В независимом наборе файл называется 0374-beldum.png. В другом наборе найдите beldum по имени. Если его нет, выберите другой объект и явно укажите замену. На вход Reference должна попасть ровно одна строка из таблицы embeddings, не исходная строка без признаков.
Получите три ближайших других изображения. Выключите включение reference в результат, если такой флажок есть в вашей версии; иначе исключите запрос из набора кандидатов. Запишите имена файлов. Затем переключите cosine на Euclidean, не меняя признаки и кандидатов. Совпали все три соседа или только часть? Совпадение тоже результат.
Измените картинку, сохранив объект
Маленький контролируемый эксперимент.
Возьмите копию выбранного изображения. Измените только одно свойство: яркость, фон или кадрирование. Исходник сохраните. До запуска запишите гипотезу: изменятся ли соседи? Получите embedding копии той же моделью и снова найдите три соседа среди прежних кандидатов. Уберите из кандидатов сам исходник и его варианты, иначе опыт сведётся к поиску дубликата.
Сравните два списка. Нас интересует не обязательный эффект, а проверяемый эксперимент. Не меняйте одновременно embedder, расстояние и картинку.
Бонус старого задания: «на какого покемона похож мой портрет?»
Это только игра с визуальными признаками, не вывод о личности. Вместо портрета можно взять рисунок, игрушку или предмет. Личное фото используйте только добровольно и с локальным SqueezeNet; не загружайте чужие лица и не отправляйте личные фотографии в удалённый embedder без согласия.
Теперь задайте target и проверьте классификатор
Не подменяем классы кластерными цветами.
Соберите две небольшие, ясно размеченные группы. Например: преимущественно синие / голубые и преимущественно красные / оранжевые. Возьмите не меньше 10 разных исходных изображений в каждом классе. Неуверенные случаи не размечайте наугад. Оценивайте цвет самого персонажа, не белого фона. Можно выбрать другую наблюдаемую характеристику, заранее описав правило.
Создайте подпапки классов и импортируйте их отдельно от исходного набора. Проверьте метку класса в Target. В Features — только embedding; путь, имя файла и названия папок — Meta. Снова используйте фиксированную предобученную сеть.
Import Images (две подпапки) → Image Embedding → Select Columns → Test & Score Logistic Regression → Test & Score kNN → Test & Score Test & Score → Confusion Matrix → Image Viewer
В Test & Score выберите 5-fold stratified cross-validation, а не оценку на обучающих данных. Сравните Logistic Regression и kNN, например с k = 3. Если добавляете обучаемую предобработку, она должна оцениваться внутри обучающих частей. Не включайте в выборку версии из миссии 6 и дубликаты одной картинки.
Запишите Accuracy обеих моделей, рассмотрите Confusion Matrix и откройте ошибки. Если ошибок в вашей проверке нет, не придумывайте их: сообщите это и объясните, почему маленький учебный набор не гарантирует такой результат на новых изображениях. На каком простом ручном признаке мог бы работать baseline для ваших классов?
Бонус: дорожные знаки и детектор убедительных историй
Дорожные знаки
Как в старой работе, найдите Traffic Signs через Datasets в Orange. Повторите поиск трёх соседей и разрез дерева на три группы. Визуально похожие знаки не обязаны иметь одинаковое назначение. Если набор отсутствует в вашей версии, этот бонус можно пропустить.
ИИ — помощник рецензента
Дайте ИИ своё описание кластера без личных данных. Попросите найти альтернативное объяснение и предложить проверку. Не просите выдумывать метрики или недостающие наблюдения.
Отчёт, который можно проверить
Сохраните workflow .ows, скриншоты дендрограммы, соседей и Confusion Matrix. В отчёте должны быть не только удачные примеры, но и сомнение, неожиданность или ограничение. Числа из Orange записывайте свои, не из примера.
Воспроизводимость: источник, число картинок, embedder, набор Features, метрика, linkage и параметры известны.
Интерпретация: названы визуальные свойства, объединяющие группы; нет утверждения «алгоритм открыл истинные типы».
Контроль: хотя бы один фактор изменён отдельно; гипотеза записана до результата.
Оценка модели: классы и протокол проверки понятны, дубликаты исключены, рассмотрены реальные ошибки.
Сайт хранит только введённый текст и отметки в вашем браузере. Фотографии и workflow здесь не загружаются.
Финальная проверка лаборатории
Это отдельные ситуации по домашней работе, не повтор основного квиза. Для сертификата нужны все 7 отметок выполненных миссий, заполненный отчёт и минимум 8 из 10 правильных ответов. Попытки не ограничены; ошибки разбираются после проверки.
Ответьте на все 10 вопросов.
Сертификат «Покéдетектив»
Сайт автоматически проверяет контрольные ответы и наличие текста в отчёте, но не может проверить ваш внешний workflow или истинность введённых метрик. За завершение работы отвечают ваши отметки и рубрика выше. Этот сертификат — учебное достижение, не независимая экспертиза проекта.
Покéдетектив:
исследователь машинного зрения
Завершил(а) учебную работу с изображениями: признаки, embedding, кластеризация, поиск соседей и проверка классификации.
Контрольные ответы проверены автоматически; выполнение внешних экспериментов подтверждено участником.
Доктор Игорь Клейнер
Источники и справка
Теория: предоставленные слайды и полный конспект урока 11. Основа практики: прежнее задание «Практическое задание №7». Сравнение настроек, контролируемый эксперимент, мини-классификация и электронный отчёт — расширение практики.
Слайды урока 11 · Умное саммари
Import Images · Image Embedding · Neighbors · Hierarchical Clustering
Картинка в начале взята из исходной домашней работы. Альтернативные изображения: PokéAPI / sprites. Pokémon и изображения персонажей принадлежат соответствующим правообладателям; учебный комплект не заявляет на них авторских прав.