The DeprecationWarning on cross_validation |
C:\Users\Thimira\Anaconda3\envs\tensorflow12\lib\site-packages\sklearn\cross_val
idation.py:44: DeprecationWarning: This module was deprecated in version 0.18 in
favor of the model_selection module into which all the refactored classes and f
unctions are moved. Also note that the interface of the new CV iterators are dif
ferent from that of this module. This module will be removed in 0.20.
"This module will be removed in 0.20.", DeprecationWarning)
So, how to solve this?
The first thing to note is that it's a 'deprecation warning'. It means that the cross_validation has been deprecated - that module is being considered for removal in a future release, and you are advised against using it. As the message mentions, the module will be removed in Scikit-learn v0.20. So, technically, you can ignore this warning and keep using the module until 0.20 is released and you upgrade to it.
Looking at the message again, it says to consider using the model_selection module instead. If you look at the documentation for model_selection module, you can see that it also has a train_test_split() function, which is identical (in parameters) to the one in the cross_validation module.
So, what you basically need to do is to change this,
from sklearn.cross_validation import train_test_split
from sklearn import datasets
import numpy as np
...
...
(trainData, testData, trainLabels, testLabels) = train_test_split(
data / 255.0, dataset.target.astype("int"), test_size=0.33)
...
in to this,
from sklearn.model_selection import train_test_split
from sklearn import datasets
import numpy as np
...
...
(trainData, testData, trainLabels, testLabels) = train_test_split(
data / 255.0, dataset.target.astype("int"), test_size=0.33)
...
Notice that only the import has changed (from sklearn.model_selection import train_test_split), the usage of the function hasn't changed.
Related links:
http://scikit-learn.org/stable/modules/generated/sklearn.model_selection.train_test_split.html
Build Deeper: Deep Learning Beginners' Guide is the ultimate guide for anyone taking their first step into Deep Learning.
Get your copy now!
Thanks. This helped. Changing the library also helped to fix the error saying 'Expected 2D array, found 1D'
ReplyDeleteThanks Sir, It works.
ReplyDeleteThanks ! It works quite well.
ReplyDeleteBtw it seems that grid_search has been, also, replaced with model_selection.