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

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

【Python】SSL関係でエラーが発生

# エラー文
“`
URLError
“`

# 解決方法
“`python
import ssl

ssl._create_default_https_context = ssl._create_unverified_context
“`

エラーが出るコードに上記のコードを追加することで解決した。

# おわり
詳しくはわかりませんが、
検証されていないSSLを使えるようにするコードだと思うので、セキュリティ的にはよろしくないと思います。

元記事を表示

Pythonを使ってOffice文書をPDF変換してみた

## はじめに

Pythonを使ってOffice文書をPDF変換してみました。
※ [[LibreOfficeのsofficeコマンドでOffice文書をPDF変換してみた](https://qiita.com/mingchun_zhao/items/bb7166b808bfbccf39fa)]も合わせてご参照ください。

## やりたいこと

Pythonを使って、Office文書をPDFに変換したい。

## 解決方法

Pythonのsubprocessモジュールを用いて、sofficeコマンドを実行する。

## 前提知識: [LibreOfficeのユーザプロファイル](https://wiki.documentfoundation.org/UserProfile/ja)

– ユーザーに関連するすべてのデータを格納するフォルダ
– 拡張機能やカスタム辞書、テンプレートなど
– LibreOfficeをアンインストールやアップデートしても削除されない
– カスタマイズした内容は保存される
– デフォルトの格納場所
– Windows: `%APPDA

元記事を表示

AWS SAMを使って最もシンプルにLambda × S3 のS3イベント駆動プログラムを構築する

# 概要

今回は以前から紹介しているAWS LambdaのAWS サーバーレスアプリケーションモデル (Serverless Application Model)、AWS SAMの続編になります。

【以前の記事】
導入編:[AWS Lambda SAMとは?~AWS SAMを使ってPythonのLambdaプログラムを簡単に作成する~](https://qiita.com/fkooo/items/2dc5ded5149379d7305a “AWS Lambda SAMとは?~AWS SAMを使ってPythonのLambdaプログラムを簡単に作成する~”)
第1回:[AWS SAMを使って最もシンプルにLambda × APIGatewayのWebAPIを構築する](https://qiita.com/fkooo/items/e08cdea0f73f60dabd3d “AWS SAMを使って最もシンプルにLambda × APIGatewayのWebAPIを構築する”)
第2回:AWS SAMを使って最もシンプルにLambda × S3 のS3イベント駆動プログラムを構築する

第1

元記事を表示

AIを使ってローマ皇帝ネロを現代に呼び出してみた

# はじめに
**人類に不可能はない。**
「人間に近いAIの作成」と「過去の人物と話すこと」はどちらも人類の夢だった。今回は言語モデルを使って過去の人物との会話を再現することで2つの夢を一気に叶えてしまおうという試みである。

## なぜネロ帝にしたのか
なんとなく[^1]。強いて理由を上げるなら皇帝らしからぬ芸術への熱中や人間関係などエピソードが多く、個性がわかりやすかったことだろう。最後に少し触れることになるが、他の人で試した時よりよい結果が出たのできににしてみた、ということもある。

# 技術について
使用したものと同じコードはGoogle Colabから実行することができる。

https://github.com/acidrefluxreflex/ChatAI-Japanese

## 参考記事
日本語言語モデルを使った会話応答プログラムに関してはすでに素晴らしい記事があったので参考にさせていただいた。言語モデルもこれと同じくjapanese-gpt-1bを使用している。

[13億パラメータのGPT日本語学習済みモデルが出たので会話応答を生成してみた – Qiita

元記事を表示

imbalanced-learnのRandomUnderSamplerでアンダーサンプリング

[`imbalanced-learn`パッケージ](https://imbalanced-learn.org/stable/index.html)の[`RandomUnderSampler`関数](https://imbalanced-learn.org/stable/references/generated/imblearn.under_sampling.RandomUnderSampler.html)でアンダーサンプリングの方法です。注意点を含めていくつか書いておきます。imbalanced-learnには他のアンダーサンプリングやオーバーサンプリング、両者を同時に行う関数など様々あります。まずは入門として[`RandomUnderSampler`関数](https://imbalanced-learn.org/stable/references/generated/imblearn.under_sampling.RandomUnderSampler.html)を使いました。
関連トピックとして以下の記事があります。

https://qiita.com/FukuharaYohei

元記事を表示

Pascal CaseとCamel CaseとSnake Caseを相互に変換する

変数やクラスの名前が複数の単語を連結したものである場合、プログラミング言語やコード規約によっていろいろなつなぎ方をします。

* パスカルケース (Pascal Case)
* 単語ごとに先頭大文字、他は小文字
* 例: PascalCase
* 使用例: JavaScript/TypeScriptやJavaのクラス名、など
* キャメルケース (Camel Case)
* パスカルケースとほぼ同じだが、最初の単語は全部小文字
* 例: camelCase
* 使用例: JavaScript/TypeScriptやJavaの変数名・メソッド名など
* スネークケース (Snake Case)
* 単語をアンダースコア(`_`)で区切る。全部小文字
* 例: snake_case
* 使用例: Pythonのメソッド名、変数名、など
* ケバブケース (Kebab Case)
* 単語をハイフン(`-`)で区切る。全部小文字
* 例: kebab-case
* 使用例: HTML, CSSなど

元記事を表示

StrongSORTを用いた物体追跡

自分で作成した物体検出モデルを用いて,追跡したい方には必見の内容です.
この記事では,どんな物体検出モデルを用いても,その物体を追跡することが可能な方法を説明します.
今回は,以下のGitHubのリポジトリを使用し,説明していきます.
[GitHub:faces-detection-strongsort](https://github.com/ysenkun/any-model-strongsort “GitHub”)

## 目次
– Opencvの顔検出モデルを用いた顔追跡
– 他の物体検出モデルを用いた追跡方法

## 環境
– Google Colaboratory

## Opencvの顔検出モデルを用いた顔追跡
今回使用するGitHubのリポジトリをクローンします.
“`bash
$ git clone https://github.com/ysenkun/faces-detection-strongsort.git
“`

Opencvの顔検出モデルである「haarcascade_frontalface_default.xml」をダウンロードします.faces-det

元記事を表示

Pythonのパッケージマネージャなど周辺のメモ

# 一覧表

| 名前 | パッケージマネージャ | バージョン管理法 | 仮想環境 | 備考 |
| — | — | — | — | — |
| pip | ○ | requirements.txt | × | python3.4以降には自動的に付帯 |
| virtualenv(venv) | × | – | ○ | |
| pyenv | × | – | ○ | nodeenvみたいなもの |
| pipenv | ○ | Pipfile / Pipfile.lock | ○ | パッケージをインストールする際、自動的に仮想環境が作られている |
| poetry | ○ | hoge.toml / poetry.lock | ○ | |

# 参考リンク

– [https://qiita.com/gao_gao/items/c0dc935c6b14d090a35c](https://qiita.com/gao_gao/items/c0dc935c6b14d090a35c)
– [https://qiita.com/caad1229/items/325

元記事を表示

【Pytorch】2.5DのUNetを実装する

# はじめに
[【前回】UNetを実装する](https://qiita.com/gensal/items/03e9a6d0f7081e77ba37)
本記事は前回の記事の続きとなります。前回はMRIの3D情報から小腸・大腸・胃の領域を予測する為に3DのUNetを実装しました。
しかし、データ数が足らずうまく予測が出来ないという結果になりました。そこで今回は深さ方向に一定の間隔でデータを切ることで、データ数の不足を補うことを目指しました。また、2DのUNetと3DのUNetを組み合わせてモデルを構築し、精度よく予測可能かどうかの検証を行いました。

# UNet
[【参考】セグメンテーションのモデル](https://www.skillupai.com/blog/tech/segmentation1/)
[【原著論文】U-Net: Convolutional Networks for Biomedical Image Segmentation](https://arxiv.org/abs/1505.04597)

UNetはセグメンテーションと呼ばれるタスクを処理するために考案されたモ

元記事を表示

macターミナルでの処理が完了したらLINEに通知する

## macターミナルでの処理が完了したらLINEに通知する
### 本記事の目的
そろそろ処理終わってるかな?と、ターミナルを覗きに行く時間をなくすことです。
この時間がなくなると、他の作業に結構集中できます。
ソフトウェアエンジニアや機械学習エンジニアで、時間のかかる処理(コンテナのビルド・デプロイや、パラメータのチューニングなど)をターミナルで行っている方にぜひお試しして頂きたいです。

### 手順
1. LINENotifyのトークンを発行する
1. pythonファイルを作成(pythonを書けない方でも大丈夫です)
1. ターミナルでの処理実行文を作成

### LINENotifyのトークンを発行する
[こちら](https://qiita.com/chivi_dump/items/a62a7b8c32e6ea894a09)の記事がとても参考になります。

### pythonファイルを作成(pythonを書けない方でも大丈夫です)
以下のファイルを作成します。
“`notify.py
import requests

def main():
send_lin

元記事を表示

【ubuntu】kindlegenとkindle comic converter Linux版が配布終了していたが、無理やり導入してみた

ゆくゆくは指定したフォルダーにrar形式のドキュメントを置くだけで自動的にmobi形式ドキュメントを生成し、kindleをラズパイに接続するだけで、生成したmobi形式の書籍をkindleにインポートするシステムを目指します。

今回は前準備として、ubuntuでrar形式からmobi形式に変換するソフトを導入してみました。

# 実施環境

* Raspberry Pi 3 Model B
* Ubuntu 22.04 LTS
* Kindle Oasis (第9世代)

# 導入手順

1. Linux版kindlegenをインストール
2. kindle comic converterを導入
3. kindle comic converterを実行

# 1.Linux版kindlegenをインストール

kindlegenとは?
[Amazon公式サイト kindlgen説明文](https://www.amazon.com/b?node=23972728011&ref_=cs_fdm_1000765211-23972728011)
>Latest Kindle Convers

元記事を表示

(自分用)Pythonによるデータサイエンスで覚えるほどではないがよく使うコード集

完全に自分用です。
適宜アップデートしていきます。
複数環境での検証などはしておりません、また、解決方法の網羅性なども全く担保しておりませんので、万が一参考にされる場合はその点ご了承ください。

## pandas編
### csvファイルをエクセルで読み込める文字コードで出力
“`python
# エンコードとして、’utf-8-sig’を付与
df.to_csv(‘./df.csv’, encoding=’utf_8_sig’)
“`

### jupyter notebook上で表示出来る最大列数を変更
“`python
# 第二引数で表示列数を指定
pd.set_option(‘display.max_columns’, 50)
“`

## matplotlib編
### 日本語の表示
“`python
import matplotlib.pyplot as plt
# 使用できるフォントは環境(主にOS)によって違うと思います
plt.rcParams[‘font.family’] = “MS Gothic”
“`

## 参考元
– [Jupyter not

元記事を表示

【Pytorch】3DのUNetを実装する

# はじめに
[【前回】UNetを実装する](https://qiita.com/gensal/items/03e9a6d0f7081e77ba37)
本記事は前回の記事の続きとなります。前回はMRIの各断面の画像から小腸・大腸・胃の領域を予測する為に2DのUNetを実装しました。
しかし、MRI画像は本質的には幅×高さ×深さの3Dの情報を有しており、2DのUNetではこれを幅×高さの2Dの画像として学習するため、深さ方向の情報を失っていると考えられます。そこで今回は3DでUNetを実装し、2Dと同様に臓器の領域を予測することが可能か調べました。

# UNet
[【参考】セグメンテーションのモデル](https://www.skillupai.com/blog/tech/segmentation1/)
[【原著論文】U-Net: Convolutional Networks for Biomedical Image Segmentation](https://arxiv.org/abs/1505.04597)

UNetはセグメンテーションと呼ばれるタスクを処理するために考案されたモ

元記事を表示

Markdownでレポートを書きたい2

こちらの記事は,[Markdownでレポートを書きたい](https://qiita.com/tt_and_tk/items/e16c524c9e647813d6e8)の続きです.

# レポートを楽に,綺麗に書きたい
※読み飛ばしOK

レポートを書くというのは,非常に時間のかかる行為です.できるだけ効率的に短時間で,でもきれいに書きたいという気持ちは多くの学生が抱いていることと思います.
そこで前回の記事ではMarkdownでレポートを書くということを考え,表紙や図番号などを作りました.でも,図番号については[こちらの記事](https://qiita.com/fujino-fpu/items/eeafe3143ae40addff84)などいろいろなところで紹介されている通りすでにあるようです.

いったん話は変わりますが,学校で求められるレポートは意外と多岐にわたります.「この社会問題について,自分の意見をA4二枚にまとめて」と言われることもありますし(実際に言われた),「この日の授業は来れないから代わりに練習問題を解いて提出したら出席扱いにする」と言われることもあります(実際に

元記事を表示

JupyterNotebookの導入およびBigQueryへの接続手順

BigQueryのデータをJupyterNotebookで可視化したいと思ったが、まとまってる手順が見たあらず苦戦したので手順をメモしておきます。
Googleの認証周り色々ありすぎてよくわかってないです…。

不明な点や誤ってる点などあれが気軽にコメントいただけると嬉しいです。

## 前提
BigQueryが使える状態にあることが前提です。

## 環境
Windows 10

**導入したソフトなどのバージョン**
python 3.9.12
conda 4.12.0
anaconda 2022.05

“`
>conda -V
conda 4.12.0

>python -V
Python 3.9.12

>conda list anaconda$
# packages in environment at C:\jupyter:
#
# Name Version Build Channel
anaconda 2022.05 py39

元記事を表示

SQLに力を:Databricks SQLにおけるPython UDFのご紹介

[Power to the SQL People: Introducing Python UDFs in Databricks SQL \- The Databricks Blog](https://databricks.com/blog/2022/07/22/power-to-the-sql-people-introducing-python-udfs-in-databricks-sql.html)の翻訳です。

:::note warn
本書は抄訳であり内容の正確性を保証するものではありません。正確な内容に関しては原文を参照ください。
:::

先月のData & AIサミットでDatabricks SQL(DBSQL)におけるPythonユーザー定義関数(UDF)のプレビューを発表できたことを大変嬉しく思っています。このブログ記事では、新機能の概要を説明し、本機能とそのユースケースを説明するサンプルをウォークスルーします。

Python UDFを用いることで、ユーザーは簡単かつセキュア、そして完全に管理された方法を通じて、SQL関数を通じてPythonコードを記述し、呼び出すこ

元記事を表示

【2022年版ベストプラクティス】AWS IAMまとめ

# はじめに
**AWSのアクセス制御サービス**である**IAM**について、2022年7月時点での機能および使用法を、初学者でも理解しやすいことを心掛けてまとめました。

IAMをよく分からないまま**適当に設定するとセキュリティ的にまずい**ので、これを機に設定を見直して頂き、セキュリティレベル向上に貢献できれば幸いです。

特に、後述する[**IAM設定手順**](https://qiita.com/c60evaporator/items/0121399880625cc1de51#iam設定手順)は、**AWSに登録して最初に実施すべき設定**に相当するため、セキュリティに興味がなくとも一度は実施することをお勧めします。

また[**公式のベストプラクティス**](https://qiita.com/c60evapora

元記事を表示

ガウス過程 from Scratch MCMCと勾配法によるハイパーパラメータ最適化

前回執筆した「[ガウス過程 from Scratch](https://qiita.com/meltyyyyy/items/8440849532cd55da1e45)」では、 **ガウス過程(Gaussian Process)** をゼロから実装することで、ガウス過程への理解を深めました。

前回の記事では回帰を行うときにカーネルのハイパーパラメータをあらかじめ良い値に設定してありました。しかしながら、ガウス過程を実際用いる場合には最適なハイパーパラメータは事前にわからない状態であることがほとんどです。

今回の記事では、ガウス過程のハイパーパラメータ最適化を実行するプログラムをゼロから実装することで、背景にある数学的な理論を理解することを目的とします。

一般的にガウス過程のハイパーパラメータ最適化の文脈で用いられるのは、 **マルコフ連鎖モンテカルロ法(Markov chain Monte Carlo method、以下MCMC)** か **勾配法(Gradient Decent method)** です。この記事では、MCMCと勾配法の両方の実装を行なっていきます。

※注意

元記事を表示

Python:Numbaを使って処理を高速化する

# はじめに
大量のデータを扱う場合や複雑な処理をする場合でも、アルゴリズムを工夫することで高速化が吐かれ流ことがありますが、アルゴリズムに関する知識が必要です。

PythonのパッケージであるNumbaを使うことで簡単に高速化することができます。

今回私が実験した環境は、

MacOS 12.4(Monterey)
CPU 1.2 GHz デュアルコアIntel Core m3 
Python 3.8.2
Numba 0.55.2

# Numbaのインストール
以下のコマンドでインストールできます。

“`zsh
pip install numba
“`

# ループ処理による高速化処理の実験
大量の数値データの平均を計算させるプログラムを考えます。

– 単純にループで足し算してデータ量で割る。
– Numpyパッケージのmean関数を利用する
– Numbaで単純ループ処理の関数をコンパイルする

では見ていきます。

## 単純ループ処理

“`python:sample01.py
import numpy as np

n = 10_000_000 #1千万回

元記事を表示

ABC246 D Dif:1148 『AtCoder ABC226~250 ARC129~139 灰・茶・緑問題 超詳細解説』サンプル

この記事は **『AtCoder ABC226~250 ARC129~139 灰・茶・緑問題 超詳細解説』** のサンプルです。

値段:**300円(Kindle Unlimited対象)**
**【kindle】**

**【booth(pdf)】**
https://sano192.booth.pm/items/4025713

**ARC129~139の部分のみ抜粋した廉価版** もあります。
値段:**200円(Kindle Unlimited対象)**
**【kindle】**

**【booth(pdf)】**
https://sano192.booth.pm/items/4025737

**【サンプル一覧】**
ABC228 A:https://qiita.com/sano192/private/f8f09ea769f2414a5733
ABC249 B:https://qiita.com/sano192/priv

元記事を表示

OTHERカテゴリの最新記事