Создать модель в GoogleCollab на языке Python

8 000 руб. за проект
04 апреля 2022, 19:07 • 2 отклика • 31 просмотр
Небольшое задание по объему - нужно создать несколько моделей в GoogleCollab на языке Python согласно описанию ниже и выбрать из них лучший результат. Хороший пример выполнения задания - вот здесь. Только вам нужно создать его на основе данных, заданных преподавателем - они здесь. ДЕДЛАЙН - 19 АПРЕЛЯ.

Описание задачи на РУССКОМ (само задание должно быть выполнено на английском, формулировка задания на английском ниже)

Задача: Добейтесь наилучших результатов на наборе данных "Ножницы из бумаги"!

"Rock Paper Scissors" содержит изображения различных рук, принадлежащих представителям разных рас, возрастов и полов, расположенных в позе "камень/бумага или ножницы" и помеченных соответствующим образом. Вы можете загрузить обучающий набор здесь и тестовый набор здесь. Я создал эти изображения с помощью техники CGI в качестве эксперимента, чтобы определить, сможет ли модель, обученная на наборе данных, основанном на CGI, классифицировать реальные изображения. Я также создал несколько изображений, которые вы можете использовать для прогнозирования. Вы можете найти их здесь. Обратите внимание, что все эти изображения используют обычный белый фон. Каждое изображение имеет размер 300×300 пикселей в 24-битном цвете".

Ваша задача заключается в следующем:

- Загрузите набор данных из tensorflow_datasets следующим образом:

import tensorflow_datasets as tdfs
DATASET_NAME = 'rock_paper_scissors'
(dataset_train_raw, dataset_test_raw), dataset_info = tfds.load(
name=DATASET_NAME,
data_dir='tmp',
with_info=True,
as_supervised=True,
split=[tfds.Split.TRAIN, tfds.Split.TEST],
)

- Преобразуйте набор данных TensorFlow в массив NumPy, если хотите:

def dataset_to_numpy(ds):
"""
Convert TensorFlow dataset to NumPy arrays
"""
images = []
labels = []
# Iterate over a dataset
for i, (image, label) in enumerate(tfds.as_numpy(ds)):
images.append(image)
labels.append(label)
for i, img in enumerate(images):
if i < 3:
print(img.shape, labels[i])

return images, labels

● Разделите на обучающее, проверочное и тестовое множества.
● Задача: Добиться наилучших результатов на наборе данных rock_paper_scissors!
● Задача этой задачи - получить наилучшие результаты на наборе данных rock_paper_scissors, настраивая гиперпараметры NN-модели и наблюдая за сходимостью.
● Лучший - для простоты - означает наивысшую точность на валидационном множестве.
Добавлено ограничение: Модель с "наилучшей производительностью" должна быть сохранена, поэтому она не должна быть просто распечаткой, сделанной один раз во время обучения!
Вы НЕ можете манипулировать проверочным набором!
Пожалуйста, соблюдайте следующее:
● Вы должны использовать один отдельный Jupyter Notebook для решения задачи и отправки.
○ файл .ipynb, и
○ файл .pdf, созданный на основе блокнота.
Примечание для тех, кто работает в Google Colab: ссылки на ваш блокнот будет недостаточно: вы должны загрузить и отправить сам файл.
Следуйте принципу грамотного программирования и используйте ячейки блокнота в формате markdown.


Task description

Challenge: Get the best results on the rock paper scissors dataset!

"Rock Paper Scissors contains images from various hands, from different races, ages, and genders, posed into Rock / Paper or Scissors and labeled as such. You can download the training set here and the test set here. I created these images using CGI techniques as an experiment in determining if a model trained on a CGI-based dataset could classify real images. I also generated a few pictures that you can use for predictions. You can find them here. Note that all of these pictures use a plain white background. Each image is 300×300 pixels in 24-bit color."

Your task is as follows:

• Download the dataset from tensorflow_datasets like:

import tensorflow_datasets as tdfs
DATASET_NAME = 'rock_paper_scissors'
(dataset_train_raw, dataset_test_raw), dataset_info = tfds.load(
name=DATASET_NAME,
data_dir='tmp',
with_info=True,
as_supervised=True,
split=[tfds.Split.TRAIN, tfds.Split.TEST],
)

• Convert from TensorFlow dataset to NumPy array if you want:

def dataset_to_numpy(ds):
"""
Convert TensorFlow dataset to NumPy arrays
"""
images = []
labels = []
# Iterate over a dataset
for i, (image, label) in enumerate(tfds.as_numpy(ds)):
images.append(image)
labels.append(label)
for i, img in enumerate(images):
if i < 3:
print(img.shape, labels[i])

return images, labels

● Split to training, validation, and test sets.
● Challenge: Get the best results on the rock_paper_scissors dataset!
● The challenge of this task is to get the best results on the rock_paper_scissors dataset by tuning hyperparameters of a NN model and observing convergence behavior.
● Best - for simplicity - means the highest accuracy on the validation set.
Added constraint: The model with the "best performance" has to be saved, so it should not be just a printout happening once during training!
You may NOT manipulate the validation set!
Please observe the following:
● You must use a single standalone Jupyter Notebook to solve the task and submit
○ the .ipynb file, and
○ a .pdf file generated from the notebook.
Note for those working on Google Colab: a link to your notebook will not suffice: you have to download and submit the file itself.
Follow the principle of literate programming, and make use of the markdown cells of the notebook.

Файлы
Отзывы
Добрый день! Оставляю исключительно положительный отзыв на исполнителя. Работа выполнена раньше дедлайна, по ТЗ. Исполнитель всегда был на связи, задал уточняющие вопросы в начале, благодаря чему получилась отличная работа - проверена с другим разработчиком, который подтвердил ее качество :) Спасибо!
~ 2 года назад
R50 29ec560207359be550d565ce2f6ee7dc
Фрилансер
Все отлично!
~ 2 года назад