Что подать на вход нейросети? Ваши идеи... - страница 66

 
Forester #:

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

2. БД, леса и и модели кластеризации записывают = запоминают сразу. Без итераций и повторений.

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

В частности, вызывают удивление часто встречающиеся заблуждения на счет этих базовых вещей. Разделение понятия запоминания на машинное и "людское" не имеет смысла, посколько процесс принципиально идентичен.

2. Если у вас где-то что-то записывается сразу, без итераций, значит там нет запоминания. Повторюсь - запоминание не может быть выполнено за одну итерацию, поскольку заранее результат запоминания неизвестен ввиду "связной" природе запоминания.

 
Andrey Dik #:

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

В частности, вызывают удивление часто встречающиеся заблуждения на счет этих базовых вещей. Разделение понятия запоминания на машинное и "людское" не имеет смысла, посколько процесс принципиально идентичен.

2. Если у вас где-то что-то записывается сразу, без итераций, значит там нет запоминания. Повторюсь - запоминание не может быть выполнено за одну итерацию, поскольку заранее результат запоминания неизвестен ввиду "связной" природе запоминания.

Повторяйтесь/итерируйте сколько хотите. Существующих и успешно работающих алгоритмов это не изменит.
Деревья за один проход раскидывают данные по листьям.
 
Forester #:
Повторяйтесь/итерируйте сколько хотите. Существующих и успешно работающих алгоритмов это не изменит.
Деревья за один проход раскидывают данные по листьям.

Задам вопросы. 
Деревья всегда и за один проход раскидывают данные одинаково?
Какие алгоритмы используются в деревьях. Какая цель у этих алгоритмов? 
Если ответите на эти вопросы, тогда мне не придётся выкладывать снова базу и смогу двигаться дальше по намеченному плану.
 
Andrey Dik #:

Задам вопросы. 
Деревья всегда и за один проход раскидывают данные одинаково?
Какие алгоритмы используются в деревьях. Какая цель у этих алгоритмов? 
Если ответите на эти вопросы, тогда мне не придётся выкладывать снова базу и смогу двигаться дальше по намеченному плану.

1) Всегда за 1 проход.
Можно задать настройки, чтобы всегда одинаково.
Но обычно применяют рандомизацию: подавая случайные строки и/или столбцы на обучение.
Я для своих экспериментов всегда отключаю все что вносит рандомизацию: для воспроизводимости между запусками

2) Жадные алгоритмы. Потому и за 1 проход. Статей про алгритмы деревьев полно.
Вот можете сами повторить в коде дерево и разобраться как там все работает.
https://habr.com/ru/companies/vk/articles/438560/ Программист вы опытный - разберетесь легко.

И 2-я часть https://habr.com/ru/companies/vk/articles/438562/

Пишем XGBoost с нуля — часть 1: деревья решений
Пишем XGBoost с нуля — часть 1: деревья решений
  • 2019.02.06
  • habr.com
Привет, Хабр! После многочисленных поисков качественных руководств о решающих деревьях и ансамблевых алгоритмах (бустинг, решающий лес и пр.) с их непосредственной реализацией на языках программирования, и так ничего не найдя (кто найдёт — напишите в комментах, может, что-то новое почерпну), я решил сделать своё собственное руководство, каким...
 
Forester #:

1) Всегда за 1 проход.
Можно задать настройки, чтобы всегда одинаково.
Но обычно применяют рандомизацию: подавая случайные строки и/или столбцы на обучение.

2) Жадные алгоритмы. Потому и за 1 проход. Статей про алгритмы деревьев полно.
Вот можете сами повторить в коде дерево и разобраться как там все работает.
https://habr.com/ru/companies/vk/articles/438560/


Отсылать читать статьи - дурной тон. Можете ответить на мои вопросы? В чем смысл отрицания?))
Дополнительные вопросы. Что формирует правила ветвления в дереве?
Вы по прежнему путаете запись и запоминание.
 
Andrey Dik #:

Отсылать читать статьи - дурной тон. Можете ответить на мои вопросы? В чем смысл отрицания?))

1-й отвечен, 2-й в статье. Разберетесь с алгоритмом и все поймете. Код яснее тысячи слов.

 
Forester #:

1-й отвечен, 2-й в статье. Разберетесь с алгоритмом и все поймете. Код яснее тысячи слов.


Вы не ответили ни на один мой вопрос, к сожалению, полностью. Всё время уклоняетесь.))
Нужно разобраться вам а не мне, судя по всему.

Скиньте мои вопросы чату, если лень самому набирать ответ))

ЗЫ. Кстати, можете прочитать статью по своей ссылке, чтобы ответить на мои вопросы. И на mql5.com огромное количество обучающего материала в статьях по теме, при этом на родном MQL5.

