br />
. 3.1 Отримання та обробка даних
Для апроксимації мною був обраний ділянку на карті з координатами 45 - 49 градусів широти, 0 - 4 градуса східної довготи. Ця ділянка в центрі Франції вибраний не випадково, в оглядовій статті про OpenWeatherMap сказано, що «група французьких ентузіастів розгорнула систему обробки даних на своїх домашніх серверах і надає детальні і точні прогнози по всій території Франції» [7]. У той же час як з приводу Росії сказано наступне «давайте подивимося, що відбувається з погодними станціями і погодних ентузіазмом в Росії. На ілюстрації нижче можна побачити поточну картину розподілу погодних станцій. У порівнянні з щільним покриттям всій європейській частині, Росія виглядає більш ніж скромно. І це одна з причин неточності прогнозів погоди на нашій безкрайньої території. »[7]
Малюнок 2.2 - Розподіл погодних станцій
Так як мені були необхідні найбільш точні дані для навчання мережі я зупинився саме на території держави Франція.
Було прийнято рішення використовувати історію спостережень як джерело погодних даних для навчання мережі. Основна частина роботи відбувалася з історією спостереження за проміжок: 1 мая 2013 - 1 сентября 2013. Пізніше для отримання повної картини погодних явищ використовувався часовий проміжок: 1 мая 2013 - 1 березня 2014.
На початку вибираються 25 міст володіють метеорологічними станціями, дані з яких будуть Апроксимовані на всю поверхню квадрата. За ним виходить історія спостереження за заданий проміжок часу.
Потім виходить історія спостереження за всіма рештою містами та селами надає такі дані. Це робиться для отримання найбільшого числа прикладів для навчання мережі.
Далі відсікається невживана інформація, залишаються лише температурні дані, координати і час спостереження.
Температура представлена ??в шкалі Кельвіна, переводимо її до шкалою Цельсія.
Далі з розрізнених даних формуємо приклади виду:
lat, lon, lat0, lon0, T0, lat1, lon1, T1, ..., lat24, lon24, T24 T,
де lat, lon - координати точки, на якій буде навчатися мережу., loni, i=0, ..., 24 - координати точок, щодо яких відбувається аппроксімація.i, i=0, ..., 24 - температура в конкретний розглянутий момент часу в точках з координатами lati, loni.
Такому наприклад відповідає значення T - температура в точці з координатами lat, lon в цей же момент часу.
У результаті вийшло близько 200 000 прикладів для навчання мережі, що досить багато. На жаль, цю вибірку не можна назвати до кінця репрезентативною оскільки по деяких містах в ній представлено інформації набагато більше ніж по інших, через те, що сервіс дає саме таку неповну інформацію. Цей недолік ще належить подолати.
. 3.2 Проблеми виникли на етапі отримання і обробки даних
В описі можливостей API сервісу сказано наступне:
«Можна отримувати дані про поточну погоду у вибраній точці за координатами lat/lon»
Але, на жаль, ця можливість реалізована досить дивно. Замість даних в конкретній точці результат http запиту видає інформацію про місто знаходиться найближче до вказаними координатами. Притому сервіс володіє інформацією не про всі міста і населених пунктах, а лише в частині з них.
Описані вище недоліки сильно обмежували і сповільнювали розробку. Приміром, якби була інформація про більше число міст, то навчальна вибірка була б більш повною, що, цілком імовірно, дозволило б краще навчити мережу і отримати кращі результати апроксимації.
Також сильно завадив той факт, що при використанні історії спостережень я зіткнувся з тим, що про якісь містах зберігається набагато більш насичена історія спостережень за певний період ніж про інших (у багато разів). Ця проблема безпосередньо впливає на репрезентативність вибірки. Причому якщо виключити міста з більш об'ємною історією спостережень, щоб вирівняти кількість інформації про всі міста, то навчальна вибірка виявляється занадто малою і, через це, мережа навчається тільки гірше.
Поки довелося залишити вибірку з різним об'ємом спостережень про різних містах. Така вибірка виходить досить великий, що дає можливість мережі навчитися і показувати досить непогані результати навіть на не зовсім репрезентативною вибіркою.
. 3.3 Нормалізація даних
Було застосовано два типи нормалізації:
а) Нормалізація з використанням математичного очікування й дисперсії.
Для температури і координат окремо вважається математичне очікування і дисперсія за формулами: і
Потім розраховуються нові нормалізовані значення за форму...