背景
ここ2~3年の間、AIのプログラムに手を出したいと思いつつも、トライしては挫け、トライしては挫け…。要するにAI挫折組にとって、プログラム云々よりも「環境を整える」ことが難しいのですよ。おまけに「下手の横好き」で、色んな物に中途半端に手を出してるせいで、PCシステム内が荒れ放題…。そんなだから、すんなり進まないんだよ。。
使用環境
- PC:Win10 ノートパソコン(SSD)
- 開発環境:Anaconda
- 現状:Jupyter Notebookを起動すると"Kernel error"の赤ランプが点灯
↓ 詳細:"FileNotFoundError:[WinError 2] 指定されたファイルが見つかりません。"
《備考》
『なんでJupyter Notebook使わなあかんの?』と思われた方、はい その通り。別に”Jupyter Notebook”にこだわる必要はなくて、別のエディタを使えば良いのだけど、教科書通りにやりたい初心者ごごろです。そのおかげで多少システム内に詳しくなれたかな?
推測と確認
Google先生に聞いてみると同様の問題に直面している方々が少なからずいる模様。明確な解決策まで示されてないけどさ。どうやら”コマンドプロンプト”氏のPython.exeのパス認識と"Jupyter Notebook"氏のパス認識が違っているというのが最有力説です。
確認① "コマンドプロンプト"氏のパス認識
コマンドプロンプトで下記の操作をします。(UserName)>python ’Pythonを起動
***** '~pythonの起動メッセージ~
>>> import sys
>>> sys.executable
'C:\\Users\\(UserName)\\Anaconda3\\pyhon.exe' '←知りたいパス
>>> exit() 'Pythonを終了しておく
確認②:"Jupyter Notebook"氏のパス認識
コマンドプロンプトで下記の操作をします。(UserName)>jupyter kernelspec list
Available kernels:
python3 C:\Users\(UserName)\AppData\Roaming\jupyter\kernels\python3 '←知りたいパス
"Jupyter Notebook"氏の場合は、上記のパス先に"kernel.json"というファイルがあって、その中でPython.exeのパス指定をしています。メモ帳などで開いて確認してみましょう。
{
"argv": [
"C:\\ProgramData\\Anaconda3\\python.exe", '← そんなファイル、無いって!
"-m",
"ipykernel_launcher",
"-f",
"{connection_file}"
],
"display_name": "Python 3",
"language": "python"
}
対処方法
ココまで説明したら、もう言わずもがなですよね。上記の"kernel.json"内のパス指定を編集しましょう。これで解決してくれるはず。少なくとも私の環境は解決できました。