LINUX.ORG.RU

Decision tree, но не совсем... как это может называться?

 выводы, ,


1

2

Представьте такую абстракцию:

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

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

На самом деле и простейшие факты тоже могут быть такими «конечными выводами», почему же нет.

Собственно, вопрос не в том, как должен бы работать алгоритм, а в том, как проектировать дерево описанного типа. Для этого нужно понимать, а что это такое :) Как в IT или логике или ещё чём называется дерево, которое следует обходить не начиная с одного-единственного факта сверху вниз, а наоборот - по которому следует подниматься от листьев к «вершинам», т.е. от более простых логических агрегатов (включая элементарные) к более сложным логическим агрегатам, при этом имея на каждом этапе подъёма всё более глобальную и при этом менее точную картину?

По сути это дерево позволяет смотреть на проблему на разных уровнях: начиная от элементарного уровня (у вас загрузка CPU превышает 89%) и заканчивая глобальным уровнем: «Следует провести радикальное обновление парка серверов в ЦОДе таком-то».

Возможно, кроме меня такие штуки никому не нужны и все подстраиваются под логику Decision trees - тогда звиняйте. Но мало ли...

★★★★★

Последнее исправление: DRVTiny (всего исправлений: 1)

Ответ на: комментарий от anonymous

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

Ну т.е. если выделить один конкретный маршрут рекурсивного подъёма, то получается логическая цепочка: что-то вроде перехода от факта «кошка „бросила котят“ до заключения о том, что „в этом Путин виноват“. Но промежуточно делаются заключения о том, что кормили кошку плохо, а кормили плохо потому что пенсия у стариков мизерная, не на что было, а пенсия низкая потому что... и т.д.

DRVTiny ★★★★★
() автор топика
Ответ на: комментарий от DRVTiny

Про кошку и котят плохой пример наверное :)

Мне почему-то в голову приходит один шаг рекурсивного подъёма в виде:

  • факты: «на улице мокро», «температура в районе нуля», «градиент температуры отрицательный», «коммунальные службы ждут гололёд послезавтра»
  • вывод: «в ближайшее время в Москве ожидается множество страховых случаев по ОСАГО»
DRVTiny ★★★★★
() автор топика
Последнее исправление: DRVTiny (всего исправлений: 1)

напоминает пролог

Harald ★★★★★
()
Ответ на: комментарий от DRVTiny

Думаю куб Qtable, в который засунут тест про семантику по поисковикам, там про «сухоносые обезьяны» тематика. Очень похоже..

anonymous
()

Как в IT или логике или ещё чём называется дерево, которое следует обходить не начиная с одного-единственного факта сверху вниз, а наоборот - по которому следует подниматься от листьев к «вершинам», т.е. от более простых логических агрегатов (включая элементарные) к более сложным логическим агрегатам, при этом имея на каждом этапе подъёма всё более глобальную и при этом менее точную картину?

directed acyclic graph?

обход зависит полностью от задачи, например байесовская сеть с логистическими регрессиями может вероятностные выводы делать поуровнево, а в целом - для простых случаев - топологическая сортировка и обход по своим эвристикам, для сложных - https://en.wikipedia.org/wiki/Dynamic_programming

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.