在尝试通过Python API构建H2O随机森林时,我遇到了一个片状错误。 (我已经保存了空的.err文件和.out文件,以防有人想查看它。)
"java.lang.AssertionError: Can't unlock: Not locked!"
在我试过的三次中有两次。一次失败显示进展率高达86%,另一次失败率高达90%。在第三次尝试中,我一路走来。我在第一次失败后重新启动了H2O服务器。
在x86_64上运行x86_64 x86_64 GNU / Linux,Linux 4.4.0-101-generic(Ubuntu),H2O 3.18.0.4,Python 2.7.12
对于大约86个类和137个数字输入特征的多名义分类器,大约有33K训练集示例。以前,我们没有问题(除了一些超时问题)系统使用类似的数据使用更旧版本的H2O。
这是运行我的程序到stdout的输出。
Attempting to start a local H2O server...
Java Version: java version "1.8.0_144"; Java(TM) SE Runtime Environment (build 1.8.0_144-b01); Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
Starting server from /home/ubuntu/django-env/lib/python2.7/site-packages/h2o/backend/bin/h2o.jar
Ice root: /tmp/tmpViqbs4
JVM stdout: /tmp/tmpViqbs4/h2o_ubuntu_started_from_python.out
JVM stderr: /tmp/tmpViqbs4/h2o_ubuntu_started_from_python.err
Server is running at http://127.0.0.1:54321
Connecting to H2O server at http://127.0.0.1:54321... successful.
-------------------------- ----------------------------------------
H2O cluster uptime: 08 secs
H2O cluster timezone: Etc/UTC
H2O data parsing timezone: UTC
H2O cluster version: 3.18.0.4
H2O cluster version age: 24 days
H2O cluster name: H2O_from_python_ubuntu_x4p9wv
H2O cluster total nodes: 1
H2O cluster free memory: 6.545 Gb
H2O cluster total cores: 8
H2O cluster allowed cores: 8
H2O cluster status: accepting new members, healthy
H2O connection url: http://127.0.0.1:54321
H2O connection proxy:
H2O internal security: False
H2O API Extensions: XGBoost, Algos, AutoML, Core V3, Core V4
Python version: 2.7.12 final
-------------------------- ----------------------------------------
[省略的东西]
Parse progress: |█████████████████████████████████████████████████████████████████████████████| 100%
Running trainh2o()..
drf Model Build progress: |█████████████████████████████████████████████████████████▉ (failed)| 86%
Traceback (most recent call last):
File "/home/ubuntu/XXX/webapp/XXX/classify_unified/buildpc.py", line 130, in <module>
print("\nTrain Error: {}".format(pc.train()))
File "/home/ubuntu/XXX/webapp/XXX/classify_unified/ProvisionClassifier.py", line 2130, in train
self._trainh2o()
File "/home/ubuntu/XXX/webapp/XXX/classify_unified/ProvisionClassifier.py", line 2090, in _trainh2o
training_frame=self._combo_h2odf)
File "/home/ubuntu/django-env/local/lib/python2.7/site-packages/h2o/estimators/estimator_base.py", line 232, in train
model.poll(verbose_model_scoring_history=verbose)
File "/home/ubuntu/django-env/local/lib/python2.7/site-packages/h2o/job.py", line 77, in poll
"\n{}".format(self.job_key, self.exception, self.job["stacktrace"]))
EnvironmentError: Job with key $03017f00000132d4ffffffff$_8f9d9edcff82420eefea1d6cff0f4396 failed with an exception: java.lang.AssertionError: Can't unlock: Not locked!
stacktrace:
java.lang.AssertionError: Can't unlock: Not locked!
at water.Lockable$Unlock.atomic(Lockable.java:197)
at water.Lockable$Unlock.atomic(Lockable.java:187)
at water.TAtomic.atomic(TAtomic.java:17)
at water.Atomic.compute2(Atomic.java:56)
at water.Atomic.fork(Atomic.java:39)
at water.Atomic.invoke(Atomic.java:31)
at water.Lockable.unlock(Lockable.java:181)
at water.Lockable.unlock(Lockable.java:176)
at hex.tree.SharedTree$Driver.computeImpl(SharedTree.java:358)
at hex.ModelBuilder$Driver.compute2(ModelBuilder.java:206)
at water.H2O$H2OCountedCompleter.compute(H2O.java:1263)
at jsr166y.CountedCompleter.exec(CountedCompleter.java:468)
at jsr166y.ForkJoinTask.doExec(ForkJoinTask.java:263)
at jsr166y.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:974)
at jsr166y.ForkJoinPool.runWorker(ForkJoinPool.java:1477)
at jsr166y.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:104)
H2O session _sid_9f4c closed.