Python関連のことを調べてみた

Python関連のことを調べてみた
目次

ラズパイ5でデュアルカメラを使ってみた[RaspberryPi5][Python][OpenCV][Picamera2]

# この記事でわかること
ラズパイ5へカメラモジュールを2つ差し,Python+OpenCVでデュアルカメラとして同時に画像撮影を行う方法

# 環境
#### Python
Python 3.11.2
opencv-python 4.9.0.80
picamera2 0.3.17

#### Raspberry Pi
Raspberry Pi 5 Model B Rev 1.0
Distributor ID: Debian
Description: Debian GNU/Linux 12 (bookworm)
Release: 12
Codename: bookworm

# 1秒ずつ撮影をするコード
RaspberryPi上で以下のコードを実行すると,Ctrl+Cが入力されるまで1秒ごとに2つのカメラで同時に撮影を行います.

“`Python:DualCamera.py
import cv2
from picamera2 import Picamera2
import time

def capture_image(camera0, camera1, image_ind

元記事を表示

「特徴量重要度」について少しだけ真剣に考えてみる

# はじめに
機械学習モデルを解釈する際には「特徴量重要度」がキーワードになってきます。**「特徴量重要度」には様々な指標があり、目的が違います。**
①feature importance、②permutation importance、③SHAP の3つについて説明していきます。

# 結論から言うと
3つの特徴量重要度を調べて、個人的に感じた結論を以下に書きます。

– ①feature importance:予測モデルを組む際に **「モデル」が重要視する因子が分かる** 。例えば決定木を考えた際にどの因子がノードの分割に寄与するのかを評価するイメージ。

– ②permutation importance:各特徴量が予測にどう寄与するかが分かる。**モデルの「予測精度」に影響する因子が分かる。**

– ③SHAP: **「予測結果」に対する各特徴量の寄与が分かる** 。それぞれのデータの予測にインパクトを与える因子が分かる。

# ①feature importance
ある特徴量で分割することでどれくらいジニ不純度を下げられるのかに基づいて計算される。
その特徴量の分

元記事を表示

OCI OpenSearchのk-NNをlangchainで試してみる

# はじめに
この記事では、Oracle Cloud Infrastructure (OCI) のOpenSearchサービスにおけるk-NN (k近傍法) を利用したセマンティック検索の設定とデモンストレーションを行います。
セマンティック検索は、単なるキーワードマッチングを超え、文書の意味的な理解に基づいて検索結果を提供する技術です。
本記事では、その基本的な概念から実際のデモ構築までをステップバイステップで解説します。

https://blogs.oracle.com/oracle4engineer/post/ja-oci-search-with-opensearch-211-ai-innovations

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2846649/75623393-c151-b7b8-94fb-51e2c06e4776.png)

# セマンティック検索とは
セマンティック検索は、検索語の文脈や意味を理解し、より関連性の高い検索結果を提供する技術です。

元記事を表示

tensorflowのRandomcropでエラーが出る

# dataaugmentaionとは
一般にデータ増強などと訳される処理のことであり、機械学習モデル(特にNN)において学習を行う場合に過学習しないように行う処理である。
過学習とは「モデルが学習データのみへ過剰に適合してしまう」ことである。dataaugmentaionは訓練データにランダムノイズを加えるなどして、最も学習させたい特徴量のみを学習させるよう(正規化)に仕向ける。

kaggleのlearnにあるcomputer visionコースの6コマ目が詳しく解説している。

https://www.kaggle.com/code/ryanholbrook/data-augmentation

またtensorflowにおけるdataaugmentaionの実装はtensorflowチュートリアルが詳しい

https://www.tensorflow.org/tutorials/images/data_augmentation?hl=ja

# 今回出たエラー
次のようなコードを実行した
“`python
def parse_tfrecord_fn(example):

元記事を表示

Poetryを使ってPythonライブラリを自動管理してみた

# はじめに
4月になり新しいプロジェクトが始まる季節ですね。
新入社員さんも多くなるこのタイミングで、改めて開発環境をきれいにしたいと思い、今回の記事をポストします。

今回はPoetryというパッケージを利用し、Python環境の構築、特に**ライブラリ管理を丁寧にしたい**というモチベーションで導入した記録です。
対話型インターフェースで環境を構築することができ、初心者でもスムーズに導入できました。

# Poetryとは
>Poetry は、 Python で依存関係を管理およびパッケージ化するためのツールです。これを使用すると、プロジェクトが依存するライブラリを宣言でき、ライブラリが管理 (インストール/更新) されます。Poetry は、繰り返しインストールを確実にするためのロックファイルを提供し、配布用にプロジェクトを構築できます。
引用:https://python-poetry.org/docs/

