Прогнозирование будущего (навеяно статьёй о нейросетях)

Аватар пользователя BOV

Прогнозирование будущего (навеяно статьёй о нейросетях)

Вопреки броскому заголовку, заметка будет чисто технической и предельно простой.

Для многих, если не для большинства читающих об искусственном интеллекте и нейросетях эта тема подобна магии яйцеголовых инопланетян, и при этом они не знают о значительно более простых методах прогнозирования. Дальше - именно для таких читателей.

Одна из часто встречающихся в повседневной жизни задач это задача о бассейне. Помните из школы - труба, по которой в бассейн поступает вода, требуется рассчитать, когда бассейн наполнится.  К этой задаче можно свести и прогноз заполнения жесткого диска и, например, прогноз заполнения или опустошения топливного хранилища электростанции. Но в реальной жизни "вода" часто поступает в наш бассейн и покидает его неравномерно - сегодня столько, завтра полстолько, послезавтра полтора вчерашнего объема. Как в таком случае сделать прогноз заполненности нашего "бассейна"? На помощь приходит инструмент "линия тренда" из вашей любимой электронной таблицы. Далее пример выполнялся в китайском WPS офисе, но другая, более распространенная у нас программа выглядит совершенно аналогично.

Заполняем колонку таблицы значениями ежедневно (период может быть любым)  замеренного уровня нашей "воды" за некоторый промежуток времени. Я взял десять значений. Выделяем их, нажимаем "вставка"-"диаграмма"-"точечная диаграмма"

Далее щелкаем по точке на полученной диаграмме правой кнопкой мыши и выбираем "добавить линию тренда"

На" диаграмме появляется прямая линия. Щелкаем по ней правой кнопкой и выбираем "формат линии тренда"

Почти все готово! Осталось совсем чуть-чуть - справа, на появившейся панели параметров постави

ть галочки "линейная", "показывать уравнение на диаграмме" и "поместить на диаграмму величину достоверности аппроксимации R квадрат"

 

Теперь все. Слева на диаграмме вы увидите нечто подобное:

Вверху нужное нам уравнение. Подставляя в нее количество дней (или других выбранных вами периодов), для которого нужен прогноз и решая это простое уравнение вы получаете искомое значение.

Ниже уравнения показано значение R квадрат, величины, говорящей нам о том, насколько хорошо наше уравнение объясняет устанавливаемую нами зависимость. Желательно, чтобы R квадрат ревышал 0,8. Вообще стоит обратить внимание на ваши точки - насколько хорошо они ложатся на прямую, можно ли считать зависимость линейной.

В певом приближении все - аккуратно пользуясь таким нехитрым методом можно строить не самые плохие прогнозы.

Авторство: 
Авторская работа / переводика

Комментарии

Аватар пользователя sporadic_one
sporadic_one(9 лет 2 месяца)

Главное, чтобы фраза "аккуратно пользуясь таким нехитрым методом можно строить не самые плохие прогнозы." не была воспринята сферической домохозяйкой в вакууме как "так надо строить все прогнозы, например сколько веса я сброшу за полгода диеты, если вчера я похудела на сто грамм" ))

Аватар пользователя Виктор П
Виктор П(11 лет 4 месяца)

Вообще-то экстраполяцию полагается делать не более чем на 10 процентов от известного интервала, дальше чревато

Аватар пользователя BOV
BOV(8 лет 11 месяцев)

Надеюсь, заметка просто подтолкнет домохозяйку к дальнейшему изучению темы :) Я сам в этой теме весьма плаваю.

К сожалению, часто мы не используем какие-то возможности просто потому, что не знаем об их существовании.

Аватар пользователя sporadic_one
sporadic_one(9 лет 2 месяца)

Позволю себе еще раз порекомендовать неплохой  обзорный курс Andrew Ng. Он, проверено, хорошо дает базовые основы, даже если его просто смотреть, даже по диагонали.

Аватар пользователя Олежа
Олежа(9 лет 4 месяца)

Пусть домохозяйка изучит ещё и определение значимости коэффициентов регрессии. А то вдруг окажется, что зависимость случайная.

Аватар пользователя BOV
BOV(8 лет 11 месяцев)

>изучит ещё и определение значимости коэффициентов регрессии

 

В заметке рассмотрена простая линейная регрессия - в ней имеется только один коэффициент. Его значимость можно оценить по величине R2 , о чем в заметке сказано. Излишняя перегрузка теорией на начальном этапе только отпугивает неуверенных в себе людей.

Аватар пользователя Олежа
Олежа(9 лет 4 месяца)

Его значимость можно оценить по величине R2 

Я чо та сомневаюсь. Вот, если например, R2=0,81, будет ли он значим или нет?

Аватар пользователя ®man
®man(10 лет 1 месяц)

всё-таки нейросети немного о другом

Аватар пользователя BOV
BOV(8 лет 11 месяцев)

Скорее сильно о другом. Но, надеюсь, кому-нибудь и линейная регрессия пригодится.

Аватар пользователя kue
kue(9 лет 10 месяцев)

Прогнозирование еще от погоды сильно зависит. Лезешь в облачную таблицу, а там где-то Гольфстрим остыл, дата-центр замерз и генератор вовремя не включился. Сезонное оно.. 

Аватар пользователя Intel4004
Intel4004(11 лет 8 месяцев)

В певом приближении все - аккуратно пользуясь таким нехитрым методом можно строить не самые плохие прогнозы.

Экстраполяторам посвящается.

Аватар пользователя Киевлянин
Киевлянин(8 лет 8 месяцев)

В продолжение темы

Аватар пользователя fonin
fonin(12 лет 4 месяца)

Поздравляю с изобретением экстраполяции.

Аватар пользователя sporadic_one
sporadic_one(9 лет 2 месяца)

Вот вы ехидничаете над автором, а между тем, уверен, 95% аудитории интернета понятия не имеют как прямую методом наименьших квадратов провести даже при помощи экселя.

Аватар пользователя ДК
ДК(11 лет 6 месяцев)

даже я не знаю. но когда понадобится, знаю, где взять инструкцию и спокойно построю. а до этого мусор в голове держать нет смысла.

Аватар пользователя Ivan_Magregor
Ivan_Magregor(8 лет 9 месяцев)

Вообще-то очень малое количество процессов можно прогнозировать при помощи простой линейной экстраполяции. Особенно когда дело касается очень сложных самоорганизующих систем типа социальных.

Большинство зависимостей носят комплексный нелинейный характер, который требует сложных синергетических вычислений, а даже слоэное сценарное прогнозирование не может учесть кучи "черных лебедей" - принципиально не просчитываемых событий.

Аватар пользователя Canis_m
Canis_m(8 лет 1 неделя)

Вообще то с помощью простой прямой можно описать огромное множество задачь, главное понимать, что делаешь))

Это МНК или метод наименьших квадратов, который позволяет аппроксимировать выборку функцией любого вида, а так же экстраполировать.

А вы знали, что можно заведомо нелинейную выборку привести к линейной? Например логарифмированием, оценить параметры логарифмированной выборки, а потом сделать обратный пееход и тем самым уже оценить параметры исходной нелинейной выборки. Математика она много чего умеет.

Автор молодец. У меня после прочтения этих статей по ИИ и неиросетям, как раз МНК на уме, тем более сейчас практиканта пытаемся научить оценивать величину и её производную методом локальной аппроксимации прямой.