日々精進

新しく学んだことを書き留めていきます

2021-09-01から1ヶ月間の記事一覧

TensorFlowで学習を実行すると「failed call to cuInit: CUDA_ERROR_NO_DEVICE」エラー

AI

原因はGPUが1つしかないのに export CUDA_VISIBLE_DEVICES='1' が環境変数に設定されていたため。 export CUDA_VISIBLE_DEVICES='0' に変更すると直った。 参考: qiita.com また、問題の切り分けのために、以下を実行してtensorflowからGPUが見えているかを…

Pytorchのtorch.cuda.Stream()を実行するとそれ以降PyCharmのDebugger windowで変数の値が見えなくなる

AI

変数の値を見ようとするとCollecting data...と表示されるだけで値が見えなくて困った。 PyCharmの設定でGevent compatibleをONにすると直った。詳細は以下参照。 stackoverflow.com なぜこれで直るか全然分からないがすごく助かった・・・ただし、このオプ…

pycocotoolsを使うと「ValueError: numpy.ndarray size changed, may indicate binary incompatibility. Expected 88 from C header, got 80 from PyObject」エラー

AI

pycocotoolsが依存しているnumpyのバージョンが1.20以上だが1.19以下がインストールされていることが原因。 でもtensorflowが1.19.5に依存していて、1.20以上を入れることができない。。 なのでpycocotoolsのバージョンを2.0.0にダウングレードして回避した…

YOLOXの学習を実行すると「RuntimeError: falseINTERNAL ASSERT FAILED at "../aten/src/ATen/MapAllocator.cpp":300, please report a bug to PyTorch. unable to write to file </torch_4492_0>」エラー

AI

原因はshared memoryの容量が足りないこと。学習環境のdocker composeに以下を追加すると直った。 shm_size: '16gb' 参考: Unable to write to file </torch_18692_1954506624> - #6 by gaily_sun - PyTorch Forums

conda runを実行すると「CommandNotFoundError: No command 'conda run'.」エラー

AI

conda runコマンドは壊れたので4.10.0で削除されたらしい。まじか。。 conda runコマンドがあるバージョンのcondaをインストールして解決した。 参考: github.com

SageMaker PipelinesのStepのOutputに「ClientError: Cannot access S3 key.」と書かれていてもS3にアクセス出来ないことが原因でないことが多い

AI

Pipeline実行がエラーになり、エラーになったStepのOutputを見行くと、以下のメッセージが表示されていた。 This step failed. For more information, view the logs. ClientError: Cannot access S3 key. が、結論としてはS3がエラーの原因ではなかった。上…

SageMaker ProjectのPipelinesタブに自分で作ったPipelineを表示させる

AI

Pipelineのタグを以下のように設定すれば表示される。タグはsagemaker sdkのPipelineクラスのcreate, upsertメソッドの引数で渡せる。 sagemaker:project-name: , sagemaker:project-id: projectとpipelineの紐付け方がわからなかったが、tagで紐付けている…

SageMaker PipelineをCLIから削除する

AI

SageMakerStudioから削除する方法が見付からなかったのでCLIから削除した。 以下のコマンドで削除できる。 aws sagemaker delete-pipeline --pipeline-name pjname 参考: docs.aws.amazon.com

「pycocotools/_mask.pyx ValueError: numpy.ndarray size changed, may indicate binary incompatibility.」エラー

AI

原因はnumpyのバージョンが古いことで、1.20.1以上にすれば直るっぽいが TensorFlowが1.19.5に依存しているのでnumpyのバージョンを上げられない・・ stackoverflow.com しょうがないのでpycocotoolsを使わずアノテーションファイルのparseを独自実装するこ…

SageMakerで学習をしている時のTensorBoardを表示する

AI

Estimatorのinitにtensorboard_output_configという引数があるので、これを設定するとtensorboardのログをS3にアップロードしてくれそうだけど、してくれなかった。。 以下で同じ問題で困っている人がいるけど解決してないっぽい。 stackoverflow.com しょう…

pythonプログラムを実行すると「ImportError: libSM.so.6: cannot open shared object file: No such file or directory」エラー

AI

以下のサイトで紹介されている方法で直りました。 参考: omohikane.com

pythonスクリプトを実行すると「ImportError: libpython3.7m.so.1.0: cannot open shared object file: No such file or directory」エラー

AI

export LD_LIBRARY_PATH=/path/to/conda/envs/your_env/lib で直る 参考: github.com

sshでアクセスすると公開鍵認証してほしいのにパスワードを聞かれる

IT

ssh hostname -vvvTを実行すると以下のログが出る。 debug1: Trying private key: /c/Users/username/.ssh/mykey.pem debug3: sign_and_send_pubkey: RSA SHA256:nQr29X+3juJvSWOedeEVmgKCZgaO169LKCvAZCKkFKM debug3: sign_and_send_pubkey: signing using …

tf.keras.load_modelでモデルを読み込むと「ValueError: Unknown loss function」エラー

AI

学習時にcustom loss functionを使った場合、load時も同じ関数をcustom_objectとして渡してやらないといけないらしい。 ただ、再学習するのではなく推論するためにmodelをloadするのであれば以下のようにcompile=Falseを指定してやればOK。 model = load_mod…

Chromeが重くなった時の対処法

IT

普段はアドレスバーに「chrome://restart」と打って再起動すると軽くなるが、これやってもだめな時があった。 そんなときはタスクトレイの中のChromeアイコンを右クリック→終了を選択してからChromeを起動すると軽くなった。 Chrome重いとかなりストレスフル…

縦横が混在したPDFを一括で印刷する

IT

縦向きと横向きのページが混在しているPDFをChromeで表示して印刷すると、 すべて縦向き、またはすべて横向きで印刷するので一部のページが見きれる・・ なのでまず縦向きのページを印刷して、その後横向きのページを印刷するとか面倒なことをしていた。 Acr…

Kaggle Notebookで起きたエラーの原因分析をしやすくする

AI

手元の環境で実行してもエラーが出ないが、Kaggle Notebookで実行するとエラーになる、ということがあった。 手元とNotebookではライブラリのバージョンが違うのでそのせいだと思うが・・ Notebookではデバッグ実行できないし、原因分析しづらかったのでNote…