Страница 1 из 3 123 ПоследняяПоследняя
Показано с 1 по 10 из 28

Тема: Нейросеть на многослойных перцептронах

  1. #1
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,664

    По умолчанию Нейросеть на многослойных перцептронах

    Делюсь проектом с построением простейшей нейросети. Повторил пример взятый из этой стати https://mattmazur.com/2015/03/17/a-s...ation-example/, на скрине видно приблизительное повторение результатов описываемых в предпоследнем абзаце
    Изображения Изображения
    • Тип файла: png owen.png (3.6 Кб, Просмотров: 121)
    Вложения Вложения
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

  2. #2
    Пользователь Аватар для Сема
    Регистрация
    17.12.2011
    Адрес
    Армавир
    Сообщений
    458

    По умолчанию

    А в чём суть? Как система эта работает, что должно происходить?
    http://kip-world.ru/ - приходите, будет интересно...

  3. #3

    По умолчанию

    Стандартная задача - это регулирование температуры обратной воды по температуре наружного воздуха согласно температурного графика.

    Как решить эту задачу при помощи нейросети ?

  4. #4

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    составить выборку данных для обучения, например при температуре нар.воздуха -20 и температуре обрата 50 регулятор должен быть 35, обе температуры это входа, значение регулятора это выход.
    Что значит "регулятор должен быть 35" ? Выходов должно быть два и они управляют трехпозиционным клапаном, т.е. подают на него импульсы, длительность которых пропорциональна рассогласованию. Обычно это делается при помощи ПИД-регулятора.
    Как это сделать при помощи нейросети ?
    Последний раз редактировалось Newcomer; 27.02.2018 в 19:36.

  5. #5
    Пользователь
    Регистрация
    11.01.2009
    Адрес
    Кострома
    Сообщений
    3,247

    По умолчанию

    Цитата Сообщение от Newcomer Посмотреть сообщение
    Что значит "регулятор должен быть 35" ? Выходов должно быть два и они управляют трехпозиционным клапаном, т.е. подают на него импульсы, длительность которых пропорциональна рассогласованию. Обычно это делается при помощи ПИД-регулятора.
    Как это сделать при помощи нейросети ?
    это значение к примеру подают на фб который делает расчет, для вывода задвижки в это положение.
    т.е. к примеру на вход регулятора.

  6. #6

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    к чему этот разговор тогда будто я в качестве оправдывающегося, я выложил инструмент, кто видит решение своей задачи через нейросети, тот и обучает её, находит какая информация требуется для получения нужного результата.
    Вот я и спрашиваю как грамотно пользоваться вашим инструментом. Как подготовить исходные данные и прочее. Вы бы на конкретном примере продемонстрировали работу нейросети.
    Последний раз редактировалось Newcomer; 27.02.2018 в 20:14.

  7. #7

    По умолчанию

    Цитата Сообщение от Newcomer Посмотреть сообщение
    Вот я и спрашиваю как грамотно пользоваться вашим инструментом. Как подготовить исходные данные и прочее. Вы бы на конкретном примере продемонстрировали работу нейросети.
    Там "проблема" и в том, что тов. capzap делал "обучение" модели на самом ПЛК.
    Это, вообще говоря, сомнительный подход. Ну, можно посомневаться в целесообразности использования ПЛК для шага обучения.

    Скорее всего, учить нужно на нормальном ПК (можно оперировать гораздо большими объёмами данных, строить графики), а полученную модель (коэффициенты) загружать в ПЛК.

  8. #8

    По умолчанию

    Цитата Сообщение от Newcomer Посмотреть сообщение
    Вот я и спрашиваю как грамотно пользоваться вашим инструментом. Как подготовить исходные данные и прочее. Вы бы на конкретном примере продемонстрировали работу нейросети.
    В двух словах, подход такой:
    1) Нужно собрать много-много данных о значениях разных параметров. Например: температура котла, температура подачи, температуры каждой батареи, скорость ветра, направление ветра, потребление электричества, дату, положение клапана (!)

    В итоге, получится источник вида

    Дата,параметр1,параметр2,параметр3,...

    2) Потом придумать "каким алгоритмом машинного обучения пользоваться". Можно попробовать все по очереди, но если разбираться, то сразу понятно, что для задач одного типа лучше работают одни, а лучше другие

    3) Допустим, определились с алгоритмом. И, например, это будет "нейронная сеть". Берём весь набор измеренных величин (ну или 50% из него), и "обучаем" нейросеть предсказывать "положение клапана". Ну, как вариант, можно предсказывать не "положение клапана" (открыт-закрыт), а например, в % (% открытости за минуту)

    4) В результате шага 3 (обучения) будут получены коэффициенты нейросети. Их можно взять, зашить в ПЛК программу, и эта самая ПЛК программа будет брать результаты уже реальных измерений (температур, скоростей ветров и т.п.) и генерировать значение для "положения клапана"


    Как-то так.

    Не рекламы ради, но как раз 4-го марта в Новосибирске Алексей Зиновьев будет рассказывать "введение в машинное обучение".


    Для "понимания", на мой взгляд, один из самых простых примеров -- предсказание того, "выжил бы человек или нет, если бы он плыл на Титанике".
    На шаге 1 есть перечень пассажиров с признаками "возраст, пол, ещё что-то, выжил-нет"
    На шаге 2 можно взять алгоритм "дерево принятия решения"
    На шаге 3 "обучение" состоит в том, что мы скармливаем данные о всех пассажирах, а алгоритм строит дерево в духе
    Код:
    IF пол=Ж THEN
       СПАСЛАСЬ;
    ELSIF возраст>9.5 THEN
       УМЕР;
    ELSE ...
    END_IF;
    Смысл в том, что цепочка IF'ов генерируется автоматически, и размер этих if'ов гораздо меньше общего размера входных данных. Да, могут быть ошибки, но полученный алгоритм может предсказывать результат в том числе и для тех параметров, которые не встречались в исходной выборке.

    На шаге 4 берём эту цепочку IF'ов, запихиваем в ПЛК и он может предсказывать "спасётся ли пассажир, если пол у него такой-то и возраст такой-то"
    Последний раз редактировалось Владимир Ситников; 27.02.2018 в 20:48.

  9. #9
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,664

    По умолчанию

    Как можно грамотно пользоваться прототипом, да ни как, изучать предмет да строить свою сеть. Конкретно в этом примере входные данные располагаются в hiddenLayer в массиве mINPUT, выходные в outputLayer в массиве mOUTS, остальное обычно не заполняется, там при инициализации должны быть случайные величины, о них на форуме должна быть целая тема, какой ГСЧ для этого использовать. У меня же вставлены веса какие используется в примере по ссылке
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

  10. #10

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    Как можно грамотно пользоваться прототипом, да ни как, изучать предмет да строить свою сеть. Конкретно в этом примере входные данные располагаются в hiddenLayer в массиве mINPUT, выходные в outputLayer в массиве mOUTS, остальное обычно не заполняется, там при инициализации должны быть случайные величины, о них на форуме должна быть целая тема, какой ГСЧ для этого использовать. У меня же вставлены веса какие используется в примере по ссылке
    Вы представили свой материал совершенно не подготовленной аудитории.

Страница 1 из 3 123 ПоследняяПоследняя

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •