[Sebastian Thrun] Donc, quel est ton point de vue sur la façon de construire un moteur de recherche,
tu en as déjà construit un, n'est-ce pas?
[Sergey Brin - Co-Fondateur, Google]Oui, je pense que la chose la plus importante
si tu es sur le point de construire un moteur de recherche
est d'avoir un très bon corpus comme base pour commencer.
Dans notre cas, nous avons utilisé Internet, lequel était certainement plus petit qu'il ne l'est aujourd'hui.
Mais il était également tout nouveau et excitant.
Il y avait toutes sortes de surprises.
[David Evans] Donc, le but des trois premières unités du cours est de construire ce corpus.
Et nous voulons construire ce corpus pour notre moteur de recherche
en analysant le web et c'est ce que fait un web crawler.
Un web crawler est un programme qui collecte du contenu depuis le web.
Si tu penses à une page web que tu affiches dans ton explorateur, tu as une page comme ceci.
Et nous utiliserons le site de Udacity comme exemple d'une page web.
Elle contient beaucoup de contenu, elle contient des images, du texte.
Tout cela arrive dans ton explorateur lorsque tu demandes à voir une page.
Elle contient une chose importante qui s'appelle "liens".
Un lien est quelque chose qui va vers une autre page.
Par exemple, nous avons un lien qui va vers les questions fréquemment posées (FAQ),
nous avons un lien vers la page CS 101.
Il y a d'autres liens sur la page.
Et ce lien pourrait être affiché souligné dans ton explorateur,
ou non, cela depend de comment ton explorateur est paramétré.
Mais la chose importante qu'il fait,
est que c'est un pointeur vers une autre page web.
Et ces autres pages web pourraient également contenir d'autres liens.
donc nous avons un autre lien sur cette page-ci.
Peut-être que c'est vers mon nom, et tu peux le suivre pour atteindre ma page principale.
Et toutes les pages que nous pouvons trouver avec notre web crawler
sont en fait trouvées en suivant les liens.
Il ne trouvera pas nécessairement toutes les pages présentes sur le web
Cependant, si nous commençons avec une bonne page comme base (seed page)
nous trouverons beaucoup d'autres pages.
Et ce que le web crawler va faire est de commencer avec une page,
trouver tous les liens sur cette page, suivre chaque lien pour trouver d'autres pages
et sur chacune de ces autres pages, il suivra les liens qu'elles contiennent
pour trouver d'autres pages et il y aura beaucoup plus de liens sur ces pages-là.
Finalement, nous obtiendrons une collection de beaucoup de pages du web.
Donc, ce que nous voulons faire est de construire un web crawler.
Nous voulons trouver un moyen de commencer avec une page de base,
extraire les liens de cette page,
suivre ces liens vers d'autres pages,
ensuite récupérer les liens présents sur ces autres pages,
les suivre, récupérer tout ça.
Cela semble énorme à faire.
Nous ne ferons pas tout cela dans ce premier cours.
Ce que nous allons faire durant cette première unité est uniquement d'extraire un lien.
Donc, nous allons commencer avec un [tas de] texte
Ce texte contiendra un lien avec une URL
Ce que nous voulons trouver est cette URL
afin de pouvoir demander la page suivante.
Le but de la seconde unité
est d'être capable de continuer.
S'il y a beaucoup de liens sur une page, tu veux être capable de tous les trouver.
Donc, ce que nous ferons durant l'unité 2
est de trouver un moyen de continuer à extraire touts ces liens-là.
Durant l'unité 3, nous irons au-délà d'une page.
Donc, à la fin de l'unité 2, nous pourrons afficher tous les liens d'une page.
Pour l'unité 3, nous voulons récupérer tous ces liens afin de pouvoir continuer,
et arriver à faire en sorte que notre crawler récupère beaucoup, beaucoup de pages.
Donc, a la fin de l'unité 3, nous aurons construit un web crawler.
Nous aurons un moyen pour construire notre corpus.
Ensuite, durant les trois unités restantes, nous regarderons comment répondre à des requêtes.
Donc, durant l'unité 4, nous trouverons un moyen de fournir une bonne réponse.
Par exemple, si tu cherches un mot-clé, tu veux obtenir une réponse qui soit une liste de toutes les pages
où ce mot-clé apparait.
Et, durant l'unité 5, nous trouverons un moyen de le faire de manière à ce que cela puisse évoluer même avec un large corpus.
Et ensuite, durant l'unité 6, ce que nous voulons faire, nous ne voulons pas simplement trouver une liste,
nous voulons trouver la meilleure.
Donc, nous trouverons un moyen de classer toutes les pages où le mot-clé apparait.
Nous sommes un peu en avance maintenant
parce que, tout ce que nous allons faire durant l'unité 1,
c'est de trouver un moyen d'extraire un lien d'une page.
Et le moteur de recherche que nous allons contruire à la fin de ceci
sera un moteur de recherche fonctionnel.
Il aura les fonctionnalités principales d'un moteur de recherche comme Google.
Il ne sera certainement pas aussi puissant que Google,
nous voulons garder les choses simple.
Nous voulons avoir une petite partie de code à écrire.
Et nous devrions nous souvenir que notre but réel
n'est pas tellement de construire un moteur de recherche,
mais plutôt d'utiliser le but de contruire un moteur de recherche comme véhicule
pour en apprendre plus sur le domaine de l'informatique
ainsi que sur la programmation
afin que ce que nous apprenons en faisant ceci
nous permette de résoudre beaucoup d'autres problèmes.