0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

LightGBMのインストールにハマった件

0
Posted at

Kaggleなどのデータコンペでよく見かける機械学習アルゴリズムLightGBM

PythonのモジュールとしてMicrosoftから配布されているが、そのインストールに思ったより手こずったため一連の経緯を書き留める。

アルゴリズムの説明は以下の記事を参考にしていただきたい。

pip installがはじかれる

自分のプログラミング環境は

  • Visual Studio Code
  • Python 3.14

という基本的なもので、LightGBMも他のモジュール同様仮想環境内でpip installを行った。

install自体は問題なく行われ、続いてJupyterNotebook上でimportしようとしたところエラーが発生した。

image.png

スクショが見切れているが、dllという拡張子のファイルが存在しないらしい。

dllを探す旅

エラーが起きた時はそのまま生成AIにぶち込んでいるのだが、今回は「Pythonのversionが新しくて対応していないからこのエラーが出る」と言われた。

真に受けてPythonをダウングレードしていても、一向にエラーは解消せず。

諦めてネットの海を探すとQiitaの参考になりそうな記事を見つけた。

この記事はMacにインストールができなかった際のTipsで、Windowsユーザーの自分はそのまま使えなかったが、公式ドキュメントに従おうという一文は今回非常に助けになった。

公式ドキュメント×生成AI

LightGBMの大元のGitに、OSごとのインストール方法が記載されている。

英語やPCに疎い自分は、そのままこのURLを生成AIに投げ手取り足取り教えてもらう。

その結果判明した流れはこう

  1. 公式RepositoryからLightGBMをクローン
  2. build用フォルダを作る
  3. buildフォルダ内で.dllを生成
  4. pipでインストールしたLightGBMのdllファイルを生成したものに上書き

1つずつ見ていく。

1. 公式RepositoryからLightGBMをクローン

以下のGitレポジトリからLightGBMをクローン。
クローンする場所はどこでもよい。
というかdllさえ作れればクローンしたフォルダは用済み。

2. build用フォルダを作る

クローンしたLightGBMフォルダ直下にbuildというフォルダを作る。
以下はコマンドの操作だがエクスプローラー上でそのまま作ってもOK

mkdir build
cd build

3. buildフォルダ内で.dllを生成

クローンしたフォルダ直下に"CMakeLists.txt"というファイルがあるはず。
これを参照してcmakeでビルド設定を生成する。

cmake ..

成功すると以下の文章が表示される。

-- Build files have been written to: .../LightGBM/build

うまくいかない場合はVisual Studio InstallerでC++関係のツールをインストールする必要がある。
image.png

さらにうまくいかない場合はcmakeがインストールされていない可能性も。
公式サイトからダウンロード。
https://cmake.org/download/

最後に同じくcmakeでLightGBMをビルドすると、buildフォルダ内にdllとexeファイルが生成される。

cmake --build . --target ALL_BUILD --config Release

自分の場合はbuildフォルダ内でビルドしたはずがLightGBMフォルダ直下に"Release"フォルダができており、その下にdllファイルができていた。

image.png

4. pipでインストールしたLightGBMのdllファイルを生成したものに上書き

最後にpip installしたLightGBMモジュールを見つけ、binフォルダ内のdllファイルを新しく生成したものに上書きする。

image.png

…はずだが自分は3の時点でモジュールが使えるようになっていた。

インストールやなんやらを繰り返すため定期的に再起動してパスを通してやることも大事。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?