Предсказание пропускающий значения данных в базе данных

библиотека выполняет определенные, четко определенные операции.

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

Примеры библиотек: Сетевые протоколы, сжатие, обработка изображения, представляет в виде строки утилиты, оценку регулярного выражения, математику. Операции являются автономными.

Примеры платформ: система веб-приложения, Сменный менеджер, система GUI. Платформа определяет понятие, но приложение определяет фундаментальную функциональность тот, конечные пользователи заботятся о.

7
задан Alex319 23 July 2009 в 17:20
поделиться

3 ответа

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

Несколько методов, которые вы можете использовать (подробное сообщение в моем блоге ):

  1. Игнорировать строку данных. Обычно это делается, когда метка класса отсутствует (при условии, что целью интеллектуального анализа данных является классификация) или если в строке отсутствуют многие атрибуты (а не только один). Однако, очевидно, вы получите низкую производительность, если процент таких строк велик.

  2. Используйте глобальную константу для заполнения отсутствующих значений. Типа «неизвестно», «Н / Д» или минус бесконечность. Это используется потому, что иногда просто не имеет смысла пытаться предсказать пропущенное значение. Например, если у вас есть база данных, если, скажем, у некоторых отсутствуют кандидаты в колледж и страна проживания, заполнение ее не означает Не имеет смысла ...

  3. Использовать значение атрибута . Например, если средний доход семьи в США равен X, вы можете использовать это значение для замены отсутствующих значений дохода.

  4. Используйте среднее значение атрибута для всех выборок, принадлежащих к одному классу . Допустим, у вас есть база данных цен на автомобили, которая, среди прочего, классифицирует автомобили на «роскошные» и «малобюджетные», и вы имеете дело с отсутствующими значениями в поле стоимости. Замена отсутствующей стоимости роскошного автомобиля средней стоимостью всех роскошных автомобилей, вероятно, более точна, чем значение, которое вы получите, если учесть малобюджетные автомобили

  5. Используйте алгоритм интеллектуального анализа данных, чтобы предсказать значение . Значение может быть определено с помощью регрессии, инструментов на основе вывода с использованием формализма Байса, деревьев решений, алгоритмов кластеризации, используемых для генерации входных данных для пошагового метода № 4 (K-Среднее \ Медиана и т. Я бы посоветовал сначала изучить деревья регрессии и решений (генерация дерева ID3), поскольку они относительно просты и в сети есть множество примеров.

Что касается пакетов, если вы можете себе это позволить, и вы находитесь в Мир Microsoft взглянет на службы SQL Server Analysis Services (сокращенно SSAS), которые реализуют большую часть упомянутого выше.

Вот несколько ссылок на бесплатные пакеты программного обеспечения для добычи данных:

Хотя он и не C #, он довольно хорошее введение в деревья решений и байсовское обучение (с использованием Ruby): http://www.igvita.com/2007/04/16/decision-tree-learning-in-ruby/ http://www.igvita.com/2007/05/23/bayes- classification-in-ruby /

Есть также эта библиотека Ruby, которую я считаю очень полезной (также для учебных целей): http://ai4r.rubyforge.org/machineLearning.html

В Интернете должно быть множество примеров для этих алгоритмов на любом языке, поэтому я уверен, что вы тоже легко найдете материал C # ...

Отредактировал:

Забыл это в моем исходном посте. Это определенно ДОЛЖНО БЫТЬ, если вы играете с интеллектуальным анализом данных ... Загрузите Надстройки интеллектуального анализа данных Microsoft SQL Server 2008 для Microsoft Office 2007 (для этого требуются службы аналитики SQL Server - SSAS - которые не бесплатны, но вы можете загрузить пробную версию).

Это позволит вам чтобы легко поиграть и опробовать различные методы в Excel, прежде чем приступить к реализации этого самостоятельно. Опять же, поскольку вы находитесь в экосистеме Microsoft, вы можете даже решить выбрать решение на основе SSAS и рассчитывать на то, что ребята из SQL Server сделают это за вас :)

6
ответ дан 6 December 2019 в 14:07
поделиться

Это меньше алгоритмическое и больше философско-методологический вопрос. Есть несколько различных методов, позволяющих решить этот вопрос. Acock (2005) дает хорошее введение в некоторые методы. Хотя может показаться, что здесь задействовано много математики / статистики (и может показаться, что это требует больших усилий), стоит подумать, что произойдет, если вы напутаете.

Блог Эндрю Гельмана также является хорошим ресурсом, хотя возможность поиска в его блоге оставляет желать лучшего ...

Надеюсь, это поможет.


Acock (2005)

http: // oregonstate. edu / ~ acock / growth-curve / working% 20with% 20missing% 20values.pdf

Блог Эндрю Гельмана

http://www.stat.columbia.edu/~cook/movabletype/mlm/

7
ответ дан 6 December 2019 в 14:07
поделиться

Predicting missing values is generally considered to be part of data cleansing phase which needs to be done before the data is mined or analyzed further. This is quite prominent in real world data.

Please have a look at this algorithm http://arxiv.org/abs/math/0701152

Currently Microsoft SQL Server Analysis Services 2008 also comes with algorithms like these http://technet.microsoft.com/en-us/library/ms175312.aspx which help in predictive modelling of attributes.

cheers

2
ответ дан 6 December 2019 в 14:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: