Python

BERT 日本語モデルの実験

概要 BERT (arxiv, GitHub) を理解するための第一歩として、訓練済み日本語モデルを fine-tune して文章のトピック分類の実験をしました。 この記事に含まれない内容: BERT の説明 この記事に含まれる内容: 訓練済み BERT 日本語モデルのまとめ 環境構築や…

にじさんじの Twitter フォロワー分析

概要 にじさんじに所属する全ライバーの Twitter フォロワー情報を取得し、 にじさんじ全体の(重複を除く)フォロワー数 1人のファンがフォローするライバー数の分布 フォロワーの重複度合いを基に(t-SNE で)図示したライバーの位置関係 を分析しました。…

PySnooper の中身を覗く

概要 こちらのブログ記事で、 PySnooper というデバッグ用の Python ライブラリが紹介されていました。 どんな仕組みで実装されているか気になり、またソースコードの行数も大したことがなかったので、実際に中身を覗いてわかったことをこの記事にまとめます…

AtCoder Beginner Contest 125

A - Biscuit Generator a, b, t = [int(a) for a in input().split()] result = ((t + 0.5) // a) * b print(int(result)) B - Resale n = int(input()) V = [int(a) for a in input().split()] C = [int(a) for a in input().split()] diff = [v - c for v,…

つくってまなぼう 自動微分 (Automatic Differentiation)

導入 ADの中心的なアイデア 微分の連鎖律 動的計画法 評価順序 Forward-mode (bottom-up) AD Reverse-mode (top-down) AD つづく 参考文献 導入 機械学習で予測問題(Regression や Classification)を解くステップは、大きく以下のように分解することができ…

AtCoder Tenka1 Programmer Beginner Contest 2019

A - On the Way a, b, c = [int(n) for n in input().split()] x = min([a,b]) y = max([a,b]) if x <= c and c <= y: print('Yes') else: print('No') B - *e**** ********e* *e****e* ****e** n = int(input()) s = input() k = int(input()) a = s[k - 1]…

AtCoder Beginner Contest 124

A - Buttons a, b = [int(x) for x in input().split()] c = max([a, b]) if c == a: d = max([a - 1, b]) else: d = max([a, b - 1]) result = c + d print(result) B - Great Ocean View スケールがしょぼいので超素朴に解く。 計算量 n = int(input()) h …

Google Place APIで住所や地名のデータを構造化する

概要 Google Mapの検索機能は、人がある程度大雑把に地名を入力しても正確な住所を返してくれます。これを利用すれば、人が生成した住所や地名の膨大なデータを、プログラムや機械学習で扱いやすいように構造化することができます。この記事では特に、 Tokyo…