uvは超高速なPythonパッケージマネージャ 仮想環境作成・パッケージ管理・Pythonバージョン管理を一元化 Rust製で10〜100倍の速度向上
![Pythonパッケージ管理 [uv] 完全入門](https://cdn-ak-scissors.b.st-hatena.com/image/square/5eb3a78647bb994227e2b72139af64db0d7f33f3/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2F8e1ff1eaedc0427bbc88de937a2aa2f6%2Fslide_0.jpg%3F35132442)
Jetbrains製のIDEであるIntellij IDEAやPyCharmを使っていた時、tensorflow.keras以下がコード補完できなかった。 標準ライブラリや他のライブラリは補完されており、tensorflowもkeras以外は補完されていたので、tf.keras特有の問題ではないかと思った。 tensorflowの__init__.pyを編集することで解決できた。 まずは site-packages/tensorflow/__init__.py を開く。 import tensorflow の tensorflow にカーソルを合わせて ⌘B を押せば飛ぶことが出来る。 387行目辺り。 _keras_module = "keras.api._v2.keras" keras = _LazyLoader("keras", globals(), _keras_module) _
起こったこと 概ねタイトル通りだが、詳しく状況を記載していく。 筆者は普段、VSCodeのPylanceのanalyzerおよび補完機能を使用してPythonコードを書いている。ところが、TensorFlowのバージョン更新を境にtf.keras名前空間に属するモジュールの補完が効かなくなってしまった(その他のライブラリや関数では補完が効くので、VSCodeの破損ではない)。 tf.kerasにはlayersやmixed_precisionなども属しているため、影響はかなり致命的である。 ちなみに、詳しくは後述するが、TensorFlowのバージョンやコードの書き方によって補完の有無は大きく左右されるようなので、「同じように悩んでいた」という方もいれば、「TensorFlow使ってますが事もありませんよ?何かの間違いでは?」という方もいらっしゃるかもしれない。 原因 どうやら、アップデート
次期Python、ついにJITコンパイラ搭載の見通し。「copy-and-patch」と呼ばれる新たなJITコンパイラの仕組みとは? 機械学習やAI処理の分野を中心に非常に高い人気のプログラミング言語である「Python」の次期バージョンに、処理速度の向上を目指したJITコンパイラが搭載される見通しです。 このJITコンパイラは、PythonコアデベロッパーのBrandt Bucher氏が提案し、実装しています。 そしてPython Software FoundationのフェローであるAnthony Shaw氏がブログ「Python 3.13 gets a JIT」で、このJITコンパイラについて解説しています。 これらの情報を元に、PythonのJITコンパイラがどのように実装されようとしているのか、少し紹介していきましょう。 RubyもJavaScriptもJITが高速化を実現してき
指針 厳密解法に対しては、解ける問題例の規模の指針を与える。数理最適化ソルバーを使う場合には、Gurobi かmypulpを用い、それぞれの限界を調べる。動的最適化の場合には、メモリの限界について調べる。 近似解法に対しては、近似誤差の指針を与える。 複数の定式化を示し、どの定式化が実務的に良いかの指針を示す。 出来るだけベンチマーク問題例を用いる。OR-Libraryなどから問題例をダウンロードし、ディレクトリごとに保管しておく。 解説ビデオもYoutubeで公開する. 主要な問題に対してはアプリを作ってデモをする. 以下,デモビデオ: 注意 基本的には,コードも公開するが, github自体はプライベート そのうち本にするかもしれない(予約はしているが, 保証はない). プロジェクトに参加したい人は,以下の技量が必要(github, nbdev, poetry, gurobi); ペー
bicycle1885.hatenablog.com こちらの記事を拝見していて、ちょっと気になったので注釈。 PythonやRを使っている人で、ある程度重い計算をする人達には半ば常識になっていることとして、いわゆる「for文を使ってはいけない。ベクトル化*1しろ。」という助言があります。 これは、PythonやRのようなインタープリター方式の処理系をもつ言語では、極めてfor文が遅いため、C言語やFortranで実装されたベクトル化計算を使うほうが速いという意味です。 昔からよくこういう言い方がよくされるが、本当にPythonのfor文は遅いのだろうか。 聞くところによるとRのfor文はガチで遅いそうだが、Pythonの計算が遅いのはインタープリタ方式だからでも、for文が遅いからでもない。もちろん、Pythonはインタープリタなので遅いし、for文だって極めて遅い。しかし、これはPyt
Python実践入門 ── 言語の力を引き出し、開発効率を高める (WEB+DB PRESS plusシリーズ) 目次 目次 はじめに 通常のclassとdataclassの比較 dataclassの良いところ データを格納する箱であることを明確にできる。 クラス定義を短くかける 型情報を書くことでデータ構造が見やすくなる。 Printしたときに、そのままオブジェクトの中身を表示できる。 asdict関数でdictに変換できる。(Dictから簡単にJSONにも変換できる) Dict(JSON)からdataclassを作ることもできる Frozen引数を使うことで、簡単にイミュータブルにもできる。 データが作られたときに、自動後処理機能を追加することができる。 dataclassの残念なところ コレクションの初期化 参考資料 MyEnigma Supporters はじめに C++ユーザやJ
仕事の関係で「pythonスクリプトを納品するが、コードが解読されてはならない、なんとかならないか」という相談を受けた。 イメージとしては、windowsの.exeでビルドされたアプリケーションのようなものにしたい、とのことだった。 結論から言うと、PyArmorというツールを使って比較的容易に、堅牢なプロテクトを施すことができた。 4つの難読化手法 「python obfuscate(=難読化)」で検索すると、様々なhowtoがヒットする。 いくつかの手法を試してみたが、どれもしっくりくるものがなく、最も信頼できるPython.orgの公式wikiから読み解くことにした。 このwikiを日本語に訳し、実際にツールを利用して難読化を試した検証結果を記載する。 1.バイトコード(.pyc)で機能を提供する pythonコードのコンパイル結果であるpycは、pythonコードと同じ振る舞いをす
Menindaklanjuti surat nomor: B-135/02600/DL/210/09/2021 tanggal 21 September 2021 perihal Pemberitahuan Pelaksanaan Tahap Akhir Pelatihan Dasar CPNS Golongan III Angkatan ke-68 s.d. 71 dan Golongan II Angkatan ke-6 s.d. 8 BPS Tahun 2021 serta dalam rangka penutupan dan pengumuman hasil evaluasi pembelajaran Latsar CPNS. Disampaikan bahwa pengumuman hasil evaluasi peserta Latsar CPNS Golongan III A
Pythonスクリプトの速度を計測し、そのボトルネックを探る。さらに、メモリ使用量、メモリリークの原因特定までの調査方法を解説する。 あなたが書いたすべてのPythonプログラムで厳密なパフォーマンス計測が必要になるというわけではないにせよ、その時が来たら、役に立ってくれる様々な種類のツールがPythonのエコシステムにはあるのだということを知っておけば安心できるだろう。 プログラムのパフォーマンスを計測することは、すなわち以下の4つの基本的な質問に答えることだと要約できる。 どのくらい高速に実行できるか? スピードのボトルネックはどこか? どのくらいのメモリを使うか? メモリリークしているのはどこか? これから、いくつかの素晴らしいツールを使ってこれらの質問に答えていくための詳細を見ていこう。 大ざっぱな実行時間 素早くざっくりとコードの実行時間を計るのに、古き良きUNIXのユーティリテ
この記事はLIFULL その3 Advent Calendar 2018の7日目の記事とされている恐れがあります 謝罪 会社の後輩の記事をパクりました。 ワイが個人的に便利だと思っていてよく使っているJavaScriptモジュール(npm)たち ここから本題 ここ1年の中で しまくったgithubリポジトリを年末調整すると同時に、 使っていて個人的に便利だなと思っているものを簡単に紹介しようと思います。 モジュール Poetry 仮想環境の管理から、ライブラリの公開までやってくれる便利な開発ツール 正直、これを紹介するためだけにこの記事を書きました BeProud Advent Calender 2018の『Poetryを使ったPythonパッケージ開発からPyPI公開まで』という記事も読んでください Pipenv 依存ライブラリの管理や仮想(venv)環境も作ってくれる便利なツール ただ
▄▄▄▄▄ ▀▀▀██████▄▄▄ _______________ ▄▄▄▄▄ █████████▄ / \ ▀▀▀▀█████▌ ▀▐▄ ▀▐█ | Gotta go fast! | ▀▀█████▄▄ ▀██████▄██ | _________________/ ▀▄▄▄▄▄ ▀▀█▄▀█════█▀ |/ ▀▀▀▄ ▀▀███ ▀ ▄▄ ▄███▀▀██▄████████▄ ▄▀▀▀▀▀▀█▌ ██▀▄▄▄██▀▄███▀ ▀▀████ ▄██ ▄▀▀▀▄██▄▀▀▌████▒▒▒▒▒▒███ ▌▄▄▀ ▌ ▐▀████▐███▒▒▒▒▒▐██▌ ▀▄▄▄▄▀ ▀▀████▒▒▒▒▄██▀ ▀▀█████████▀ ▄▄██▀██████▀█ ▄██▀ ▀▀▀ █ ▄█ ▐▌ ▄▄▄▄█▌ ▀█▄▄▄▄▀▀▄ ▌ ▐ ▀▀▄▄▄▀ ▀▀▄▄▀ そもそもPythonでwebアプリを
対象読者 Pythonの基本的な文法を理解しておりデータ解析のスキルアップに取り組みたい方 サンプルの動作確認環境 MacOS 10.13 Anaconda 5.1 Python 3.6 Jupyter Notebook 5.4 Pythonとデータ解析環境の概要 本連載ではPythonによるデータ解析について解説していきます。まずスクリプト言語としてのPythonとデータ解析環境の概要を確認します。 データ解析に適したスクリプト言語 データを集めたり加工したりする過程でよく使われるのがスクリプト言語です。データ解析の場面で必要なデータはさまざまな場所に存在してます。初めて見るデータを扱うことも珍しくありません。サーバーからダウンロードする場合もあれば、API経由で取得するものもあります。他のツールに受け渡すために、加工(前処理)が必要なデータもあります。スクリプト言語はこのような課題を解
はじめに Pythonのdocopt(引数の定義と解釈を行うライブラリ)の使い方・注意点メモです。 docoptは超便利ですが、docoptが超便利!っていう話は特に書きません。 使い方 __doc__にUsageとOptionsを定義しておき、docopt(__doc__)として参照します。 args = docopt(__doc__)とすればargsは代替引数やオプションをキーとした辞書になります。 argsのkeyとvalueを全て表示するテストスクリプトで試してみます。 """Overview: サブコマンド・オプション・引数をdocoptで受け、keyとvalueを全表示する Usage: docopt_test xx1 <yy1> docopt_test [-a] [-b|--bbb] [-c...] [-d|--ddd <D>] [-e <E>] [<z>...] docop
オラクル、JavaやJavaScript、Ruby、Pythonなど多言語対応を単一ランタイムで実現する「GraalVM」をオープンソースで公開。Twitterが本番環境で採用 JavaやJavaScriptなどには、それぞれその言語を実行するためのランタイムが存在します。JavaならJavaVM、JavaScriptならJavaScriptエンジンといった具合です。 米オラクルがオープンソースで公開した「GraalVM」は、これまで言語ごとに個別に用意されていたランタイムを統合し、単一の高性能なVMにするという同社の研究の結果開発された汎用仮想マシンあるいは汎用ランタイムです(米オラクルのブログ、日本語訳)。 GraalVMのWebサイトには、次のような説明が記されています。 GraalVM is a universal virtual machine for running appli
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く