Journal Algorithmes intelligents : algos génétiques, filtres bayésien etc..

Posté par  .
Étiquettes : aucune
0
4
juin
2004
Salut à tous,

Une fois de plus je fait appel à votre aide.

Voila le problème : J'ai un jeu de données sur un objet ainsi qu'un modèle physique a faire tourner avec des paramètres d'entrée plus ou moins nombreux dans l'objectif de retrouver ces données.

Actuellement, je marche au feeling et à la compréhension physique. Mais tout à l'heure, en pensant au filtre bayésien de thunderbird, je me suis dit : Tiens est-ce que l'on ne pourrai pas utiliser un principe équivalent pour automatiser le processus ?

Cependant mon problème est différent : je peut quantifier exactement la qualité du résultat (par l'écart au donnée).
De plus, j'ai environ huit paramètres d'entrée, sachant qu'ils sont limités par des conditions physiques et que dans certains cas ils peuvent être connus.

La grande difficulté provient du temps pour faire tourner un modèle : au moins 10h (jusqu'a 2 semaine pour une simulation de très bonne qualité). Or dans les mois et les années qui viennent, il va y avoir un grand nombre de données sur des objets différents qui vont arriver d'ou l'intérêt de créer un soft qui, s'il n'irait pas forcément plus vite que l'être humain, lui permettrai de se libérer de la tache la plus ingrate.

Vu le temps nécessaire à une simulation, je ne peut pas automatiser une exploration exaustive des paramètres. Ce qui serait vraiment cool, ce serai d'avoir un soft qui partant des paramètres de base (fixes ou bornés selon) réagirai intelligement pour faire les faire varier, voir quels sont ceux le plus critique dans le but de se rapprocher le plus possible de la solution et d'aider a la détermination de leurs influences sur le modèle. Le top serai quelque chose qui en plus garde en mémoire ce qui a été réalisé pour encore optimisé les traitements pour d'autres objets plus ou moins proche (peut être avec un classement).

J'insiste sur le fait que je ne cherche pas à remplacer le sens physique mais plutôt a le complémenter.

Comme vous avez pu le constater dans le titre, je ne suis ni informaticien ni matheux. Alors, je suis preneur de toute info, site, forum ou éventuellement personne à contacter sur le sujet.


Dans un premier temps je suis surtout intéressé par de la vulgarisation pour voir si la solution proposé s'adapte bien à mon problème (rappel, j'entrave pas grand chose dans les domaines pointus des maths ou de l'info) mais si je trouve mon bonheur, il me faudra pouvoir trouver des sources scientifiques (livres ou articles).

merci de votre aide,
gyhelle

PS : Tiens c'est cool, un correcteur orthographique a été intégré !
  • # bayes fait des émules...

    Posté par  (site web personnel, Mastodon) . Évalué à 5.

    C'est drole, en utilisant bogofilter, il y a 2 jours, j'ai eu une idée similaire, mais pour faire de la traduction "intelligente" (en fonction du contexte du mot dans la phrase...).
    Suis entrain de me renseigner sur les méthodes de traduction actuelles avant de coder quoi que ce soit...

    Voila, c'etait H.S. Hum. Bref. Tout ca pour dire que je te souhaite bon courage.

    P.S: il y avait un article sur les réseaux bayesiens dans l'avant dernier LinuxMag (je crois), au cas ou ca peut te rendre service...
    • [^] # tant qu'on est dans le HS ;)

      Posté par  . Évalué à 4.

      traduction "intelligente" (en fonction du contexte du mot dans la phrase...)

      Je pense que tu peut supprimer le "intelligente", il va te falloir AMHA bien plus que ça ;)

      Sinon, pour l'utilisation du contexte, tu peut regarder les chaines de Markov Cachée (HMM, hidden markov model en anglais il me semble), c'est une des possibilités utilisée ...

      Bogofilter, il utilise un filtre bayesien ? Parceque à part essayer de classer ton document pour adapter le dictionnaire utilisé, je vois pas trop l'utilisation que tu veut en faire ... (mais j'ai peut être tout simplement pas saisi l'idée ;) )
  • # c'st plutot des algo génétiques

    Posté par  . Évalué à 10.

    les filtres bayesiens sont relatif au domain de la classification:
    je prend un message et je le range (on peut faire ca avec plein d'autre méthodes)

    Ce que tu semble rechercher c'est plutot de la recherche de solution : j'ai une une fonction f (ton model), un point d'arrivé et je cherche le point de depart.

    pour avoir diverse information sur comment faire avec les algorithmes génétique faire de recherche google:

    pour les algo génétiques:
    algorithmes génétiques recherche de minimum
    algorithmes génétiques recherche de solution

    http://sis.univ-tln.fr/~tollari/TER/AlgoGen1/node5.html(...)

    ou :
    recherche de solution mathématique optimisation
    http://perso.wanadoo.fr/scmsa/optimisa.htm(...)

    Plus généeralement cela releve du domaine de la recherche opérationel, la encore google est ton ami.

    J'espere que cela a eclaircie un peu les choses
  • # resau de neurones ou max de vraisemblance ?

    Posté par  . Évalué à 4.

    salut,

    peut etre que tu connais deja tout ca , mais en general pour optimiser plusieurs parametres,
    on utilise des resaux de neurones qui permettent une optimisation globale meme si les variables d'entree sont corelees.
    un soft de resaux de neurones simple est SNNS. (je ne m'en suis jamais servi mais d'apres ce qu'on m'en a dit c'est pas tres complique a mettre en oeuvre.)

    la deuxieme grande methode, encore plus simple a coder (qques lignes) c'est le maximum de vraisemblance. tu trouveras plein d'infos par google... mais je ne suis pas sur que ca colle exactement a ce que tu veux faire ... a voir..

    Désolé si je développe pas plus, c'est juste des pistes, y'a vraiment enormément d'infos sur le web les reseaux de neurones et les max de vraisemblance.
  • # Montecarlo

    Posté par  (site web personnel) . Évalué à 4.

    Si tu as un modèle complet du système mais que l'exploration du domaine est trop long, ce qui est souvent utiliser c'est un tirage de montecarlo.

    En gros, tu tires au hasard chacun des paramètres de façon équiprobable. Il faut donc étudier le système pour estimer ses probabilités. Ensuite, tu fais le nombre de run que tu veux. Le résultat est censé être très proche du calcul complet.

    "La première sécurité est la liberté"

    • [^] # Re: Montecarlo

      Posté par  . Évalué à 4.

      Oui ca marche bien et ca permet de pondre de belle matrice de resolutions qui on l'air de tomber du ciel pour le mec qui repasse apres toi dans le code ( vecue ).
      Mais il faut faire attention au domaine de definition des paramètres sans quoi tu dois faire un nombre de tirage preparatoir assez impressionnant.
  • # Merci a tous...

    Posté par  . Évalué à 0.

    ...maintenant j'ai de bonnes bases pour commencer ma recherche.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.