Windows 10 に FedML をインストールする

最近、教師はフェデレーテッド ラーニング プラットフォームを推奨しました。これは、He Chaoyang のチームが開発した FedML です。
FedML は
過去 3 日間にわたってこのプラットフォームのインストールに取り組んでおり、発生した問題を記録しました。
私は Windows 10 です。 condaの公式手順に従ってconda を使用してFedML をインストールします
。最後に、テスト コードを実行して、インストールが完了したことを確認します。

import fedml

if __name__ == "__main__":
    fedml.run_simulation()

初日の手順通りにインストールしたところ、pycharmでは使えないpython3.1がインストールされていたため、cmdのpipでpython3.7を再インストールして実行したところ、numpyのバージョンが間違っていたことがわかりました。 , そこで、numpy のバージョンを 1.21 に変更し、その後、torch、matplotlib、torchvision、その他のパッケージのバージョンに問題が発生しました。テストコードを実行すると、次のようなエラーが報告されます。

トーチのバージョンが間違っていますpsutil パッケージのバージョンが間違っています
翌日、丸一日かけて再度環境を構築し、各種パッケージのバージョンを調整し、最終的には調整後に実行できるようになりましたが、それでも numpy に関する UserWarning が報告されました。これは、おそらく繰り返し呼び出していたことを意味します。プログラム内で Numpy が 2 回発生しました。この問題を解決したいだけです。Numpy のバージョンに変更したいです (この動作がその時点でどの程度の影響を与えるかわかりません)。理由はわかりませんが、指定されたバージョンpip でインストールした Numpy がインストールされていないため、Numpy を再度アンインストールし、アンインストールに失敗したり (途中でパッケージが削除されたり破損したりする可能性があります)、さらに再インストールを繰り返し、パッケージを更新し続けるプロセスに陥ってしまいました。 FedML を直接アンインストールして、再度インストールすることにしました。

3日目に再ダウンロードしました。驚くべきことに、手順は同じですが、今回はPython3.6がインストールされているため、バージョンの不一致はなくなりました。3日目は比較的スムーズで、基本的には自動的にインストールされます, とありますが、パッケージのインストールに失敗しますので、この時は対応するwhlファイルをダウンロードしてpipでインストールします。私を困惑させた最後のバグはこれでした:
ここに画像の説明を挿入
私は最初、次のエラーに注目しました: Microsoft Visual C++ 14.0 が必要です。「Microsoft Visual C++ Build Tools」で入手してください: http://landinghub.visualstudio.com/visual-cpp -build-ツール、URL 404 をクリックして、このソフトウェアをどこでもダウンロードしましたが、最終的にインストールを見つけたとき、インストール パッケージが破損していることが示されました。さまざまなチュートリアルを見に行きましたが、結果は役に立ちませんでした。後でこの投稿を見ましたMicrosoft Visual C++ 14.0 には、必要なソリューションとインストール パッケージの破損に関するソリューションが必要です。最初の解決策を試しましたが、うまくいきませんでした。2 番目の解決策では、一部のパッケージのダウンロードにまだ問題があることがわかりました。戻ってエラーを確認すると、次のことがわかりました。gensim パッケージが失敗した可能性があることに突然気づきました。
ここに画像の説明を挿入
. 対応する whl ファイルをダウンロードしに行ったところ、案の定、問題は解決されました。
テスト結果:
ここに画像の説明を挿入
この時点でインストールは終了です。

概要:
インストール プロセス中に 3 回試しました。1 回目は torch パッケージのエラーで行き詰まり、2 回目は userwarring の解決で行き詰まって環境が台無しになり、3 回目は成功しました。最初は、パッケージのバージョンが一致していないだけのエラーだとは気づきませんでした。最初のエラーは numpy でした。解決策をあちこち探しました。ほとんどの解決策はコードの変更を必要としました。無意識のうちに何かが間違っていると感じましたFedML が提供するコードは完全であるべきだと常々感じていました。バージョンの問題というプランを見たので試してみたら解決しました。その後の問題はすべてパッケージのバージョンまたはインストールされていないことに関するもので、報告されるエラーも異なりましたが、最初にエラーが発生したと思ったのはバージョンの問題ではありませんでした。バージョン対応がいかに重要かを初めて知りました。

添付 (現在正常に実行されているさまざまなパッケージのバージョン):
ここに画像の説明を挿入
ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/Bad_foxS/article/details/126541782