Python関連のことを調べてみた2020年07月28日

Python関連のことを調べてみた2020年07月28日

Macでopencv-python

ブログにあったちょっと前(2020/01/25)の記事を転載。

pythonで画像認識を思い、環境を構築しようとしたところ詰まったので構築メモ。
python環境は`pipenv`を使っています。

# opencvインストール
“`bash
$ pipenv install opencv-python

Installing opencv-python…
Adding opencv-python to Pipfile’s [packages]…
✔ Installation Succeeded
Pipfile.lock not found, creating…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
✘ Locking Failed!
…(中略)
[pipenv.exceptions.ResolutionFailure]: pipenv.exceptions.ResolutionFailure: ERROR: ERROR: Could not find

元記事を表示

【Flask+Keras】サーバーで複数モデルを高速で推論させる方法

#結論

###テストコード

“`python
from flask import Flask
import time

import numpy as np
import tensorflow as tf
from keras.models import load_model
from keras.preprocessing.image import img_to_array, load_img

app = Flask(__name__)

model_path1 = “mnist.h5”
model1 = load_model(model_path1)
label1 = [“l0”, “l1”, “l2”, “l3”, “l4”, “l5”, “l6”, “l7”, “l8”, “l9”]
model1._make_predict_function()#<めっちゃ重要>predictの高速化
graph1 = tf.get_default_graph()

model_path2 = “mnist.h5”
model2 = load_model(model_path2)
l

元記事を表示

FastAPI 利用方法 ①Tutorial – User Guide

##書いてあること
– FastAPIを利用した際のメモ(個人用メモのため間違っている可能性あり・・・)
– 公式サイトのドキュメント(Tutorial – User Guide)に習って実装

##参考

