Posts about sciblog (old posts, page 2)

2010-04-07 using grin

2010-04-07 16:01:04
  • I just discovered grin, "grep my way"
  • install:
    sudo easy_install grin
  • search recursively
    grin  expression
  • search recursively in a specific directory
    grin  expression /this/directory
  • search recursively python files
    grin -I "*.py"  expression

2010-03-15 securing the server

This page is word-editable, please edit if you find an error.

  • SSH (Secure Shell) is installed on most systems (here GnuLinuxUbuntu and MacOsX) so don't panic about compilations (try Putty on Windows). Try a simple ssh -V to check version or which ssh to locate the binary.
  • Thanks to ssh, you can transport all your data (accessing files, merging repositories, lauching remote X programs) transparently using a secure connection. Thanks to tunneling, this is also simpler thus more secure for your computer and your provider. Having all security located in one interface sure is a big advantage: once your SSH communication channel is set-up, you should only focus on what you wish to do (SVN, etc...).
  • Most documentation may be found in man ssh, man ssh-keygen (remember that thanks to the underlying pager system, you can search for a keyword, for instance hello, by typing \hello[ENTER]). Many other sources of help exist, such as this FAQ

Setting up SSH: spreading the good keys

  1. There are many ways to authenticate your session, but mainly password or keys. Keys are to be preferred to avoid typing your password 10 times a day. It is also most secure (you type your key's password locally and not remotely).
  2. Generate a private/public key pair. Simple command to do this:
    ssh-keygen -t rsa
  3. Copy the key to the
    ssh-copy-id -i ~/.ssh/id_rsa.pub username@host

    . this can be also be done using

    scp ~/.ssh/id_rsa.pub username@host:~/mykey.pub
    ssh username@host
    cat mykey.pub >> .ssh/authorized_keys
  4. Now try logging into the remote machine again from local
    ssh REMOTE_USERNAME@remote_host
  5. Check that your public key is in the list of authorized keys: .ssh/authorized_keys.
  6. Change password regularly:
    ssh-keygen -p

    It is not advised to put an empty pass-phrase, rather use key agent (see below).

Aliasing

  • it is possible to create alias of the ssh binary to hostnames... but more simply, you may put
    alias myserver='ssh -Y -p2221 myuser@myserver.domain.com'

    where 2221 is here the port used by the SSH server on myserver.domain.com

  • more cleanly, you may edit your  .ssh/config file with:
    Host myserver.domain.com
            User myuser
            Port 2221

    Be careful that properties are right : chmod 600 ~/.ssh/config

key agent

  • An agent loads your keys on the local machines:
    • it's more secure, since all passwords are typed locally, you only send encrypted authentifications
    • it's more practical, since you type your password once per session
  • http://www.sshkeychain.org/mirrors/SSH-with-Keys-HOWTO/
  • GUI interface on MacOsX : http://www.sshkeychain.org/
    • install with macports using sudo port install SSHKeychain, you'll find it in /Applications/MacPorts

tunnels

securing the server

  • Robots usually try common name / password combinations on your SSH server. If you're the only user admin_name of your server you may use in the SSH server configuration file (usually /etc/ssh/sshd_config) the option AllowUsers admin_name to restrict access to user admin_name and avoid brute force attacks. Since robots are most of the time dumb, they'll get an immediate acces denied response to any connection request.
  • Robots usually sniff port 22. To change the port which is listened by the SSH server, either modify the default port in the SSH server configuration file (usually /etc/ssh/sshd_config). Another way is to use your router to redirect the outside port (for instance 2221) to the default port of your server.

2010-01-27 The original eve

2010-01-27 09:06:15
  • one common statement in popular science when speaking about evolution is that we all derive from a common ancestor, the "original eve". while a posteriori, it is true that mitochodrondrial DNA allows to trace back common ancestors in our heredity, it is certainly overstated. When thinking evolution, our focus is to look back from the present to our origins, but a the time of these "few" original eves, many different eves coexisted and acted -as parts of the whole population- in the evolution.
  • Evolution is more like a Banyan tree than a graph written on a board where species evolve from primitive forms into more and more complex forms, including an idealistic vision of our position on this tree.
  • even worse for the gap between reality and popular preconceptions about evolution: evolution is also lateral. More on this subject @ Horizontal and vertical: The evolution of evolution

width=100%

2009-12-19 contributing to the python community

2009-12-11 which or that?

2009-12-11 16:48:35

From http://www.businesswritingblog.com/business_writing/2006/01/that_or_which.html

That usually introduces essential information in what is called a "restrictive clause." Which introduces extra information in a "nonrestrictive clause."
  1. Example from a recent email:
    • "I am offering a new class, Email Intelligence, that/which may be an excellent fit for your training needs and budget."
    • Does the clause (in red) introduce information that is essential to knowing which Email Intelligence class?
    • No. The clause provides extra information, so which is correct.
  2. Revised example:
    • "Among my new programs, I am offering a class that/which may be an excellent fit for your training needs and budget."
    • Does the clause (in red) introduce information that is essential to knowing which class?
    • Yes. The clause tells which class--a class that may be an excellent fit. Therefore, that is correct.

2009-12-06 convert a bitmap image to a vectorized PDF using mkbitmap and potrace

2009-12-06 19:04:41
  • to convert a bitmap image to a vectorized PDF, use potrace and mkbitmap
  • it' a snap to install using MacPorts
    $ port info potrace
    potrace @1.8 (graphics)
    Variants:             a4_default, metric_default, universal
    
    Description:          Potrace is a utility for tracing a bitmap, which means, transforming a bitmap into a smooth, scalable image. The
                          input is a bitmap (PBM, PGM, PPM, or BMP), and the default output is one of several vector file formats. A
                          typical use is to create EPS files from scanned data, such as company or university logos, handwritten notes,
                          etc. The resulting image is not jaggy like a bitmap, but smooth. It can then be rendered at any resolution.
    Homepage:             http://potrace.sourceforge.net/
    
    Library Dependencies: zlib
    Platforms:            darwin
    License:              unknown
    Maintainers:          nomaintainer@macports.org
    manga:~ lup$ port variants potrace
    potrace has the variants:
       a4_default: compile potrace with A4 as the default page size.
       metric_default: compile potrace with centimeters as the default unit  instead of inches.
       universal: Build for multiple architectures
  • to install
    sudo port install potrace +a4_default +metric_default
  • check man pages and open your input for inspection
    man mkbitmap
    man potrace
    open dubout.png
  • you can use directly this workflow
    convert dubout.png ppm:- | mkbitmap -f 2 -s 2 -t 0.48 | potrace -t 5 --progress -b pdf -o dubout.pdf
  • but convert being what it is, first do
    convert dubout.png dubout.ppm
  • to take some more time fine tuning parameters:
    cat dubout.ppm | mkbitmap  -t 0.48 | potrace -t 15 --progress -b pdf -o dubout.pdf
  • in particular, the -x option resets defaults:
    cat dubout.ppm | mkbitmap  -x -s 2 -3 -t 0.5 | potrace -t 25 --progress -b pdf -o dubout.pdf
  • wait and ... enjoy!
Please Note
    This is a code snippet.

2009-12-02 CRAAC: Compte rendu annuel d'activité des chercheurs du CNRS. Année 2008 - 2009

2009-12-02 10:08:52
logo_cnrs Compte rendu annuel d'activité des chercheurs du CNRS Année 2008 - 2009
  • Identité

Nom (nom de jeune fille)

PERRINET

Prénom

Laurent

Date de naissance

23/02/1973

Grade

CR1

N° d'agent

00024609

Téléphone

04 91 16 43 08

Télécopie

04 91 16 44 98

Adresse électronique

laurent.perrinet@incm.cnrs-mrs.fr

Section(s) du Comité National

7

Département scientifique

Sciences du vivant

Délégation régionale

Provence et Corse

  • Affectation

Intitulé de l'unité

Institut de neurosciences cognitives de la méditerranée, approches fondamentale et clinique

Code unité

UMR6193

Directeur

Driss BOUSSAOUD

Adresse électronique du directeur

driss.boussaoud@incm.cnrs-mrs.fr

Adresse

31 Chemin Joseph Aiguier

13402 MARSEILLE CEDEX 20

France

Téléphone

04 91 16 43 18

Télécopie

04 91 77 49 69

Délégation

Provence et Corse

Site Web

  • Distinction(s)
  • Qualification

Habilitation à diriger des recherches

non

Doctorat d'Etat

non

Doctorat

oui

Année d'obtention

2003

Qualification "Maître de conférences"

non

Qualification "Professeur"

non

  • Période d'inactivité
  • Mobilité(s) antérieure(s)
  • Activités de recherche développées
  • Rattachement à(aux) activité(s) de recherche de l'unité UMR6193
Intitulé d'activité Date fin du rattachement
DYNAMIQUE DE LA PERCEPTION VISUELLE ET DE L'ACTION (DyVA)

Mots clés des sections/CID du Comité national

Section 1 : Probabilités, processus et algorithmes stochastiques, statistique, analyses des données
Section 1 : "Modélisation et interactions des mathématiques avec, en particulier, la mécanique, la physique, la biologie, l’informatique, les télécommunications, la chimie, l’environnement, l’économie ; applications industrielles"
Section 7 : Réseaux, systèmes répartis, parallélisme
Section 7 : Traitement, analyse, interprétation et synthèse du signal, de la parole et de l'image
Section 7 : Modélisation, analyse, commande et supervision des systèmes dynamiques
  • Points forts de vos activités de recherche et /ou informations complémentaires
Mon objectif de recherche est d’étendre la compréhension des modèles des facultés cognitives sous la forme de réseaux de neurones impulsionnels qui réalisent des algorithmes de la perception visuelle. En effet, les brèves impulsions du potentiel de membrane se propageant au fil des neurones sont une caractéristique universelle des systèmes nerveux et permettent de construire des modèles événementiels efficaces de traitement dynamique de l’information. Dans un but fonctionnel, je désire notamment implanter dans ces modèles des stratégies d’inférence grâce à des mécanismes d’apprentissage auto-organisés fixant les relations spatio-temporelles entre les neurones. Dans le cadre du projet FACETS, nous envisageons la création de nouveaux types d'algorithmes basés sur ces recherches.
  • Publication(s), parue(s) ou sous presse, dans des revues à comité de lecture
Référence
Andrew P Davison, Daniel Bruderle, Jochen Eppler, Jens Kremkow, Eilif Muller, Dejan Pecevski, Laurent Perrinet, and Pierre Yger. Pynn: A common interface for neuronal network simulators. Frontiers in Neuroinformatics, 2:11, 2008. http://frontiersin.org/neuroinformatics/paper/10.3389/neuro.11/011.2008/
Emmanuel Daucé and Laurent Perrinet. Computational neuroscience, from multiple levels to multi-level. Journal of Physiology (Paris), 2009. http://www.incm.cnrs-mrs.fr/LaurentPerrinet/Publications/Daucé09
  1. Barthélemy, L. Perrinet, E. Castet, and G. Masson. Dynamics of distributed 1D and 2D motion representations for short-latency ocular following. Vision Research, 48(4):501-22, 2008. http://www.incm.cnrs-mrs.fr/LaurentPerrinet/Publications/Barthelemy07
Jens Kremkow, Laurent Perrinet, Guillaume S. Masson, and Ad Aertsen. Functional consequences of correlated excitatory and inhibitory conductances. 2009. Journal of Computational Neuroscience (accepted).
Laurent Perrinet. Adaptive sparse spike coding : applications of neuroscience to the compression of natural images. In Gabriel Cristóbal Frédéric Truchetet Peter Schelkens, Touradj Ebrahimi, editor, Optical and Digital Image Processing Conference 7000 - Proceedings of SPIE Volume 7000, 7 - 11 April 2008, pages 15 - S4, 2008.
Laurent Perrinet. Role of homeostasis in learning sparse representations. 2009. Neural Computation (accepted).
Laurent U. Perrinet, Alexandre Reynaud, Frédéric Chavane, and Guillaume S. Masson. Inferring monkey ocular following responses from V1 population dynamics using a probabilistic model of motion integration. In Vision Science Society, number 23.411, 2009. Journal of Vision, Volume 9, Number 8, Page 745a.
Nicole Voges and Laurent Perrinet. Phase space analysis of networks based on biologically realistic parameters. Journal of Physiology (Paris), Accepted., 2009. http://www.incm.cnrs-mrs.fr/LaurentPerrinet/Publications/Voges09neurocomp
  • Publication(s), parue(s) ou sous presse, dans des revues sans comité de lecture
  • Ouvrage(s) ou chapitre(s) d'ouvrage(s), paru(s) ou sous presse
Référence
Emmanuel Daucé and Laurent Perrinet, editors. Computational neuroscience, from multiple levels to multi-level: a special issue of Journal of Physiology (Paris), 2009.
Proceedings of the second french conference on Computational Neuroscience, Marseille. 330 pages. Editors Perrinet, Laurent U. and Daucé, Emmanuel. October 2008, Url http://2008.neurocomp.fr/neurocomp08proceedings.pdf, Isbn 978-2-9532965-0-1
  • Participation à des manifestations scientifiques

Manifestation

CNS

Type de manifestation

( international )

Lieu

Berlin ( Allemagne )

Durée

7 (jour(s))

Intervention(s)

Control of the temporal interplay between excitation and inhibition by
the statistics of visual input. par Jens Kremkow, Laurent Perrinet,
Cyril Monier, Yves Fregnac, Guillaume S. Masson, and Ad Aertsen.
    Communication orale
Decoding the population dynamics underlying ocular following response
using a probabilistic framework. par Jens Kremkow, Laurent Perrinet,
Alexandre Reynaud, Ad Aertsen, Guillaume S. Masson, and Frédéric
Chavane.
    Affiche/poster

Decoding the population dynamics underlying ocular following response using a probabilistic framework. par Laurent Perrinet and Guillaume S. Masson

Dynamics of cortical networks based on patchy connectivity patterns. par Nicole Voges, Jens Kremkow, and Laurent Perrinet

Manifestation

COSYNE

Type de manifestation

( international )

Lieu

Salt Lake City ( Etats-Unis )

Durée

6 (jour(s))

Intervention(s)

Modeling spatial integration in the ocular following response to
center-surround stimulation using a probabilistic framework par
Perrinet, Laurent U. and Masson, Guillaume S.
    Affiche/poster
What adaptive code for efficient spiking representations? A model for
the formation of receptive fields of simple cells. par Perrinet, Laurent
U.
    Affiche/poster

Manifestation

Deuxième conférence française de Neurosciences Computationnelles, "Neurocomp08"

Type de manifestation

( international )

Lieu

Marseille, France

Durée

Intervention(s)

Jens Kremkow et al. Functional properties of feed-forward inhibition. Deuxième conférence française de Neurosciences Computationnelles,

Nicole Voges et al. Analyzing cortical network dynamics with respect to different connectivity assumptions. Deuxième conférence française de Neurosciences Computationnelles,

Manifestation

Eighth Göttingen Meeting of the German Neuroscience Society

Type de manifestation

( national )

Lieu

Göttingen ( Allemagne )

Durée

3 (jour(s))

Intervention(s)

Neural codes for adaptive sparse representations of natural images.
http://incm.cnrs-mrs.fr/LaurentPerrinet/Publications/Perrinet07mipm
par Laurent Perrinet
    Communication orale

Manifestation

SPIE Photonics Europe

Type de manifestation

( international )

Lieu

Strasbourg, France

Durée

Intervention(s)

Laurent Perrinet. Sparse Spike Coding : applications of Neuroscience to the processing of natural images. Proceedings of SPIE Volume 7000 "Optical and Digital Image Processing" SPIE Photonics Europe 2008 Strasbourg FR

Manifestation

Vision Science Society

Type de manifestation

( international )

Lieu

Naples ( Etats-Unis )

Durée

7 (jour(s))

Intervention(s)

Control of the temporal interplay between excitation and inhibition by the statistics of visual input: a V1 network modelling study. par Jens Kremkow, Laurent Perrinet, Pierre Baudot, Manu Levy, Olivier Marre, Cyril Monier, Yves Fregnac, Guillaume Masson, and Ad Aertsen.

  • Activité éditoriale

Type d'intervention

Editeur

Type de document

Revues

Informations complémentaires

Emmanuel Daucé and Laurent Perrinet, editors. Computational neuroscience, from multiple levels to multi-level: a special issue of Journal of Physiology (Paris), 2009.

Type d'intervention

Rapporteur/Relecteur dans des revues

Type de document

Autres

Informations complémentaires

International Conference of Numerical Analysis and Applied Mathematics 2009

Type d'intervention

Rapporteur/Relecteur dans des revues

Type de document

Informations complémentaires

Journal of Physiology (Paris)

Type d'intervention

Rapporteur/Relecteur dans des revues

Type de document

Informations complémentaires

Frontiers in Neuroinformatics, http://frontiersin.org/neuroinformatics/paper/10.3389/neuro.11/004.2008/

Type d'intervention

Rapporteur/Relecteur dans des revues

Type de document

Informations complémentaires

Neurocomputing

  • Séjour(s) dans d'autres laboratoires
  • Mission(s) sur le terrain
  • Formation personnelle
  • Collaborations

Organisme partenaire

INRIA

Pays

FRANCE ( Europe )

Unité partenaire

Odyssee

Intitulé

Sophia

Cadre de la coopération

AUTRE - FACETS

Nature de l'activité

Organisme partenaire University Freiburg
Pays Allemagne ( Europe )
Unité partenaire FACETS
Intitulé FACETS
Cadre de la coopération AUTRE - FACETS
Nature de l'activité Participation à un réseau

Organisme partenaire

University Ulm

Pays

Allemagne ( Europe )

Unité partenaire

NeuroInformatics

Intitulé

Perception of Motion

Cadre de la coopération

Nature de l'activité

  • Encadrement et animation scientifique

Chercheurs

CNRS

Enseignement supérieur

Autres EPST

Autres

Total

0

0

0

1
    Post-doc en CDD

1

Doctorants

Thèse

Doctorants étrangers

Doctorants ayant soutenu une thèse

Total

Direction

Codirection

0

1

1

0

1

IT

Stagiaires

IT CNRS

IT non CNRS

Total

Master 2

Licence, master 1

Ecole d'ingénieur

IUT

Autre

Total

0

0

0

1

2

0

0

1

4

Animation scientifique
Organisation à Marseille de la deuxième conférence internationale en Neurosciences Computationnelles Participation au réseau NeuroComp.fr Animation d'un réseau marseillais des NeuroComp
  • Enseignement
  • Valorisation et partenariat
  • Vulgarisation
Type d'information Intitulé Type de participation
Conférence/débat public Peut-on parler d’intelligence mécanique? http://www.incm.cnrs-mrs.fr/LaurentPerrinet/Presentations/09-11-24_IntelligenceM%C3%A9canique Participation ponctuelle
  • Administration de la recherche
  • Management et gestion

Responsable d'un service commun de l'unité

Maintien plateforme Web + intranet

Vice-présicent CLAS GLM de Marseille-Joseph Aiguier

2009-11-26 inkscape native

2009-11-26 09:27:37
  • trying out http://wiki.inkscape.org/wiki/index.php/CompilingMacOsX#Building_Aqua_November_2009
  • build dependencies
    sudo port install autoconf automake
    
    sudo port install librsvg libwpd libwpg libcroco
    
    sudo port install libxslt boost boehmgc gtkmm lcms intltool popt
    
    sudo port install cairo +quartz+no_x11 cairomm pango +quartz+no_x11 poppler +quartz gtk2 +quartz
    
    sudo port install gsl
    
    sudo port install hicolor-icon-theme
    
    sudo port install subversion
    
    sudo port install libxml2 libxslt
    
    # optional to speed up the compiling process:
    sudo port install ccache
    export CC="ccache gcc"
    export CXX="ccache g++"
  • getting the sources
    cd tmp
    svn co https://inkscape.svn.sourceforge.net/svnroot/inkscape/inkscape/trunk inkscape
    cd inkscape/packaging/macosx/
  • compile
    # Edit the file osx-build.sh to remove the configure option --enable-osxapp
    # (line 24)
    
    # I used TextWrangler for this, pico or another command line editor will do the same.
    
    # Back to the terminal:
    
    # configure it:
    sudo ./osx-build.sh c
    
    # build it:
    sudo ./osx-build.sh b
    
    # install it:
    sudo ./osx-build.sh i
    
    # test it:
    ../../Build/bin/inkscape

    compiles ok :-), but crashes rather rapidly :-(