私は単純な Python コード (Kaggle の数字認識演習) を持っています。これは、コマンド ラインから実行すると問題なく動作します (Windows 8.1 64 ビットと Enthought Canopy 1.4.1 を使用しています)。
import numpy
from sklearn.ensemble import RandomForestClassifier
from sklearn import cross_validation
print "\nreading training data..."
dataFilename = "D:\\Kaggle\\Digit Recognizer\\Data\\train.csv"
dataFile = open(dataFilename, 'r')
data = numpy.array([map(int, line.replace('\n', '').split(',')) for line in dataFile.readlines()[1:]])
dataFile.close()
print "\nseparating training data to features and targets..."
# use all data to train the algorithm
trainingSet_Y = data[:, 0]
trainingSet_X = data[:, 1:]
print "\ntraining a classifier..."
classify_RF = RandomForestClassifier(n_estimators = 100, n_jobs = -1)
classify_RF.fit(trainingSet_X, trainingSet_Y)
print "\ncalculating cross-validation score..."
scores = cross_validation.cross_val_score(classify_RF, trainingSet_X, trainingSet_Y, cv = 5, n_jobs = -1)
print("Accuracy: %0.2f (+/- %0.2f)" % (scores.mean(), numpy.std(scores) * 2))
すべての開発を Visual Studio に移行することにしたので、Python Tools for Visual Studio 2.1 をインストールして、VS Community 2013 内から直接コーディング/実行を開始しました。 (注: インストールの順序: (1) Canopy、(2) VS2013、および(3) PTVS.)
ただし、VS2013 内から実行すると、同じコードが非常に奇妙な動作をします。クロス検証ステップまで実行され、コードのループを開始してすべてを何度も再実行し、途中で次のようにエラー メッセージを吐き出すことがあります。
ご覧のとおり、クロス検証ステップに到達すると、最初からやり直し、コードをランダムに調べて、コードの特定の部分のみを実行します!
何か案は?