sortedでkeyにlambda使ったやり方

sortedでkeyにlambda使った物をよく見かけるのでまとめておきます sorted((list or dict) key=lambda x: x[0]) こんなのです で使い方としては sorted(【リストor辞書】, key=lambda x: 【keyにしたい要素】) こんな感じです 例としては dictionary = [['な'…

numpyでstart~stop区間をnum等分したデータを生成する方法

0から1までをnum等分にしたデータを生成したい場合に用いる ```python linspace(start,stop,num=50,endpoint=True,retstop=False,dtype=None) ```例)ある物に適用する確率を11個分,0から1までの値で生成する場合 ```python import numpy as np ​ prob = np…

python 多次元配列の各要素の特定の列の値を基準にsortする

多次元配列の各要素のある列の値を参照し,sortを行う場合の方法をまとる. from operator import itemgetter list1 = [[1,5,3], [6,4,8], [9,11,2]] print('ソート前:{}'.format(list1)) list1.sort(key=itemgetter(0)) print('ソート後(0番目の要素):{}'…

最小二乗法で線形近似(python,numpy)

pythonのnumpyで最小二乗法で線形近似し傾き,切片,回帰式を取得したいと思います. ```python # -*- coding: utf-8 -*-import numpy as npimport matplotlib.pyplot as plt def main(): X = [1,2,3,4,5] Y = [1.1, 2.1, 2.8, 4.3, 5.1] A = np.array([X,np…

matplotlibでTimes New Romanを使うためのTips

理系の論文で多用される Times New Roman ですが(以下参照) www.panoramic-view.info matplotlibで使うための方法をまとめておきます. plt.rcParams['font.family'] = 'Times New Roman' 以上です. もし,ubuntu等で findfont: Font family ['Times New Ro…

Google ColabでKaggle! 【STEP2:データ前処理とか】

前提 まず前提として言語はpythonでpandasを使用しています. データのダウンロード これは参加するコンペのdatasetダウンロードするだけです. #ダウンロード可能なコンペ一覧 !kaggle competitions list #ダウンロード !kaggle competitions download -c t…

複数GPU所持しているPCでKeras内に使用GPUの指定方法

使用方法 import tensorflow as tf from keras.backend.tensorflow_backend import set_session config = tf.ConfigProto( gpu_options=tf.GPUOptions( visible_device_list="2", # specify GPU number allow_growth=True ) ) set_session(tf.Session(config…

pythonでの複素数の取り扱いと極座標変換し極座標グラフへプロットしてみた

pythonでの複素数の取り扱い 研究の中でpythonで複素数を使うことが多々あるためまとめておきます. pythonでは複素数は簡単に取り扱うことが可能である. 虚数単位をjで表す.(Not i) c = 2 + 5j 以上です 複素数の極座標変換 cmath.polar()を使うと(絶対…

Google ColabでKaggle! 【STEP1: Kaggle APIの設定とか】

Google Colabを起動 自分のGoogleアカウントからGoogle Colabを起動して開いて下さい Google Drive>新規>その他>Colaboratory kaggle APIのインストール !pip install kaggle Kaggle API Keyをダウンロードする Kaggleを開いて自分のアカウントページを開…

How to use numpy.squeeze() squeeze()の使い方

squeeze()は,配列の中に次元数1があるならばその次元を削除する. 例えば (28, 28, 1)の場合は(28, 28)となる. 画像処理で(28, 28, 1)のチャネル部分を削減してnumpy.imshow() などの関数を使って,グレースケール画像を表示しようした際に便利

KerasでCNNの中間層の可視化(特徴マップ)や重みの可視化まとめ

kerasで中間層の出力を取得 kerasでCNNの中間層を取得する方法は2種類存在する. ケース1 from keras.models import Model intermediante_layer_model = Model(inputs=model.input, outputs=model.get_layer("fc2").output) y = intermediante_layer_model…

激安ラジコン(RC)の自動運転化計画※RCをEV3に変更しました

目的:ラジコンの自動運転をすること 使ったもの ハード ラジコン:レゴ® マインドストーム® EV3 ラズベリーパイ3 カメラ:LOGICOOL C270 ソフト 言語:python DLライブラリ:Keras(on Tensorflow) その他:Opencv,numpy,paho-mqtt... システムの概要 今回用…

激安ラジコン(RC)の自動運転化計画※プログラムは6/25掲載予定

目的:総計1万円でラジコンの自動運転化をすること 使ったもの ハード ラジコン:軽トラRC(Amazon CAPTCHA) ラズベリーパイ3 モータードライバー:L298n カメラ:LOGICOOL C270 ソフト 言語:python DLライブラリ:Keras(on Tensorflow) Opencv,numpy,pah…

L298Nを使ってモータの制御

L298Nとは 2つのモータを独立して駆動でき、正転逆転制御などに最適です。 制御は各モーターに対して、イネーブル(回転する/しない)と回転方向の指定を2線でおこないます。 マイコンでの制御のほか、スイッチなどによってマニュアル制御も簡単におこなえ…

Intersection-over-Union(IoU)とは

Intersection-over-Union(IoU)とは 物体認識の分野で領域の一致具合を評価する手法である. predicted bound box とground truth boxを合わせた領域bが, 目的となる領域g(ground truth box)がどれだけ含まれているかとなる.IoU(b,g)=area(b∩g)/area(b∪g) 参考…

request python まとめ

what is request requestsとはサードパーティ製のhttp通信を行うためのライブラリ これを使用すると、webサイトのデータのダウンロードやrestapiの使用が可能 install cmd pip install requests example ヤフーのニュース一覧ページのhtmlを取得 import requ…

imgaugライブラリを使った機械学習用のdata augmentation

install 通常版 sudo pip install imgaug 最新版 pip install git+https://github.com/aleju/imgaug 必要なもの six numpy scipy scikit-image (pip install -U scikit-image) OpenCV (i.e. cv2) 使い方 すべてのDA手法をお試しするならgenerate_example_ima…

keras 学習済モデルの取り扱い全般まとめ

keras公式の学習済モデル読み込み方法 from keras.applications.inception_v3 import InceptionV3 InceptionV3 = InceptionV3(include_top=False, weights='imagenet', input_tensor=input_tensor) kerasで利用可能なモデル ImageNetで学習した重みをもつ画…

ubuntu16.04でのTensorFlow環境構築でのメモ

TensorFlowのインストール 「libcupti-dev」を入れます。 sudo apt-get install libcupti-dev 「これはNVIDIA CUDAプロファイルツールインタフェースです。このライブラリは高度なプロファイリングのサポートを提供します。」だそうです。(TensorFlowより)…

data augementation : mixup

mixup1は、2つの訓練サンプルのペアを混合して新たな訓練サンプルを作成するdata augmentation手法の1つ 具体的には、データとラベルのペアから、下記の式により新たな訓練サンプルを作成します。ここでラベルはone-hot表現のベクトルになっているものとしま…

Cutout / Random Erasing

Cutout / Random Erasing Cutout7は2017年8月15日に、Random Erasing8は2017年8月16日と、ほぼ同時期にarXivに論文が公開されたほぼ同一の手法(!)で、モデルの正則化を目的とした新しいdata augmentationを提案しています。 同じく正則化を目的としたDrop…

Shake-Shake

Shake-Shake4 5はResNetをベースとし、テンソルに対するdata augmentationを行うことで、正則化を実現する手法です。通常data augmentationは画像に対して行われますが、中間層の出力テンソル(特徴ベクトル)に対してもdata augmentationを行うことが有効で…

webサービスを使った画像の二値化

アップロードし,二値化 設定 色数:2色モノクロ 以上 WEBブラウザ上で画像や写真をモノクロに加工できるツール - PEKO STEP アップロードし,二値化確認 https://www.petitmonte.com/labo/imageconvert/

python opencv による2値化

#!/usr/bin/python #-*- coding:utf-8 -*- import numpy as np import cv2 # original image (gray scale image) org_img = cv2.imread('image_example.jpg', 0) # preference THRESHOLD = 127 MAXVALUE = 255 # binarization using opencv _, bin_cv2 = cv2…

PSによるpngの2値化

PS起動 「イメージ」→「色調補正」→「2階調化」を選択 2階調化パネルの設定:しきい値設定 finish 保存 digitalfan.jp

ssh通信 ev3-devの初期設定

ev3にpip3の入れ方 sudo apt-get install curl curl -kL https://bootstrap.pypa.io/get-pip.py | sudo python エラーの場合 apt get update してみるといいかも ssh接続エラーの場合 SSHで接続した際に「Host key verification failed」 Debian wheezyから…

python環境の構築方法

python等でプロジェクトごとに環境構築する prenvを用いた環境構築 prenv installsudo git clone git://github.com/yyuu/pyenv.git ./pyenvpathの設定 export PYENV_ROOT=$HOME/.pyenv export PATH=$PYENV_ROOT/bin:$PATH eval "$(pyenv init -)"pythonバー…

Exponential Linear Units(ELU)とは

qiita.com

Sim GANをやってみたon tensorflow

参考 GitHub - carpedm20/simulated-unsupervised-tensorflow: TensorFlow implementation of "Learning from Simulated and Unsupervised Images through Adversarial Training"

DCGANで植物の葉画像を生成してみたon Keras

データセット GitHub - spMohanty/PlantVillage-Dataset 参考 GitHub - jacobgil/keras-dcgan: Keras implementation of Deep Convolutional Generative Adversarial Networks 結果 step 100 step 29900 病害葉画像版 病名:ceder rust step 29900 病名:sca…