Python関連のことを調べてみた2022年02月06日

Python関連のことを調べてみた2022年02月06日

TomoPyのbuild

CTのアライメントや再構成法を色々試せる`python`ライブラリの`TomoPy`というののをみつけた。

https://tomopy.readthedocs.io/en/latest/index.html

`pip`から入らなかったので、buildしたが、少々はまったのでメモ。
オフィシャルのやり方は、下記にある。
https://tomopy.readthedocs.io/en/latest/devguide.html

なお、等方の環境は以下の通り。
・Ubuntu 20.04
・python 3.8
・cuda 11.3 (RTX3080)

# cloning

“`
git clone https://github.com/tomopy/tomopy.git
“`

https://github.com/tomopy/tomopy

# 依存ソフトのインストール&build

乱暴だが、`setup.py`を走らせながら必要なのを入れていった。

“`
cd tomopy
python3 setup.py
“`
なお、等方の環境では、

“`
python3

元記事を表示

「Pythonで儲かるAIをつくる」実装補足

# はじめに
 「Pythonで儲かるAIをつくる」の著者です。
[Amazonリンク](https://www.amazon.co.jp/dp/B08F9P726T/)
[書籍サポートサイトリンク](https://github.com/makaishi2/profitable_ai_book_info/blob/master/README.md)
 何を隠そう、私は昔からプログラミングおたく※なもので、書籍のサンプルコードには相当こだわりがあるのですが、「Pythonで儲かるAIをつくる」では、何カ所か悔いの残る実装がありました。
 出版社の担当者とも相談し、ちゃんと動いているのだから正誤訂正ではないだろうといわれ、確かにその通りなので、こういう形で後悔を公開するに至った次第です。

※ コーディング経験のあるプログラム言語は以下のような感じ。他にも多分いくつかあると思います。
BASIC, Assembler(86系),FORTRAN, LISP, Prolog, C(C++は本当にかすかに), Assembler(HOST), APL, APL2, COBOL, REXX, P

元記事を表示

Kaggle初心者がHousePrices問題に取り組んだ話。

# はじめに
初心者がKaggleのHousePrice問題に初めて取り組んだことを備忘録もかねてまとめます。
備忘録なので丁寧語は以下省略させていただく。

## HousePrice問題とは
[House Prices – Advanced Regression Techniques](https://www.kaggle.com/c/house-prices-advanced-regression-techniques/overview)というKaggleの問題。
米国アイオワ州のエイムズ市の住宅価格を予想するコンペティション。与えられるデータは住宅ごとの築年数、設備、広さ、エリア、ガレージに入る車の数など79の説明変数と予測したい家賃(SalePrice)という1つの目的変数で構成される。つまり79の説明変数をもとに家賃を予測する問題。

## サンプルの予測精度
与えられるデータにサンプルとして予測してあるものがあるのでそれがどれくらいの精度で提出できるのか確認。

結果:0.40613

初心者ではあるがこの数値は超えたい。

## 実装環境
実装環境はLocalPCにAn

元記事を表示

PythonからCeVIO AIの外部連携インターフェイスを叩く

勉強がてらCeVIO AIの外部連携インターフェイスを叩くラッパーを作ってみました。
(`pip install sasawrapper`でインストールできます。)

https://github.com/takana-v/sasawrapper

https://takana-v.github.io/sasawrapper/

これを作った時の備忘録です。

## PythonでCOMコンポーネントを使う
https://cevio.jp/guide/cevio_ai/interface/com/

COMコンポーネントの形で公開されているのでこれを使用します。

PythonからCOMコンポーネントを使用するにはpywin32を使用します。
pipでインストールします。

https://github.com/mhammond/pywin32

“`bash
pip install pywin32
“`

## COMコンポーネントを読み込む
CeVIOの外部インターフェースのコンポーネントは2つあるのでそれぞれ読み込み、インスタンスを作成します。
service_contro

元記事を表示

SQLをPythonで

“`python:sample.py
df
# irisデータセットから、各speciesを2例ずつ選んだもの
“`
|sepal_length|sepal_width|petal_length|petal_width|species|
|:—|:—|:—|:—|:—|
|5.1|3.5|1.4|0.2|setosa|
|4.9|3.0|1.4|0.2|setosa|
|7.0|3.2|4.7|1.4|versicolor|
|6.4|3.2|4.5|1.5|versicolor|
|6.3|3.3|6.0|2.5|virginica|
|5.8|2.7|5.1|1.9|virginica|
# 1. SELECT
“`sql:select.sql
CREATE TABLE tbl AS SELECT sepal_length FROM df;
“`
“`python:select.py
tbl = df[[“sepal_length”]]
# tbl = df[“sepal_length”]ではない
“`
|sepal_length|
|:—|
|

元記事を表示

【AtCoder解説】PythonでABC238のA,B,C,D,E問題を制する!

**ABC238**の**A,B,C,D,E問題**を、**Python3**でなるべく丁寧に解説していきます。

ただ解けるだけの方法ではなく、次の3つのポイントを満たす解法を解説することを目指しています。

– シンプル:余計なことを考えずに済む
– 実装が楽:ミスやバグが減ってうれしい
– 時間がかからない:パフォが上がって、後の問題に残せる時間が増える

ご質問・ご指摘は**コメント**か**ツイッター**、**マシュマロ**、Discordサーバーまでお気軽にどうぞ!

**Twitter: [u2dayo](https://twitter.com/u2dayo)**
**マシュマロ: https://marshmallow-qa.com/u2dayo**
**ほしいものリスト: https://www.amazon.jp/hz/wishlist/ls/2T9IQ8IK9ID19?ref_=wl_share**
**Discordサーバー(質問や記事の感想・リクエストなどどうぞ!) : https://discord.gg/jZ8pkPRRMT**
よかったら**LGTM**

元記事を表示

AtCoder Beginner Contest 238 – D AND and SUM なんとなく解説

#はじめに

コンテスト時に発想した内容をメモしておこうと思います。結局解説と同じような話・・・のはず。もし嘘回答とかなら教えてください。

#コード
“`:Python
T = int(input())

