Какие существуют алгоритмы классификации доменов данных. Домен представляет собой некоторое конечное множество свойств, каждое из которых имеет определенный вес.
Одним из применений такого алгоритмы может быть классификация предложений в тексте. Например, предложение, такого плана можно отнести к домену "времени":
Когда последний раз извергался Везувий?
А следующее предложение - к "географическому":
Дублин - является столицей Ирландии
Определить домен для первого примера удалось с помощью подчинительного союза "когда", относящегося к временному разряду и словосочетания "последний раз".
При этом, стоит заметить, что одни и те же свойства могут принадлежать разным домена и иметь совершенно разные веса, в каждом из них. На вход поступает набор свойств и необходимо с помощью классификатора определить его принадлежность к конкретному домену, например, опираясь на суммарный вес свойств, но ограничиваться лишь этим параметром было бы тоже не правильно.
Требования к алгоритму. Хотелось бы, чтобы его алгоритмическая сложность не превышала O(kn^2), где k - число доменов, n - входная выборка свойств. Предполагается, что число доменов не будет превышать отметки 20, в каждом из которых не больше чем 7 свойств. Предложения будут короткими - 10-15 слов.
К сожалению, тренировочных данных, в больших размерах, не имеется, поэтому варианты использования алгоритмов обучения классификатора с учителем (напр. SVM) сразу же отпадают. Я склоняюсь к таким вариантам, например, как регуляризация по Тихонову. Возможно существуют и другие подходы.
Хотелось бы иметь алгоритм, программная реализация которого не была бы очень ресурсно-затратной, в идеале - уже имелось бы готовое решение (желательно на java).