Делюсь проектом с построением простейшей нейросети. Повторил пример взятый из этой стати https://mattmazur.com/2015/03/17/a-s...ation-example/, на скрине видно приблизительное повторение результатов описываемых в предпоследнем абзаце
Делюсь проектом с построением простейшей нейросети. Повторил пример взятый из этой стати https://mattmazur.com/2015/03/17/a-s...ation-example/, на скрине видно приблизительное повторение результатов описываемых в предпоследнем абзаце
Bad programmers worry about the code. Good programmers worry about data structures and their relationships
среди успешных людей я не встречала нытиков
Барбара Коркоран
А в чём суть? Как система эта работает, что должно происходить?
kipiaplc.ru - приходите, будет интересно...
Стандартная задача - это регулирование температуры обратной воды по температуре наружного воздуха согласно температурного графика.
Как решить эту задачу при помощи нейросети ?
Последний раз редактировалось Newcomer; 27.02.2018 в 19:36.
Там "проблема" и в том, что тов. capzap делал "обучение" модели на самом ПЛК.
Это, вообще говоря, сомнительный подход. Ну, можно посомневаться в целесообразности использования ПЛК для шага обучения.
Скорее всего, учить нужно на нормальном ПК (можно оперировать гораздо большими объёмами данных, строить графики), а полученную модель (коэффициенты) загружать в ПЛК.
В двух словах, подход такой:
1) Нужно собрать много-много данных о значениях разных параметров. Например: температура котла, температура подачи, температуры каждой батареи, скорость ветра, направление ветра, потребление электричества, дату, положение клапана (!)
В итоге, получится источник вида
Дата,параметр1,параметр2,параметр3,...
2) Потом придумать "каким алгоритмом машинного обучения пользоваться". Можно попробовать все по очереди, но если разбираться, то сразу понятно, что для задач одного типа лучше работают одни, а лучше другие
3) Допустим, определились с алгоритмом. И, например, это будет "нейронная сеть". Берём весь набор измеренных величин (ну или 50% из него), и "обучаем" нейросеть предсказывать "положение клапана". Ну, как вариант, можно предсказывать не "положение клапана" (открыт-закрыт), а например, в % (% открытости за минуту)
4) В результате шага 3 (обучения) будут получены коэффициенты нейросети. Их можно взять, зашить в ПЛК программу, и эта самая ПЛК программа будет брать результаты уже реальных измерений (температур, скоростей ветров и т.п.) и генерировать значение для "положения клапана"
Как-то так.
Не рекламы ради, но как раз 4-го марта в Новосибирске Алексей Зиновьев будет рассказывать "введение в машинное обучение".
Для "понимания", на мой взгляд, один из самых простых примеров -- предсказание того, "выжил бы человек или нет, если бы он плыл на Титанике".
На шаге 1 есть перечень пассажиров с признаками "возраст, пол, ещё что-то, выжил-нет"
На шаге 2 можно взять алгоритм "дерево принятия решения"
На шаге 3 "обучение" состоит в том, что мы скармливаем данные о всех пассажирах, а алгоритм строит дерево в духе
Смысл в том, что цепочка IF'ов генерируется автоматически, и размер этих if'ов гораздо меньше общего размера входных данных. Да, могут быть ошибки, но полученный алгоритм может предсказывать результат в том числе и для тех параметров, которые не встречались в исходной выборке.Код:IF пол=Ж THEN СПАСЛАСЬ; ELSIF возраст>9.5 THEN УМЕР; ELSE ... END_IF;
На шаге 4 берём эту цепочку IF'ов, запихиваем в ПЛК и он может предсказывать "спасётся ли пассажир, если пол у него такой-то и возраст такой-то"
Последний раз редактировалось Владимир Ситников; 27.02.2018 в 20:48.
Как можно грамотно пользоваться прототипом, да ни как, изучать предмет да строить свою сеть. Конкретно в этом примере входные данные располагаются в hiddenLayer в массиве mINPUT, выходные в outputLayer в массиве mOUTS, остальное обычно не заполняется, там при инициализации должны быть случайные величины, о них на форуме должна быть целая тема, какой ГСЧ для этого использовать. У меня же вставлены веса какие используется в примере по ссылке
Bad programmers worry about the code. Good programmers worry about data structures and their relationships
среди успешных людей я не встречала нытиков
Барбара Коркоран