Отримати векторні репрезентації зображень
COCO 2017 train dataset
за допомогою нейронної мережі (Inception V3, ResNet).
Написати консольну програму search.py
з наступним інтерфейсом:
python search.py path n
де path
- шлях до зображення, n
- кількість найближчих сусідів.
Результатом роботи програми є список з n
шляхів до зображень з COCO train 2017
,
відсортованих за спаданням близькості візуальних ознак із зображенням path
.
Повторити попередню задачу, використовуючи індекс векторів.
Зменшити розмірність векторів до 3, зробити візуалізацію у Tensorboard.
Розробити систему пошуку та класифікації зображень на одному з датасетів autoria
або
classifieds
. На вхід системи подається зображення path
, на виході отримується
клас та n
найближчих сусідів з обраного датасету:
python search.py path n
Пошук має відбуватись за допомогою індексу.
Програма test.py
створює файл test.txt
з результатами класифікації зображень
classifieds/test/
у форматі:
path1 class_no_1
path2 class_no_2
...
Задача із зірочкою. Датасет classifieds
далекий від ідеального.
Деякі класи можуть перетинатись, кількість файлів у кожному класі різна.
Необхідно обчислити confusion matrix, об'єднати класи та перетренувати модель для
досягення вищої точності класифікації.
Тренування segmentation моделей на COCO.
Використовуючи датасет portraits
, натренувати модель, яка буде вирізати обличчя людини з
селфі.
Ваги ResNet50: /mnt/course/weights/pretrained.h5
.
Ідея для data augmentation: використовуючи маску, заповнити випадковий фон.
Задача із зірочкою. Зробити максимально швидку модель.
Тренування detection моделей на COCO датасеті.
Одночасний detection+segmentation на COCO датасеті.
Чотири рівні складності:
-
Segmentation mask на MatterPort3D датасеті.
-
Segmentation + depth map на MatterPort3D датасеті.
-
Segmentation + depth map + object detection на MatterPort3D датасеті.
-
Задача з двома зірочками: портувати будь-яку з моделей, які розглядались на попередніх заняттях, на Android/iOS.
-
Повторити модель char-rnn на словнику української мови
week3/ukrlit/
. Генерувати текст. -
Повторити модель char-rnn, використовуючи слова замість символів: передбачати наступне слово послідовності, а не символ. Генерувати текст.
- Image captioning на COCO датасеті.
Використовуючи датасет facs
(Facial Action Coding System),
натренувати мережу, яка за послідовністю зображень обличчя людини images
прогнозує емоції emotions
та набір мікровиразів обличчя labels
(action units, AU).
Підказка: для отримання ключових точок обличчя використовуйте бібліотеку dlib
,
для отримання ознак - натреновану на обличчях нейромережу
vggFace
.
sudo pip install dlib
sudo pip install keras_vggface
Модифікувати приклад week4/gan1/gan_mnist.py
,
реалізувати InfoGAN на MNIST датасеті.
Зробити InfoGAN для датасету icons
.
На вибір:
-
Реалізувати один з варіантів BEGAN моделі для генерації зображень (обличчя людей, fashion).
-
Відновлювати зображення з скетчу (див. Holistic Edge Detection).
-
Задача з двома зірочками: ретуш для датасету
retouch
методом GAN.
Використовуючи датасет datasets/nlp/focus/
,
зробити автоенкодер текстових документів: на вхід
береться перша половина документа, на вихід - друга.
На датасеті datasets/nlp/subs/en
зробити word2vec модель по роках 1950-1954, 1951-1955
і т.д. Для кожної моделі зробити tsne, спроектувати word-вектори на тривимірний простір.
Зобразити тривимірні проекції за допомогою UI
.