[FastAPI](https://fastapi.tiangolo.com)

##環境

Docker環境を構築して動作確認

[Docker FastAPI](https://github.com/yoshi0518/Docker_public/tree/master/fastapi/latest)

###起動

“`shell:bash
# main.pyがルートディレクトリにある場合
$ uvicorn main:app –reload –host 0.0.0.0 –port 8000

# main.pyがルートディレクトリにない場合
$ uvicorn app.main:app –reload –host 0.0.0.0 –port 8000
“`

##First Step

###Interactive API Docs

[Swagger](h

元記事を表示

【Xgboost】softmaxとsoftprobの違い

# softmax vs softprob
基本的に`softmax`も`softprob`も多クラス分類に利用される。

– `softmax`は予測が最大確率となっている1クラスを出力する。
– `softprob`は予測しようとしているそれぞれのクラスの確率値を出力する。

>**multi:softmax**: set XGBoost to do multiclass classification using the softmax objective, you also need to set num_class(number of classes)
**multi:softprob**: same as softmax, but output a vector of ndata * nclass, which can be further reshaped to ndata * nclass matrix. The result contains predicted probability of each data point belonging to each clas

元記事を表示

夜には星空の壁紙を(Python)

Windowsの壁紙を時刻に応じて変えるスクリプトを作ってみた話。

ポイント:

* `ctypes.windll.user32.SystemParametersInfoW`で壁紙を変えられる。
* 定期実行は無限ループ + 1秒スリープで十分。
* 実行はpythonwから実行すると、バックグラウンドで動くので良い(止めるときにtasks managerからしか止められないのは難点、しかもプロセス名がpythonwとなって分かりにくい)。
* タスクスケジューラーでスタートアップ時のタスクに登録しておけば、起動時に自動起動できる。

“`python
import ctypes
import os
import datetime
import time

image_dir = r’D:\wallpaper’
current_image_name = None

while True:
now = datetime.datetime.now()

if now.hour < 6 or 19 <= now.hour: new_image_name

元記事を表示

pythonのSeabornでlegendのラベルを自由に変更する

## こんな人に向けた記事

– pythonでseabornを最近使い始めてboxplot, violinplotなどをやりたい人
– violinplot, boxplotで自分で決めた文字列でラベルを設定したい人
– seabornだとラベルが自動で設定されてしまって困っている人

## 解決方法
legendのハンドルを設定する以下の2行で簡単に解決!

“` python:
handler, label = ax.get_legend_handles_labels()
ax.legend(handler, [“label1”, “label2”])
“`

##タイタニックデータを使ったプロット例
### データのダウンロード
例としてtitanicのデータを使用します。
titanicのデータセットはいろんなところで説明されています。例えば下記記事など。
参考:「Titanic:タイタニック号乗客者の生存状況(年齢や性別などの13項目)の表形式データセット」
https://www.atmarkit.co.jp/ait/articles/2007/02/news016.

元記事を表示

pandasの時系列質的データから特定のパターンに一致する期間を抽出

memo.

# pandasの時系列質的データから特定のパターンに一致する期間を抽出

“`python
import numpy as np
import pandas as pd

np.random.seed(99)
df = pd.DataFrame(index=pd.date_range(‘2020-01-01′, periods=60, freq=’D’),
data=np.array(list(‘晴曇雨雪’))[np.random.randint(0, 4, 60)],
columns=[‘天気’], dtype=’string’)
df
“`

“`text
天気
2020-01-01 曇
2020-01-02 雪
2020-01-03 曇
2020-01-04 晴
2020-01-05 曇
2020-01-06 晴
2020-01-07 雨
2020-01-08 晴
2020-01-09 曇
2020-01-10 晴
2020-01-11 曇
2

元記事を表示

pythonでpip自体をupdateする

備忘録として、残しておきます。

結論
————

“`python:pipupdate
pip install -U pip
“`

元記事を表示

2. Pythonで綴る多変量解析 5-3. ロジスティック回帰分析(statsmodels)

##オッズ(odds)

* オッズは、競馬では「倍率」と同義で、馬券が的中すると、オッズに応じて払い戻しが行われます。かりに10倍のオッズがついていたら、賭け金が10倍になって返ってくるわけですが・・・
* 統計においては、**オッズ**とは、**ある事象が起きる確率(P)と起きない確率(1-P)との比**のことで、求め方は$\displaystyle \frac{P}{1-P}$です。
* たとえば、薬品AとBがあって、それぞれの治験の結果を「効果あり」「効果なし」という2つの事象として、各オッズを示します。

||効果あり P|効果なし 1-P|オッズ P/(1-P)|
|—:|—:|—:|—:|
|**薬品A**|0.2|0.8|0.250|
|**薬品B**|0.05|0.95|0.053|

##オッズ比(odds ratio)

* **オッズ比**とは、**2つのオッズの比をとったもの**です。薬品Aと薬品Bのオッズ比は、Aのオッズ÷Bのオッズで、$0.250/0.053=4.75$となります。
* オッズ比が大きいほど(または小さい

元記事を表示

pybind11を使ったC++製のPythonライブラリをGithub上にサクッと公開する手順書

pybind11を使ってC++で書いたライブラリをPythonから使えるようにする記事は沢山あるが、
作ったものをどうやって公開するかという話はあまりされていないように感じた。

この記事ではpybindが公式提供している`cmake_example`というテンプレートをベースに、公開できる状態のGithubリポジトリをちゃちゃっと作成する手順を述べる。この手順を最後まで踏むと、ユーザーが2,3コマンドを打つだけでインストールして使い始めることができる状態のリポジトリが出来上がる。

## 1. cmake_exampleをクローンする

[cmake_example](https://github.com/pybind/cmake_example)はCMakeを使ってビルドを行うようにセットアップされた公式のテンプレートである。まずはこれを入手する。

“`
cd work # なんか適当な作業ディレクトリに入る
git clone https://github.com/pybind/cmake_example.git
“`

## 2. 自分のGithubリポジトリを作成して

元記事を表示

【Mac】Pythonの仮想環境の構築

## Pythonの仮想環境の構築をしていきます。Python3がインストールされているところからのスタートです。

python3がインストールされてることを確認

“`
$ python3 -V
“`

**仮想envをインストールして設定**

“`
$ python3 -m venv env
$ pip3 install virtualenv
$ virtualenv –python=/usr/local/bin/python3 env
“`

**仮想環境に入る**

“`
$ source env/bin/activate
“`

**仮想環境から脱出**

“`
$ deactivate
“`

元記事を表示

pulumiでAWSにWardPressの環境を構築する

# はじめに
前回、pulumiでwebアプリケーションを動かすための基本構成(ec2+rdsの環境)をAWSに構築しました[前回の記事](https://qiita.com/yufuku/items/1c8ca01494e77924ab48)。

今回は、ALB+ec2の動的webサイトの構成をpulumiで構築します。
また、pulumiで構築したAWS環境にWordPress(docker container)を動作させます。

# 構成図
スクリーンショット 2020-07-28 0.38.26.png

# 実際のコード
## コード全体

今回作成した、pulumiのコードになります

“`python:__main__.py
import pulumi
import pulumi_aws as aw

元記事を表示

DeepRunning ~Level4.3.2~

#Level4.機械学習講座(理論と実践)

 ![alt](http://ai999.careers/bnr_jdla.png)
 [3ヵ月で現場で潰しが効くディープラーニング講座とは](http://study-ai.com/jdla/)

##4-3.ロジスティック回帰モデル
###4-3-10.ハンズオン

まずはdriveとマウントする。
![ロジスティック回帰0001.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/640632/997f957f-723a-d1e0-d877-044ed2fdb14d.png)

おまじないの%matplotlib inlineはgoogle colabでグラフ表示をしてくれる。
知っていると便利ですね。

続いて、CSVファイルの読み込み。
driveを参照するようにしています。データセットも確認できました。

![ロジスティック回帰0002.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws

元記事を表示

DeepRunning ~Level4.3.1~

#Level4.機械学習講座(理論と実践)

 ![alt](http://ai999.careers/bnr_jdla.png)
 [3ヵ月で現場で潰しが効くディープラーニング講座とは](http://study-ai.com/jdla/)

##4-3.ロジスティック回帰モデル
###4-3-1.分類問題と扱うデータ
  ●分類問題(クラス分類)
   ある入力(数値)からクラスに分類する問題
  ●分類で扱うデータ
   入力 ・・・ 各要素を説明変数、または特徴量と呼ぶ。
         m次元のベクトルで、m=1の場合はスカラ。
   出力 ・・・ 目的変数。0か1の値。

  【説明変数】$x=(x_1,x_2,・・・,x_m)^T \in \mathbb R^m$
  【目的変数】$y \in {(0,1)}$

###4-3-2.ロジスティック回帰モデル
  ●分類問題を解くための教師あり機械学習モデル(教師データから学習)
  ●入力とm次元パラメータの線形結合をシグモイド関数に入力
  ●出力はy=1になる確率の値(←シグモイド関数の出力範囲)

  【パラメータ

元記事を表示

「データサイエンス100本ノック(構造化データ加工編)」 Python-015 解説

##Youtube
[動画解説](https://youtu.be/W5K26k-nByg)もしています。

##問題
P-015: 顧客データフレーム(df_customer)から、ステータスコード(status_cd)の先頭がアルファベットのA〜Fで始まり、末尾が数字の1〜9で終わるデータを全項目抽出し、10件だけ表示せよ。

##解答
“`:コード
df_customer.query(“status_cd.str.contains(‘^[A-F].*[1-9]$’)”, engine=’python’).head(10)
“`

“`:出力
customer_id customer_name gender_cd gender birth_day age postal_cd address application_store_cd application_date status_cd
12 CS011215000048 芦田 沙耶 1 女性 1992-02-01 27 223-0062 神奈川県横浜市港北区日吉本町********** S14011 20150228 C-2

元記事を表示

atomからgithubのリモートリポジトリをクローンする方法

#はじめに
githubを使用するにあって毎回リモートリポジトリからクローン後ブランチ切ってから作業に入る。
その際に以下の手順で行っていた。
①github上のURLコピー(下画像赤枠)
![github画面.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/663519/d026370e-9703-4c5d-b014-4ef5588ecba6.png)

②前にクローンしたフォルダ削除
③gitbush立ち上げて`git clone URL`コマンド実行
正直めんどい。簡単にしたい。と思って調べたらatom上で上記の操作ができる方法があったため簡単にまとめる。

#対象とする方
・atomからの操作だけでgithubのリモートリポジトリをクローンしたい方
・新しいrepositoryを作成してそれをAtomと連携したい方

#環境
・Windows10
・Atom 1.48.0

※atom,githubアカウント,git,gitbushはインストール済みであることとします。

#手順
##手順①:gi

元記事を表示

基本情報のPythonサンプル問題のソースをColaboratoryで動かしてみる

# はじめに
 基本情報技術者試験(以下FE試験)では,プログラミングの出題がCOBOLからPythonに代わりました。2020年の秋試験からPythonが出題されます(当初の予定では2020春試験からでしたが,コロナの影響で春試験が中止になりました。)
 Pythonの特徴の一つは,プログラミング初心者にも学習しやすいことです。ただ,言語としては学習しやすくても,初心者の方には自分一人で「Pythonを動かして試す環境」を準備することは難しいことでしょう。
 そこで,この記事では「FE試験受験のためにPythonを試してみたいけど,どうやって動かせばいいのか分からない」方に向けて,Pythonが動作する環境の準備について解説します。さらに,IPA(FE試験の実施機関)が公表している[Pythonのサンプル問題](https://www.jitec.ipa.go.jp/1_13download/fe_python_sample.pdf)を実際に動かしてみます。

# この記事の対象読者
– プログラミングが初めて。
– FE試験を受験したい。
– Pythonを学びたい。でも,どうやれ

元記事を表示

量子情報理論の基本:トポロジカル表面符号

$$
\def\bra#1{\mathinner{\left\langle{#1}\right|}}
\def\ket#1{\mathinner{\left|{#1}\right\rangle}}
\def\braket#1#2{\mathinner{\left\langle{#1}\middle|#2\right\rangle}}
$$

## はじめに

フォールトトレラント量子計算を実現するためには各部品の誤り率が$10^{-4}=0.01\%$程度以下で、かつ、連結符号という構成によって(Steane符号をベースとした場合)$7$の何乗個もの量子ビットが必要になるという話を[前回](https://qiita.com/SamN/items/efab2cd13e49c7729755)しました。これで多くの人は絶望的な気分になるのですが、今回説明する「トポロジカル表面符号(topological surface code)」によって、希望の光が見えてくるはずです。

この後の節で何を説明しようとしているか最初に言っておきます。まず、「理論説明」ではトポロジカル表面符号(以下「表面符

元記事を表示

【高等学校学習指導要領 情報Ⅰ】教員研修用教材:データの形式と可視化(python)

#はじめに
今回は文部科学省のページで公開されている情報Ⅰの教員研修用教材の「第4章情報通信ネットワークとデータの活用・巻末」内の「データの形式と可視化」について、Rのソースコードの個所を、pythonで実装及び若干の補足考察をしていきたいと思います。

#教材
[高等学校情報科「情報Ⅰ」教員研修用教材(本編):文部科学省](https://www.mext.go.jp/a_menu/shotou/zyouhou/detail/1416756.htm “高等学校情報科「情報Ⅰ」教員研修用教材(本編):文部科学省”)
[第4章情報通信ネットワークとデータの活用・巻末 (PDF:10284KB)](https://www.mext.go.jp/component/a_menu/education/micro_detail/__icsFiles/afieldfile/2019/09/24/1416758_006_1.pdf “第4章情報通信ネットワークとデータの活用・巻末 (PDF:10284KB)”)

#環境
– ipython
– [Colaboratory – Google Cola

元記事を表示

【感染症モデル入門】MACDで見る世界の感染状況♬

世界の感染状況をMACDしてみようと思う。
オリパラを一年後に控えて、感染爆発から半年経過時点での感染状況を俯瞰することは有意義だと思う。
###世界全体の状況
以下のとおりです。上段は、新規感染数seriesの棒グラフとトレンドの青いプロット、12日移動平均、26日移動平均を描画している。下段は、そのMACDとSignal、そしてMACD-Signalの棒グラフを描画しています。上段から世界は6月ごろから加速度的に急激に増加しているのが分かります。その結果、下段のグラフから4月に一度減少傾向になったものの5月上旬から棒グラフがプラス側に触れて、マイナスになっていません。
これが毎日新規感染数が最大だというニュースの実態です。そしてお気づきだと思いますが、武漢や中国の感染ピークはこのグラフでは、ほんの序の口で、小さくほとんど見えません。
![ema_decompose_%5K%25D_total_trendlinear2020-02-01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/233744/25

元記事を表示

OTHERカテゴリの最新記事