STAGの備忘録

みんなブログを書いている、書いていないのは俺だけ

np.sumよりnp.dotするほうが速い

# TL;DR 1. np.dotはBLASを呼び出すので、np.sumするよりnp.dotを使うほうが速い(float型に限る) 2. 条件付きでsumを取る場合は中間結果を保持する必要がないため更に速くなる

NumPyを用いた配列に対するelementwiseなbitcountの実装

TL;DR PythonとNumPyだけで配列に対してelementwiseにbitcount処理を高速に行いたいよ 前計算したり、bit演算だけを使うアルゴリズムを使うとNumPyと相性よくそれなりに高速で動作したよ CuPy使うともっと速くなるよ、カーネル融合すると更に速くなるよ そも…

Atcoder・Codeforcesの問題文から問題のカテゴリを予測するモデルを作る(スクレイピング編)

1.はじめに 競プロでは問題文や制約を見ただけで、解法がある程度予想がついてしまう、といったことが知られています。今回は問題文や制約とその問題の解法には相関関係があるという仮説のもとで、機械学習モデルを用いて、問題文と制約から解法を予測してみ…

O(1) extra space complexity を考える

競プロでは時間計算量が重視されますが空間計算量に注目して解くのも楽しいよというお話です。 Extra time complexityとは 突然ですが、次のような問題を考えてみましょう。 https://leetcode.com/problems/single-number/ 問題概要 ひとつの値を除いて、同…

英語コーパスをAzure Database for PostgreSQLに保管して、pythonからクエリを投げて例文検索するGUIを作る

動機 最近諸事情で英語の文章を書かなければいけず、いろいろ四苦八苦している。英語の文章を書くうえで、不自然でない表現を心がけなくてはいけないが、これが難しい。辞書を引くだけでは基本的に意味しか載っていないので使い方がわからない。そこで役に立…

プール方式による効率的PCR検査

はじめに この記事はとある朝日新聞デジタルの記事"多くの検体「まとめて」PCR検査で、件数を増やせる?"に書かれていた、PCR検査の手法が面白いなと思い、自分なりに色々実験した結果と考察を載せたものです。なお私はPCR検査自体についての専門的知識は全…

ブログ始めました

ブログ始めました。 続くといいな。