Cosa inserire nell'ingresso della rete neurale? Le vostre idee... - pagina 66

 
Forester #:
I computer e gli altri dispositivi elettronici dotati di memoria (RAM, HDD, SSD, nastri, schede perforate) memorizzano istantaneamente.
Per gli esseri umani, è necessario ripetere molte volte per stabilire le connessioni tra i neuroni. Ma ci sono anche persone con una memoria eccellente.
E stabilire le connessioni tra i neuroni si può chiamare registrazione. Se viene registrato, anche se non la prima volta, come in un computer, allora viene memorizzato.

Registrazione - salvataggio su un supporto, quante informazioni ci sono (compresse o meno), tante saranno registrate. Non importa se è la prima volta o la decima, non importa. Cioè, si prende un'informazione e la si mette su un supporto, sul quale l'informazione sarà immagazzinata in una forma invariata e potrà essere letta nella stessa forma - questo è il significato di registrazione.

La memorizzazione ha una natura e un significato fondamentalmente diversi. Se prendiamo un essere umano (o qualsiasi altro essere vivente), non è una chiavetta, è impossibile scrivere informazioni in alcune parti arbitrarie del cervello e memorizzarle in una forma invariata. Il cervello può solo memorizzare, cioè formare nuove connessioni tra i neuroni. Il numero di neuroni non cambia durante la memorizzazione, ma solo le connessioni tra di essi. Quando memorizza, il cervello non può, non ha modo di sapere in anticipo come creare nuove connessioni tra i neuroni per ricordare le informazioni, è un processo iterativo. Alcune persone lo fanno in un numero minore di iterazioni, altre in un numero molto maggiore di iterazioni, ma mai chiaramente in un'unica operazione come accade quando si scrive su un supporto. Questa è la differenza tra registrazione e memorizzazione: mentre la registrazione garantisce (con un piccolo errore, che di solito viene risolto con metodi tecnici come la correzione degli errori sui supporti rigidi e speciali buffer) il salvataggio dell'informazione sul supporto, la memorizzazione dà senso al processo di formazione di collegamenti tra strutture logiche (nel cervello si tratta di neuroni).

Le reti neurali hanno lo stesso principio di memorizzazione del cervello vivente. Non si tratta solo di scrivere valori in pesi variabili, ma di formare le giuste connessioni tra i neuroni artificiali; non è mai possibile sapere in anticipo che tipo di connessioni sono necessarie per la memorizzazione, quindi il processo di memorizzazione è iterativo come nel cervello vivente.

In conclusione, vale quanto detto in precedenza. La registrazione è la memorizzazione di informazioni su un supporto (indipendentemente dalla natura del supporto), la memorizzazione è la creazione di connessioni tra nodi logici.

La registrazione non implica la presenza della memorizzazione, mentre la memorizzazione implica necessariamente operazioni di scrittura su variabili. Possiamo dire che la memorizzazione è un livello di astrazione superiore, che implica operazioni di scrittura e che richiede una verifica iterativa della qualità della memorizzazione.

Una dimostrazione del meccanismo di memorizzazione negli esseri umani è l'uso della tecnica dell'associazione di ancoraggio, dove il processo di memorizzazione è più veloce, più affidabile e con meno iterazioni. Il cervello funziona così: tutte le informazioni e le conoscenze possono essere memorizzate solo sotto forma di numerose connessioni tra i neuroni. Le reti neurali funzionano secondo lo stesso principio, anche se in forma molto semplificata.

Speriamo che ora sia chiaro il significato e la differenza tra registrare e memorizzare.

 
Andrey Dik #:

Registrazione - salvataggio su supporto, tutte le informazioni presenti (compresse o meno) verranno registrate. Non importa se è la prima volta o la decima, non importa. Cioè, si prende l'informazione e la si mette su un supporto, il supporto memorizzerà l'informazione in una forma invariata e potrà essere letta nella stessa forma - questo è lo scopo della registrazione.

