小编Man*_*mas的帖子

scikit-learn GridSearchCV 中的 sample_weight 参数形状错误

将 sample_weight 参数传递给 GridSearchCV 会由于形状不正确而引发错误。我怀疑交叉验证无法根据数据集相应地处理 sample_weights 的拆分。

第一部分:使用 sample_weight 作为模型参数效果很好

让我们考虑一个简单的例子,首先没有 GridSearch:

import pandas as pd
import numpy as np
from keras.models import Sequential
from keras.layers import Dense, Activation
from keras.wrappers.scikit_learn import KerasRegressor
from sklearn.model_selection import GridSearchCV
import matplotlib.pyplot as plt


dataURL = 'https://raw.githubusercontent.com/mcasl/PAELLA/master/data/sinusoidal_data.csv'

x = pd.read_csv(dataURL, usecols=["x"]).x
y = pd.read_csv(dataURL, usecols=["y"]).y
occurrences = pd.read_csv(dataURL, usecols=["Occurrences"]).Occurrences
my_sample_weights = (1 - occurrences/10000)**3
Run Code Online (Sandbox Code Playgroud)

my_sample_weights包含我分配给 x, y 中每个观察值的重要性,如下图所示。正弦曲线的点比形成背景噪声的点获得更高的权重。

plt.scatter(x, y, c=my_sample_weights>0.9, cmap="cool")
Run Code Online (Sandbox Code Playgroud)

与 my_sample_weights 相关的颜色编码数据集

让我们训练一个神经网络,首先不使用包含在 中的信息my_sample_weights

def make_model(number_of_hidden_neurons=1):
    model = Sequential()
    model.add(Dense(number_of_hidden_neurons, …
Run Code Online (Sandbox Code Playgroud)

scikit-learn keras grid-search

5
推荐指数
1
解决办法
1036
查看次数

标签 统计

grid-search ×1

keras ×1

scikit-learn ×1