JS-Machine learning

Fermé
boliro - 4 déc. 2019 à 21:39
 Bilora - 5 déc. 2019 à 13:55
Bonjour, commençant le machine learning en cours, j'ai un exercice dans lequel je dois créee une fonction createKnn(k) où je dois ecrire une fonction createKNN (k) en prenant un argument correspondant au nombre de voisins les plus proches et en retournant un objet contenant un attribut / propriété k.
Voici un exemple :
let knn = createKNN(1);
console.log(knn);

Expected result...

{k:1}
Mon problème c'est ce java script est tout nouveau pour moi, et j'ai du mal a voir comment implementer ça, les seuls instructions que j'ai eu sont de regarder une video( https://www.youtube.com/watch?v=AoeEHqVSNOw) mais je vois pas comment coder cela du tout, j'ai essayé ça, mais je ne suis pas sure de ce que je fait :
function createKNN(k){
    best_dist = vectorDistance(row, X_train[0])
        best_index = 0
        
        for i in range(1, len(X_train)):
            
            dist = vectorDistance(row, X_train[i])
            if dist < best_dist:
                best_dist = dist
                best_index = i
    return Y_train[best_index]
}

En espérant que vous puissiez m'aider
Merci
A voir également:

1 réponse

jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
4 déc. 2019 à 22:16
Bonjour,

Le bout de code que tu nous montres n'est pas suffisant pour qu'on puisse te dire si c'est bon ou non
Il manque, par exemple, le contenu de ta fonction vectorDistance
On ne sait pas non plus d'où viennent tes variables X_train, Y_train, row ...

Quoi qu'il en soit, dans l'ennoncé de ta question il est dit que tu dois retourner un objet ayant une propriété k .... sauf que toi.. tu retournes juste un array ayant une valeur...

Il te manque aussi tes endfor et tes endif
(je te conseille, au passage, d'utiliser l'écriture avec les accolades au lieu des deux points... )
et tu n'utilises jamais le paramètre K que tu as mis dans ta fonction..

Donc.. non.. rien qu'avec ça je peux te dire que ce n'est pas bon.

Pour finir, je t'invite à lire ceci :
https://www.commentcamarche.net/infos/25899-demander-de-l-aide-pour-vos-exercices-sur-ccm/

0
De but de ma démarche est qu'on essaie de me donner une piste pour commencer
Ça fait bien déjà 5h que je tourne sur ce sujet
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649 > Bilora
5 déc. 2019 à 10:14
Une piste pour commencer ?
voila .. de façon générale : https://www.google.com/search?q=apprendre+le+javascript
Et pour les objets : https://developer.mozilla.org/fr/docs/Learn/JavaScript/Objects/Basics

Pour le reste, déjà.. tu ne réponds pas aux questions qu'on te pose.... et ensuite... NON on ne fera pas l'exo à ta place. On ne peut pas te donner de "pistes" pour débuter si tu n'es déjà pas capable d'expliquer convenablement ce que tu dois faire ni ce que tu as réellement essayé.

Si tu veux vraiment y arriver...
Commence par écrire ( sur papier par exemple...) l'algorithme que tu devras mettre en place.
Une fois les étapes bien découpées ( et donc comprises...) .. là tu pourras commencer à coder.

Sur ce, je n'interviendrai plus dans cette discussion.
Bonne journée.
0
C'est pas mon exercice que je veux qu'on fasse à ma place, tu t'avances un peu vite, j'ai un exam la dessus après, c'est donc à moi de la faire, je suis en master je suis au courant merci.
merci de m'avoir aider dans ton second message
Bonne journée
0
Si tu veux bien me répondre, j'aimerai juste savoir ce qu'on entend par un objet contenant un attribut / propriété k.
Merci
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649 > boliro
5 déc. 2019 à 13:52
Si tu veux bien prendre la peine de lire le lien que je t'ai donné.. je pense que la réponse s'y trouve.
C'est étonnant qu'en "master" vous n’ayez pas au moins ce minimum de connaissances...
0