我试图“检测”一个系列中速度的突然下降,但我不知道如何捕捉它。详细信息和代码如下:
这是我所拥有的系列片段以及用于生成它的代码:
velocity_df.velocity.car1
Index velocity
200 17.9941
201 17.9941
202 18.4031
203 18.4031
Run Code Online (Sandbox Code Playgroud)
我试图检测从 220 到 230-40 的突然下降,并将其保存为如下所示的系列:
Index velocity
220 14.927
221 14.927
222 14.927
223 14.927
224 14.518
225 14.518
226 16.1538
227 12.2687
228 9.20155
229 6.33885
230 4.49854
Run Code Online (Sandbox Code Playgroud)
我只是想在速度突然下降时捕捉一个大概的范围,以便使用其他功能。
如果我可以添加任何其他信息,请告诉我。谢谢!
我正在尝试使用 Tensorflow/Keras 练习我的机器学习技能,但是我在拟合模型方面遇到了麻烦。让我解释一下我做了什么以及我在哪里。
我正在使用来自 Kaggle 的哥斯达黎加家庭贫困水平预测挑战的数据集
由于我只是想熟悉 Tensorflow 工作流程,因此我通过删除一些包含大量缺失数据的列来清理数据集,然后用它们的平均值填充其他列。所以我的数据集中没有缺失值。
接下来,我make_csv_dataset从 TF中使用 using 加载了新的、清理过的 csv 。
batch_size = 32
train_dataset = tf.data.experimental.make_csv_dataset(
'clean_train.csv',
batch_size,
column_names=column_names,
label_name=label_name,
num_epochs=1)
Run Code Online (Sandbox Code Playgroud)
我设置了一个函数来返回我编译的模型,如下所示:
f1_macro = tfa.metrics.F1Score(num_classes=4, average='macro')
def get_compiled_model():
model = tf.keras.Sequential([
tf.keras.layers.Dense(512, activation=tf.nn.relu, input_shape=(137,)), # input shape required
tf.keras.layers.Dense(256, activation=tf.nn.relu),
tf.keras.layers.Dense(4, activation=tf.nn.softmax)
])
model.compile(optimizer='adam',
loss='binary_crossentropy',
metrics=[f1_macro, 'accuracy'])
return model
Run Code Online (Sandbox Code Playgroud)
model = get_compiled_model()
model.fit(train_dataset, epochs=15)
Run Code Online (Sandbox Code Playgroud)
下面是结果
我的笔记本的链接在这里
我应该提到,我的实现强烈基于 Tensorflow 的 iris 数据演练
谢谢!