ret = []
for i in range(T):
a, s = map(int, input().split())
x = a
y = s – a
if y >= 0 and (x & y) == a:
ret.append(“Yes”)
else:
ret.append(“No”)

print(*ret, sep=”\n”)
“`

回答時は下記。ただ余計なコードが多いので、上記は整理したものになります。

https://atcoder.jp/contests/abc238/submissions/29094116

#整理

入力例1の一つ目のクエリについて考えます。

“`
a=1
s=8
“`

まず、ANDのほうに着目します。

“`
a=1=0x0001 #変則2進数表記、後

元記事を表示

PythonとPydubとSqlite3を用いてデータベースに音データを格納しデータベースから音データを復元してみた

こんにちは。

wavファイルやmp3ファイルといったオーディオファイルをデータベースに格納したいと考えました。
また、データベースで格納されたオーディオ情報を取り出して、オーディオファイルに復元したいと思いました。

今回のブログでは、『**`Pythonによってオーディオファイルからオーディオ情報を作成し、SQLを用いてデータベースに格納する`**』、『**`データベースからSQLを用いてオーディオ情報を取り出し、それをオーディオファイルに復元する`**』、この二点について述べていきます。

この記事で得られるサブ情報は以下の通りです。
>**・Pythonスクリプト上でSqlite3を用いたデータベースの接続方法
・Pythonスクリプト上でSqlite3を用いたテーブルの操作
・バイナリデータをBLOB型として直接データベースに格納する方法
・Pydubを用いたオーディオ情報の取得方法、オーディオファイルの作成方法**

それでは早速手順を追っていきましょう。