La memorizzazione ha una natura e un significato fondamentalmente diversi. Se prendiamo un essere umano (o qualsiasi altro essere vivente), non è una chiavetta, è impossibile scrivere informazioni in alcune parti arbitrarie del cervello e memorizzarle in una forma invariata. Il cervello può solo memorizzare, cioè formare nuove connessioni tra i neuroni. Il numero di neuroni non cambia durante la memorizzazione, ma solo le connessioni tra di essi. Quando memorizza, il cervello non può, non ha modo di sapere in anticipo come creare nuove connessioni tra i neuroni per ricordare le informazioni, è un processo iterativo. Alcune persone lo fanno in un numero minore di iterazioni, altre in un numero molto maggiore di iterazioni, ma mai chiaramente in un'unica operazione come accade quando si scrive su un supporto. Questa è la differenza tra registrazione e memorizzazione, mentre la registrazione garantisce (con un piccolo errore, che di solito viene risolto con metodi tecnici come la correzione degli errori sui supporti rigidi e speciali buffer) il salvataggio delle informazioni su un supporto, la memorizzazione ha il significato di processo di formazione di connessioni tra strutture logiche (nel cervello si tratta di neuroni).

Le reti neurali hanno lo stesso principio di memorizzazione del cervello vivente. Non si tratta solo di scrivere valori in pesi variabili, ma di formare le giuste connessioni tra i neuroni artificiali; non è mai possibile sapere in anticipo che tipo di connessioni sono necessarie per la memorizzazione, quindi il processo di memorizzazione è iterativo come nel cervello vivente.

In conclusione, vale quanto detto in precedenza. Registrazione - salvataggio di informazioni su un supporto (indipendentemente dalla natura del supporto), memorizzazione - creazione di connessioni tra nodi logici.

La registrazione non implica la presenza della memorizzazione, mentre la memorizzazione implica necessariamente operazioni di scrittura su variabili. Possiamo dire che la memorizzazione è un livello di astrazione superiore che include operazioni di registrazione, che richiede un controllo iterativo della qualità della memorizzazione.

Una dimostrazione del meccanismo di memorizzazione negli esseri umani è l'uso della tecnica dell'associazione di ancoraggio, dove il processo di memorizzazione è più veloce, più affidabile e con meno iterazioni. Il cervello funziona così: tutte le informazioni e le conoscenze possono essere memorizzate solo sotto forma di numerose connessioni tra i neuroni. Le reti neurali funzionano secondo lo stesso principio, anche se in forma molto semplificata.

Speriamo che ora sia chiaro il significato e la differenza tra registrazione e memorizzazione.

Non hai detto nulla di nuovo, visto che ho accennato brevemente alla differenza tra la memoria umana e la memoria delle macchine. Si può fare un paragone tra la memorizzazione umana e la memorizzazione automatica. Hanno le loro peculiarità.

I database, le foreste e i modelli di clustering scrivono = ricordano in una volta sola. Senza iterazioni e ripetizioni.

 
Forester #:

1. Non hai detto nulla di nuovo, visto che ho accennato brevemente alla differenza tra la memoria umana e la memoria della macchina. Si possono preferire la memorizzazione umana e la memorizzazione automatica. Hanno le loro peculiarità.

2. I database, le foreste e i modelli di clustering scrivono = ricordano in una volta sola. Senza iterazioni e ripetizioni.

1. Assolutamente e incondizionatamente non ho detto nulla di nuovo, poiché si tratta di cose basilari, elementari. Lei ha negato la necessità del processo iterativo di memorizzazione con controllo della valutazione, per cui ho dovuto ripetere in dettaglio tutto ciò che si sapeva da tempo.

In particolare, sono sorprendenti le frequenti idee sbagliate su queste cose fondamentali. Dividere il concetto di memorizzazione in memorizzazione automatica e "umana" non ha senso, perché il processo è fondamentalmente identico.

2. Se si ha qualcosa di scritto da qualche parte in una volta sola, senza iterazioni, allora non c'è alcuna memorizzazione. Ripeto: la memorizzazione non può essere eseguita in un'unica iterazione, perché il risultato della memorizzazione non è noto in anticipo a causa della natura "coerente" della memorizzazione.

 
Andrey Dik #:

1. Assolutamente e incondizionatamente non ho detto nulla di nuovo, perché si tratta di cose basilari, elementari. Lei ha negato la necessità di un processo iterativo di memorizzazione con controllo della valutazione, quindi ho dovuto ripetere in dettaglio tutto ciò che si sapeva da tempo.

In particolare, sono sorprendenti le frequenti idee sbagliate su queste cose fondamentali. Dividere il concetto di memorizzazione in memorizzazione automatica e "umana" non ha senso, perché il processo è fondamentalmente identico.

