0
0

BERTの使い方を練習する

Last updated at Posted at 2024-05-03

はじめに

最近、AIや自然言語処理について勉強をしている。LLMについての理解を深めるため、まずはBERTの使い方を学ぼうと思い、以下の記事を参考に動かしてみる。

環境

言語はPython。使用ツールはGoogle Colaboratory。

Google ColabのGPU環境を設定

Google ColabのGPU環境が必要だそうなので、このサイトを参考に設定しました。

GPUは12時間まで無料で連続使用できるそうです。

ランタイムのタブからランタイムのタイプを変更をクリックしてT4 GPUを選びます。

コードを試してみる

まずは記事のコードを一通りコピペして試してみると……エラーが出ますね。

To authenticate with the Hugging Face Hub, create a token in your settings tab (https://huggingface.co/settings/tokens), set it as secret in your Google Colab and restart your session.

どうやらHugging Faceでトークンを作る必要があるみたいです。

私はまだHugging Faceに登録していなかったので、こちらの記事を参考に登録して、トークンを取得しました。

Google Colabのシークレットにトークンを追加

エラーの文章を読むと

The secret HF_TOKEN does not exist in your Colab secrets.

と書いてありました。

調べてみたらGoogle Colabのシークレット機能を使えばいいみたいなので

この記事を参考に Colab secretsにHF_TOKENを追加してみます。

左メニューの鍵アイコンをクリックし、 HF_TOKEN という名前で Hugging Face のアクセストークンをシークレットに登録し、「ノートブックからのアクセス」を ON にします。

リポジトリURLの修正

これで進めると、またエラーが出ました。

Repository Not Found
とのことなので調べると、どうやら元のコードで使っていたリポジトリのURLが変わっているようですね。

参考にした記事が4年前のものなので、当時とは色々と状況が変わっているのでしょう。

リポジトリのURLにtohoku-nlp/を追加して

tokenizer = BertJapaneseTokenizer.from_pretrained('tohoku-nlp/bert-base-japanese-whole-word-masking')

にして試すと、進みました。

fugashiとIPAdicのインストール

またエラーが出たので調べていくと……

fugashiとIPAdicをインストールする必要があるようなので

!pip install fugashi
!pip install ipadic

を実行してからもう一回進めます。

コードの修正

次はAttributeError: 'str' object has no attribute 'backward’

のエラーが出ました。

Teratailに同様の質問があったので確認してコードを修正。

それから、numpyのインポートしてなくてエラーが出たので

そこも修正して進めると……

動きました!!

logit_0 logit_1 pred_label true_label
0 4.465312 -5.010775 0 0
1 -4.279079 5.095233 1 1
2 -4.622071 5.218770 1 1
3 -4.371633 5.159783 1 1
4 -4.620034 5.224734 1 1

予測と正解が合ってますね。
どうやらうまく動かせたようです。

おわりに

初めてBERTを使ってみましたが、参考記事と状況が変わっているところもあって苦労しました。
今後も学習を頑張っていきたいです。

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