not good but great

プログラミング、アート、映画・本の感想について書きます。

Python

pythonですべての例外をキャッチし詳細を表示させる

try: //your code here except: import traceback traceback.print_exc() python - pythonですべての例外をキャッチし、詳細を表示させたい。 - スタック・オーバーフロー こんなやり方あるんやと思いつつ、例外を指定しないというのもわかりにくいコードに…

ChaliceでMessenger Botを作るときWebhookの設定

awslabs/chalice: Python Serverless Microframework for AWS chaliceはawsを簡単に扱うためのフレームワーク。 Webhookの設定 Messengerの非公式pythonライブラリ conbus/fbmq: Facebook Messenger Platform Python Library (Facebook Chatbot Library) Cha…

cssのbackground containのようにpythonで縦横比を保ったまま画像をリサイズする

python-resize-image 1.1.11 : Python Package Index resize_containを使おう

ChaliceでLINE Botを動かすときに「 A http status of the response was '415 Unsupported Media Type」になったときの対処法

chaliceでline bot A http status of the response was ‘415 Unsupported Media Type chalice version 0.6.0では動かない 0.5.0だと動く API GateWayの違い 0.6.0 Lambdaプロキシ統合の使用にチェック 0.5.0 Lambdaプロキシ統合の使用にチェックなし 「本文…

pyenv-virtualevでchaliceの環境構築

chaliceとは? awslabs/chalice: Python Serverless Microframework for AWS Python Serverless Microframework for AWS (Chalice) を使うと、サーバーレスアーキテクチャの IAM ポリシーの管理が劇的に簡単になる! | Developers.IO 準備 pythonのversionは…

Chainerで「RuntimeError: cuDNN does not allow an eps value less than 1e-5」

epsの関するエラー RuntimeError: cuDNN does not allow an eps value less than 1e-5. cudnn.hで「CUDNN_BN_MIN_EPSILON」の定義を見る。 #define CUDNN_BN_MIN_EPSILON 1e-5 // Minimum epsilon allowed to be used in the Batch Normalization formula ep…

python3でanacondaを使わずにOpenCVをinstall

anacondaでopencvをinstallする方法があるけど、今回はanacondaを使いたくなかった。面倒だったのでメモを残しておく。 opencvをdownload 「Getting the source」までを実行する。 opencv-pyenv-notes.md How to install cmake 3.2 on ubuntu 14.04? - Ask U…

pythonのimportで相互参照をさけるためには関数内でimportする

相互参照 importで相互参照をさけるためには関数内でimportする Simple cross import in python - Stack Overflow

pythonで削除したいインデックスリストを指定してarrayから要素を削除

numpy deleteを使うとできる💪 listだとpopしてindexが変わる numpy.deleteで行や列を削除 - 計算物理屋の研究備忘録 numpy deleteに削除したいインデックスリストを渡すと削除してくれる

deep photo style transferできなかった

レポジトリ GitHub - luanfujun/deep-photo-styletransfer: Code and data for paper "Deep Photo Style Transfer": https://arxiv.org/abs/1703.07511 Build準備 module ‘loadcaffe’ not found:No LuaRocks module found for loadcaffe apt-get install lib…

numpyで値が大きい上位K件の配列インデックスを取得

gist.github.com argmaxだと最大値のインデックスしか取れない。上位k件のインデックスが欲しかった。調べて見るとnumpy argpartitionというのがあるらしい。それを使って書いた。 MNISTで nearest neighbor / int か float か,それが問題です / np.argpa…

python3、pyenv-virtualenvでmod_wsgiを使う

注意しておきたいこと mod wsgiのインストールはapt getではなくpipを使う mod wsgiのpythonは1つしか指定できない apt getのときだけ? installするときにpythonのバージョンを指定 特にバージョンを指定しないとsystemのバージョンとなる(2系) pythonを準備…

ssh接続先のUbuntuでFirefoxを複数起動し、Seleniumを使う

Firefoxを使う こちらを見た。Chromeのやり方もあるみたいだけどできなかったので、Firefoxを使用した。ssh接続しているので物理的なディスプレイがない。なのでxvfbというやつを使うみたい。 Ubuntu:xvfbとfirefoxのインストール - Web系開発メモ selenium…

Python2系で作成したpickleファイルをPython3系でloadするときはencoding

encodingする必要がある。 Pickle incompatability of numpy arrays between Python 2 and 3 - Stack Overflow

「a CUDA runtime call was likely performed without using a StreamExecutor context」の対処法

「a CUDA runtime call was likely performed without using a StreamExecutor context」が出たらTensorflow以外のフレームワークを使っていないか確かめよう。 自分の場合はChainer、GPU(CUDA)を使ったプログラムで出力したpickleファイルをTensorflow、GPU…