2. Se si ha qualcosa di scritto da qualche parte in una volta sola, senza iterazioni, allora non c'è alcuna memorizzazione. Ripeto: la memorizzazione non può essere eseguita in un'unica iterazione, perché il risultato della memorizzazione non è noto in anticipo a causa della natura "coerente" della memorizzazione.

Ripetete/iterate quante volte volete.
Non cambierà gli algoritmi esistenti e funzionanti con successo. Gli alberi distribuiscono i dati sulle foglie in un solo passaggio.
 
Forester #:
Ripetere/iterare quanto si vuole.
Non modificherà gli algoritmi esistenti e funzionanti. Gli alberi distribuiscono i dati sulle foglie in un solo passaggio.

Porsi delle domande.
Gli alberi spargono sempre e in un solo passaggio i dati nello stesso modo?
Quali algoritmi vengono utilizzati negli alberi? Qual è lo scopo di questi algoritmi?
Se rispondete a queste domande, allora non dovrò più stendere la base e potrò andare avanti con il mio progetto.
 
Andrey Dik #:

Fare domande.
Gli alberi spargono sempre e in un solo passaggio i dati nello stesso modo?
Quali algoritmi vengono utilizzati negli alberi? Qual è lo scopo di questi algoritmi?
Se rispondete a queste domande, allora non dovrò più stendere la base e potrò andare avanti con il mio progetto.


1) Sempre in 1 passaggio. È possibile impostare le impostazioni in modo che siano sempre le stesse.
Ma di solito si applica la randomizzazione: si alimenta l'addestramento con righe e/o colonne casuali.


Per i miei esperimenti disabilito sempre tutto ciò che introduce la randomizzazione: per la riproducibilità tra le esecuzioni 2) Algoritmi greedy. Ecco perché in 1 passaggio.

Ci sono molti articoli sugli algoritmi ad albero. Qui potete ripetere voi stessi l'albero nel codice e capire come funziona il tutto.https://habr.com/ru/companies/vk/articles/438560/ Se siete programmatori esperti, lo capirete facilmente.

E la seconda parte https://habr.com/ru/companies/vk/articles/438562/

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


1) Sempre in 1 passaggio. È possibile impostare le impostazioni in modo che siano sempre le stesse.
Ma di solito si applica la randomizzazione: si inseriscono righe e/o colonne casuali nell'addestramento.

2) Algoritmi avidi. Ecco perché si tratta di 1 passaggio.

Ci sono molti articoli sugli algoritmi ad albero. Qui è possibile replicare un albero nel codice e capire come funziona il tutto.https://habr.com/ru/companies/vk/articles/438560/.


Non è corretto mandarvi a leggere gli articoli. Puoi rispondere alle mie domande? Qual è il significato della negazione?))
Altre domande. Quali sono le regole di ramificazione di un albero?
Continui a confondere la registrazione con la memorizzazione.
 
Andrey Dik #:

Non è corretto mandarti a leggere articoli. Può rispondere alle mie domande? Qual è il senso della negazione?))

La prima è una risposta, la seconda è nell'articolo. Se si capisce l'algoritmo, si capisce tutto. Il codice è più chiaro di mille parole.

 
Forester #:

La prima è una risposta, la seconda è nell'articolo. Se si capisce l'algoritmo, si capisce tutto. Il codice è più chiaro di mille parole.


Purtroppo non hai risposto completamente a nessuna delle mie domande. Stai sempre evadendo))
Sei tu che devi capirlo, non io, a quanto pare.

Lancia le mie domande alla chat, se sono troppo pigro per scrivere io stesso la risposta)))

S.F. A proposito, puoi leggere l'articolo sul tuo link per rispondere alle mie domande. E su mql5.com c'è un'enorme quantità di materiale didattico in articoli sull'argomento e in MQL5 nativo.

ZZY. Quando leggete i tutorial fate attenzione al fatto che gli alberi non si diramano in modo arbitrario, ma perseguono obiettivi ben precisi. Quali obiettivi?
In quale fase ha luogo il processo iterativo di formazione degli alberi e perché è iterativo e quale scopo persegue questo processo iterativo? .

 

Come funzionano gli alberi nell'apprendimento automatico?

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

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

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

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


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

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

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

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

In alto il blu - iteratività del processo, il verde - valutazione del processo.

Qui sotto si parla ancora di iterazione e valutazione, ma sono troppo pigro per evidenziare i colori.

La suddivisione in foglie è un processo iterativo o no?

