2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


В этом разделе нельзя создавать новые темы.

Если Вы хотите задать новый вопрос, то не дописывайте его в существующую тему, а создайте новую в корневом разделе "Помогите решить/разобраться (М)".

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

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

Обязательно просмотрите тему Правила данного раздела, иначе Ваша тема может быть удалена или перемещена в Карантин, а Вы так и не узнаете, почему.



Начать новую тему Ответить на тему
 
 Как правильно выбрать данные из ген. совокупности?
Сообщение11.02.2015, 11:25 


14/12/14
454
SPb
Хотелось бы уточнить, как наиболее правильно и быстро выбрать параметры (переменные) для дальнейшего предикативного анализа данных?

Есть большое количество переменных, которые по гипотезе могут (а может быть и не могут) влиять на целевую функцию. Переменные могут быть как качественные (текстовые), так и количественные. Целевая функция может принимать только 2 значения - Плохо или Хорошо, условно 0 или 1.

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

Подскажите, пожалуйста.

 Профиль  
                  
 
 Re: Как правильно выбрать данные из ген. совокупности?
Сообщение11.02.2015, 14:06 
Заслуженный участник
Аватара пользователя


18/01/13
12065
Казань
Какой способ вы согласны считать "экспрессом"? Например, метод главных компонент? Или кластеризацию показателей?

 Профиль  
                  
 
 Re: Как правильно выбрать данные из ген. совокупности?
Сообщение11.02.2015, 14:51 


14/12/14
454
SPb
Про скорость обработки данных этими методами мне ничего не известно. Вам виднее. Что посоветуете?

Правильно понимаю, что это 2 основных способа, позволяющих уменьшить размерность данных?

 Профиль  
                  
 
 Re: Как правильно выбрать данные из ген. совокупности?
Сообщение11.02.2015, 14:57 
Заслуженный участник
Аватара пользователя


18/01/13
12065
Казань
Ну, я не такой уж специалист... Но эти попадаются чаще. Вернее, метод главных компонент -- это частный случай факторного анализа.

Да вы гляньте сами "методы сокращения (снижения) размерности". Единственно, я не знаю, может ли повлиять вид целевой функции на выбор метода.

Что касается скорости обработки -- зависит от средства обработки (я работаю с R, но реально больших данных не попадалось). А у вас какая размерность данных?

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

 Профиль  
                  
 
 Re: Как правильно выбрать данные из ген. совокупности?
Сообщение11.02.2015, 15:30 


07/08/14
4231
поиск корреляций между данными еще. может у вас половина переменных - зависимые.

 Профиль  
                  
 
 Re: Как правильно выбрать данные из ген. совокупности?
Сообщение11.02.2015, 15:34 
Заслуженный участник
Аватара пользователя


18/01/13
12065
Казань
upgrade в сообщении #976802 писал(а):
поиск корреляций между данными еще.

Собственно, кластеризация показателей как раз связана с корреляцией (она берется как мера близости/различия)

 Профиль  
                  
 
 Re: Как правильно выбрать данные из ген. совокупности?
Сообщение11.02.2015, 15:44 


14/12/14
454
SPb
provincialka в сообщении #976796 писал(а):
Что касается скорости обработки -- зависит от средства обработки (я работаю с R, но реально больших данных не попадалось). А у вас какая размерность данных?


Да вы что? Я тоже изучаю R и собираюсь делать анализ именно с помощью этого инструмента. Может быть подскажите как сократить размерность с помощью R? Задача для меня совершенно новая. Всего от 50 до 100 параметров. Только я не знаю, нужны ли они все или нет. Конечно в программу (R) можно загнать и весь набор данных.

В итоге, нужно понять как они влияют на целевую функцию, выявить влияющие на функцию, ну и потом спрогнозировать значение функции.

 Профиль  
                  
 
 Re: Как правильно выбрать данные из ген. совокупности?
Сообщение11.02.2015, 16:04 
Заслуженный участник
Аватара пользователя


18/01/13
12065
Казань
Ну, программу выделения главных компонент написать легко: основная команда prcomp(). Пусть данные хранятся в объекте dann (например, типа data.frame)

Код:
prcomp(dann)$rotation-> a
as.matrix(dann) %*% a-> nov
plot(nov[,1:2])


Здесь a -- матрица поворота данных. as.matrix нужно для того, чтобы преобразовать таблицу (data.frame) в матрицу (matrix). Это если данные именно в таком виде.

В nov будут храниться новые "повернутые" данные, первые компоненты - самые важные.

Но, конечно, в таком виде программа применяется к однородным данным (с примерно одинаковым разбросом). Если не так, можно предварительно применить шкалирование scale().

Посмотрите состав объекта prcomp(dann). Там должны храниться сведения о вкладе каждой компоненты в дисперсию.

-- 11.02.2015, 16:15 --

Нет, кажется, надо данные сперва транспонировать, t(dann). Иначе будут преобразовываться объекты... Впрочем, посмотрите сами.

 Профиль  
                  
 
 Re: Как правильно выбрать данные из ген. совокупности?
Сообщение11.02.2015, 17:25 


14/12/14
454
SPb
Спасибо! Попробую.

 Профиль  
                  
 
 Re: Как правильно выбрать данные из ген. совокупности?
Сообщение11.02.2015, 18:41 
Супермодератор
Аватара пользователя


20/11/12
5728
 i  provincialka, используйте для малых кусков кода тег tt.

 Профиль  
                  
 
 Re: Как правильно выбрать данные из ген. совокупности?
Сообщение11.02.2015, 18:42 
Заслуженный участник
Аватара пользователя


18/01/13
12065
Казань
Deggial
Спасибо! Как раз хотела спросить, как это делать. Исправлю.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 11 ] 

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group