【问题标题】:ValueError when calling activity_classifier.create(...) method调用 activity_classifier.create(...) 方法时出现 ValueError
【发布时间】:2022-07-21 19:32:07
【问题描述】:

我正在使用 TuriCreate 创建模型来对人类活动进行分类,但是当我尝试运行 activity_classifier.create(...) 方法时出现错误。


代码

这就是我所做的:

  1. 加载所有数据:
train_sf = tc.SFrame("data/cleaned_train_sframe")
valid_sf = tc.SFrame("data/cleaned_valid_sframe")
test_sf = tc.SFrame("data/cleaned_test_sframe")
  1. 将 SFrame 随机分成两个较小的 SFrame:
train, valid = tc.activity_classifier.util.random_split_by_session(train_sf, session_id='sessionId', fraction=0.9)
  1. 尝试构建和训练我的模型:
model = tc.activity_classifier.create(dataset=train_sf,
                                      session_id='sessionId',
                                      target='activity',
                                      features=["rotX", "rotY", "rotZ", "accelX", "accelY", "accelZ"],
                                      prediction_window=50,
                                      validation_set=valid_sf,
                                      max_iterations=20)

错误

第三步引发如下错误:

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
Input In [34], in <cell line: 1>()
----> 1 model = tc.activity_classifier.create(dataset=train_sf,
      2                                       session_id='sessionId',
      3                                       target='activity',
      4                                       features=["rotX", "rotY", "rotZ", "accelX", "accelY", "accelZ"],
      5                                       prediction_window=50,
      6                                       validation_set=valid_sf,
      7                                       max_iterations=20)

File ~/Desktop/PFG/lib/python3.8/site-packages/turicreate/toolkits/activity_classifier/_activity_classifier.py:200, in create(dataset, session_id, target, features, prediction_window, validation_set, max_iterations, batch_size, verbose, random_seed)
    197 options["_show_loss"] = False
    198 options["random_seed"] = random_seed
--> 200 model.train(dataset, target, session_id, validation_set, options)
    201 return ActivityClassifier(model_proxy=model, name=name)

File ~/Desktop/PFG/lib/python3.8/site-packages/turicreate/extensions.py:305, in _ToolkitClass.__getattr__.<locals>.<lambda>(*args, **kwargs)
    302     return _wrap_function_return(self._tkclass.get_property(name))
    303 elif name in self._functions:
    304     # is it a function?
--> 305     ret = lambda *args, **kwargs: self.__run_class_function(name, args, kwargs)
    306     ret.__doc__ = (
    307         "Name: " + name + "\nParameters: " + str(self._functions[name]) + "\n"
    308     )
    309     try:

File ~/Desktop/PFG/lib/python3.8/site-packages/turicreate/extensions.py:290, in _ToolkitClass.__run_class_function(self, fnname, args, kwargs)
    288 # unwrap it
    289 try:
--> 290     ret = self._tkclass.call_function(fnname, argument_dict)
    291 except RuntimeError as exc:
    292     # Expose C++ exceptions using ToolkitError.
    293     raise _ToolkitError(exc)

File cy_model.pyx:35, in turicreate._cython.cy_model.UnityModel.call_function()

File cy_model.pyx:40, in turicreate._cython.cy_model.UnityModel.call_function()

ValueError: stod: no conversion

有谁知道问题出在哪里?

【问题讨论】:

  • 你能解决这个问题吗?我遇到了同样的错误。

标签: python swift machine-learning sframe turi-create


【解决方案1】:

您可以通过将validation_set 设置为None 来解决此问题。

这确实意味着您没有验证,但至少您可以创建模型。

【讨论】:

    猜你喜欢
    • 2020-03-31
    • 2015-11-04
    • 2019-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-14
    相关资源
    最近更新 更多