「流行りのClaude Codeを使うときは仮想環境とGitを使うべし」という先人の教えがあったので、venvとGitを使ってClaude Codeを使ってみました。まだまだはじめたばかりなので効率的な使い方ではないと思いますが、ユースケースの一つとして読んでいただけたらと思います。
普段Python系の記事を書いている筆者がモバイルアプリを開発するためにFlutterを学びます。Flutterはクロスプラットフォームな開発フレームワークです。ここではPythonに慣れている人が簡単なアプリを作成し、動作テストするところまでをまとめます。
機械学習モデルの構築はPythonを使うのが一般的です。しかしモバイルアプリやその他組み込み環境に機械学習ができるレベルのPython環境を整えるのはかなりシンドイと思います。ここではPyTorchのモデルをTorchScript形式に変換し、容易にデプロイができる状態を目指します。
MacローカルにLlama3を入れてチャットするPythonコード
ChatCPTに代表されるように、世間ではLLMブームの最中です。ここでは課金が不要でローカル環境にもインストール可能なMeta社のLlamaをMacbookに入れる方法を紹介します。そして、PythonからLlamaを起動してチャットするコードも紹介します。
「ブログリーダー」を活用して、watさんをフォローしませんか?
「流行りのClaude Codeを使うときは仮想環境とGitを使うべし」という先人の教えがあったので、venvとGitを使ってClaude Codeを使ってみました。まだまだはじめたばかりなので効率的な使い方ではないと思いますが、ユースケースの一つとして読んでいただけたらと思います。
波形の比較手段の一つとしてDTW(動的時間伸縮)をPythonでコーディングしていきます。ここでは理解を深めるために数式とフルスクラッチのPythonコードを使って説明します。また、最後に外部ライブラリであるlibrosaを使ったコード例も示します。
普段Python系の記事を書いている筆者がモバイルアプリを開発するためにFlutterを学びます。Flutterはクロスプラットフォームな開発フレームワークです。ここではPythonに慣れている人が簡単なアプリを作成し、動作テストするところまでをまとめます。
機械学習モデルの構築はPythonを使うのが一般的です。しかしモバイルアプリやその他組み込み環境に機械学習ができるレベルのPython環境を整えるのはかなりシンドイと思います。ここではPyTorchのモデルをTorchScript形式に変換し、容易にデプロイができる状態を目指します。
ChatCPTに代表されるように、世間ではLLMブームの最中です。ここでは課金が不要でローカル環境にもインストール可能なMeta社のLlamaをMacbookに入れる方法を紹介します。そして、PythonからLlamaを起動してチャットするコードも紹介します。
日本語のテキストと音声を音素レベルで対応をとる強制アライメントツールpydominoを使ってみました。pydominoのインストールから使い方、音素対応表の紹介を行っています。また、実際に母音や子音を含む音声データを波形やスペクトログラムで可視化しながら結果の検証を行いました。
機械学習を活用したアプリ開発を学ぶ第一歩として、PyTorchを使った手書き文字認識(MNIST)に挑戦します。本記事では、モデルの学習から検証までのコードを習得しましょう。MNISTの学習ができるようになれば、自分のデータで学習モデルを作成することもできるようになります。
PythonでGUIアプリを作成できるPyQt5を使って、WATLABブログでは幾度も挑戦してきた音声分析ソフトをつくってみます。今回はChatGPTのヘルプももらってドラッグ操作やダブルクリック操作の実装、マルチウィンドウ機能といった本格的なGUIアプリにしてみました。
電子工作分野のHello World!とも呼ばれるLチカ(LED点灯)をやってみます。ラズパイを使うとPythonでGPIOを使ったプログラミングが可能です。ただ光らせるだけだと面白くないので、この記事ではLEDを順番に光らせる「流れるウィンカー」をつくりながら動作原理を確認します。
ラズパイ(Raspberry Pi)には最初からPythonが入っていますが、もともと入っているPythonはそのまま残して最新のPythonをインストールする方法をまとめます。さらに、venvを使った仮想環境の準備やVSCodeの準備も含め、一般的なPythonプログラミングができる環境を整えるところまでを紹介します。
FFTの応用であるSTFTを使ったスペクトログラムは周波数波形の時間変化がわかるため、音声解析でよく使われます。これまでWATLABブログではwavファイルや生成した波形からスペクトログラムをつくっていましたが、この記事ではリアルタイムにスペクトログラムを計算する方法を紹介します。
2024年3月に新発売したM3チップ搭載のMacbookを最近購入したので、早速Pythonプログラミング環境を構築します。今回は主に自分用に最もポピュラーな仮想環境構築手法であるvenvとVSCodeによるPython環境構築の備忘録を残します。
WATLABブログからついに「いきなりプログラミングPython」という書籍が出版されました!この記事では著者watによる書籍制作のきっかけ、流れ、感想をつらつらとまとめておきます。貴重な「自分の本を出す」という体験を文章で伝えます。
Pythonを使えば、リアルタイムの音声録音と解析も簡単に行えます。まずPyAudioで音声を録音し、次にScipyでFFT(高速フーリエ変換)を使って解析を行います。しかし、これをスムーズに行うには並列処理が欠かせません。ここでは、Pythonのthreadingモジュールを駆使して、リアルタイムで音声を録音しながらFFT結果を表示する方法を紹介します。
MS-Wordは多くの企業で使われている文書ファイル作成ソフトですが、様々なプラットフォーム間で文書のやり取りをする場合に不便です。対してMarkdownはフリーでわかりやすく、多くのエンジニアに愛されています。ここではPandocとPythonを使って.docxをMarkdownに変換する方法を紹介します。
Pythonを使えば、普段の会話を精度良く翻訳するアプリも簡単につくることができます。まずspeech_recognitionによる音声認識技術を使い、音声をテキストに変換、そして次にdeep_transtatorを使ってテキストを任意の言語に翻訳します。ここではこれらを駆使したPythonプログラムの例を紹介します。
音声のピッチ(音程)を変える方法の1つにピッチシフトという方法があります。Pythonのlibrosaというライブラリを使えば数行のコードでピッチシフトを行うことが可能です。ここではサンプルの音楽ファイルを使ってlibrosaのピッチシフトを使う方法を紹介します。
Pythonのscipy.integrate.quadやscipy.integrate.dblquadを使えば簡単に数値積分ができますが、当然結果はシンプルに積分値が返ってくるだけです。ここでは他者へ説明する目的で基本的な1重積分をはじめ、2重積分までのmatplotlibによる可視化方法を紹介します。
数値解析の分野ではガウス積分という求積手法がよく用いられます。ガウス積分はルジャンドル多項式を使って積分点と重みを算出しますが、初学者はまずこれらの概念を理解するのが難しいです。この記事では簡単な関数を題材にガウス積分を計算する方法をPythonコードと共に紹介します。
有限要素法は一般的に商用ソフトやオープンソースのライブラリを活用して「使う」ことが多いものですが、理解するためには自分でプログラミングするのが一番です。ここでは手計算でもできるレベルの問題をPythonによる有限要素法コードで解くことで、計算の流れを把握することを目指します。
FFTの応用であるSTFTを使ったスペクトログラムは周波数波形の時間変化がわかるため、音声解析でよく使われます。これまでWATLABブログではwavファイルや生成した波形からスペクトログラムをつくっていましたが、この記事ではリアルタイムにスペクトログラムを計算する方法を紹介します。
2024年3月に新発売したM3チップ搭載のMacbookを最近購入したので、早速Pythonプログラミング環境を構築します。今回は主に自分用に最もポピュラーな仮想環境構築手法であるvenvとVSCodeによるPython環境構築の備忘録を残します。
WATLABブログからついに「いきなりプログラミングPython」という書籍が出版されました!この記事では著者watによる書籍制作のきっかけ、流れ、感想をつらつらとまとめておきます。貴重な「自分の本を出す」という体験を文章で伝えます。
Pythonを使えば、リアルタイムの音声録音と解析も簡単に行えます。まずPyAudioで音声を録音し、次にScipyでFFT(高速フーリエ変換)を使って解析を行います。しかし、これをスムーズに行うには並列処理が欠かせません。ここでは、Pythonのthreadingモジュールを駆使して、リアルタイムで音声を録音しながらFFT結果を表示する方法を紹介します。
MS-Wordは多くの企業で使われている文書ファイル作成ソフトですが、様々なプラットフォーム間で文書のやり取りをする場合に不便です。対してMarkdownはフリーでわかりやすく、多くのエンジニアに愛されています。ここではPandocとPythonを使って.docxをMarkdownに変換する方法を紹介します。