• Как определять количество нейронов и слоев в нейронной сети?

    @GrKon
    Это зависит от того что за процесс сидит в твоих 100 стеках по 4 числа. Судя по 100х4 ты пытаешься предсказать изменение курса на бирже.
    1. Мое мнение - что для коротких интервалов это дело гиблое (совсем).
    2. Делал лаболаторку на эту тему так что пробовал на зуб.

    Если все таки хочешь попробовать - в общих чертах:
    3. Для начала возьми от 10000 (лучше 100000) свечей (min, max, in, out) можно и val добавить для очистки совести .
    4. найди и что-то сделай с временными дырами - просто так оставлять нельзя - сильно портит распределение данных
    5. Разделить на train, val, test. Нормализуй. Организуй подачу данных для обучения скользящим окном шириной пусть 100 и шагом 1-10. (лучше использовать dataloader)
    6. Для начала попробуй научить сеть предсказывать значение (лучше не следующее а через одно (+2) - если получится - будет шанс предсказать +3, +4 и т.п.
    7. LSTM - 1-2 слоя по 5-500 нейронов, затем 1-3 полносвязных
    8. Начинать с архитектуры попроще - если учится (лучше чем орел/решка) - добавлять нейроны-слои (по очереди) - пока не начнет переучиваться.
    ...
    9. Максимально убирай абсолютные значения - а то сеть научится "базе" и будет имитировать предсказание. (Нормализация вещь нужная но здесь не поможет)
    Ответ написан
    Комментировать
  • Каким образом учить нейросеть(свёртрчную, рекуррентую, трансформер)?

    @GrKon
    методом обратного распространения ошибки
    Ответ написан
    Комментировать
  • Как решить задачу распознавания типа застройки по спутниковому снимку?

    @GrKon
    Распознавание секторами или тайлами - думаю разные задачи. Определись сразу.
    Для секторов:
    Если нет размеченного датасета:
    1. Накачай спут.снимки городов.
    2. Разметь вручную (можно в фотошоп - слоями по типам застройки) или поищи приблуду для разметки сегментирования - видел в DeepFaceLab
    3. Аугментируй - в твоем случае это в основном повороты, можно немного масштаб, гамма и шум - процентов на 10-20. Напиши программу для аугментации раз в 10.
    4. В результате надо получить набор данных
    200-500 - можно получить хоть какой-то положит результат.
    2000-5000 - можно показать как результат решения уч.задачи. (аналог тому, что в статье).
    20000-50000 - можно надеяться на пром.результат.
    5. Обучи u-net сетку.
    6. 100-500 раз обучи сетку меняя параметры сети (в т.ч. всякие дропауты и бэтч нормализации) и гиперпараметры. (наверно лучше это делать на маленьком наборе а затем дошлифовать на большом наборе.
    7. контроллируй переобучение.
    8.используй Chat GPT как советника.

    По трудозатратам - думаю займет полных дней 10 на средний результат.
    Ответ написан
    1 комментарий
  • Использовать нейросеть для обучения на своих данных. Какую сетку лучше выбрать и где это сделать в облаке или на компе?

    @GrKon
    Если вы хотите от GPT помощи в написании кода - Попытка не пытка! Я бы сделал так:
    1. Собрал необходимые материалы.
    2. Попытался сам максимально лаконично сформулировать идею.
    3. Если не получается п.2 - надо скормить материалы кусками в GPT попросив сжать текст и оставить суть. затем скормить сжатые куски - получить идею (1 кусок)
    4. Попробовать для п. 3 разные модели.
    5. готовый текст идеи скормить GPT и попросить план для кода проекта например на 12 частей.
    6. в режиме диалога попросить код по каждой части, или для большого проекта каждую часть сначала разбить на подчасти.
    7.попросить подробно прокомментировать код
    8.попросить проверить код
    9. попросить составить программу тестирования по коду.
    Ответ написан
    Комментировать
  • Почему удаление отклоненных значений удаляет так много данных?

    @GrKon
    График Age ditribution before... вызывает большие сомнения - там явно не 10900. Проверь формирование этого графика. Возможно правильный график снял бы вопросы.
    Ответ написан
    Комментировать
  • Как использовать CNN, если один из каналов - входные данные, а другой - выходные?

    @GrKon
    Если я правильно понял задачу, то для начала для решения использовал бы автоэнконер или u-net (в общем сети генерации изображений). На вход подаем каналы с известными данными (рельеф, препятствия, сегментированные площади орошения) - выход обучать схеме расположения дождевателей. Для обучения необходимы пары - изображения без дождевателей, и с дождевателями (или слой только с дождевателями). Понятно, что проще обучить на получение слоя только с дождевателями.
    Ответ написан
  • Как решить задачу классификации в дисбалансном датасете через поиск аномалии?

    @GrKon
    Я бы для начала сбалансирован набор до 50/50%. Если на таком балансе достигаются приемлемые результаты но на исходном балансе модель не даёт приемлемых результатов - дообучать модель постепенно меняя баланс к необходимому.
    Ответ написан
    Комментировать
  • Как вернуть каретку на предыдущую строку?

    @GrKon
    Зачем во втором случае стоит '\n' ?- он строку и переводит - убери его и будет как в примере выше. Если почему-то его убирать нельзя - добавь '\b' в следующий принт - он сотрет перевод строки.
    Ответ написан
  • Как запихнуть трехмерный тензор в Input?

    @GrKon
    Не очень понятен вопрос - вот пример использования model.fit_generator:

    # initialize the number of epochs and batch size
    EPOCHS = 100
    BS = 32

    # construct the training image generator for data augmentation
    aug = ImageDataGenerator(rotation_range=20, zoom_range=0.15,
    width_shift_range=0.2, height_shift_range=0.2, shear_range=0.15,
    horizontal_flip=True, fill_mode="nearest")

    # train the network
    H = model.fit_generator(aug.flow(trainX, trainY, batch_size=BS),
    validation_data=(testX, testY), steps_per_epoch=len(trainX) // BS,
    epochs=EPOCHS)

    подробней в https://russianblogs.com/article/6460835835/
    Ответ написан
    Комментировать
  • Все возможные комбинации по условию?

    @GrKon
    внутри цикла i будет пробегать значения от '0000' до '9999' здесь и ставь обработку условий
    if i_is_true(i):
    #делаем что-то когда можно
    где i_is_true() возвращает true если i проходит проверки
    Ответ написан
    Комментировать
  • Каким образом можно дообучить модель, добавив новые символы?

    @GrKon
    когда не хватает памяти - уменьшайте размер batch. При обучении весь набор данных скажем 100000 делится на пачки например по 500 получаем 200 пачек (batch) по 500 примеров. Обработка всего набора (в нашем случае 200 пачек) - это эпоха. Пачка обрабатывается за раз чем она меньше тем менше памяти.
    Ответ написан
  • Что я делаю не так, и почему нейросеть не генерирует уникальный текст?

    @GrKon
    как минимум у вас нет кода обучения сети и предсказания.
    Общая схема (обучение с учителем):
    - грузим вход/выход (рабочий 70% и тестовый 30%
    - создаем/конфигурируем модель (то, что у вас есть)
    - обучаем модель
    - получаем результаты по обученной модели
    (последних двух пунктов в коде не наблюдается.)
    Ответ написан
    Комментировать