IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Intelligence artificielle Discussion :

Dimension des variables d'entrainement explicative et la variable terrain y_train


Sujet :

Intelligence artificielle

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    421
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 421
    Points : 0
    Points
    0
    Par défaut Dimension des variables d'entrainement explicative et la variable terrain y_train
    bonjour j'éspere trouver de l'aide voici le code
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
     
    import pandas as pd
    import numpy as np
    import tensorflow as tf
    from tensorflow.keras.models import Sequential
    from tensorflow.keras.layers import Embedding, SimpleRNN, Dense
    from tensorflow.keras.preprocessing.text import Tokenizer
    from tensorflow.keras.preprocessing.sequence import pad_sequences
    from sklearn.model_selection import train_test_split
    from sklearn.metrics import classification_report
     
    # Charger vos données et les étiquettes correspondantes
    spam_df = pd.read_csv('C:/Users/User/Documents/spambase/spambase.txt', sep="\t")
     
    columns = ["Column_"+str(i+1) for i in range(spam_df.shape[1]-1)] + ['Spam']
    spam_df.columns = columns
    print(spam_df['Spam'])
    spam_df2 = spam_df.drop(columns =['Spam'])
    display(spam_df.head())
    display(spam_df2.head())
    display(spam_df2.head())
    # Prétraitement des données (nettoyage, mise en minuscules, etc.)
     
    # Diviser les données en ensembles d'entraînement et de test
    X_train, X_test, y_train, y_test = train_test_split(spam_df2, spam_df['Spam'], test_size=0.2, random_state=42)
    print(train_test_split(spam_df2, spam_df['Spam'], test_size=0.2, random_state=42))
    print(y_train)
    # Tokenization et padding
    tokenizer = Tokenizer()
    tokenizer.fit_on_texts(X_train)
    X_train_seq = tokenizer.texts_to_sequences(X_train)
    X_test_seq = tokenizer.texts_to_sequences(X_test)
    vocab_size = len(tokenizer.word_index) + 1
    max_sequence_length = max(len(seq) for seq in X_train_seq)
    X_train_padded = pad_sequences(X_train_seq, maxlen=max_sequence_length, padding='post')
    X_test_padded = pad_sequences(X_test_seq, maxlen=max_sequence_length, padding='post')
    print(X_train_padded)
     
    # Créer le modèle RNN
    model = Sequential()
    model.add(Embedding(input_dim=vocab_size, output_dim=64, input_length=max_sequence_length))
    model.add(SimpleRNN(units=128, activation='tanh', return_sequences=True))
    model.add(SimpleRNN(units=64, activation='tanh'))
    model.add(Dense(units=1, activation='sigmoid'))
     
    # Compiler le modèle
    model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])
     
    # Entraîner le modèle
    model.fit(X_train_padded, y_train, epochs=10, batch_size=32, validation_split=0.2)
     
    # Évaluer le modèle
    y_pred = model.predict(X_test_padded)
    y_pred_classes = (y_pred > 0.5).astype(int)
    print(classification_report(y_test, y_pred_classes))
    et les logs obtenu que je n'arrive pas a comprendre
    Code x : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    UnimplementedError                        Traceback (most recent call last)
    ~\AppData\Local\Temp/ipykernel_15308/2652462471.py in <module>
         47 
         48 # Entraîner le modèle
    ---> 49 model.fit(X_train_padded, y_train, epochs=10, batch_size=32, validation_split=0.2)
         50 
         51 # Évaluer le modèle
     
    ~\anaconda\lib\site-packages\keras\utils\traceback_utils.py in error_handler(*args, **kwargs)
         65     except Exception as e:  # pylint: disable=broad-except
         66       filtered_tb = _process_traceback_frames(e.__traceback__)
    ---> 67       raise e.with_traceback(filtered_tb) from None
         68     finally:
         69       del filtered_tb
     
    ~\anaconda\lib\site-packages\tensorflow\python\eager\execute.py in quick_execute(op_name, num_outputs, inputs, attrs, ctx, name)
         52   try:
         53     ctx.ensure_initialized()
    ---> 54     tensors = pywrap_tfe.TFE_Py_Execute(ctx._handle, device_name, op_name,
         55                                         inputs, attrs, num_outputs)
         56   except core._NotOkStatusException as e:
     
    UnimplementedError: Graph execution error:
     
    Detected at node 'binary_crossentropy/Cast' defined at (most recent call last):
        File "C:\Users\User\anaconda\lib\runpy.py", line 197, in _run_module_as_main
          return _run_code(code, main_globals, None,
        File "C:\Users\User\anaconda\lib\runpy.py", line 87, in _run_code
          exec(code, run_globals)
        File "C:\Users\User\anaconda\lib\site-packages\ipykernel_launcher.py", line 16, in <module>
          app.launch_new_instance()
        File "C:\Users\User\anaconda\lib\site-packages\traitlets\config\application.py", line 846, in launch_instance
          app.start()
        File "C:\Users\User\anaconda\lib\site-packages\ipykernel\kernelapp.py", line 677, in start
          self.io_loop.start()
        File "C:\Users\User\anaconda\lib\site-packages\tornado\platform\asyncio.py", line 199, in start
          self.asyncio_loop.run_forever()
        File "C:\Users\User\anaconda\lib\asyncio\base_events.py", line 596, in run_forever
          self._run_once()
        File "C:\Users\User\anaconda\lib\asyncio\base_events.py", line 1890, in _run_once
          handle._run()
        File "C:\Users\User\anaconda\lib\asyncio\events.py", line 80, in _run
          self._context.run(self._callback, *self._args)
        File "C:\Users\User\anaconda\lib\site-packages\ipykernel\kernelbase.py", line 457, in dispatch_queue
          await self.process_one()
        File "C:\Users\User\anaconda\lib\site-packages\ipykernel\kernelbase.py", line 446, in process_one
          await dispatch(*args)
        File "C:\Users\User\anaconda\lib\site-packages\ipykernel\kernelbase.py", line 353, in dispatch_shell
          await result
        File "C:\Users\User\anaconda\lib\site-packages\ipykernel\kernelbase.py", line 648, in execute_request
          reply_content = await reply_content
        File "C:\Users\User\anaconda\lib\site-packages\ipykernel\ipkernel.py", line 353, in do_execute
          res = shell.run_cell(code, store_history=store_history, silent=silent)
        File "C:\Users\User\anaconda\lib\site-packages\ipykernel\zmqshell.py", line 533, in run_cell
          return super(ZMQInteractiveShell, self).run_cell(*args, **kwargs)
        File "C:\Users\User\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 2901, in run_cell
          result = self._run_cell(
        File "C:\Users\User\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 2947, in _run_cell
          return runner(coro)
        File "C:\Users\User\anaconda\lib\site-packages\IPython\core\async_helpers.py", line 68, in _pseudo_sync_runner
          coro.send(None)
        File "C:\Users\User\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 3172, in run_cell_async
          has_raised = await self.run_ast_nodes(code_ast.body, cell_name,
        File "C:\Users\User\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 3364, in run_ast_nodes
          if (await self.run_code(code, result,  async_=asy)):
        File "C:\Users\User\anaconda\lib\site-packages\IPython\core\interactiveshell.py", line 3444, in run_code
          exec(code_obj, self.user_global_ns, self.user_ns)
        File "C:\Users\User\AppData\Local\Temp/ipykernel_15308/2652462471.py", line 49, in <module>
          model.fit(X_train_padded, y_train, epochs=10, batch_size=32, validation_split=0.2)
        File "C:\Users\User\anaconda\lib\site-packages\keras\utils\traceback_utils.py", line 64, in error_handler
          return fn(*args, **kwargs)
        File "C:\Users\User\anaconda\lib\site-packages\keras\engine\training.py", line 1409, in fit
          tmp_logs = self.train_function(iterator)
        File "C:\Users\User\anaconda\lib\site-packages\keras\engine\training.py", line 1051, in train_function
          return step_function(self, iterator)
        File "C:\Users\User\anaconda\lib\site-packages\keras\engine\training.py", line 1040, in step_function
          outputs = model.distribute_strategy.run(run_step, args=(data,))
        File "C:\Users\User\anaconda\lib\site-packages\keras\engine\training.py", line 1030, in run_step
          outputs = model.train_step(data)
        File "C:\Users\User\anaconda\lib\site-packages\keras\engine\training.py", line 890, in train_step
          loss = self.compute_loss(x, y, y_pred, sample_weight)
        File "C:\Users\User\anaconda\lib\site-packages\keras\engine\training.py", line 948, in compute_loss
          return self.compiled_loss(
        File "C:\Users\User\anaconda\lib\site-packages\keras\engine\compile_utils.py", line 201, in __call__
          loss_value = loss_obj(y_t, y_p, sample_weight=sw)
        File "C:\Users\User\anaconda\lib\site-packages\keras\losses.py", line 139, in __call__
          losses = call_fn(y_true, y_pred)
        File "C:\Users\User\anaconda\lib\site-packages\keras\losses.py", line 243, in call
          return ag_fn(y_true, y_pred, **self._fn_kwargs)
        File "C:\Users\User\anaconda\lib\site-packages\keras\losses.py", line 1920, in binary_crossentropy
          y_true = tf.cast(y_true, y_pred.dtype)
    Node: 'binary_crossentropy/Cast'
    Cast string to float is not supported
    	 [[{{node binary_crossentropy/Cast}}]] [Op:__inference_train_function_9785]

    merci d'avance pour une ombre d'explication

  2. #2
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 619
    Points : 188 594
    Points
    188 594
    Par défaut


    Voici l'erreur : Cast string to float is not supported. Un problème dans tes données ? Ou une étape de conversion manquante ?
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    421
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 421
    Points : 0
    Points
    0
    Par défaut
    bonjour le bug est dans le fit et ytrain qui est j'ai l'impression de type csv mais a quel niveau du code dois je agir es ce que c'est dans la lecture du fichier spambase
    merci d'avance pour votre aide

Discussions similaires

  1. Explication des variables dans un boucle
    Par ragheb_dev dans le forum C
    Réponses: 2
    Dernier message: 03/03/2017, 14h07
  2. Réponses: 2
    Dernier message: 18/02/2014, 14h13
  3. Réponses: 0
    Dernier message: 13/05/2013, 14h23
  4. LinEst avec des variables de dimension différentes
    Par koffmann dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 22/05/2012, 12h06
  5. Réponses: 10
    Dernier message: 27/09/2011, 13h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo