Реляционный Data Mining без ILP

9

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

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

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

user697110
источник
2
Как насчет правил майнинга? Мне не ясно, какова ваша цель.
adesantos
Несмотря на хороший вопрос, я замечаю, что он появляется на нескольких форумах Stack Exchange ... stackoverflow.com/questions/24260299/… ; Не то, чтобы я был сторонником подобных вещей, но я думаю, что мы не должны этого делать
Hack-R
Кроме того, было бы очень полезно, если бы вы могли быть немного более точными в отношении того, что вы классифицируете, барьер, с которым вы сталкиваетесь, и в идеальном мире предоставьте нам некоторые примеры данных для просмотра
Hack-R

Ответы:

1

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

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

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

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

  1. абдуктивного
  2. Набор ответов
  3. скованность
  4. функциональная

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

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

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

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

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

Hack-R,
источник