すなわち、
* Pythonのパッケージを自動管理してくれるよ!
* 共同開発するときや、違う環境に移行したいときでも、簡単にインストールできるようになるよ!

というも

元記事を表示

Sakana AIによる日本語基盤モデルEvoLLM-JPをMacBook(M2)で動かしてみた

[Supership](https://supership.jp/)の名畑です。今期アニメ「[忘却バッテリー](https://boukyaku-battery.com/)」は野球に興味がなくても楽しめそうな面白さと切なさと甘酸っぱさでございます。[OP](https://www.youtube.com/watch?v=Bcy8yp6iYGI)と[ED](https://www.youtube.com/watch?v=ry9Mlnj3lnc)も見事に合っています。

## はじめに

[Sakana AI](https://sakana.ai/)を取り上げたニュースをこれまでいくつも目にしてきました。

– [元グーグルの著名AI研究者2名、東京で「Sakana AI」を立ち上げ – ZDNET Japan](https://japan.zdnet.com/article/35207957/)
– [サカナAI、異能の群れ 創業1年で企業価値300億円 – 日本経済新聞](https://www.nikkei.com/article/DGXZQOUC21BDV0R20C24A30000

元記事を表示

Databricks にて replaceWhere による選択的上書き時におけるソースデータフレームが空の場合の動作検証

## 概要
Databricks にて replaceWhere による選択的上書き時におけるソースデータフレームが空の場合に、DELETE のみが実行されるかを検証しました。検証結果としては、DELETE のみが実行されました。DELETE のみを実行したくない場合には、レコードが存在しない場合には書き込み処理をスキップすることで対応できます。本記事では、検証コードとその結果を共有します。

“`python
## 対応方法
if df.limit(1).count() > 0:
(
df.write
.mode(“overwrite”)
.option(“replaceWhere”, ‘datasource in (“bbb.txt”,”ccc.txt”)’)
.saveAsTable(“replace_test.tbl_01”
)
)
else:
print(“ソースデータがないためスキップ”)
“`

![image.png](https://qi

元記事を表示

【Flickr】Pythonで画像収集してみた【API】

## 目次
[0.結論](#0-結論)
[1.はじめに](#1-はじめに)
[2.FlickrAPI取得](#2-flickrapi取得)
[3.スクリプトの説明](#3-スクリプトの説明)
[4.おわりに](#4-おわりに)

### 0. 結論
Python(FlickrAPI)を用い、目的の検索語句にて自動画像取集が可能。
FlickrAPI取得し、本内容をコピペすることで誰でも活用可能。

▼作成したスクリプト
[Get_Image_At_Flickr_For_Qiita.ipyb](https://colab.research.google.com/drive/1pPEDpwWwpCoBcsBuQN6TQ5Bfru1cHw9r?usp=sharing)

### 1. はじめに
機械学習を進める中で一つの大きなフェーズとして、学習に用いるデータ取集があります。

AIコンペティション参加するのであれば、用意されているデータセットを使うことで、データ取集を省略できます。

しかし、自ら課題設定を行い、AI開発を進めていく場合はデータ収集を自分で行う必要があります。

今回は画像

元記事を表示

PythonでIPO自動申込@SBI証券を実装してみた

## 目次
[0.結論](#0-結論)
[1.はじめに](#1-はじめに)
[2.IPO申込@SBI証券](#2-ipo申込sbi証券)
[3.IPO銘柄ランク確認](#3-ipo銘柄ランク確認)
[4.LINE通知](#4-line通知)
[5.おわりに](#5-おわりに)

### 0. 結論
Python(Selenium)を用い、SBI証券でのIPO申込(スクレイピングにより自動処理)が可能。
また、申込IPO銘柄のランクを取得し、その内容(申込IPO銘柄名とランク)をLINEにて通知。
本内容をコピペし、自身のSBI証券のパスワードへと書き換えることで、誰でも活用可能。

### 1. はじめに
2024年度から新NISAがスタートし、投資に興味が出ている人が多くなっていると感じます。

新NISAでの投資は投資信託、個別株への投資がメインだと思いますが、利益を得やすい投資手法として**IPO投資**というものがあります。

▼参考サイト
[IPOのメリット・デメリット](https://www.rakuten-card.co.jp/minna-money/securitie

元記事を表示

バイナリ乗算がXNORに置き換え可能な理由

# はじめに
話題の BitNet b1.58 の記事で「この技術によりGPUが不要になるかもしれない、NVIDIAなどの半導体関係の株価が…」となっていました。
その関連でいろいろ調べていくと、バイナリ乗算はXNORに置き換え可能というのが自分の中で最初に引っ掛かりました。

# XNORとは
論理回路である、XNOR(排他的論理和 XORの否定)は、同じ値 `1`、違う値 `0` になります。

|入力A|入力B|出力X|
|:—:|:—:|:—:|
|0|0|1|
|0|1|0|
|1|0|0|
|1|1|1|

>XNORゲートは1ビット加算器として機能する。すなわち、2つのビットを加算した結果の1ビット目が得られる。2ビット目の桁上がり(キャリー)は加算する2つのビットが1の時であるからANDゲートによって得られる。したがってXNORゲートとANDゲートを使って半加算器を構成できる。
[XNORゲート – wikipedia](https://ja.wikipedia.org/wiki/XNOR%E3%82%B2%E3%83%BC%E3%83%88)

# バ

元記事を表示

TURTLEBOT3 Waffle Pi 姿勢操作

# はじめに
カメラで姿勢を推定を行い,TURTLEBOT3を操作するインターフェースをROS 2上で作成しました.

# 環境
### Raspberry Pi
| | |
|:———–:|:————|
| デバイス | Raspberry Pi 4B |
| メモリ | 4GB |

##

元記事を表示

Pythonで「ディレクトリに含まれるファイルとディレクトリの一覧を取得する(pathlibモジュール)」の動作を確認してみた

# 概要

Pythonで「ディレクトリに含まれるファイルとディレクトリの一覧を取得する(pathlibモジュール)」の動作を確認してみました。
以下のページを参考にしました。

https://www.javadrive.jp/python/file/index6.html

# 実装

以下のファイルを作成しました。
“`sample1.py
import pathlib

p = pathlib.Path(‘./test/’)
for i in p.iterdir():
print(i)
“`
“`sample2.py
import pathlib

p = pathlib.Path(‘./test/’)
for i in p.iterdir():
if i.is_file():
print(‘[F]:’ + str(i))
else:
print(‘[D]:’ + str(i))
“`

以下のコマンドを実行しました。
“`
$ mkdir -p test/doc
$ mkdir -p test/img
$ touch test/addre

元記事を表示

【SoundFont作成効率化】Pythonで楽器からのサンプリング作業を劇的に早める方法

# はじめに

この記事は、こんな人の不満を解決します(特に自分)

**電子ピアノなどに収録されている楽器の音色や、持っている楽器の音からサウンドフォントを作りたいけど一つ一つのサンプリング作業が面倒くさすぎる!!** という声を、以下に劇的に改善します。

– 1.録音ソフトで録音を開始
– 2.音色を選択し、間隔を開けて音階の異なる音を次々に弾く
– 3.録音を終了し、一つのWAVに書き出す

例:WavePad
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1373557/abe8946f-8088-427b-367c-eb4ac70e7d8b.png)

– 4.本ツールを実行する⇒**自動で音階を認識し各音がファイル化される** <- この部分を効率化!! - 5.「Polyphone」などのサウンドフォントエディタで4の出力結果を読み込む - 6.設定してサウンドフォントを書き出す ## 参考:サウンドフォントとは 楽譜作成ソフト「Finale」の紹介ページの文章を引

元記事を表示

RAGを3行で書いて実務で使う(Goolge Colab + langchain)

## はじめに
初投稿になります。
私は戦略コンサル→マーケターという経歴のビジネスサイドの人間です。普段はエクセルでデータ分析をしたり、たまにPythonを触ったりしています。

この記事では私のような非エンジニアのビジネスサイドの人間でも、実務で「簡単に」「素早く」RAG(Retrieval-Augmented Generation)を使いこなす方法をまとめています。

具体的には、GoogleColab+langchainで実質3行で実装する方法を載せています。

## やりたい事
|名前|性別|年齢|
|—|—|—|
|田中|男性|25|
|山田|女性|35|
|・・・|・・・|・・・|

上記のようなデータを分析する際に、PandasやSQLのややこしいコードを書かずに、自然言語でデータ分析を実行できるようにします。

__現状:ややこしいコードを書く必要がある↓__
“`
grouped_df = df.groupby(‘性別’)[‘年齢’].mean()
filtered_df = df[(df[‘性別’] == ‘女性’) & (df[‘年齢’] >= 3

元記事を表示

ResNet18の転移学習で声優の顔認識をしてみた。

どうもエンジニアのirohasです。
普段からAI開発をメインに活動をしていますが、
今回はその人工知能のタスクの中で、画像認識分野で遊んでみたのでそれを記事にしていこうと思います。

# 目次
[1.はじめに](#1-はじめに)
[2.環境](#2-環境)
[3.転移学習とは](#3-転移学習)
[4.ResNet18の紹介](#4-ResNet18の紹介)
[5.データセットの前処理](#5-データセットの前処理)
[6.転移学習の設定](#6-転移学習の設定)
[7.学習](#7-学習)
[8.学習結果](#8-学習結果)
[9.テスト](#9-テスト)
[10.まとめ](#10-まとめ)
[11.参考文献](#11-参考文献)

# 1. はじめに
画像認識技術は、デジタル画像やビデオから情報を抽出し理解するコンピュータ科学の分野で、この技術は、さまざまなアプリケーションで活用されており、日常生活にも広く浸透しています。
 この技術について、ここでは初心者の方にもわかりやすく説明していきます。

### 画像認識とは?
画像認識は、コンピュータが画像の中の物体、人物、場所、行動

元記事を表示

kaggle ~タイタニック沈没事故の生存予測~ 決定木#1

こんにちは! 初投稿です!
kaggleのタイタニック沈没事故の生存予測を実施してみたので投稿します!:frowning2:
分かりやすくするためにプログラムの記述と結果を細かく記載しています。
今回は決定木を使いました!

“`ruby:ライブラリをインポート
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
import missingno as msno
from sklearn.tree import DecisionTreeClassifier
“`

“`ruby:データを取得
train = pd.read_csv(‘train.csv’) #学習用データ
test = pd.read_csv(‘test.csv’)  #予測データ
“`

“`ruby:trainデータを確認
train.head()
“`
結果↓
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/

元記事を表示

Pythonで〇×ゲームのAIを一から作成する その72 リセットボタンによるゲームのリセット

# 目次と前回の記事

https://qiita.com/ysgeso/items/2381dd4e3283cbed49a0

https://qiita.com/ysgeso/items/de4199ac562c694fb679

## これまでに作成したモジュール

以下のリンクから、これまでに作成したモジュールを見ることができます。

https://github.com/ysgeso/marubatsu/blob/master/072/marubatsu.py

https://github.com/ysgeso/marubatsu/blob/master/072/ai.py

## ルールベースの AI の一覧

ルールベースの AI の一覧については、下記の記事を参照して下さい。

https://qiita.com/ysgeso/items/10d1d01192c014173e4b

# ボタンによるゲームのリセット

前回の記事で、__〇×ゲーム__ を __GUI で遊べる__ ようになりました。今回の記事では、__ipywidgets__ を利用して、__ゲーム_

元記事を表示

AWS Lambda関数作成入門してみます。

# FaaS(Function as a Service):Lambdaとは
![Arch_AWS-Lambda_64.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3511203/1557e3c9-6f10-7eda-a726-f4dbc0d15978.png)

Lambda(ラムダ)とは、AWSのサービスの1つです。
小さな計算をサーバーなしで実行するためのサービスで、サーバレスなコンピューティングサービスなどと言う紹介のされ方が一般的です。関数の種類としては所謂イベントドリブン型と言われるやつで、特定のイベントでトリガーされ、関数が動くという仕組みです。ざっくり過ぎてすみません。

## Lamdaの料金体系
無料枠について。
アカウント作成時はLambdaの場合「1,000,000リクエスト/月」無料で使用可能です。個人開発の範囲であれば越えることはまずないと思います。

## 関数の作成

![スクリーンショット 2024-04-12 19.26.37.png](https://qiita

元記事を表示

Python-came3

What is BIF
BIF is BUilt-in function
dir(__builtins__) can show all BIF but can not run it in Vscode.
It can only be functional in IDLE.

practice
“”” 用Python设计第一个游戏 “””

temp = input(“请输入1-100之间的数字:”)

number = int(temp)

if 1<= number <=100: print("你妹好漂亮") else: print("你大爷好丑")

元記事を表示

OpenAIとLangChainを活用したジェンダーバイアス解消ツール「バイアスチェッカー」を作った話

# はじめに
こんにちは!
Webエンジニアをしている、かなです。

Qiitaの投稿がだいぶ久しぶりになっちゃいました。

現在、bgrass株式会社で女性ITエンジニア向けハイスキル転職サービス「[Waveleap](https://lp.waveleap.jp/)」の開発に携わっています。

この度、Waveleapの新機能として、企業向けのバイアスチェッカーをリリースしました!!

この機能の開発には、初めてOpenAIとLangChainを活用しました。どのようなプロセスを経て、この機能を実装したのかをご紹介したいと思います。

OpenAIやLangChainを用いて何か作りたいと考えている方の参考になると嬉しいです!

# バイアスチェッカーとは?
バイアスチェッカー?なにそれ?となってると思うので、この機能について先に説明します。

バイアスチェッカーは、求人票や求職者とのメッセージのやり取りの中で、ジェンダーバイアスを含む言葉遣いや、女性求職者が応募をためらうような表現がなされていないかをチェックし、より適切な表現を提案する機能になります。

![image1.png

元記事を表示

OTHERカテゴリの最新記事