Sì, la suddivisione in foglie nella risoluzione degli alberi è un processo iterativo.



Vediamo più da vicino come avviene: ### Processo di partizionamento 1.

**A ogni nodo viene selezionata una caratteristica e un valore in base ai quali effettuare la partizione.

Questo viene fatto utilizzando criteri come la riduzione dell'entropia o il criterio di Gini. 2. Partizione dei dati**: - Inizia dalla radice dell'albero, dove risiedono tutti i dati.



**Ogni gruppo diventa un nuovo nodo (o sottoalbero) per un ulteriore partizionamento. 3. Partizione ricorsiva.
**Il processo viene ripetuto per ogni nuovo nodo.

A ogni passo, viene selezionata una nuova caratteristica e i dati vengono nuovamente partizionati. - Questo processo continua fino a quando non viene raggiunta una condizione di arresto, ad esempio: - Profondità massima dell'albero.





- Nessun miglioramento significativo nella qualità del partizionamento. ### Natura iterativa - **Iterazione**:
Ogni fase di partizionamento è un'iterazione che porta alla creazione di nuovi nodi e sottoinsiemi di dati - **Recursione**:





Il processo di partizione può essere considerato ricorsivo, in cui ogni nodo viene trattato separatamente e lo stesso processo viene ripetuto per ogni nodo. ### Completamento del processo - Quando viene raggiunta una delle condizioni di arresto, il nodo diventa un nodo foglia e viene definito un valore finale per esso (ad esempio, classe per la classificazione o media per la regressione). Pertanto, la partizione in foglie negli alberi decisionali è in effetti un processo iterativo e ricorsivo che consente successivi affinamenti.

Qual è il criterio di valutazione durante la costruzione dell'albero e quali algoritmi di ottimizzazione vengono utilizzati in questo processo?

Quando si costruiscono gli alberi decisionali, si utilizzano diversi criteri di valutazione per determinare il modo migliore di suddividere i dati in ogni nodo.



I criteri di base includono: ### Criteri di valutazione 1.

**Entropia**: - Utilizzata nell'algoritmo ID3 - Misura l'incertezza o la casualità dei dati.
Più bassa è l'entropia, più omogenei sono i dati - Formula:



\[ H(S) = -\sum_{i=1}^{C} p_i \log_2(p_i) \]dove \( p_i \) è la probabilità della classe \( i \) e \( C \) è il numero di classi.

2.

**Criterio di Gini**: - Utilizzato in CART (Classification and Regression Trees) - Misura la probabilità di sbagliare la classificazione di un elemento selezionato a caso.





- Formula: \[ Gini(S) = 1 - \sum_{i=1}^{C} p_i^2 \] 3.



**Aentropia incrociata (perdita logaritmica)**: - Utilizzata in alcune varianti degli alberi decisionali, soprattutto per compiti di classificazione - Stima la differenza tra le probabilità previste e le etichette effettive della classe. 4. Errore medio quadratico (MSE)







**Errore quadratico medio (MSE)**: - Utilizzato per i problemi di regressione - Stima la media dei quadrati di errore tra i valori previsti e quelli effettivi. ### Algoritmi di ottimizzazione Nella costruzione degli alberi decisionali vengono utilizzati anche diversi algoritmi e metodi di ottimizzazione: 1. **Algoritmo greedy**: - Utilizzato in alcune varianti degli alberi decisionali, soprattutto per compiti di classificazione.



**Algoritmo greedy**: - A ogni nodo, viene selezionata la migliore caratteristica e il miglior valore per la partizione in base al criterio di valutazione selezionato - Questo processo continua fino a quando non vengono raggiunte le condizioni di arresto. 2. **Costruzione di un albero utilizzando la media dei quadrati di errore tra i valori predetti e quelli effettivi.



**L'algoritmo Random Forest utilizza un metodo di "bagging" in cui più alberi vengono costruiti su sottoinsiemi casuali di dati e caratteristiche.



**Dopo la costruzione dell'albero, è possibile eseguire una procedura di potatura per ridurre la complessità dell'albero ed evitare l'overtraining.


**Questi criteri e metodi di ottimizzazione aiutano a costruire modelli efficienti e robusti basati su alberi decisionali.

Tutto ciò che è stato negato (stima, iterabilità, presenza di un algoritmo di ottimizzazione) è presente nella costruzione degli alberi.


ZY. Articoli sull'argomento #alberi.