サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
ブラックフライデー
qiita.com/simonritchie
UE4でちょっとした機械学習関係の実験環境を作る際に、ブループリント以外にもPythonを使いたくなり色々調べていたのでそのメモです。 使うもの UE4の4.21.2のバージョンを使っています。 UnrealEnginePythonというプラグインを使っていきます。 Pythonは3.6を使っていきます。 OSはWindows10環境です。(UbuntuでもUE4動くらしいけど試していない・・) リポジトリに書かれている特徴の抜粋 他のUE4のプラグインを使うのにも使えるらしい タスクの自動化やテストスクリプトなどにも便利らしい 最新の対応しているUE4バージョンは4.21(2019-04-24時点) Anacondaなども加味されているらしい Anaconda関係が使えるということはNumPyが使えたりとか、もしくは機械学習関係のライブラリ使って制御したりとかさくっと色々ごにょごにょとで
色々Pythonを速くするための世の中に方法はありますが、本記事ではCythonやPyPyなどの高速化のTIPSに触れていきます。 この記事で触れること プロファイラーなどの計測関係 ビルドインモジュールなどの機能 Pythonのキャッシュ関係 Cython Numba PyPy(紹介だけ) その他一部のサードパーティーのライブラリ関係 この記事で触れないけどそのうち書くかもしれない内容 並列処理(multiprocessing)、並行処理(threading)、非同期処理(asyncio)、それらの組み合わせ(concurrent.futures)など Dask関係 PyPyの踏み込んだ検証内容など 話題のVaex 記事で使う環境 Windows10(ローカルのJupyter)とUbuntu(クラウド上のカーネル)で進めていきます。 言語はPython3.7.1(win)とPython3
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 「ビルトインモジュールが色々あってぜんぜん分からない。俺達は雰囲気で並列処理を使っている」という状態だったので、良くないと思ってPythonの並列処理と並行処理をしっかり調べてみました。 少し長めです。細かいところまで把握するためのもので、仕事などの都合でさくっと調べて使いたい方は別の記事をご確認ください。 使った環境 Python 3.6.1 :: Anaconda 4.4.0 (64-bit) Ubuntu Jupyter notebook(一部マジックコマンドなども利用しています) ※Windowsの場合、マルチプロセスなどで直接
動機的なところ ふと、WindowsのPCから、別のUbuntu環境のJupyterを使ったりする(個人利用なりJupyterHub的なもので)際に、メモリやらディスク使用量などを見ながら作業したいと感じる時がありました。 通常はそのままUbuntuのマシンで作業していれば、コマンドラインを起動してメモリやらを定期的に表示するコマンドを打てば済む話なのですが、別のPCの場合Jupyter上で対応が必要になります。 !マークの記号を使ったりすれば、Jupyter上でもコマンドは直接実行できますが、定期実行などにすると他のセルの実行がブロックされてしまう一方で、他の計算などを実行しながら並行して使用量を確認したいと感じます。 クラウドのサービス(Google ColaboratoryやKaggle Kernelなど)では、ノート上でメモリやディスク使用量が表示されるようにカスタマイズされていま
最近勉強し始めたので、備忘録も兼ねてSVGやD3.jsなどの全体的且つ基本的なところを浅く広く触れます。 SVGとは Scalable Vector Graphicsの略。普通のビットマップ画像と比べて、拡大しても荒れたりしません。 その代わりに小さい画像で凄い複雑な構造になっていると、負荷が高くなったりします。 IE9以前だとSVG自体やフィルターなどの機能が使えなかったりするので、どうしても古いブラウザまでサポートしないといけない場合は諦めて普通にビットマップ画像を利用します。 D3.jsとは SVG含めたHTML上でのビジュアライズやインタラクティブな処理・アニメーションが色々できるjsのライブラリ。 シンプルな記述で凝った表現のものが作れます。インタラクティブなグラフ(プロット)を作ったりなどに使われます。 2019年1月現在、githubのリポジトリにおけるスター数が8万を超えて
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 他人の方のKaggle KernelでMobileNetが出てきたので、色々調べてみました。 TL;DR Googleが2017年(V1)と2018年(V2)に発表した論文。モデルのサイズが小さく、計算量が少なく(アプリの処理待ちなどが短い)、メモリも少なく済んで、精度も他の有名なモデルと比較して、結構高い水準を維持しているモデル。名前の通り、モバイル端末でも耐えうる性能を持つ。 Mobileと名前に付いているものの、用途はスマホアプリ専用というわけではない。計算リソースに制限のあるサーバーや、リソースのコスパを良くしたい場合、その他C
普段、仕事で入れ子になっているデータを扱う必要のある時がぼちぼちあります(特に、スキーマレスのMongoDBのログであったりなどなど)。 BigQueryなどに入れてしまえば、WITHINなどを使ったクエリでいい感じに行列の形に変えてくれたりして簡単ではありますが、そうではない場合はPandasで大規模なデータを扱う際には結構苦労することがあります。 その辺りいい感じにやってくれるライブラリでも書くか・・と思ったところ、調べていたらPandasにjson_normalizeというAPIがあるようです。使ったことがなかったので、色々動かしつつ調べてみます。 早速動かしてみる。 まずはimport。 log_data_list = [{ 'id': 1, 'name': 'john', 'equipment_status': [{ 'equipment_id': 1, 'attack': 10
PEP8という、Python自体の標準ライブラリなどに対するコーディング規約に関して、過去誤って理解していたことが何度かありました。(少し理解が大変なところもあって、しっかり読み込まないと、実はその書き方NGだった、という経験が・・) ただ、17年前に書かれたある種古典的なドキュメントで、今でも大事にされているということを考慮すると、とても良いことが書かれているというのも事実なのかなと思います。(Pythonを使用したプロジェクトでPEP8を加味したり、Jupyterの拡張機能含めPEP8を考慮したライブラリなどが多く用意されていることなども考えると) そこで、本記事では個人的な解釈をしつつ、PEP8について読み解いてまとめてみます。(元の記事は著作権がパブリックドメインなので、使いつつまとめさせていただきます) ※PEP8すべては触れません。 はじめに考慮すべきこと プロジェクトごとに、
今までも、いくつか拡張機能は使っていたものの、大部分は使わずに過ごしていたため、食わず嫌いはいけないな・・と思いドキュメント読みながら使ってみてまとめます。 まえおき 拡張機能(nbextensions)自体や、過去の記事で触れたHinterlandやTable of Contents (2)などはそちらの記事(Jupyter 知っておくと少し便利なTIPS集)をご確認ください。 結構抄訳などしています。(浅く広く。詳細はドキュメントに任せるとして、こんな拡張機能あるのか、程度にご使用ください) nbextensionsを入れたときに最初から入っている拡張機能を対象とします。 全部といっても、nbextensionsの設定画面を表示するための拡張機能だったり、基本的にデフォルトで有効で、且つ変えることがほぼなさそうなものは割愛します。 環境は「Python 3.6.5 :: Anacond
TL;DR matplotlibで、複数のサイズの異なるプロットを一つの画像にするのがしんどい。 そういった時にはmatplotlibのGridSpecを使うと分かりやすく、シンプルで調整もさくっと終わります。おすすめ。 subplotしんどい。 私だけの可能性も多分にありますが、MATLABを触ったことがなく馴染みがないせいか、どうにもmatplotlibで複雑なことをしようとすると、手が止まってしまうことがよくあります。 特に、複数のプロットを使ってレイアウトを組んだりするのに苦手意識がありました。(同じサイズでのレイアウトはまだしも、サイズが異なる場合など特に) 面倒になって、フォトショやPILで画像のレイアウトをしたくなる衝動に駆られる時があります。「複数のプロットをしたいだけなんや!matplotlibの調整で消耗したくないんや!」と心の奥底で叫びたくなります。 そんな中、mat
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
BigQueryで検索すると、以下の記事が上位にヒットします。 BigQueryで150万円溶かした人の顔 なにそれ怖い。ということで(?)、チキンな私は実務で扱う前に先に書籍で体系立てて学んでおくことにしました。(Learning Google BigQuery: A beginner's guide to mining massive datasets through interactive analysis) 本に書いてあったコストを抑えたり、安全に使うためのTIPS(及びある程度基本的な操作)を、段階的に動かしながら書いていきます。 対象の読者の方 BigQueryをこれから触る方 なんとなく、BigQueryに怖い印象をお持ちの方 進める上での注意点 この記事を書く上で操作手順が問題なくても何回か原因が不明なエラーに見舞われました。 他の方でもぼちぼち遭遇することがあるようで、時
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 今まで仕事で使ってきた、メジャーなものからマイナーなものまで含めたJupyter NotebooksのTIPS集です。 入力補完 とりあえずこれが無いと生きていけません。 Nbextensions(Jupyterの拡張機能)自体が未設定であれば、一旦そちらをインストールして、その後にHinterlandという機能にチェックを入れると有効化されます。 AnacondaのJupyter notebookでnbextensionsを使う ※Nbextensionsインストール後、Jupyterのファイルリスト的な画面で、タブで「Nbexten
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 日々Pythonの色々な記事がアップされているものの、あまりdocstringに触れている日本語の記事が少ないな・・ということで書きました。 そもそもdocstringって? Pythonの関数だったりクラスだったりに記述するコメントです。 JSDocだったりのPython版です。 書き方は、最初結構他の言語と違うな・・という印象を受けました。 docstring書くと何が嬉しいの? 後で見直したときに、すぐ内容が把握できるよ Guido の重要な洞察のひとつに、コードは書くよりも読まれることの方が多い、というものがあります。 はじめに
このページを最初にブックマークしてみませんか?
『@simonritchieのマイページ - Qiita』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く