タグ

ブックマーク / hironsan.hatenablog.com (3)

  • Googleが開発した多言語の埋め込みモデル「LaBSE」を使って多言語のテキスト分類 - Ahogrammer

    自然言語処理において、テキストをその意味を考慮しつつ固定長のベクトルに変換する埋め込みモデルは重要です。文の意味をよく表現したベクトルを作ることができれば、テキスト分類や情報検索、文類似度など、さまざまなタスクで役立ちます。記事では、Googleが開発した多言語の埋め込みモデル「LaBSE」を使って、テキスト分類をする方法を紹介します。単なるテキスト分類では面白くないため、学習には英語のデータセットを使い、評価には日語とフランス語のデータセットを使います。 記事では要点だけを紹介するので、コードについては以下のノートブックを参照してください。 Text Classification with LaBSE LaBSE LaBSEは、Googleが「Language-agnostic BERT Sentence Embedding」という論文で提案したモデルです。109の言語に対応しており

    Googleが開発した多言語の埋め込みモデル「LaBSE」を使って多言語のテキスト分類 - Ahogrammer
  • 文字ベース言語モデルの作り方 - Ahogrammer

    最近の言語処理では言語モデルを使って転移学習をしたり、性能向上に役立てたりするようになってきました。言語モデルの1つであるELMoでは、言語モデルから得られる分散表現を他のタスクの入力に使うことで、質問応答や固有表現認識、評価分析といった様々なタスクの性能向上に役立つことを示しました。ELMoについては以下の記事で詳しく紹介されています。 kamujun.hatenablog.com よくある言語モデルでは単語単位で学習を行うのですが、文字単位で学習することもできます。そのメリットとしては、文字単位の言語モデルは単語と比べてボキャブラリ数が少ないため学習が高速に進むことや未知語が少ない事が挙げられます。 記事では文字ベースの言語モデルの作り方について紹介しようと思います。言語モデルを作成し学習したあとは学習したモデルを使ってテキストを生成して見るところまでやってみます。この記事を読むと以

    文字ベース言語モデルの作り方 - Ahogrammer
  • Pythonで単語分散表現のクラスタリング - Ahogrammer

    最近の自然言語処理では、単語の分散表現は当たり前のように使われています。 単語分散表現では、各単語が高次元ベクトル空間に配置され、加減乗除等の演算を行えるようになります。 これらのベクトルは、意味の近い単語に対しては同じようなベクトルになることがわかっています。 記事では、単語分散表現のベクトルをクラスタリングし、意味が近い単語のクラスタを作ってみたいと思います。 これらのクラスタは、眺めて楽しむだけでなく、機械学習の素性として使うこともできます。 イメージ的には、以下のような感じで単語をクラスタにまとめます。 では、単語分散表現をクラスタリングして、単語のクラスタを作ってみましょう。 準備 まずは、作業用のディレクトリを作成しておきましょう。 また、必要に応じて Python の仮想環境も用意します。 以下のコマンドを実行することで、ディレクトリを用意します。 $ mkdir work

    Pythonで単語分散表現のクラスタリング - Ahogrammer
  • 1