Анализ данных
В данном компасе описываются методы математического анализа данных
Вводная
Часто приходится иметь дело с большими массивами данных, которые обозреть самому и в уме практически невозможно. Например, у вас сто городов, описываемых ста показателями. Вопрос: как понять, что происходит на самом деле, как идут дела у этих городв, как их структурировать по этим данным?
Ответ самый первый и простой, выбросить 95 показателей, оставив 5 самых выжных, а по ним уже построить диаграммы и что-то в уме, обложившись бумагой, повыводить. Но сколько информации при этом теряется? И где гарантия, что эти 5 показателей самые важные? А если проблема не в показателях, а в самих объектах? Например, у вас несколько миллионов человек, и каждый описывается несколькими десятками характеристик, а вас надо выделить стратификацию и вычленить нужную группу людей?
Как раз в подобных случаях на помощь приходят математические методы анализа данных, или, как их иногда называют, методы "разработки данных" - data mining.
К основным методам анализа данных относят факторный анализ, кластерный анализ, регрессионные методы, методы классификации и принятия решений и нейронные сети. В основном все эти методы основываются на теории вероятности и математической статистике.
По данному вопросу много информации в инете на английском языке, поэтому, если у вас с английским проблем нет, просто набираете в гугле: data mining, cluster analysis, clustering, regressions, factor analysis, multivariance techniques, neural networks etc.
Приведу несколько англоязычных ссылок, чтобы представить набор терминов и ключевых слов:
http://www.autonlab.org/tutorials/
http://www-users.cs.umn.edu/~kumar/dmbook/index.php
http://databases.about.com/od/datamining/a/datamining.htm
вот обширный список ссылок на английском
http://www.dmoz.org/Computers/Software/Databases/Data_Mining/
а это англоязычный учебник с сайта statsoft.com (разработчики пакета Statistica)
http://www.statsoft.com/textbook/stathome.html?stdatmin.html&1
Теперь же для тех, кому предпочтительней русский текст.
Хороший обзор всех методов приведен на сайте www.intuit.ru в курсе
http://www.intuit.ru/department/database/datamining/
Можно посмотреть учебник на русском сайте СтатСофта
http://www.statsoft.ru/home/portal/default.asp
Вот адрес сайта посвященного пакету SPSS
http://www.spsstools.ru/
Вот список ссылок на русском языке, относящися к анализу данных (книги по статистике и эконометрике)
http://www.dmoz.org/World/Russian/Наука/Математика/Статистика/
Вообще очень полезно прочитать какую-нибудь книжку по эконометрике, там объясняются основные положения, смысл и границы применимости каждого метода. Например, очень хорошая книжка Айвазян, Мхитарян "Прикладная статистика и основы эконометрики". Ее можно скачать в инете, напрмер, тут
http://www.sms-publishing.com/index.php?option=com_remository&Itemid=31&func=fileinfo&id=211
или тут
http://www.infanata.org/2006/03/22/s._ajjvazjan_v._mkhitarjan._prikladnaja_statistika_i_osnovy_jekonometriki.html
также эта книга есть на библиотеке Ихтика
http://ihtik.lib.ru/dedic_homelab-mehmat_29sept2007.html
(номер нашей книги книги 1195)
А вот хваленую и рекламируемую книжку Боровикова от издательства StatSoft я бы НЕ рекомендовал. Ничего полезного в ней нет. Только картинки, да и те без объяснений приличествующих.
В принципе любая хорошая книжка, а лучше учебник, по теории вероятностей и математической статистике не повредит. Для начала неплохо прочитать учебник В.Е. Гмурмана "Теория вероятностей и математическая статистика" или какой-нить учебник Е.С. Вентцель по этой тематике, - они написаны просто и понятно.
Понимать теоретические основы необходимо для правильного применения методов и интерпретации результатов. Все эти методы не являются волшебной палочкой и не дают готовых результатов. Они дают только промежуточные данные, которые более обозримо анализируются, но при этом нужно знать значение и значимость каждого внутреннего параметра методов, а без "вживания" в предмет это невозможно.
Также перед применением методов надо хотя бы примерно для себя качественно разбить данные на разные подгруппы. Например, когда я анализировал совместно все социально-экономические показатели - то применение методов не давало мне никакой качественной картинки. Как только же я развел переменные на отдельно социальные и отдельно экономические и применил факторный анализ - "пасьянс тут же сложился". Поэтому уже перед применением методов нужно примерно понять, что от чего может зависеть, а что нет, что можно рассматривать вместе, а чо лучше разделить. Иногда приходится применять разные методы и в разных комбинациях, пока что-то не даст приемлемого результата.
И еще одно важное замечание: эти методы ничего не гарантируют, правомерность их результатов все равно оценивать вам, т.к. применив разные методы в разном порядке - можно получить качественно разные результаты.
Краткое описание методов:
Факторный анализ - понижает размерность, заменяя сто переменных меньшим числом, например 7-15-ю переменными, к каждой из которых будет относиться по нескольку старых переменных. Он как бы разбивает все начальные переменные на различные подсферы, каждая из которых определяется своим действующим фактором (одной из новых переменных).
Кластерный анализ - разбивает совокупность обектов, описываемую множеством переменных, на группы "похожих", классифицирует объекты.
Регрессионный анализ - устанавливает функциональную зависимость одних переменных от других с учетом погрешности и вероятности значений каждой переменной, строит функциональную связь в условиях вероятностности и неточности.
Методы классификации и принятия решений - построение многослойной логической структуры данных такой, чтобы переходя от параметра к параметру вы, в итоге, идя по четкому алгоритму, пришли к одному из наперед заданных ответов (предзаданных альтернатив). Например, имея объект а заданными характеристиками, применять к нему действие, или нет.
Нейронные сети - самообучающиеся базы данных. Есть переменные входа, есть переменные выхода. Нейронная сеть будет подбирать оптимальную закономерность зависимости выхода от входа. Вид закономерности можно задавать, можно предоставить варьировать самой нейронной сети.