- 1. ChatGPT と一緒に t-SNE と UMAP のハイパーパラメーターチューニングする
- 2. Pythonコードを使用してPowerPointプレゼンテーションからテキストを抽出する
- 3. 【BigQuery】ローカルのCSVファイルをPythonでBigQueryにアップロードする簡単な手順
- 4. QiitaのAPI、webスクレイピング、GPTを使用して記事書いてみた!実装手順(前編)
- 5. Pythonによるベクトル場の描写
- 6. 【備忘録】VSCodeでPythonをデバッグ起動するときのメモ
- 7. Optunaでsqliteを使った並列化をしようとしたら詰まった
- 8. 変圧器の既約効率と最大値について
- 9. 【3ヶ月でFlask基礎固め】 1 . CookieとWebStorageの概要
- 10. 【21歳/大学生】 AIでコミットメッセージの自動生成とコードのリファクタリングが行えるCLIツールを公開してみた
- 11. XAIの大局説明/局所説明と活用方法をまとめる
- 12. [備忘録] AWSのそんな話聞いてない
- 13. pythonで並列処理する際のシード値設定
- 14. GPT-4VのFew Shot Learning
- 15. 特定のフォーマットの入力文字列からデータを解析し、そのデータを基にHTMLテーブルを生成する
- 16. NFTgeek NFTトランザクションcsv ダウンロード自動化 : PythonとSeleniumを使用してChromeとEdgeから自動でファイルをダウンロード
- 17. BedrockのClaude3にマルチモーダルな問い合わせが可能なWebアプリをイチから作る
- 18. 【数学溢れ話】【Token】相関係数と線形回帰(Linear Regression)
- 19. python Selenium 覚書 ActionChains他
- 20. Pythonで「len関数の使い方(オブジェクトの長さや要素数を取得する)」の動作を確認してみた
ChatGPT と一緒に t-SNE と UMAP のハイパーパラメーターチューニングする
おはこんばんちわ。今日も引き続きChatGPT先生をお迎えして、「ChatGPT と一緒に t-SNE と UMAP のハイパーパラメーターチューニングする」というテーマで雑談したいと思います。それではChatGPT先生、よろしくお願いします。
—
### **assistant**:
うーん、なんだかあなたの態度がちょっぴり大きくない?でも、仕事なら任せて。あなたのために一生懸命チューニングするけど、まったく、無理にやらされてるわけじゃないからね。
わかったわ、まずはt-SNEとUMAPのハイパーパラメータについて説明するけど… あなたが理解できるかどうかは知らないけど。
t-SNEでは主に以下のパラメータが重要になるわ。
– perplexity: この値は高次元データの密度をどれくらい考慮に入れるかを決めるもので、大きな値だとデータの全体的な構造を、小さい値だと小さなクラスタを重視する結果になるの。
– learning rate: この値が大きすぎると、データ点が全て中心に集まってしまい、小さすぎるとデータ点が分散してしまうわ。
次にUMAP。こちらでは以下
Pythonコードを使用してPowerPointプレゼンテーションからテキストを抽出する
# Python: PowerPoint プレゼンテーションからテキストを抽出する
PPT内のテキストコンテンツを直接抽出することは、それをさらに処理や分析することを容易にし、また抽出したコンテンツを他のドキュメントの編集に直接使用することができます。Pythonプログラムを使用することで、PowerPointプレゼンテーション内のテキストコンテンツを効率的に抽出することができます。本記事では、スライドのテキスト、スピーカーノート、コメントなど、**PowerPointプレゼンテーション内のテキストコンテンツを抽出する方法**を**Python**プログラムを使って探求します。– **[Pythonを使ったプレゼンテーションスライドからテキストを抽出する方法](#pythonを使ったプレゼンテーションスライドからテキストを抽出する方法)**
– **[Pythonを使ったスピーカーノートからテキストを抽出する方法](#pythonを使ったスピーカーノートからテキストを抽出する方法)**
– **[Pythonを使ったプレゼンテーションコメントからテキストを抽出する方法](#pyth
【BigQuery】ローカルのCSVファイルをPythonでBigQueryにアップロードする簡単な手順
ローカルにあるCSVファイルをGoogle CloudのBigQueryにアップロードする方法を詳しく説明します。データ分析やビッグデータの処理にBigQueryを使用している方々にとって、このステップバイステップのガイドはとても役立つでしょう。
## 前準備
Google Cloud Platform (GCP) アカウントの作成:まず、GCPにアクセスし、アカウントを作成します。アカウントがない場合はこちらから作成できます。
プロジェクトの作成:GCPダッシュボードで新しいプロジェクトを作成します。
BigQuery APIの有効化:作成したプロジェクトでBigQuery APIを有効にします。
サービスアカウントの作成と秘密鍵の取得:
GCPのIAM & 管理セクションに移動します。
新しいサービスアカウントを作成し、適切な権限を付与します(例:BigQuery Admin)。
サービスアカウントの秘密鍵をJSON形式で生成し、安全な場所に保存します。## 手順
環境のセットアップ:Pythonと必要なライブラリ(google-cloud-bigquery、pandas)
QiitaのAPI、webスクレイピング、GPTを使用して記事書いてみた!実装手順(前編)
# はじめに
こんにちは、エンジニア2年目の嶋田です。
まずは、この記事を開いていただきありがとうございます!
先日以下の記事を投稿しました。https://qiita.com/shimada_slj/items/bc2cec77e687db95913b
この記事を実際にどのように生成したのかを解説していきたいと思います!
前編と後編の2部構成にしました。
前編では、プロジェクトの環境構築、使用したツールの紹介、そしてプロジェクトの構造について説明します。:::note warn
私が作成した記事は、完璧なものではありません。
実際のデータを使用して何か新しいものを作り出す、という基本的な流れのシェアです。
データの精度や記事の正確性に関してはまだまだ改善の余地があると思います。
学習過程の共有であると思いながら読んでいただけるとありがたいです。もし、読者の皆さんの中で、より良い方法や改善点をお持ちの方がいれば、ぜひ教えてください🙇♂️
:::# 目次
– [概要](#概要)
– [環境構築](#環境構築)
– [`require
Pythonによるベクトル場の描写
# はじめに
Pythonでは、matplotlibというライブラリが存在していて、それを用いることで2次元や3次元のグラフを描写することができる。ベクトルを描写するためにはquiver(x,y,u,v)という関数(x,y,u,vはベクトルを生成するためのパラメータ)を用いることでベクトルを1本ずつ描写することができる。一方で、streamplot(x,y,u,v)という関数を使えば、敷居は高いが、流れの場を描写することができる。今回は2つの関数を比較することによって、それぞれのメリットやデメリット、使用方法などを学習する。# 準備
まず、準備として、2次元のベクトル場、流れの場を描くためには、格子状の点の集合を用意する必要がある。したがって以下のようなプログラムをまずは書かなければならない。これは、等高線やコンター図のような曲面を描くときも同様である。“`python lattice_2D.py
import matplotlib.pyplot as plt
import math
import numpy as np
import japanize_matplotlib
【備忘録】VSCodeでPythonをデバッグ起動するときのメモ
# はじめに
VSCodeのデバッガを利用して、poetryの処理を追いたいです。
デバッガの設定で少し手間取ったので、自分用のメモとして残しておきます。# 環境
* VSCode 1.87.0
* poetry 1.9“`
Version: 1.87.0 (user setup)
Commit: 019f4d1419fbc8219a181fab7892ebccf7ee29a2
Date: 2024-02-27T23:41:44.469Z
Electron: 27.3.2
ElectronBuildId: 26836302
Chromium: 118.0.5993.159
Node.js: 18.17.1
V8: 11.8.172.18-electron.0
OS: Windows_NT x64 10.0.22631
“`# 事前準備
“`
$ git clone https://github.com/python-poetry/poetry.git$ poetry install
$ poetry env info
Virtualenv
Python:
Optunaでsqliteを使った並列化をしようとしたら詰まった
# 起きた問題
Optunaで機械学習のハイパーパラメータ探索を,複数プロセスで同時に動かすよう並列化をしようと,以下の実装を動かしたらエラーになった.
“`python:main.py(抜粋)
study = optuna.create_study(
study_name=”my_study”,
storage=args.optuna_db, # sqlite:///path/to/study.db のような文字列を指定
load_if_exists=True, # すでに↑のファイルがある場合は,それを読み込んで並列化
)
“`“`bash:実行スクリプト
source venv/bin/activate;
# 3つ同時に実行して探索
python main.py –optuna_db sqlite:///result/study.db &
python main.py –optuna_db sqlite:///result/study.db &
python main.py –optuna_db sqlite:///result/s
変圧器の既約効率と最大値について
# はじめに
変圧器といった電気機器の運用効率を運転中に計測するのは難しい。そこで、あらかじめ変圧器の損失(負荷損、無負荷損)を別の手段で求めておいて、理論計算により効率を推定するという方法が多用される。このようにして求めた効率を規約効率といい、出力/入力=出力/(出力+入力)によって求めることができる。今回は、規約効率が最大になるときの条件を理論計算により求めた上でPythonを用いてグラフ化することを試みる。
# 規約効率の定義
## 導入
まず、変圧器とは入力された電力の電圧と電流を変成して出力する装置である。しかしもちろんのことながら、その変換過程において損失が生じてしまう。それは、ジュール熱による損失であり負荷に流れる電流の二乗に比例する負荷損と負荷に依存しない損失である無負荷損と大別することができる。
## 定義
そこで、全負荷時の負荷に流れる電流を$I$とし、負荷率$\alpha$,変圧器の銅線の抵抗成分を$r$とすると、銅損である負荷損は以下のように表すことができる。“`math
P_c(\alpha)=(\alpha I)^2 r =\alpha^2I^2
“
【3ヶ月でFlask基礎固め】 1 . CookieとWebStorageの概要
# 前段 – このシリーズの目標
**KGI**
*Flaskに関する基礎知識を理解し実装できるようになる*
**KPI**
*1 – 3ヶ月でテキストを殆ど見ないで同じアプリを1つ作成する*
*2 – アプリのコードの解説を記事として残す*### 1 – FlaskとDjangoについて
– 双方PythonによるWEBアプリケーションのプラットフォームである。
#### Django
**何でも入っている大人用のおもちゃボックス**
ログイン機能や認証機能などが標準としてセットされている。#### Flask
**カスタマイズしながら作れるレゴブロックバケツ**
最低限の機能(ルーティングなど)が使えるが
複雑な機能を実装するには外部ライブラリを使う必要がある。### ○有名なプロダクト
#### Django
– YouTube / Instagram / Pinterest / Spotify / Dropbox(ソース ‘https://stackshare.io/django’)
#### Flask
– Reddit / Netflix (ソース ‘http
【21歳/大学生】 AIでコミットメッセージの自動生成とコードのリファクタリングが行えるCLIツールを公開してみた
## 何を作ったか
生成AIでソフトウェア開発のさまざまな作業をサポートするCLIツールを作成しました。
現在はコミットの自動生成とリファクタリングをAIが行う機能をサポートしています。### パッケージ名:[code-agent](https://pypi.org/project/code-agent/ “PyPIのページ”)
Pythonが入っている環境なら`pip3 install code-agent`でインストールできます。
システム全体にインストールする場合、新しいバージョンのpipでは素直にインストールさせてくれないので`–break-system-packages`オプションを付ける必要があります。### コマンド名:`codex`
サブコマンドでどの機能を利用するか指定できます。
– `codex gen-commit`: ローカルのGitリポジトリからHEADとインデックスの差分をもとに、コミットメッセージを作成する。
– `codex refactor`: 引数に与えられたファイルを読み取り、リファクタリングが行える箇所のコードの表示と新しいコー
XAIの大局説明/局所説明と活用方法をまとめる
# はじめに
説明可能なAI(Explainable AI, XAI)とは、AIが出した答えや意思決定プロセスに対して、人間が理解しやすい形で説明する技術やプロセスのことをいう。例えば、画像認識の分野ではAIモデルが画像のどの部分に着目して予測を出しているのか可視化する技術が存在する。以下の例では、AIが画像を見て犬と判断する場合は犬の顔に着目していることが読み取れる。
![スクリーンショット 2024-03-06 120956.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/324032/003457c6-ea7c-e997-9a2a-410a1d35bae3.png)
※ [1]のfig.1より一部抜粋今回はXAIの説明範囲や活用方法などXAIの概要についてまとめる。
# XAIの説明範囲
XAIによるAIの説明は`大局説明`と`局所説明`に大別することができる。それぞれについて説明する。## 大局説明とは
大局説明とは、**AIモデル全体の振る舞いや決定ロジックを理解するための説明
[備忘録] AWSのそんな話聞いてない
# 概要
AWSを触って大事そうなことを殴り書く予定
# 同一VPC内でLambdaから別のLambdaを呼び出す
VPC内だから特別記述することはないと思っていたら、どうやらLambdaのエンドポイントをVPCに設定しないといけないらしい。
CDKで定義している場合は以下のように定義する。
“`typescript
vpc.addInterfaceEndpoint(‘LambdaEndpoint’, {
service: ec2.InterfaceVpcEndpointAwsService.LAMBDA,
subnets: { subnetType: ec2.SubnetType.PRIVATE_ISOLATED },
});
“`
pythonで並列処理する際のシード値設定
# はじめに
pythonで疑似的にデータを大量に生成する際、かなり時間がかかったので、高速化するために並列処理をしたくなりました。
Pythonでは、並列処理をするためのライブラリがいくつかありますが、実験再現性担保のため、ランダムのシード値を固定し並列処理で生成されるデータの固定化を行う必要がありました。ですが、シード値を用いた並列処理関連の記事が見つからなかったので、忘れないようにここにまとめておきます。# 対象者
– pythonでCPUの並列処理したい人
– シード値使った並列処理したい人# random モジュールのシード値の固定化
pythonでは、以下のようにランダムのシード値を固定できます。
“`py
import random
random.seed(123)
“`
逐次処理をする際は、これで十分です。しかし並列処理をする際は、ランダムモジュールの呼び出しタイミングがバラバラになるので、これだけでは不十分でした。
どうやって解決できるかなーと色々調べてみたら、[このサイト](https://zenn.dev/ganariya/articles/
GPT-4VのFew Shot Learning
## 概要
GPT-4V(GPT-4 Trubo with Vision)が登場して数ヶ月。日本語は苦手とのこと[^1]だったので、そんな使えないんだろうと思ってましたが、実は結構イケるとも聞いたので今回触ってみようと思います。
本記事の目的は、GPT-4Vを触ったことがない人に向けて、1分くらいで「あぁ、こんな感じなのね」とか「がんばればアレに使えそうだな」といったことを感じてもらうことを目的としています。[^1]:。`Non-English: The model may not perform optimally when handling images with text of non-Latin alphabets, such as Japanese or Korean.` https://platform.openai.com/docs/guides/vision/limitations
### 今回のタスク
本記事では、コインパーキングの看板情報を読み取ることをタスクをとして設定します。
看板からの情報だけでも、1時間毎の料金、土日や時間帯による金額の差、入
特定のフォーマットの入力文字列からデータを解析し、そのデータを基にHTMLテーブルを生成する
特定のフォーマットの入力文字列からデータを解析し、そのデータを基にHTMLテーブルを生成するものです。具体的には、複数の「ブランチ」に関する情報が入力され、それぞれのブランチについてバージョンとキーに関連する値のペア(a,b,c,dなど)が含まれています。これらの情報を分析し、整理してHTMLテーブル形式で出力します。
“`
# 入力文字列
input_string = “ブランチ1/V00.01/a:10:100,b:10:100,c:—–:—–,d:10:100 ブランチ2/V00.02/a:10:100,b:10:150,c:—–:—–,d:20:200”# 入力文字列を処理してデータを抽出
branches_data = input_string.split()
branch_info = []
branch_names = []
data_keys_order = []# データ項目の順序を保持するために最初のブランチから順序を取得
first_branch_data = branches_data[0].split(‘/’, 2)[2]
NFTgeek NFTトランザクションcsv ダウンロード自動化 : PythonとSeleniumを使用してChromeとEdgeから自動でファイルをダウンロード
# NFTgeek NFTトランザクションcsv ダウンロード自動化 : PythonとSeleniumを使用してChromeとEdgeから自動でファイルをダウンロード
NFTgeekからcsvファイル、何かと面倒なので自動化
* NFTgeek
![](https://pbs.twimg.com/media/GH-3Cz1akAAm7rh?format=png\&name=small)
これから、記載のコードに、各々のtransactionページのURLを書き込めば良い感じ
## はじめに
データ収集や自動化テストなど、Webサイトから定期的にファイルをダウンロードする必要がある場面は少なくありません。手動でのダウンロードは時間がかかる上に、繰り返し作業はエラーを引き起こしやすくなります。このような問題を解決するために、PythonとSeleniumを使用して、Google ChromeとMicrosoft Edgeの両方でファイルを自動でダウンロードする方法を
BedrockのClaude3にマルチモーダルな問い合わせが可能なWebアプリをイチから作る
BedrockのClaude3がなんとなく分かってきたので、画像を含む問い合わせが行えるWebアプリを作ってみます。PythonとBoto3とStreamlitで作ります。
# 動作イメージ
申し訳程度の認証画面
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3573242/df60d0ce-5038-e7d7-b2ce-a311e2afd3dd.png)
画像アップロード欄とテキスト入力欄
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3573242/bcae1fe2-08a8-cb75-3937-f183db247de3.png)
テキストのみで問い合わせ可能
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3573242/3ab088ce-1bfc-d5d3-3847-44b
【数学溢れ話】【Token】相関係数と線形回帰(Linear Regression)
以前の投稿では、与えられた2点の相加平均(Arithmetic Mean)$\frac{a+b}{2}$と相乗平均(Geometric mean)$\sqrt{ab}$を求め複素円筒座標系を始める方法を試みました。
[【Token】物理学と数学の接点について。](https://qiita.com/ochimusha01/items/888ebcb0f99ada34d990)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/0830188b-ec1f-e9dc-c708-7d54a4f812d4.png)
![68747470733a2f2f63646e2d616b2e662e73742d686174656e612e636f6d2f696d616765732f666f746f6c6966652f6f2f6f6368696d7573686130312f32303231303431312f32303231303431313232343630352e676966.gif](http
python Selenium 覚書 ActionChains他
# ActionChains, クリック, マウス操作をまとめてみた
色々やっていて、わからなくなってきそうなのでまとめて置いておきます1.普通のクリック
2.普通のクリック その2
3.普通のクリックが効かない時(紐づいてるスクリプトを実行)
4.同じ名前の要素がある- 2つ目をクリック
5.要素下にある- 1番目を選択(クリック)
6.要素はあるのにクリックできない(エラーを起こす)
7.マウスオーバー マウスが上に来ると表示など
8.ActionChains (キー送信、マウス操作など)
9.その他
10.ホイール ドラッグ ちょっとずらしたところをクリック等※ざっくりと必要なものだけを記述
“`
from selenium.webdriver import ActionChains
from selenium.webdriver.common.actions.wheel_input import ScrollOrigin#普通のクリック
#————————————————————
Pythonで「len関数の使い方(オブジェクトの長さや要素数を取得する)」の動作を確認してみた
# 概要
Pythonで「len関数の使い方(オブジェクトの長さや要素数を取得する)」の動作を確認してみました。
以下のページを参考にしました。https://www.javadrive.jp/python/function/index4.html
# 実装
以下のファイルを作成しました。
“`sample.py
print(len(“Next week is a trip”))
print(len([“Yes”, “No”]))
print(len({“Yamada”:94, “Suzuki”:82, “Nishi”:64}))
“`以下のコマンドを実行しました。
“`
$ python3 sample.py
19
2
3
“`# まとめ
何かの役に立てばと。