Заказ закрыт
AutoKeras скрипт для формирования модели и получения прогноза (Python)

Бюджет: 20 000 ₽
236.95 $ – 207.79 €
Заказчик выбрал исполнителя:
Фрилансер  
Попытаюсь изложить своими словами что нам, в общем-то, надо.
Весь проект пока на этапе раннего изучения. Просто оцениваем вариант использования нейросетей в каких-то своих продакшн-проектах.

Нам нужен некий аналог AutoML т.к. мы не знаем какой тип сети с какими параметрами лучше всего подойдет. Что посоветуете?
Есть такой AutoKeras. Хотим попробовать использовать его.

Опытным путем (с использованием H2O) мы поняли, что лучше всего работает XGBoost и DeepLearning.
Но мы можем ошибаться. Какие ещё есть оптимальные? Поскольку не удалось добиться точности более 77%.

С использованием Google AutoML Tables далось добиться таких результатов:
joxi.ru/D2PGPyfqz5Rom3?d=...
Т.е. точность 97%. Космос! И он выдает процент вероятности по каждой модели (в случае классификации). Это важно, поскольку значение «1» на выходе встречается достаточно редко. И мы сейчас используем начиная от 25% вероятности «1».

В идеале нужно два Python скрипта (консольных):
1. train.py – для обучения
2. predict.py – для предсказания

Входные параметры для обучения:
-name=Model_1 (название папки – как-то надо делить все модели по попыткам... и куда-то складывать получившиеся модели после прогона AutoKeras)
-file-train=train.csv (примерно 80% – будем пробовать разные варианты соотношения процента данных для обучения и тестирования)
-file-test=test.csv (примерно 20%)

Содержание файлов file-train и file-test (test.csv для примера в приложении):

ENUM,ENUM,DOUBLE,INT,INT,ENUM
1,0,0.32,1,4,0
1,2,0.30,3,2,1

Разделитесль строк – « n» (UNIX style). Кодировка – UTF-8.

Заголовок (первая строка) – это тип данных в колонке. Колонок может быть от 20 до 1000.
Строк – примерно до 1000к (в среднем 100-150к). Последняя колонка – всегда результат.

Результат может быть или ENUM (значения: 0, 1 или -1, 0, 1), или INT. Других вариантов быть не может. Соответственно, если она ENUM – модель классификации и нужен % по каждому варианту. Если INT – число предсказания (от 0 до 1000 примерно, максимум – 5000). Причем, в случае INT если модель предсказала 15, а на самом деле 20 – это терпимо. Если предсказала 20, а на самом деле 15 – это значительно более грубая ошибка.

Соответственно, нужно чтобы AutoKeras перебирал все возможные варианты и складывает полученные модели в папку «Model_1/какое-то_название.model» (или только одну – самую лучшую модель). В случае если складировать все модели (как делает H2O), то таблицу лучших вариантов складывает в лог: «Model_1/result.log» с сортировкой лучшая > худшая.


Параметры предсказания:
-name=Model_1/какое-то_название.model (какую конкретную модель использовать)
-data="1,2,0.4,0.9,-3,............" (аналогичный поток данных – структура данных 1-в-1 как использовался для обучения)

На выходе надо получать или
-1: 0.0000
0: 0.3000
1: 0.7000

- это в случае классификации. Или число.


Для обучения используем:
Intel Core i9-10980XE (18 ядер, 36 потоков), 48Гб оперативы, GTX 1080ti. Использовался для рендеринга. Пока простаивает.
Поставили Ubuntu 18.04.
Обучать можем сутками – главное получить максимально хороший результат!
Опубликован 01.06.2020 в 21:03 Последнее изменение: 01.06.2020 в 21:13
Заказ находится в архиве

Выберите способ верификации:

Обновите страницу после прохождения верификации.