ЗЗЫ. Обратите внимание при прочтении обучающего материала, что деревья ветвятся не абы как, а преследуя вполне конкретные цели. Какие цели? На каком этапе происходит итерационный процесс при обучении деревьев и почему он итерационный и какую цель, опять же, преследует этот итерационный процесс?

 

Как работают деревья в машинном обучении?

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

### 1. Структура дерева
- **Вершины**: Каждая вершина дерева представляет собой узел, где происходит разделение данных.
- **Корень**: Это верхний узел дерева, откуда начинается процесс разделения.
- **Листовые узлы**: Узлы, которые не имеют дочерних узлов, представляют собой конечные результаты (классификация или предсказание).

### 2. Процесс построения дерева
- **Выбор признака**: На каждом узле выбирается признак, по которому будет происходить разделение. Выбор признака осуществляется на основе критерия, который позволяет максимизировать однородность подмножеств (например, критерий Джини или энтропия для классификации).
- **Разделение данных**: Данные делятся на две или более группы в зависимости от значения выбранного признака.
- **Рекурсия**: Процесс повторяется для каждой полученной группы, пока не будет достигнуто определенное условие остановки (например, максимальная глубина дерева или минимальное количество образцов в узле).

### 3. Оценка качества
- **Критерии**: Для оценки качества разделения используются различные метрики, такие как:
  - **Джини**: Мера, которая вычисляет вероятность неправильной классификации случайно выбранного элемента.
  - **Энтропия**: Мера неопределенности, которая показывает, насколько данные в узле разнородны.


### 4. Устойчивость к переобучению
- **Переобучение**: Деревья могут легко переобучаться, особенно если они слишком глубокие. Для борьбы с этим применяются методы, такие как обрезка (pruning), которая удаляет менее значимые узлы.
- **Регуляризация**: Установка ограничений на максимальную глубину дерева или минимальное количество образцов в узле также помогает избежать переобучения.

### 5. Применение
- **Классификация**: Деревья могут использоваться для классификации объектов на основе их признаков.
- **Регрессия**: Деревья могут предсказывать непрерывные значения, разбивая данные на подмножества и вычисляя среднее значение в каждом листовом узле.

### 6. Ансамблевые методы
- **Случайные леса**: Это метод, который объединяет множество деревьев для улучшения точности и устойчивости модели.
- **Градиентный бустинг**: Метод, который строит деревья последовательно, где каждое новое дерево исправляет ошибки предыдущих.

Деревья являются мощным инструментом в машинном обучении благодаря своей интерпретируемости и способности обрабатывать как числовые, так и категориальные данные.

Выше синее - итарационность процесса, зелёным - оценка процесса.

Ниже ещё про итерационнсоть и оценку, цветом выделять лень.

Разбиение на листья итерационный процесс или нет?

Да, разбиение на листья в решающих деревьях — это итерационный процесс. Давайте подробнее рассмотрим, как это происходит:

### Процесс разбиения

1. **Выбор узла для разбиения**:
   - Начинается с корня дерева, где находятся все данные.
   - На каждом узле выбирается признак и значение, по которому будет происходить разделение. Это делается с использованием критериев, таких как уменьшение энтропии или критерия Джини.

2. **Разделение данных**:
   - Данные делятся на две или более группы в зависимости от выбранного признака и его значения.
   - Каждая группа становится новым узлом (или поддеревом) для дальнейшего разбиения.

3. **Рекурсивное разбиение**:
   - Процесс повторяется для каждого нового узла. На каждом этапе выбирается новый признак, и данные снова разделяются.
   - Это продолжается до тех пор, пока не будет достигнуто условие остановки, например:
     - Максимальная глубина дерева.
     - Минимальное количество образцов в узле.
     - Отсутствие значимого улучшения в качестве разбиения.

### Итеративный характер

- **Итерация**: Каждый шаг разбиения — это итерация, которая приводит к созданию новых узлов и подмножеств данных.
- **Рекурсия**: Процесс разбиения можно рассматривать как рекурсивный, где каждый узел обрабатывается отдельно, и для каждого узла повторяется тот же процесс.

### Завершение процесса

- Когда достигается одно из условий остановки, узел становится листовым, и для него определяется конечное значение (например, класс для классификации или среднее значение для регрессии).

Таким образом, разбиение на листья в решающих деревьях действительно является итерационным и рекурсивным процессом, который позволяет последовательно уточнять и улучшать модель.

Что является критерием оценки во время построения дерева и какие алгоритмы оптимизации используются при этом?

При построении решающих деревьев используются несколько критериев оценки, которые помогают определить, как лучше всего разделить данные на каждом узле. Основные критерии включают:

### Критерии оценки

