2017-06-08 2 views
1

Der Versuch, Apple CoreML-Tools zu verwenden, um ein einfaches Modell mit Keras zu konvertieren. Ich verwende Python 2.7 diese Codezeile ausgeführt wird:Fehler beim Importieren von Coremltools - Name kann nicht importiert werden ParametricSoftPlus

import coremltools

den folgenden Fehler geben:

von keras.layers.advanced_activations ParametricSoftPlus importieren

Import: nicht Name ParametricSoftPlus

importieren

Hinweis: Ich habe kein Problem beim Importieren von ParametricSoftPlus in mein Skript:

from keras.layers.advanced_activations import ParametricSoftPlus

Hinweis # 2: Ich öffnete die Datei, die den Fehler auslöst, und wenn ich die gleiche Anweisung oben verwende, schlägt es mit dem gleichen Fehler fehl.

Zuerst dachte ich, es könnte eine Erlaubnis Problem sein, aber wenn es dann keine Skriptdatei der Lage sein, ParametricSoftPlus keras Zugriff

Hinweis # 3: ich diese Zeile Code in der Quelldatei umgehen kann und dann gibt es mir den gleichen Fehler für SReLU.

Jede Hilfe wird sehr geschätzt, danke im Voraus.

+1

Welche Version von Keras verwenden Sie? Die Coremltools erfordern derzeit Keras 1.2.2. Wenn Sie eine andere Version haben (zB 2.0), wird es nicht funktionieren. –

+0

Ich benutze Keras 1.2.2 – user1988824

Antwort

0

Es stellte sich heraus, dass ich alle meine Python-Bibliotheken deinstallierte und das absolute Minimum (ja, Keras ist v.1.2.2) neu installierte und es immer noch nicht funktionierte.

ich neu installierte auch pip: pip install --upgrade --force-reinstall

Dann habe ich beschlossen, aufs Ganze zu gehen und entfernen Python von meinem System und wieder neu installiert. Das hat mein Problem gelöst. Jetzt ist dies keine Lösung, dies ist nur eine Arbeit und eine große Warnung ... Sie müssen Python direkt nach dem Entfernen neu installieren, sonst Ihr MAC OS wird nicht funktionieren, müssen Sie Ihr Betriebssystem neu installieren.

Schritte können in vielen anderen SO Einträge gefunden werden: in

Entfernen Sie die Python 2.7 Framework

sudo rm -rf /Library/Frameworks/Python.framework/Versions/2.7 

Entfernen Sie die Python 2.7 applications

sudo rm -rf "/Applications/Python 2.7" 

Entfernen Sie die symbolischen Links/usr/local/bin, die auf dieses Python zeigt version see ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/2.7' und dann führen Sie die folgenden Befehl aufgrund der alle Links zu entfernen:

cd /usr/local/bin/ 
ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/2.7' | awk '{print $9}' | tr -d @ | xargs rm 

Falls erforderlich, bearbeiten Sie Ihre Shell-Profildatei (en) /Library/Frameworks/Python.framework/Versions/2.7 zu PATH-Datei zu entfernen hinzufügen. Je nachdem, welche Shell Sie verwenden, wurden möglicherweise eine der folgenden Dateien geändert: ~/.bash_login, ~/.bash_profile, ~/.cshrc, ~/.profile, ~/.tcshrc und/oder ~/.zprofile.

Jetzt können wir Python installieren 2.7:

$ brew install python 

Hope this jemand hilft.

+0

Es ist viel einfacher (und sicherer), einen virtualenv zu erstellen, der auf die von Apple installierte Version von Python verweist. Dann können Sie alle Ihre Abhängigkeiten in diesem virtualenv installieren. (Machen Sie das virtualenv indem Sie schreiben: virtualenv -p /usr/bin/python2.7 myenv) –

Verwandte Themen