Tu n'expliques pas la différence que tu fais entre programme et algorithme :) On peut pourtant poser une équation si on reste sur des définitions vagues.
L'apprentissage en ligne / hors ligneC'est plus une limite pratique, l'apprentissage est plus coûteux que le calcul donc ona une phase distincte mais il y a pas d'opposition des principe a faire de l'apprentissage au fil de l'eau en rajoutant des exemples au fils de l'existence du programme. Et aussi parce que pour que ça marche il faut pleins de données donc si on faisait ça uniquement en ligne on aurait jamais de bons résultats parce que pas assez d'exemples, il faut au minimum un pré apprentissage important.
Il y a aussi des algos qui font de l'apprentissage tout a fait en même temps que la résolution du programme, comme les algos pour SAT, le problème de savoir s'il y a des valeurs aux variables qui rendent une formule booléenne vraie. Les algos sats qui fonctionnent diablement bien font du :en:conflict-driven clause learning, qu'on peut voir comme l'apprentissage de structures de la formule à éviter pour une résolution efficace qu'on saurait pas faire à priori, qu'il s'agit d'ajouter et supprimer intelligemment parce qu'il y a pas une mémoire infinie pour tout apprendre. Pourtant c'est clairement un algorithme dans tous les sens qu'on peut lui donner. On peut voir la mémoire dediée a l'apprentissage dans ce cas comme un certain nombre de paramètres d'état de l'algo qu'il fait évoluer au fur et à mesure de l'exécution. Est-ce de l'IA ?
Dans le cas de la reconnaissance d'image, on sait a peu près quel type de traitements on veut pouvoir faire, genre de la reconnaissance de bords, extraire les hautes ou les basses fréquences, avoir des trucs invariants pas translation ou par zoom/de zoom dans la mesure du possible mais en réglant les chaînes de traitements à la main on a des résultats que médiocres parce que c'est de l'essai/erreur et que la bande passante des humains est limitée et qu'on est infichus d'imaginer a priori quels sont les critères qui vont marcher suffisamment. Donc on crée un réseau capable de faire tous les calculs pertinents qu'on imagine dans le principe, qui va pouvoir tester pleins de combinaisons de critères pour trier le signal du bruit. On a donc un système qui va tourner les boutons à notre place et qui va explorer cet espace des possibles à grande vitesse avec pour principe "tiens quand on tourne un peu par là ca marche un peu mieux" et pleins d'exemples ...
[^] # Re: Simulation
Posté par thoasm . En réponse au journal Une simulation de drone de combat qui tourne mal. Évalué à 3.
Tu n'expliques pas la différence que tu fais entre programme et algorithme :) On peut pourtant poser une équation si on reste sur des définitions vagues.
L'apprentissage en ligne / hors ligneC'est plus une limite pratique, l'apprentissage est plus coûteux que le calcul donc ona une phase distincte mais il y a pas d'opposition des principe a faire de l'apprentissage au fil de l'eau en rajoutant des exemples au fils de l'existence du programme. Et aussi parce que pour que ça marche il faut pleins de données donc si on faisait ça uniquement en ligne on aurait jamais de bons résultats parce que pas assez d'exemples, il faut au minimum un pré apprentissage important.
Il y a aussi des algos qui font de l'apprentissage tout a fait en même temps que la résolution du programme, comme les algos pour SAT, le problème de savoir s'il y a des valeurs aux variables qui rendent une formule booléenne vraie. Les algos sats qui fonctionnent diablement bien font du :en:conflict-driven clause learning, qu'on peut voir comme l'apprentissage de structures de la formule à éviter pour une résolution efficace qu'on saurait pas faire à priori, qu'il s'agit d'ajouter et supprimer intelligemment parce qu'il y a pas une mémoire infinie pour tout apprendre. Pourtant c'est clairement un algorithme dans tous les sens qu'on peut lui donner. On peut voir la mémoire dediée a l'apprentissage dans ce cas comme un certain nombre de paramètres d'état de l'algo qu'il fait évoluer au fur et à mesure de l'exécution. Est-ce de l'IA ?
Dans le cas de la reconnaissance d'image, on sait a peu près quel type de traitements on veut pouvoir faire, genre de la reconnaissance de bords, extraire les hautes ou les basses fréquences, avoir des trucs invariants pas translation ou par zoom/de zoom dans la mesure du possible mais en réglant les chaînes de traitements à la main on a des résultats que médiocres parce que c'est de l'essai/erreur et que la bande passante des humains est limitée et qu'on est infichus d'imaginer a priori quels sont les critères qui vont marcher suffisamment. Donc on crée un réseau capable de faire tous les calculs pertinents qu'on imagine dans le principe, qui va pouvoir tester pleins de combinaisons de critères pour trier le signal du bruit. On a donc un système qui va tourner les boutons à notre place et qui va explorer cet espace des possibles à grande vitesse avec pour principe "tiens quand on tourne un peu par là ca marche un peu mieux" et pleins d'exemples ...