kumilog.net

データ分析やプログラミングの話などを書いています。

Python

ダイクストラ法

はじめに ダイクストラ法 計算量 コード 実行例 例題 問題 解法 はじめに 最短経路を求めるアルゴリズムであるダイクストラ法をPythonで実装して、例題を問いてみます。 ダイクストラ法 ダイクストラ法は最短経路を効率的に求めるアルゴリズムで、辺の重みが…

Union Find

はじめに Union Find Pythonで実装 経路圧縮 最終的なコード 例題 問題 解法 はじめに 素集合データ構造を表すUnion FindアルゴリズムをPythonで実装して、例題を問いてみます。 Union Find Union Findは、すべての要素がいずれかのグループに属しており、あ…

尺取り法

Pythonのコードを交えて、尺取り法について説明します。 はじめに 尺取り法 ABC 032 C - 列 問題 解法 コード 参考 その他の例題 ARC 022 B - 細長いお菓子 問題 解法 コード ABC 098 D - Xor Sum 2 問題 解法 コード はじめに 先日、初めてAtCoderに参加*1…

PythonとSheets API v4でGoogleスプレッドシートを読み書きする

PythonからSheets APIを使ってGoogleスプレッドシートを操作してみました。Pythonのクイックスタートの内容を中心に紹介します。 Google Sheets API を使うための準備 Google API コンソールでSheets APIを有効化 認証情報を作成 Pythonパッケージのインスト…

NumPyでの画像のData Augmentationまとめ

Python Advent Calendar 2017 の 18日目 の記事です。 画像のData Augmentationの手法をNumpy(とSciPy)で実装し、まとめてみました。 使うデータ Data Augmentation Horizontal Flip Vertical Flip Random Crop Scale Augmentation Random Rotation Cutout R…

MacOSでChainerを使うときのWarningに対処する

MacOSでデフォルトのNumpyとChainerを使うと、精度が落ちる問題があり、Warningが発生します。OpenBLAS対応のNumpyを使うことで対処します。 OpenBLASのインストール OpenBLAS対応のNumPyを再インストール NumPyのアンインストール NumPyをソースからインス…

ImageNetの画像をダウンロードする

ImageNetは大規模な画像データベースで、現在2万クラス1,400万枚を超える画像があります。クラスにはWordNetの単語を用いています。CNNがブレークしたILSVRCというコンペで用いられたりと、ベンチマークとして有名なデータセットです。 画像のダウンロードは…

Python 3でファイル読み込み時のUnicodeDecodeErrorを回避する

Pythonでファイルを読み込むときは以下のような処理でいけますが... with open('file/to/path', 'r') as f: for line in f: line = line.strip() # つづきの処理 読み込んでいる途中で、utf-8ではない文字が含まれていると、UnicodeDecodeErrorが発生するこ…

Python+OpenCVで動画を扱う

Ubuntu 16.04にOpenCVとFFmepgをインストールした環境を用いました。詳細は以下の記事を参照してください。 xkumiyu.hatenablog.com