#0. 作成したスクリプトの概要
今回作成したスクリプトの概要は以下のようになります。

![image.png](

元記事を表示

ポケモンUNITEの流行ポケモンが知りたい!

#はじめに
どうも初めまして.今回が初投稿となります.大学院でNNを利用した研究をしています.
遊びながらNNを学ぶことで少しでも多くの方に機械学習等への興味を持っていただければと思います.

#背景
最近ポケモンユナイトというゲームにハマっているのですが,他の方がどういうポケモンを使っているのか,ということを数値化してデータ分析しようと思い,スクショ画像からそれらのデータ集めを行おうと考えました.
つまりは,自分が実際に対戦した人達,ランキング上位勢などそれぞれでの環境調査をして,少しでもかつ安くするためにはどうすれば良いかを考えよう!ということです笑

#対戦履歴で環境調査
今回は,まず簡単なところをやっていきます.ポケモンユナイトでは対戦後にリザルト画面で次のような画面が出てきます.
そのため,これをスクショし,ポケモンの画像部分をトリミングしてデータ収集していきます.![IMG_5190.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/811324/f940b69e-3ca7-d3f5-aac4

元記事を表示

Google 検索のヒット数を用いたキーワードの類似度計算 : Normalized Google Distance

# はじめに
単語やキーワードの類似度を計算したいシーンはよくあります。
最近では単語やキーワードをベクトルに変換して類似度を計算する方法が主流ですが, 一昔前にとてもユニークな類似度計算の手法が提案されていました。
それが本記事のテーマである __Normalized Google Distance__ です。

Normalized Google Distance は $2007$ 年に [The Google Similarity Distance](https://arxiv.org/abs/cs/0412098) として発表されました。

本手法の一番の特徴は単語やキーワードの類似度に __Google 検索エンジンによるヒット数を用いていることです。__[^1]

[^1]: 論文では Google 検索エンジンを使用していますが, 特段 Google 検索エンジンである必要はなく任意の検索エンジンで代替可能です。

以下でちょっとした概説を行うとともに, 簡単な実行結果をお見せします。[^2]

[^2]: 筆者は情報工学出身ではないため, NGD の背景にある理論を何

元記事を表示

Python歴2日の文系が『ゼロから作るDeep Learning』を読みました(1~5章)

#はじめに
今年もつつがなく1か月が過ぎてしまったので、思い立って新しいことを始めようと思いました。
で、プログラミングやってみよう→目標はAI? Deep Learning? を人並みに理解する(暫定)→本読むか→読んだからにはアウトプットしたい、となって、Qiitaに備忘録がてら初投稿した次第です。
とりとめのない感想と疑問点(と後で調べたこと)がほとんどなので、「初心者の理解ってこんなもんかね」と眺めていただければありがたいです(もっと書くべき箇所、次に読むべき本、さらにやるべきこと等アドバイスいただけたらもっとありがたいです)。
なお、『ゼロから作る~』の本をお持ちの方は、お手数ですが手元に置いていただくとページ数等参照できるかと思います。
#前提(読む前のわたしのスペック)
– 大学の文系学部卒
– Deep Learningと全然関係ない職業
– 数学は好き(大学への数学とかやってた)
– プログラミング歴2日(昨日(2022/02/04)ProgateでPythonコースを修了?した)
– 読書はする方(新書が主)
– 機械学習とDeep Learningの違いもよくわか

元記事を表示

notion-py 使ってみた

#はじめに
notion-py(非公式)についての記事を調べても日本語で書かれていることが少ないんですよね。自分が使ってみたことをまとめて置きます!
初めて記事を書いたので分かりにくい所もあると思いますがご理解下さい。

:::note warn
記事を書いた日(2022/02/05)での情報となるので注意してね。
:::

#notion-pyを使います
↓GitHubはこちら

https://github.com/jamalex/notion-py

#使う技術
– python

#使い方
使えるようにします

“`
pip install notion
“`

“`python:基本となるコード
# notion-pyを使うためにimportする文を記述する
from notion.client import NotionClient

# `token_v2`はこの記事内にやり方を書いてるのでそちらを参考に貼り付ける
client = NotionClient(token_v2=”“)

# notionのTopページのURLを””内に貼り付ける

元記事を表示

ガウス過程回帰をnumpyで実装

# ガウス過程回帰をnumpyで実装
ガウス過程回帰は、GPyなどの便利なライブラリもあるが、今回はnumpyで実装してみる。
データセットは前回記事を引用。

https://qiita.com/nmmg0031785/items/48ea1e27123f65d4e21b

##必要ライブラリのインポート

“`python:kernelRidgePredict.py
import numpy as np
np.random.seed(1)
import matplotlib.pyplot as plt
from itertools import product
“`

##サンプルデータの生成
sin関数+1次関数に、正規分布のノイズを加える。

“`python:kernelRidgePredict.py
# 目的関数
def function(x):
y = 0.2*np.sin(x) + 0.1*x
return y

# データを生成
n_sample = 40
X = np.random.uniform(-2*np.pi, 2*np.pi, n_sa

元記事を表示

Pythonの自作パッケージで定数を使いたい

# 目次
1. [背景](#背景)
2. [試したこと1](#試したこと1)
3. [試したこと2](#試したこと2)
4. [ディレクトリ構造とファイルの中身](#ディレクトリ構造とファイルの中身)
5. [おわりに](#おわりに)

# 背景
物理シミュレーションにおける基礎物理定数など、自作パッケージで定数を複数ファイルで使いたいなと思う機会がありました。
Python で定数を使おうと思った時、1ファイルだけなら、ファイルの上の方に

“`py
CONST = 100
“`

とか書いておけば良いのですが、複数のモジュール全てにいちいちこれを書いているようでは管理は大変です。
なので、パッケージ内に `const.py` を作ってそこにひたすら定数を書き、各モジュールでそれを呼び出すことで、1つのファイルで管理できるようにしようと思いました。

今回試した `Python` のバージョンは `3.9.7` です。

“`txt
$ python –version
Python 3.9.7
“`

# 試したこと1
楽ではあるのですが、個人的には推奨しない方法です。

元記事を表示

TwilioをLambdaで実行するまでのメモ

# これはなに
twilioを使うことがありそうだったので使用するまでのメモです。

[コミュニケーションAPIのTwilioとは?](https://cloudapi.kddi-web.com/magazine/twilio-lesson/what-is-twilio-of-the-communication-api)
> Twilioは『電話をかける』『SMSを送る』といった機能を、すでにTwilioのシステム内で作り上げています。
> これらの機能をAPIという形で提供しているため、お客様は簡単にTwilioの機能を自社システムに追加できるため、0から作る必要がないというわけです

# 準備
実際に使用するまでにいくつかの準備が必要となります。

## アカウント登録
下記URLより、アカウント登録が行えるので登録します。
トライアルで少額の金額がチャージされていますのでその料金分まで使用できます。
※自分の場合は500円チャージされてました。
[Twilio会員登録](https://www.google.com/aclk?sa=l&ai=DChcSEwjMp-m-7eL1Ah

元記事を表示

QGISを用いた都道府県境データの作成

#1 はじめに
趣味で、任意の県/市の境目の経度、緯度情報を必要とするアプリをpythonで作成することになりました。便利なAPIやライブラリ等は見つけることができなかったため、国土交通省によって公開されている行政区画データ(シェープファイル)に基づき、作成することにしました。
GISに関しては全くの素人なので、調べるのに結構時間がかかってしまったが、一都道府県程度であれば、下記やり方で30分程度でpythonによる情報読み込みまで行けると思います。今回は、GIS用のソフトウェア(QGIS)を新たにインストールし、シェーププファイル形式で記録された行政区画データから、都道府県/市境のデータを作成する方法しか調べきれなかったのですが、他により簡単な方法があるかもしれません。

記事作成後の追記:
シェープファイルの扱いに慣れている人は、[こちらの記事](https://qiita.com/ty21ky/items/193e316370a8c7122b3c) のやり方にしたがって、県境/市境のデータを取得後、pyshpを用いて特定の市域、県域情報を抽出する、というやり方の方がてっとり早いと

元記事を表示

論文の勉強13 MobileNet V3

MobileNet V3について構造の説明と実装のメモ書きです。
ただし、論文すべてを見るわけでなく構造のところを中心に見ていきます。
勉強のメモ書き程度でありあまり正確に実装されていませんので、ご了承ください。
自分の実力不足で読み解けなくなってきています。難しいです。

以下の論文について実装を行っていきます。

タイトル:Searching for MobileNetV3

https://arxiv.org/abs/1905.02244

MobileNet V2は前回扱いました。

https://qiita.com/tanaka_benkyo/items/ff87271a729b85234a88

SE blockについてはSENetをご参照ください。

https://qiita.com/tanaka_benkyo/items/fbc4c242a820885d84b9

#### MobileNet V3
MobileNet V3ではMobileNet V2で導入したbottleneck構造に,SENetなどで導入したSE(Squeeze and Excitation)

元記事を表示

論文の勉強12 MobileNet V2

MobileNet V2について構造の説明と実装のメモ書きです。
ただし、論文すべてを見るわけでなく構造のところを中心に見ていきます。
勉強のメモ書き程度でありあまり正確に実装されていませんので、ご了承ください。
自分の実力不足で読み解けなくなってきています。難しいです。

以下の論文について実装を行っていきます。

タイトル:MobileNetV2: Inverted Residuals and Linear Bottlenecks

https://arxiv.org/abs/1801.04381

MobileNet V1は前回扱いました。

https://qiita.com/tanaka_benkyo/items/37aadc03c4cee2e55c9e

### MobileNet V2

#### Inverted Residual block(bottleneck block)
MobileNet V1で扱ったDepthwise Separable Convolutionsにbottleneck構造を持たせます。
図の(d)のように3×3のdepthwise convo

元記事を表示

論文の勉強11 MobileNet V1

MobileNet V1について構造の説明と実装のメモ書きです。
ただし、論文すべてを見るわけでなく構造のところを中心に見ていきます。
勉強のメモ書き程度でありあまり正確に実装されていませんので、ご了承ください。
自分の実力不足で読み解けなくなってきています。難しいです。

以下の論文について実装を行っていきます。

タイトル:MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

https://arxiv.org/pdf/1704.04861.pdf

### MobileNet V1

#### Depthwise Separable Convolution
MobileNetは通常のConvolutionをDepthwise ConvolutionとPointwise Convolutionに分解したもの(depthwise separable convolution)が基本となり構成されます。
分解することで計算コストを削減することができます。

#### dept

元記事を表示

insert or update on table “django_admin_log” violates foreign key constraint…というエラーが出た場合の処理

『動かして学ぶ! Python Django開発入門』のchapter11にて、起きたバグを解決したのでメモとして残す。

※レコードが全て消えます

全てのアプリのmigrationsフォルダの`__init__.py`以外を消す。
※ `__init__.py`も消してしまったら作り直す(中身は空でいい)
自分の場合は`diary/migrations`と`accounts/migrations`の中身を削除

`psql -d private_diary(自分が作成したDB名)`でDBに接続
※psql -h ホスト名 -p ポート番号 -U ロール名 -d データベース名を省略したコマンド

DB全削除

“`sql
drop schema public cascade;
create schema public;
“`

の後に

“`
python manage.py makemigrations
python manage.py migrate
“`
でテーブルを元に戻る

このエラーは本の書いてある通りに`./manage.py migrate`を行わない場合

元記事を表示

OTHERカテゴリの最新記事