Keras not working

Dear all,

I wanted to use Keras component on KNIME and I followed what suggested here: How to Set Up Your Python Extensions | KNIME

However even if I installed Miniconda 3 (Python 3.9.12), all KNIME extensions and set up them I have this error if I run the Kera Learner

ERROR Keras Network Learner 3:32 Execute failed: An error occurred while creating the Keras network from its layer specifications. Details:
Deep learning Python back end installation tests failed.
Cause: Python library ‘tensorflow’ or one of its dependencies is missing.
Python library ‘keras’ or one of its dependencies is missing.
In case Python packages are missing: you can create a new Python Conda environment that contains all packages required by the KNIME deep learning integrations in the “KNIME Deep Learning” Preferences.

If I perform conda list -n py3_knime I saw that there wasn’t neither keras neither tensorflow. I was able to install package keras using

conda install --name py3_knime keras

but I faced an error with

conda install --name py3_knime tensorflow-mkl

Shouldn’t KNIME install them when a new environment is created? Is there any suitable log to solve it?

@giuliovialetto I would suggest to install the necessary environment thru conda:

You can use KNIME to extract the KNIME yaml files for conda :slight_smile:

Or you could try the environment propagation at these examples (https://kni.me/w/8pLvXVGL1hj7lXDh, Train a simple Multilayer Perceptron using TensorFlow 2 – KNIME Community Hub)

2 Likes

Thank you! I tried both of the workflow and I was unable to work with both of them.

This is the log


*** Welcome to KNIME Analytics Platform v4.6.3.v202209271016 ***
*** Copyright by KNIME AG, Zurich, Switzerland ***


Log file is located at: C:\Users\Giulio Vialetto\knime-workspace.metadata\knime\knime.log
WARN Keras Input Layer 3:152 Errors overwriting node settings with flow variables: Unknown variable “Number (double)”
WARN CheckUpdateMetaNodeLinkAction Unable to check for update on node “collect meta data 3:1033”: Can’t read metanode/template directory C:\Users\Giulio Vialetto\knime-workspace\Test Giulio\Example\kn_deeplearn_100_keras_basic..\metanodes\collect meta data
ERROR Table Reader 3:183 Execute failed: The specified file …/data/deep_009_validate.table does not exist.
ERROR Table Reader 3:183 Execute failed: The specified file …/data/deep_009_validate.table does not exist.
ERROR Table Reader 3:182 Execute failed: The specified file …/data/deep_005_test.table does not exist.
ERROR Table Reader 3:38 Execute failed: The specified file …/data/deep_001_training.table does not exist.
WARN Conda Environment Propagation 3:1037:0:1040 ==> WARNING: A newer version of conda exists. <==
WARN Conda Environment Propagation 3:1037:0:1040 current version: 4.12.0
WARN Conda Environment Propagation 3:1037:0:1040 latest version: 22.9.0
WARN Conda Environment Propagation 3:1037:0:1040 Please update conda by running
WARN Conda Environment Propagation 3:1037:0:1040 $ conda update -n base -c defaults conda
WARN Conda Environment Propagation 3:0:0:90 Creating the environment failed. If an incomplete environment has been created, it will be removed and the original environment, if any, will be recovered.
ERROR Conda Environment Propagation 3:0:0:90 Execute failed: Failed to resolve the following list of packages.
Please make sure these packages are available for the local platform or exclude them from the creation process.

  • conda-forge::ldid=2.1.2
  • conda-forge::libnghttp2=1.47.0
  • pkgs/main::libclang-cpp12=12.0.0
  • conda-forge::tktable=2.10
  • pkgs/main::clangxx_osx-64=12.0.0
  • pkgs/main::ld64_osx-64=530
  • conda-forge::libgfortran5=11.3.0
  • pkgs/main::cctools_osx-64=949.0.1
  • conda-forge::gfortran_impl_osx-64=9.3.0
  • pkgs/main::clang_osx-64=12.0.0
  • pkgs/main::tapi=1000.10.8
  • conda-forge::gfortran_osx-64=9.3.0
    WARN Conda Environment Propagation 3:1035 Creating the environment failed. If an incomplete environment has been created, it will be removed and the original environment, if any, will be recovered.
    ERROR Conda Environment Propagation 3:1035 Execute failed: Failed to resolve the following list of packages.
    Please make sure these packages are available for the local platform or exclude them from the creation process.
  • conda-forge::vs2017_win-64==19.16.27038=h2e3bad8_2
    ERROR Table Reader 3:182 Execute failed: The specified file …/data/deep_005_test.table does not exist.
    ERROR Table Reader 3:38 Execute failed: The specified file …/data/deep_001_training.table does not exist.
    ERROR Table Reader 3:183 Execute failed: The specified file …/data/deep_009_validate.table does not exist.
    WARN Conda Environment Propagation 3:0:0:90 Creating the environment failed. If an incomplete environment has been created, it will be removed and the original environment, if any, will be recovered.
    ERROR Conda Environment Propagation 3:0:0:90 Execute failed: Failed to resolve the following list of packages.
    Please make sure these packages are available for the local platform or exclude them from the creation process.
  • conda-forge::ldid=2.1.2
  • pkgs/main::tapi=1000.10.8
  • conda-forge::libgfortran5=11.3.0
  • pkgs/main::ld64_osx-64=530
  • pkgs/main::clangxx_osx-64=12.0.0
  • conda-forge::libnghttp2=1.47.0
  • pkgs/main::cctools_osx-64=949.0.1
  • conda-forge::gfortran_osx-64=9.3.0
  • conda-forge::tktable=2.10
  • pkgs/main::libclang-cpp12=12.0.0
  • conda-forge::gfortran_impl_osx-64=9.3.0
  • pkgs/main::clang_osx-64=12.0.0
    WARN Conda Environment Propagation 3:1035 Creating the environment failed. If an incomplete environment has been created, it will be removed and the original environment, if any, will be recovered.
    ERROR Conda Environment Propagation 3:1035 Execute failed: Failed to resolve the following list of packages.
    Please make sure these packages are available for the local platform or exclude them from the creation process.
  • conda-forge::vs2017_win-64==19.16.27038=h2e3bad8_2

@giuliovialetto this very much looks like the Python configuration is not up to date. I am planning on updating the examples and writing a proper article about the setup of the KNIME deep learning environment which still is somewhat confusing sometimes and constantly evolving it seems

What I would suggest in the meantime is reading about KNIME and Python and conda in my article. Then I would recommend resetting the mentioned workflows and see if the environment propagation would build the correct python environment (make sure to use the one for your operating system):

A condensed version about what to do to setup KNIME and deep learning is here though it is not a fully articulated set of instructions (working on that):

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.