2019-07-01から1ヶ月間の記事一覧
概要 Open Image Dataset v5(以下OID)のデータを使って、SSDでObject Detectionする。 全クラスを学習するのは弊社の持っているリソースでは現実的ではない為、リンゴ、オレンジ、苺、バナナの4クラスだけで判定するモデルを作ってみる。 バージョン情報 P…
概要 Tensorflowのmodelsのresearchのところにいる物体検知(object detection)系のコードで、data augmentation周りの処理がいろいろ用意されていたのでそれぞれの動きを確認しておく。 バージョン情報 Python 3.7.3 tensorflow-gpu==1.13.1 tensorflow/mo…
概要 multiprocessingで並列処理をする際に引数を複数渡す方法をいつも忘れてしまう。 バージョン情報 Python 3.7.3 引数を1つだけ渡す 渡す引数が1つの場合はPool.mapやPool.imapでiterableな引数を渡すことが多い。 import time from multiprocessing im…
概要 chart.jsの円グラフのラベルを線をびーっと引いてその先に表示するようにしてみたい。 完成図 バージョン情報 chart.js 2.8.0 chartjs-plugin-piechart-outlabels 1.1.2 通常の円グラフ まずは最低限のコードで円グラフを生成。 <html> <head> <link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.8.0/Chart.min.css"/> </link></head></html>
概要 chart.jsで作った円グラフのグラフ内にパーセンテージを表示するようにする。 完成図 バージョン情報 chart.js 2.8.0 chartjs-plugin-datalabels 0.6.0 通常の円グラフ まずは最低限のコードで円グラフを生成。 <html> <head> <link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.8.0/Chart.min.css"/> </link></head></html>
概要 PySparkでSELECTしたカラムの名前を変更する方法を確認する。 バージョン情報 Spark 2.4.3 サンプルデータ カラムfoo, bar, bazの3つを持つtmp_exampleテーブルを用意。 import pandas as pd import numpy as np np.random.seed(0) # 0〜100までの値が…
概要 TensorFlowでTFRecordの読み書きをする。 バージョン情報 tensorflow==1.13.1 TFRecordとは 機械学習をする際に学習データがメモリに載せきれるようなサイズでない場合は、ストレージに置いておいて頻繁に読み込む必要がある。 TFRecordはその手の処理…
概要 Pythonのwith構文で自動でリソースがcloseされる系の処理を、contextlibを利用して定義してみる。 バージョン情報 Python 3.7.3 contextlib2について contextlibは古いバージョンでは入っていないこともあるので、そうしたバージョンでも使えるようにco…
概要 sshした端末上でCtrl + 矢印キーで1単語分移動をさせようとしたら「;5c」や「;5d」に変換されてしまい、移動ができなかった。 ~/.inputrcを編集してこれが可能なようにする。 バージョン情報 xfce4-terminal 0.8.7.4 記述内容 ~/.inputrc にこう書けば…
概要 Spark SQLでSELECTした値をINSERT OVERWRITEしようとした際にファイルが細かくsplitされてHDFSの容量をムダに喰ってしまうことがある。 Spark SQLではrepartitionヒント文を使うことで分割するファイル数を指定することができる。 バージョン情報 Spark…
概要 PySparkはUDF/UDAFが手軽に書けて便利。 バージョン情報 Python 3.7.3 Spark 2.4.3 サンプルデータ カンマ区切りの文字列が入ったカラムを用意して、それをsplitしたり戻したりといった処理をudfで実行してみる。 サンプルデータとしてA, B, Cの3つのカ…