Интеллектуальный анализ реляционных данных без ILP

#algorithm #relational-database #classification #data-mining

#алгоритм #реляционная база данных #классификация #интеллектуальный анализ данных

Вопрос:

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

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

Существует ли какой-либо алгоритм, отличный от ILP, который позволяет мне обрабатывать данные в реляционных базах данных, не прибегая к таким методам, как поворот, который создавал бы тысячи новых столбцов?

Комментарии:

1. Возможно, вам повезет больше в datascience.stackexchange.com .

Ответ №1:

Во-первых, некоторые предостережения

Я не уверен, почему вы не можете использовать предпочитаемую вами парадигму программирования (под) *, индуктивное логическое программирование (ILP) или то, что вы пытаетесь классифицировать. Предоставление более подробной информации, вероятно, приведет к гораздо лучшему ответу; тем более, что немного необычно подходить к выбору алгоритмов классификации на основе парадигмы программирования, с которой они связаны. Если ваш пример из реального мира является конфиденциальным, то просто придумайте вымышленный, но аналогичный пример.

Классификация больших данных без ILP

Сказав это, после исключения ILP у нас есть 4 другие парадигмы логического программирования в нашем наборе рассмотрения:

  1. Абдуктивный
  2. Набор ответов
  3. Ограничение
  4. Функциональный

в дополнение к десяткам парадигм и суб-парадигм вне логического программирования.

Например, в функциональном логическом программировании существуют расширения ILP, называемые индуктивным функциональным логическим программированием, которое основано на инверсионном сужении (т. Е. Инверсии механизма сужения). Этот подход преодолевает несколько ограничений ILP и (по крайней мере, по мнению некоторых ученых) подходит для применения с точки зрения представления и имеет то преимущество, что позволяет выражать проблемы более естественным образом.

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

ILP отличается от «классических» или «пропозициональных» подходов к интеллектуальному анализу данных. Эти подходы включают в себя мясо и кости машинного обучения, такие как деревья решений, нейронные сети, регрессия, пакетирование и другие статистические методы. Вместо того, чтобы отказываться от этих подходов из-за размера ваших данных, вы можете присоединиться к рядам многих специалистов по обработке данных, инженеров по обработке больших данных и статистиков, которые используют высокопроизводительные вычисления (HPC) для применения этих методов с большими наборами данных (существуют также выборки и другие статистические методы, которые вы можете выбрать дляиспользуйте для сокращения вычислительных ресурсов и времени, необходимых для анализа больших данных в вашей реляционной базе данных).

HPC включает в себя такие вещи, как использование нескольких ядер ЦП, расширение масштаба анализа за счет гибкого использования серверов с большим объемом памяти и большим количеством быстрых ядер ЦП, использование высокопроизводительных устройств хранилища данных, использование кластеров или других форм параллельных вычислений и т.д. Я не уверен, с помощью какого языка или статистического набора вы анализируете свои данные, но в качестве примера в этом представлении задач CRAN перечислены многие ресурсы HPC для языка R, которые позволят вам расширить пропозициональный алгоритм.