[ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 :: Suivant ]
Mwai
Je pense que c'est plutot google que tu devrais prévenir...
Sinon, moi j'ai remarqué un autre truc qui n'a rien à voir : google ignore les points dans les noms d'utilisateurs
Donc envoyer un email sur foo.bar@gmail.com est identique à foobar@gmail.com
le python, c'est bon
[ Répondre ]
deezer, bof
L'exemple de deezer est mal choisi car depuis quelques temps j'ai remarqué que beaucoup des nouveaux morceaux qu'ils proposent sont désormais limité aux premières secondes. Du coup je commence à délaisser leur site !
De même quelle sera l'avantage d'un IPod quand nos téléphones portables seront de toute façon en permanence connectés à Internet et donc à des Deezer like ?
Tu oublies une chose, le pouvoir du marketing. IPod c'est joli, c'est ergonomique, et c'est surtout fashion, du coup ça se vend. Si c'était pour leurs performances que l'ipod/iphone se vendaient bien ca se saurait depuis des lustres
le python, c'est bon
[ Répondre ]
Re: Bien
Merci pour ces explications. Effectivement l'algo génétique mélangé au réseau neuronaux me parait hardcorde à mon niveau :)
Il me reste beaucoup de zones d'ombre; notamment sur la quantité de neurone/synapses_par_neurones/couches qu'un réseau doit avoir pour un problème donné.
Par exemple, je souhaite mettre en place un réseau neuronal super avancé à qui on donnerait un triplet de chiffre.
Le but est de lui apprendre à dire Oui si le plus petit des 3 chiffres se trouve à gauche du triplet ou à droite. Et de répondre Non s'il se trouve au milieu.
Vous le modéliserez comment ce problème ?
le python, c'est bon
[ Répondre ]
Bien
Essayons de récapituler ce que j'ai lu jusqu'à présent sur internet.
Je pense avoir compris la base des réseaux génétiques. On créé une population au hasard, on tire 2 individus, dans 70% des cas environ ils se reproduisent pour donner naissance à deux autres individus, qui 1 fois sur 1000 subissent des mutations génétiques. Ces deux individus sont ensuite réintégrés dans la population initiale (parcontre les deux parents ne le sont pas forcément, d'après ce que j'ai lu, ca doit dépendre des philosophies...) ou bien commence à peupler une nouvelle population, et on boucle autant de fois qu'on peut tirer d'individu dans la population. Ensuite soit on ajoute la nouvelle population à l'ancienne, soit elle la remplace completement (vous conseillez quoi, vous ? car j'avoue que c'est pas très clair tout ça, chacun y va de sa sauce)
De même il faut parfois rajouter des individus au hasard en fin de cycle pour ne pas faire tirer l'algo vers les maximums locaux, à savoir plein d'individus tip-top au niveau de leur fitness score, mais malheureusement serait incapable de résoudre le problème pour autant.
Le choix des deux individus reproducteurs peut varier d'un algo à l'autre. Certains trient leur population et prennent les deux meilleurs à chaque fois, d'autres en prennent deux au hasard, d'autres prennent le meilleur et le font s'accoupler avec tous les autres, mais globalement la technique de la roulette est utilisée, à savoir qu'on tire bien au sort les individus, mais avec tout de même plus de chance de tirer un bon qu'un mauvais.
Ensuite les réseaux neuronaux.
Là je trouve les explications que j'ai trouvé sur internet beaucoup plus élitistes !
En gros, un neurone est une fonction qui attend n entrées. Pour chacune de ces entrée est appliquée un coefficient multiplicateur (ou poids), et quand le neurone fait la somme de toutes ses entrées*poids, il lance sa fonction d'activation. C'est le résultat de cette dernière qui dira si le neurone est actif ou non, sachant que pour un neurone basique, la fonction d'activation est simple : si la somme de mes entrées*poids >0 elle retourne 1, sinon elle retourne 0
On peut être moins binaire en utilisant une fonction sigmoïde, nom barbare signifiante que la représentation graphique de cette fonction ressemble à un S, et qu'en gros selon la somme des entrées*poids, ce qui sort de la fonction d'activation sera proportionnellement proche de -1 ou 1 (par exemple 0.3 ou -0.3)
On peut calibrer les poids à la main pour forcer le résultat attendu en sortie de neurone selon certaines entrées, c'est ce qu'on appelle l'apprentissage supervisé.
On peut également laisser les neurones trouver le poids idéal en leur fournissant un jeu d'essai conséquent comprenant une série de valeur d'entrées et la valeur de sortie attendue.
Ca peut être fait simplement pour deux entrées et deux poids, par rééquilibrage progressif, mais pour plein de neurones avec pleins d'entrées, ca devient long et fastidieux.
Les algorithmes génétiques entrent donc en jeu et permettent de calculer grossomerdo un ensemble de poids que le neurone devra utiliser pour répondre à peu près correctement aux entrées qu'on lui fourni.
Pour se faire, il devra à chaque nouvelle entrée dans les neurones qu'on lui fournit en jeu de test regarder le résultat attendu, tenir compte des autres poids qu'il avait déjà et qui lui permettait de répondre juste, pour élaborer un nouvel ensemble de poids qui répondrait juste à la fois aux anciennes demandes, mais également à cette nouvelle.
L'avantage de l'algorithme génétique, c'est qu'on peut être "tolérant" et lui dire par exemple, si tu t'approche de la solution à 90% ça nous va ! (le réseau donnera donc la bonne réponse 9 fois sur 10)
(ça je suis vraiment pas sûr) Donc si on veut reprendre notre algo génétique de base, l'individu aura de plus en plus de gène au fur et à mesure qu'on l'entrainera, et l'algo moulinera de plus en plus pour trouver un ensemble de poids corrects.
Bon, maintenant c'est l'heure des corrections, n'hésitez pas à me dire ce que je n'ai pas compris :)
le python, c'est bon
[ Répondre ]
Re: Bien
[hs]
Bof, les chaines c'est plus une méconnaissance de python qu'un héritage de java.
J'utilise beaucoup python, énormément même, mais comme un couteau suisse. Je fais des utilitaires avec, qui répondent à un besoin donné à un instant T, et qui ensuite sont archivés "au cas où". Du coup je ne peaufine pas trop mon code, et je trouve les nouvelles syntaxes pythoniennes certes plus concices, mais moins lisibles àmha pour ma ptite tête
Pour en revenir aux tableaux de bytes, je n'ai pas trop cherché si le "type" existait en python. Je suis parti sur l'idée que je ne savais pas trop s'il fallait mieux utiliser une collection remplie de 0 et 1 avec python utilisant 4 octets pour chaque entier, ou une chaine sachant qu'un caractère est probablement codé sur moins.
Bref, on s'en fiche pas mal, ce n'est pas le débat. Fin du HS donc, merci :)
[/hs]
le python, c'est bon
[ Répondre ]
Bien
J'ai trouvé pas mal de ressources sur internet, plus ou moins imbitables.
J'ai fais une première tentative de codage d'algo génétique en python en m'inspirant d'un truc trouvé en java
Ca marche a peu près correctement, mais c'est terriblement lent (de 2 à 30 secondes pour trouver un nombre à deux chiffres), là où le programme java semble trouver toujours du premier coup.
J'ai une de mes fonctions qui doit plomber tout ca...
Pour ceux que ca interesse : [http://fuck.the.world.free.fr/algo/algogen.py]
Ca se lance comme ca :
python algogen.py [nombre]
et ca donne grosso merdo ça :
cho7@cho7land:~/Desktop$ python algogen.py 6
Le nombre 6 admet par exemple la solution 0+6
cho7@cho7land:~/Desktop$ python algogen.py 6
Le nombre 6 admet par exemple la solution 4+2
cho7@cho7land:~/Desktop$ python algogen.py 6
Le nombre 6 admet par exemple la solution 1+1+4
ps : désolé pour le code trop moche écrit à la sauce python 2.1 et un développeur qui a un peu trop bu de java recemment
le python, c'est bon
[ Répondre ]
Re: Il n'y a pas que des algos !
Les méthodes du style "lago génétique" ou "réseau de neuronnes" ont été citées, je vais décrire rapidement la deuxième ...
Je crois que c'est là dessus que j'aimerais orienter mes recherches.
C'est faisable facilement un truc qui avale une image et qui dit si oui ou non un panneau de circulation (à peu près rond et à peu près rouge) se trouve dedans ?
On lui basarderait plein de photos avec des leurres, et le bouzin serait capable à plus ou moins long terme de dire "oui ya un panneau rond et rouge" ou "non ya pas de panneau"
Algo génétique ou réseau de neurones pour ce genre de trucs ? mes premières recherches indiquent plutôt réseaux de neurones.
Sauf qu'un commentaire plus haut disait que c'était fun, mais quand je lis [http://alp.developpez.com/tutoriels/intelligence-artificiell(...)] je trouve ça beaucoup moins fun :(
le python, c'est bon
[ Répondre ]
Re: Pouet
Ah, une autre utilisation que je souhaitais en faire, c'était la reconnaissance basique de motifs dans une image. Pour se faire, il faut apparemment recourir aux réseaux neuronaux...
le python, c'est bon
[ Répondre ]
Pouet
Merci pour vos premières réponses
Effectivement je suis resté un peu flou dans ma question initiale... Je pense utiliser ca dans un premier temps dans des petits jeux que j'ai développé à la va-vite, et qui sont relativement simple dans les règles.
Dans ce qui m'a poussé à éclaircir mes idées : je tombais souvent sur des textes parlant de réseaux neuronaux, d'algo génétiques, ou plus récemment (avec le spam) les filtres bayésiens, et j'étais curieux de mettre une image derrière toutes ces appellations qui pour l'instant sont plutôt obscures à mes yeux.
Bref, dans ma grande naïveté je pensais qu'un bouquin super interessant appelé "l'IA pour les nuls" me détaillerait plein de trucs chouettes, avec des cas typiques à modéliser, un peu comme les designs pattern utilisés en POO ^^
De toute évidence ce n'est pas le cas :)
le python, c'est bon
[ Répondre ]
Re: Change d'Hotel
je viens de regarder la page en question, et dans la vidéo de démo aussi, ils partent du principe que le réseau est en DHCP, et que une fois la clé wep trouvée c'est gagné...
le python, c'est bon
[ Répondre ]
Re: Change d'Hotel
Merci pour ta réponse.
Je connais aircrack, à l'époque où il était sorti j'avais même essayé de le tester mais je crois que ma carte réseau ne supportait pas le mode promiscuous (centrino...) et comme ma nouvelle est toujours une centrino, je ne sais pas ce qu'il en est...
Mais comment faire dans un hôtel, seul avec sa nintendo DS ? (et sans aircrack, donc !)
le python, c'est bon
[ Répondre ]
Re: zarbi
non non, la seule chose dont je suis sûr c'est que seul mon serveur ssh est configuré pour écouter sur le port 443, et que mon serveur web n'écoute que sur le 80 ! D'ailleurs, le premier serveur web que j'utilisais n'était même pas sur la même machine
le python, c'est bon
[ Répondre ]
zarbi
c'est vraiment bizarre, j'ai tenté de tout faire en local sur ma machine maison. Ouverture d'un tunnel remote 2222 -> vers 443 (mon port ssh) puis connection ssh vers 2222, ca marche....
Pourquoi quand je met un serveur web ca ne marche plus... ca c'est la grande question :/
le python, c'est bon
[ Répondre ]
Re: SSH, c'est possible !
Beh c'est un poste windows, donc le netcat c'est pas évident :)
Sinon putty a l'air de faire son boulot, en tout cas netstat voit bien mon port ouvert coté serveur dès que j'instancie la connexion
J'ai tenté autre chose, mais ca donne le même résultat :
j'ai ouvert 2 consoles putty tappant mon serveur ssh maison.
Sur l'une d'elle j'ai ouvert un nc -l 3333
Sur l'autre j'ai lancé un ssh avec ssh -R 2222:127.0.0.1:3333 127.0.0.1 puis j'ai enchainé sur un telnet 127.0.0.1 3333
La connexion se fait mais se perd aussitôt. Netcat reste totalement muet
Une idée :-/ ?
le python, c'est bon
[ Répondre ]
Re: SSH, c'est possible !
Trop bien merci, c'est exactement ce que je cherchais.
Parcontre, je n'ai pas encore la machine sous les yeux, juste un poste windows+putty et ma machine maison.
J'ai quand même voulu testé, donc j'ai bien vu l'option remote dans putty, j'ai ouvert 2222:localhost:80, et sur ma machine maison j'ai tappé telnet localhost 2222. La connexion passe....
... Mais j'ai voulu ensuite faire un GET / HTTP/1.1, et là il ne se passe rien !
Après quelques secondes la connexion avec le port 2222 coupe, et me coupe à nouveau dans les pattes dès que j'essais de m'y reconnecter avec telnet.
Une idée de ce que j'ai loupé ? J'ai bien verifié je n'ai pas inversé les ports !
le python, c'est bon
[ Répondre ]
Re: tu peux facilement faire une galerie de photos en latex
Hey c'est pas bête ça, merci beaucoup.
J'avais pas du tout pensé à la possibilité d'utiliser latex de cette manière.
Parcontre j'ai pas de latex sous la main et je suis sur un pc pourri, donc j'vais tenter la chose avec une page html :-)
le python, c'est bon
[ Répondre ]
Plus de précision
Pour la postérité, je rajoute l'exception levée par jasper...
net.sf.jasperreports.engine.JRException: net.sf.jasperreports.engine.JRException
: Error retrieving field value from bean : prenom
le python, c'est bon
[ Répondre ]
Re: Avis d'un archeologue de l'informatique
Merci pour ces débuts d'éclaircissements, même si la raison d'être du bidule n'est pas encore totalement élucidée :)
Pour l'instant, à part enchainer avec ctrl+u, je vois pas ce que je peux en faire de cette commande :+)
le python, c'est bon
[ Répondre ]
Re: Avis d'un archeologue de l'informatique
Beh oui, mais moi aussi j'utilise tab tout le temps.
Mais là, ce n'est pas de l'auto complétion vu que ça met toutes ces commandes en 1 bloc sur la ligne de commande actuelle, donc c'est inexploitable a priori :-/
le python, c'est bon
[ Répondre ]
[ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 :: Suivant ]



Re: Temps de demarrage
5 bonnes minutes pour moi !
Beh oui, ca faisait 28 reboots sans fsck, donc j'ai eu le droit au check forced :+)
le python, c'est bon
[ Répondre ]