2021-01-01から1年間の記事一覧

Penn Tree Bankで定義されている品詞タグ一覧

はじめに 英文を句構造文法によって自動で構文解析すると,多くのライブラリではPenn Tree Bankの仕様に従って品詞タグが付与されます. ニューラル言語処理ばかりやっていると意外とこれらの品詞タグが何を表しているかについて馴染みがないので,この機会に…

SentencePieceでの日本語分かち書きをTransformersのパイプラインに組み込む

背景 PyTorchでHugging Face Transformersを使って自然言語処理を行うとき,文章をモデルに入力するためにはまず単語単位に分かち書き (tokenize) しなければなりません. この前処理が思ったよりもやっかいなのです. 事前学習済みのモデルをTransformers公…

環境変数を間違えてPoetryがうまく動かなくなった話

はじめに PoetryはPythonの強力なパッケージ依存関係管理ツールです. ところで,PoetryはPythonの外部パッケージを扱うツールであって,Python本体そのものを扱うツールではないため,当然ながらPythonの本体そのものが複数存在する場合に,そのうちのどれ…

シェル変数と環境変数の違いを理解する

はじめに 自前で開発環境を整えようとしているうちに泥沼にはまってしまいました. 直そうとしているうちにLinuxについてまだ理解していない点が沢山あることに思い至ったので,こちら↓の本を参考にシェル変数と環境変数の違いについて整理しました. www.am…

Pymetamapで英語電子カルテからUMLS conceptを抽出する

はじめに NIHが提供しているMetamapというツールを使うと英語テキストから病名,薬剤名,解剖学的部位などを抽出することができます. metamap.nlm.nih.gov Metamapは本来Javaで書かれており,Pythonでデータ分析をする際に扱いづらかったのですが, 世の中…

spaCyで文字単位のNERアノテーションを単語単位に変換する

はじめに 固有表現抽出 (Named Entity Recognition (NER)) は,英語データに対して行う場合,基本的に単語単位の系列ラベリングタスクとなります. このため,データセットもあらかじめ単語単位でラベル付けされていると便利です. しかし,世の中には残念な…