エイエイレトリック

なぐりがき

python

# Spacy + fastAPI に locust で負荷試験を実行する

前回の記事で、 Spacy のモデルがメモリリークすることを調べました。 fastAPI で Spacy を動かしたとき、メモリがどれぐらい増加するのか確認します。 コードは Github にあげています。設定を諸々変えたので現状プルリクのままマージしていません。 github…

# difflib の Differ, HtmlDiff を使ったテキストの差分出力

日本語テキストの差分を python で可視化する方法を考えます。 ほぼ同じだけど微妙に違うファイル同士を比較する時、目diffだと限界があるので可視化するのが良いです。 なるべく楽に、 標準ライブラリの difflib で実装することを考えます。 この記事は pyt…

都道府県・市区町村をgeopandasで可視化

市区町村の読みって意外と曖昧性があるなと気づき、調べてみることにしました。 市区町村の位置を可視化するにあたり、geopandas を使ってみたのでメモします。 詳細については一番下にgistで埋め込んでます。 要点 課題 (未解決) 可視化結果 都道府県の可視…

ngram言語モデルについてまとめる (NLTKのngram言語モデル)

Kneser-Ney smoothing を実装しようと調べていたところ、NLTKで実装されていたのでNLTKのngram言語モデルの使い方についてまとめます。 前処理にちょっと癖があるものの、エントロピーなど数値の算出が共通化されているのでモデルごとの違いを比較しやすい気…

django rest frameworkのschema自動生成の仕組みとカスタマイズ方法

Django REST framework (DRF) は Django で Web APIを構築するのに便利なパッケージです。 schema (スキーマ) を使えば OpenAPI (Swagger) のフォーマットでドキュメントを生成することができます。 この記事では、drfでどのようにスキーマが生成されるのか…

アルファベットをカタカナに変換するpythonパッケージalphabet2kanaを公開しました

TL;DR 機能 経緯 関連パッケージ python-romkan alkana.py poetryを使ってpypiに登録する TL;DR ありそうでなかった、アルファベットをカタカナに変換するや〜つを作りました。*1 github.com ABC を エービーシー に変換します。 読みの付与に使うことを目的…

Python「ytmusicapi 」で音楽をYoutube Musicにアップロードする

前置き 〜Google Play Musicのエクスポート〜 Google Play Music のサービスの年内終了が決まり*1、今月になって自分のアカウントも音楽を利用できなくなってしまいました。 長年音楽プレイヤーとして愛用していただけに残念です。 実は普段使っているGoogle…

再訪Pythonチュートリアル

ある程度、他の言語を経験したことがある場合、新しい言語のチュートリアルは流し読みしても問題ないことが多いです。 かくいう自分もPythonチュートリアルをちゃんと読んでこなかったので、改めて精読してみました。 実際に読んでみると、結構気づきがあっ…

Pythonでヒストグラムを描く方法まとめ

文字数などの数値の分布をみたいときにヒストグラムをよく使うのですが、 Matplotlib・Seaborn・Plotlyの関数名・引数の互換性がないため *1 何度もググってしまい時間を浪費しがちでした。 そこでpythonの可視化モジュールでのヒストグラムを描き方を調べて…

pythonのsliceにおける、s[i:j:k]の挙動が複雑だったのでまとめる

pythonのスライス、特にstepについて、個人的にわかりにくいと思ったのでまとめます。 TL;DR s[i:j:k] で無理やり書こうとすると可読性があまりよろしくない時があるので、 無理やり書かない のが一番。 以降のまとめはpython 3.8についてのドキュメント、実…

BeautifulsoupでXMLからテキスト取得

前回記事 国立国会図書館サーチの検索API(SRU)を使うの続き。 PythonのBeautifulsoupを使って、国立国会図書館APIから取得したXMLからタイトル情報を取得する。 バージョン情報 Python 3.7.3 beautifulsoup4 4.8.0 lxml 4.4.1 requests 2.22.0 Pythonでapiの…