カテゴリカル分布(categorical distribution)のcross entropy

Multinomial distributionとCategorical distributionの違い - LESS IS MORE Theano実装 Theano/nnet.py at ae36be011c98b1a2f30753162db01f6588ff8be3 · Theano/Theano Can softmax be used with cross entropy? : MachineLearning

Pythonの環境設定、CUDA、cuDNNをインストール

Pythonの環境設定 conda で python の環境つくり condaは使わない、ブラックボックスなところが多い UbuntuでPythonの開発環境を整える - Qiita pyenv yyuu/pyenv: Simple Python version management UbuntuでPythonの開発環境を整える - Qiita pyenv-virtua…

主成分分析、Autoencoderについて調べた

主成分分析について調べる 最初は主成分分析について調べた。 10分でわかる主成分分析(PCA) 実装 https://github.com/contaconta/PCA_lecture/blob/master/PCA.ipynb 大まかに理解する Kerasで学ぶAutoencoder まずこれを読んだ Kerasのコードがあるので数式…

Python2.7,OpenCVで画像を回転

機械学習を用いて顔認識したいとき、顔の画像データが大量に必要になります。しかし手元に少量しかない時、データを増やすことをやるそうです(Data Augmentation)。その手法の一つに画像を微妙に回転させるやり方があります。OpenCVを使って画像を回転させて…

Python2.7,OpenCVで顔検出して、顔の部分だけ切り取り表示

OpenCVを顔検出して、顔の部分だけ切り取ることを行います。 モジュールをimport import cv2 from os import path import numpy as np from matplotlib import pyplot as plt %matplotlib inline CascadeClassifierを選定 cascades_dir = path.normpath(path…

リモートサーバ上でjupyterを起動させローカル環境のブラウザで見る

これを見たらできた🙆 IPython notebookをリモート接続する - Qiita

jupyter notebookの色を黒に変えてカッコよくする

jupyter-themesをpipでinstall。 dunovank/jupyter-themes: Custom Jupyter Notebook Themes 白い画面は眩しくて疲れることがあったので、黒に変えられて良かった。

Mac,python2.7環境下にOpenCVをインストール

こちらを参考にした。python3だと難しそうだったのでpython2.7環境にOpenCVをインストールした。 MacにOpenCVをインストールする方法 - Qiita

LINE BotをPythonで作るときに参考にしたデモコード、リッチメニューの作り方

API Reference 仕様確認はリファレンス。 LINE API Reference デモコード line-bot-sdk-pythonリポジトリにあるデモコードを参考。 https://github.com/line/line-bot-sdk-python/blob/1aeb6efb7609bdf6575dce3ab3832cd91e26413d/examples/flask-kitchensink…

Flask、uWSGI、nginxを使ってアプリケーションをとりあえず動かす

uWSGIをinstall uWSGIはアプリケーションフレームワークFlaskを動かすためのWebサーバ。最初、Flaskとnginxだけで動くと思っていたが、uWSGIが必要みたい。 これを参考にした。 Flask + uWSGI + Nginx でハローワールドするまで @ さくらのVPS (CentOS 6.6) …

Flaskを起動させようとしてAddress already in useと言われたら

プロセスをkillしよう ソケットエラーでそのアドレスは既に使用されていると言われる 〜Pyramidを起動しようとして - [[ともっくす alloc] init] lsofの使い方 - プロセスが使用中のファイルを調べる - うまいぼうぶろぐ

AV作品のタイトルデータを元にword2vecを使って、「ちんちん - 男 + 女」の結果を見る

Machine Learning for Artists Advent Calendar 2016 - Qiita こちらのAdvent Calendarの1日目になります。 DMM APIを用いて取得したAVタイトルデータを元にword2vecを使って、「ちんちん - 男 + 女」の結果を見てみましょう。 code コードはこちらに置いて…

Python3でTypeError: string argument expected, got 'bytes'と出たときの対処法

StringIOではなく、BytesIOを使いましょう! python imaging library - How to convert PIL image file into string in python3.4? - Stack Overflow 16.2. io — Core tools for working with streams — Python 3.5.1 documentation

Pythonで単純パーセプトロン

こちらを参考にした。うまくできているのかは知らないが、数式を見るよりもプログラムを書いた方が理解が進む気がした。 単純パーセプトロンをPythonで組んでみる - 東京で働くデータサイエンティストのブログ gist.github.com

sklearnのt-SNEでs-curveのデータを次元圧縮

import matplotlib.pyplot as plt from sklearn import manifold, datasets n_points = 1000 X, color = datasets.samples_generator.make_s_curve(n_points, random_state=0) n_neighbors = 10 n_components = 2 tsne = manifold.TSNE(n_components=n_compo…