web-dev-qa-db-fra.com

FutureWarning: La conversion du second argument de issubdtype de `float` en` np.floating` est obsolète

Après avoir mis à jour mes Numpy et Tensorflow, je reçois ce genre d'avertissements. J'avais déjà essayé ceux-ci , mais rien ne fonctionne, chaque suggestion sera appréciée.

FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.
  from ._conv import register_converters as _register_converters
2018-01-19 17:11:38.695932: I C:\tf_jenkins\home\workspace\rel-win\M\windows\PY\36\tensorflow\core\platform\cpu_feature_guard.cc:137] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX AVX2
46
Shubham Sharma

J'avais essayé avec ceux-ci et cela avait résolu le même problème pour moi, il suffit de les mettre en haut de votre code

import os
os.environ["TF_CPP_MIN_LOG_LEVEL"]="3"
13
raja

Cela peut être ou ne pas être votre cas, mais le même avertissement est également extrait du package h5py:

/home/user/bin/conda3/lib/python3.6/site-packages/h5py/__init__.py:34: FutureWarning: La conversion du deuxième argument de issubdtype de float en np.floating est obsolète. À l'avenir, il sera traité comme np.float64 == np.dtype(float).type. from ._conv importez register_converters en tant que _register_converters

Pour ceux qui viennent ici avec ce problème , il s’agit d’un problème connu de h5py , introduit avec numpy 1.14 . Comme indiqué par les devs:

Vous pouvez ignorer l'avertissement, cela ne posera pas de problème pour le moment, mais vous devriez passer à la prochaine version de h5py lorsqu'elle sera disponible.

... donc c'est inoffensif. Le correctif vient d'être fusionné à maîtriser. Mais jusqu'à ce que la mise à jour soit publiée, la solution consiste à rétrograder numpy vers une version précédente:

pip install numpy==1.13.0

Mise à jour : h5pya publié la compilation RC avec le correctif. La commande suivante devrait le faire:

pip install h5py==2.8.0rc1

Mise à jour (FINAL) : une version complète est à présent disponible. Donc, vous pouvez simplement lancer:

pip install --upgrade h5py
64
Maxim

Vous pouvez mettre à niveau h5py

pip install --upgrade h5py
24
Claude COULOMBE

Vous pouvez également utiliser le code suivant pour effacer les lignes d'avertissement du terminal en utilisant les lignes suivantes au début de votre code.

Code avec avertissement:

import numpy as np, sys, tensorflow as tf print('\nStart of Code...\n')

Sortie:

FutureWarning: Conversion of the second argument of issubdtype from float to np.floating is deprecated. In future, it will be treated as np.float64 == np.dtype(float).type. from ._conv import register_converters as _register_converters

Start of Code...

Code avec avertissement effacé:

import numpy as np, sys, tensorflow as tf for i in range(3): # Add this for loop. sys.stdout.write('\033[F') # Back to previous line. sys.stdout.write('\033[K') # Clear line.

print('\nStart of Code...\n')

Sortie:

Start of Code...

4
Arindam

Cela est dû à un conflit de version entre h5py et numpy. Tout ce que vous avez à faire est de dégrader votre version de Numpy en suivant la commande ci-dessous:

pip install numpy==1.13.0
4
Taylor Mei

Rien de ce qui précède n'a fonctionné dans mon cas et je ne souhaitais rétrograder aucun paquet.

Il existe une solution simple sur Github , supprimez simplement l'avertissement:

import warnings
with warnings.catch_warnings():
    warnings.filterwarnings("ignore",category=FutureWarning)
    import numpy as np
    import tensorflow as tf
    import h5py as h5py

puis importez le package qui provoque l'erreur (numpy, tensorflow, h5py) dans la portée de l'instruction with

3
dopexxx

Auparavant, j'avais la même erreur, je venais d'utiliser le module warnings (). J'avais utilisé ce code après toutes vos importations,

import warnings
warnings.filterwarnings('ignore', '.*do not.*',)
2
Harshit Gyan

Mettez à niveau scipy à partir de cet avertissement. Pour ce faire, vous pouvez utiliser pip pour mettre à niveau scipy.

**Sudo pip install --upgrade scipy**
2

J'ai résolu ce problème en installant/réinstallant ipykernel:

pip3 install --upgrade ipykernel

Si vous avez différents pip, bien sûr nous

1
Arvin Amir