1. **Энтропия**:
   - Используется в алгоритме ID3.
   - Измеряет неопределенность или случайность в данных. Чем ниже энтропия, тем более однородными являются данные.
   - Формула:
     \[
     H(S) = -\sum_{i=1}^{C} p_i \log_2(p_i)
     \]
     где \( p_i \) — вероятность класса \( i \), а \( C \) — количество классов.

2. **Критерий Джини**:
   - Используется в CART (Classification and Regression Trees).
   - Измеряет вероятность неправильной классификации случайно выбранного элемента.
   - Формула:
     \[
     Gini(S) = 1 - \sum_{i=1}^{C} p_i^2
     \]

3. **Кросс-энтропия (логарифмическая потеря)**:
   - Используется в некоторых вариациях решающих деревьев, особенно для задач классификации.
   - Оценивает разницу между предсказанными вероятностями и фактическими метками классов.

4. **Среднеквадратичная ошибка (MSE)**:
   - Используется для регрессионных задач.
   - Оценивает среднее значение квадратов ошибок между предсказанными и фактическими значениями.

### Алгоритмы оптимизации

При построении решающих деревьев также применяются различные алгоритмы и методы оптимизации:

1. **Жадный алгоритм**:
   - На каждом узле выбирается лучший признак и значение для разбиения, основываясь на выбранном критерии оценки.
   - Этот процесс продолжается до тех пор, пока не будут достигнуты условия остановки.

2. **Построение дерева с использованием случайных подмножеств**:
   - В алгоритме Random Forest используется метод «бэггинга», где строятся несколько деревьев на случайных подмножествах данных и признаков.
   - Это помогает уменьшить переобучение и повысить обобщающую способность модели.

3. **Обрезка дерева**:
   - После построения дерева может быть выполнена процедура обрезки, чтобы уменьшить его сложность и предотвратить переобучение.
   - Обрезка может быть сделана на основе кросс-валидации или использования критерия, такого как ошибка на валидационном наборе.

4. **Гиперпараметрическая оптимизация**:
   - Используются методы, такие как поиск по сетке (Grid Search) или случайный поиск (Random Search), для нахождения оптимальных значений гиперпараметров, таких как глубина дерева, минимальное количество образцов в узле и т.д.

Эти критерии и методы оптимизации помогают построить эффективные и надежные модели на основе решающих деревьев.

Всё, что отрицалось (оценка, итерационность, наличие алгоритма оптимизации) - присутствует при построении деревьев.


ЗЫ. Статьи по теме #деревья.

 

ЧатГПТ оставит мир без людей пытающихся разобраться в вопросах самостоятельно.
Разберитесь с кодом из статьи. И таких вопросов не будет возникать. Вы же программист и можете это сделать. Или уже всё? Чат ГПТ занял место источника истинных знаний?

В рекурсии вы увидели итерационность. Нет - там не снова и снова все данные повторно обрабатываются (как у людей повторение или у НС пересчет всех весов на каждой эпохе обучения). А каждый раз набор данных делится например пополам, каждая половина делится еще пополам и так далее, пока разделить уже будет невозможно (остался 1 пример или все примеры одинаковые). Это и есть раскидывание данных по листьям за 1 проход. Очень быстро работает.

Это выбор лучшего сплита, но не оценка самих данных. Об этом я писал ранее. Вы же хотите оценить данные, чтобы запись назвать запоминанием.

 
Forester #:

ЧатГПТ оставит мир без людей пытающихся разобраться в вопросах самостоятельно.
Разберитесь с кодом из статьи. И таких вопросов не будет возникать. Вы же программист и можете это сделать. Или уже всё? Чат ГПТ занял место источника истинных знаний?

В рекурсии вы увидели итерационность. Нет - там не снова и снова все данные повторно обрабатываются (как у людей повторение или у НС пересчет всех весов на каждой эпохе обучения). А каждый раз набор данных делится например пополам, каждая половина делится еще пополам и так далее, пока разделить уже будет невозможно (остался 1 пример или все примеры одинаковые). Это и есть раскидывание данных по листьям за 1 проход. Очень быстро работает.

Это выбор лучшего сплита, но не оценка самих данных. Об этом я писал ранее. Вы же хотите оценить данные, чтобы запись назвать запоминанием.

Подобный "разговор" уже был с ним в МО теме, все как под копирку. Попытка доказать что-то, пока ещё не придумано что конкретно :) но по ходу пьесы он обязательно придумает.

Чел пытался доказать, что обучение - это оптимизация, насколько я понял тогда.

Потом он придумает, что победил в споре, хотя не понятно о чем он вообще был :)) Если вы с ним не согласитесь, то начнет вам даже угрожать.

Пора надевать защитный скуфандр.