u++の備忘録

AtCoder Beginner Contest 122をPythonで解く

「AtCoder Beginner Contest 122」に出て、全完でした。A問題で誤読して2WAして号泣スタートでしたが、最後が精進していたDP問題だったので何とか取り戻せた形です。atcoder.jp A - Double Helix(100点) 4通りの場合分け 対応を空目して2WAしたので、明日…

AtCoder Grand Contest 031 AをPythonで解く

「AtCoder Grand Contest 031」に出て、1完でした。atcoder.jp A - Colorful Subsequence(200点) 総当たりで解くとTLE アルファベットを1文字ずつ数え上げて計算する N = int(input()) S = input() M = 10**9 + 7 cnt = [0] * 26 for i in range(N): cnt[o…

Kaggleでメダルが獲得できるコンペか否か確認する

コンペのトップページの「Tiers」部分の表記で確認できます。例えば、メダルが獲得できるpetfinderコンペでは、次のような表記です。https://www.kaggle.com/c/petfinder-adoption-prediction一方で、メダルが付与されないコンペでは、次のような表記になっ…

Kaggle CareerCon とは

はじめに Kaggle CareerCon とは Kaggle CareerCon 2018 Kaggle CareerCon 2019 おわりに はじめに 4月16〜18日に開催される「Kaggle CareerCon 2019」の早期受付が始まりました。昨年には「Kaggle CareerCon 2018」も開催されていたのですが、私が本格的にK…

AtCoder Beginner Contest 121をPythonで解く

「AtCoder Beginner Contest 121」に出て、3完でした。atcoder.jpC問題まで順調に解けたのですが、D問題でTLEした後、O(1)の解法が分かりませんでした。 A - White Cells(100点) h個の行とw個の列をそれぞれ一番端まで動かしても答えは変わらない H, W = l…

ブレインパッド「白金鉱業 Meetup Vol.6」にて「技術アウトプットを支える技術」の題目で発表しました

本日、ブレインパッド主催「白金鉱業 Meetup Vol.6」に登壇しました。brainpad-meetup.connpass.com題目は「技術アウトプットを支える技術」で、社会人として働きながら技術アウトプットを出そうとしている理由、そのために心掛けているTipsを紹介しました。…

コルモゴロフ-スミルノフ検定を利用した特徴量選択

はじめに コルモゴロフ-スミルノフ検定を利用した特徴量選択 コルモゴロフ-スミルノフ検定とは 特徴量選択にどう活用する? Kaggle Kernel おわりに はじめに えじさんの下記記事を読んで「コルモゴロフ-スミルノフ検定を利用した特徴量選択」が気になりまし…

AtCoder Beginner Contest 120をPythonで解く

atcoder.jp A - Favorite Sound(100点) 満足する回数Cを無視すると、答えは(B//A) この数よりCが小さければ、答えはC A, B, C = list(map(int, input().split())) ans = min((B//A), C) print(ans) B - K-th Common Divisor(200点) K番目に「大きい」こ…

ABC015「C - 高橋くんのバグ探し」をPythonで解く

ABC014「C - 高橋くんのバグ探し」をPythonで解いた。atcoder.jp愚直に全通りをfor文で回す解答もあるが、競技プログラミングをPythonで解く上で、より汎用的な解法に落とし込めたので、まとめておく。 解答 import itertools from functools import reduce …

「Sports Analyst Meetup #1 」を開催&発表しました #spoana

はじめに 開催の背景 当日の発表内容 初心者向けスポーツ分析チュートリアル「目標達成に導くデータ分析」 LT 閉会後も・・・ おわりに はじめに 「Sports Analyst Meetup #1」を昨日2月24日に開催しました。多くの方に「楽しかった」と言っていただき、運営…

AtCoder Beginner Contest 119をPythonで解く

「AtCoder Beginner Contest 119」に出て、3完でした。atcoder.jpC問題の実装に苦しみ、時間をほぼ使ってクソコードで通しました。 A - Still TBD(100点) 文字列の比較 S = input() if S <= "2019/04/30": print("Heisei") else: print("TBD") B - Digital…

Kaggleにおける「特徴量エンジニアリング」の位置づけ 〜『機械学習のための特徴量エンジニアリング』に寄せて〜

はじめに 『機械学習のための特徴量エンジニアリング』の書誌情報 Kaggleのワークフロー 1. (探索的データ分析) 2. ベースラインモデルの構築 3. Validationの構築 4. 特徴量エンジニアリング 5. ハイパーパラメータ調整 6. アンサンブル 『機械学習のため…

「全国統一プログラミング王決定戦」イベント&懇親会に参加しました

本日開催された「全国統一プログラミング王決定戦」イベント&懇親会に参加しました。atcoder.jp↓で出場した予選の201-500位の枠(イベント&懇親会のみ参加可能)です。upura.hatenablog.com会場は東京ドームホテル 大宴会場「天空」というとても豪勢な場所…

ABC014「B - 価格の合計」をPythonで解く

ABC014「B - 価格の合計」をPythonで解いた。atcoder.jp 解法 AtCoder Beginner Contest 014 解説 from AtCoder Inc. 解答 N, X = list(map(int, input().split())) a = list(map(int, input().split())) ans = 0 for i in range(N): if (X>>i)&1 == 1: ans …

AtCoder Beginner Contest 118をPythonで解く

「AtCoder Beginner Contest 118」に出て、3完でした。atcoder.jpCは実装に確証が持てておらず、かつコードも汚いので解説などで勉強します。Dは方針が立ちそうでしたが「ちょうどN本のマッチ棒を使って」という条件で分からなくなりました。 A - B +/- A(1…

初心者向けスポーツ分析チュートリアル「目標達成に導くデータ分析」 | Sports Analyst Meetup #1

2019年2月24日開催「Sports Analyst Meetup #1」の「初心者向けスポーツ分析チュートリアル」を担当します。本記事では、事前に発表資料を公開します。connpass.com「目標達成に導くデータ分析」と題して、スポーツアナリストの定義や分析の基礎的な話をまと…

「まんがで読破」をkindleの11円セールで30冊買って全部読んだ

名作・名著を漫画化している「まんがで読破」シリーズが、kindleのセールで30冊が11円になっていました。30冊を購入し、1週間くらいかけて全部読んだので、備忘録として残しておきます。ちなみに、この11円セールは明日2月14日までらしいです。 Twitterでの…

AtCoder「みんなのプロコン2019」をPythonで解く

「みんなのプロコン2019」に出て、3完でした。atcoder.jpC問題のテストケースが一つだけWAになる理由が分からず、1時間以上を浪費しました。レートが下がって悲しいです。 A - Anti-Adjacency(100点) 偶数・奇数で場合分け "Yes"ではないことに注意する N,…

pandasで協定世界時(UTC)を日本標準時(JST)に変換

はじめに 既存データ(協定世界時)を眺める 日本標準時に変換 おわりに はじめに 前回の記事で、iOS標準アプリ「ヘルスケア」からデータを書き出しcsvに変換する方法を紹介しました。upura.hatenablog.comただし、このデータでは協定世界時(UTC)に準拠した…

iOS標準アプリ「ヘルスケア」からデータを書き出しcsvに変換

はじめに データの概要 データの取り出し方 ヘルスケアアプリからXMLファイルを書き出す XMLファイルをcsvファイルに変換する 分析例 おわりに はじめに 本記事では、iOS標準アプリ「ヘルスケア」からデータを書き出し、csvに変換する方法をまとめます。 デ…

「オレシカナイトデータコンペティションvol.2」で準優勝でした

はじめに コンテストの概要 オレシカナイトとは 競技概要 ビジネス的な意義 既存の説明変数 評価指標 自分の解法 戦略 説明変数 学習モデル 結果 所感 はじめに 1月26日に、AbemaTVの実データを使ったデータ分析のコンテストに参加し、準優勝でした。本記事…

Machine Learning Casual Talks #8 に参加しました&全発表まとめ

はじめに Machine Learning Casual Talksをはじめた理由 発表資料 「エムスリーにおける機械学習活用事例と開発の効率化」 発表資料 概要 所感 「BEDOREにおける対話エンジンの開発と運用」 発表資料 概要 所感 LT「bfloat16について」 発表資料 概要 所感 L…

AtCoder「全国統一プログラミング王決定戦予選」をPythonで解く

atcoder.jpC問題まで普通に解ける問題だったのに、妙な力みから些細なミスでWAを連発しました。猛省せねばです・・・。 A - Subscribers(100点) 最大値は、片方が片方を包含した場合なので、AとBの小さい方 最小値は、両者を完全に分離した場合なので0か、…

【書籍メモ】「ビジネスでインパクトが出せるデータサイエンティストになるためには」

ビジネスでインパクトが出せるデータサイエンティストになるためには はじめに 感想 はじめに データサイエンティストが力を発揮する場 課題設定 解決方法の設計 検証 育成 まとめ おわりに ビジネスでインパクトが出せるデータサイエンティストになるために…

「カンマ区切りで複数要素が入った列」をpandasで集計

本記事では、「カンマ区切りで複数要素が入った列」をpandasで集計する方法を紹介します。「カンマ区切りで複数要素が入った列」とは、下記のような状況です。例えばアンケートの複数選択可の回答などで、行ごとに含まれる要素数も異なる場合が考えられます…

多クラス分類の不均衡データのdownsampling

問題設計 例えば4クラス分類で、比率が[0.5, 0.25, 0.15, 0.10]のような問題を考えます。 from sklearn.datasets import make_classification args = { 'n_samples': 100000, 'n_features': 10, 'n_informative': 3, 'n_redundant': 0, 'n_repeated': 0, 'n_…

Data Driven Developer Meetup #4 で登壇しました&全発表まとめ

はじめに スポンサーセッション 『機械学習を使ったサポート問い合わせ予測』 メインセッション 『機械学習を⽤いた⽇経電⼦版Proのユーザ分析』 『医療用語に注目した文書の類似度計算』 LT 『Bokehではじめるデータビジュアライゼーション』 『SlackへのKP…

Fizz Buzz in PyTorch

In this article, I utilize MLP(Multilayer perceptron) by PyTorch to solve Fizz Buzz problem.This challenge is highly inspired by the following page, and I use the same situation.joelgrus.comYou can see the Japanese version here:upura.haten…

PyTorchでFizzBuzz

本記事では、PyTorchのMLP(Multilayer perceptron)を用いて、FizzBuzzを解いてみます。条件設定は、以前に話題になった下記のサイトに従います。IT会社面接官:「数字を列挙し、3の倍数ならfizz、5の倍数ならbuzz、15の倍数ならfizzbuzzを出力するプログラム…

pd.read_csv()が高速化するmodin.pandas

はじめに GitHubリポジトリ 試してみた インストール ライブラリの読み込み 実験 pandas modin.pandas 未対応機能も おわりに はじめに Twitterで見かけて、全く知らなかったので試してみました。pandasのimportを置き換えるだけで、並列処理にしてくれる、m…