約1年半ほどかかりましたが、「Pythonで学ぶ強化学習 入門から実践まで」を書き上げました。本記事ではAsian Kung-Fu Generationさんがアルバム発売の度に行っている全曲解説にのっとり、各章の見所や苦労した点を紹介したいと思います。

文:Daniel Sim 分析:Lee Shangqian、Daniel Sim、Clarence Ng ここ数ヶ月、シンガポールのMRT環状線では列車が何度も止まるものの、その原因が分からないため、通勤客の大きな混乱や心配の種となっていました。 私も多くの同僚と同じように環状線を使ってワンノースのオフィスに通っています。そのため、11月5日に列車が止まる原因を調査する依頼がチームに来た時は、ためらうことなく業務に携わることを志願しました。 鉄道運営会社SMRTと陸上交通庁(LTA)による事前調査から、いくつかの電車の信号を消失させる信号の干渉があり、それがインシデントを引き起こすことが既に分かっていました。信号が消失すると列車の安全機能である緊急ブレーキが作動するため、不規則に電車が止まる原因となります。 しかし8月に初めて発生した今回のインシデントは、不規則に起こっているように見えるた
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? celery とは セロリ。python job queue 処理のフレームワーク。worker daemon を待機させて async 処理の仕組みを作ったり、beat daemon を起動して定時バッチ処理を組んだりする。ドキュメントはよく整備されている。 RDBよりも効率よく backend は rabbitmq cluster や redis cluster を使う。RDB 使えるけど使わないのが best practice job の流量制御は変更しやすいようにと考えられている worker daemon 起動。一台に複数起動
まえがき 今年の春から今まで、2年ぶりにPythonを沢山書いているわけなんですが、JavaScriptのクソに頭をやられて久しぶり書くだけあって基本的なところから色々と頭から抜け落ちていたわけです。 そんで何か思い出すたびに会社のwikiを使ってメモっていたのですが、せっかくなので少々訂正をしてブログにも書きます。 また、弊社はPython2を使っているので、2が前提の記述になっているところがいくつかあります。なるべくフォローしていますが、参考にする場合は自分が使っているバージョンを確認することをおすすめします。 また、今から新しくPythonでプロジェクトを始めようと思っている人は3系を使いましょう。 知ってる人は当然知ってる、でも結構長いことPythonを書いてても知らなかったりするような小技を載っけました。 なお、メタプログラミングとかの黒魔術っぽい記事のまとめはこちら: hach
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 手書きひらがなの認識、教科書通りの畳み込みニューラルネットワーク(ディープラーニング)で、99.78%の精度が出ました。教科書通りである事が(独自性がない事が)逆に読む方・書く方にメリットがありそうなので、Qiitaで記事にします。 ソースコード ソースコードは https://github.com/yukoba/CnnJapaneseCharacter です。 いきさつ いきさつは、友人と手書きひらがなの認識の雑談をFacebookでしていて、ググったら、この2つが見つかりました。 「Tensorflowを2ヶ月触ったので"手書きひら
Python 3.6b1 がリリースされましたね。(フライング) beta1 ということで、 3.6 に向けた新機能の追加は (provisional package を除いて) 終了です。ただし、仕様が確定したと言うわけではなくて、beta版に対するフィードバックを元に新機能を修正したり、最悪 revert して 3.7 に持ち越しにされる可能性もあります。 なお、 3.6b1 が出る前の1週間が core dev sprint があり、そこでめちゃくちゃ大量に大きめの変更が入りました。なので、常用環境には全くオススメできませんが、OSS開発者だったら .travis.yml に python: "nightly" を追加してリグレッションの発見に貢献したり(←これめっちゃ有り難いです)、それ以外の人も 3.6 を試してみて早めにフィードバックをしてもらえると、年末の 3.6 がより完成
アイドル顔識別のためのデータ収集 をコツコツ続けて それなりに集まってきたし、これを使って別のことも…ということでDCGANを使ったDeep Learningによるアイドルの顔画像の「生成」をやってみた。 まだだいぶ歪んでいたりで あまりキレイじゃないけど…。顔画像を多く収集できているアイドル90人の顔画像からそれぞれ120件を抽出した合計10800件をもとに学習させて生成させたもの。 分類タスクとは逆方向の変換、複数のモデル定義などがあってなかなか理解が難しい部分もあったけど、作ってみるとそこまで難しくはなく、出来上がっていく過程を見るのが楽しいし とても面白い。 DCGANとは "Deep Convolutional Generative Adversarial Networks"、略してDCGAN。こちらの論文で有名になった、のかな? [1511.06434] Unsupervise
Docker Image of Python with OpenCV 3.0 for Heroku - すぎゃーんメモ の続き的なかんじで。 OpenCVでよく使われるObject Detection機能で、画像から顔を検出するAPIを作ってみた。 Heroku app https://face-detector.herokuapp.com/ Github repository https://github.com/sugyan/face-detector 顔検出 基礎 一番簡単なオブジェクト検出の手法が、Haar-like特徴に基づくカスケード型分類器(Haar Feature-based Cascade Classifiers)というのを用いるやつ。 OpenCV: Face Detection using Haar Cascades OpenCVには顔や目などに関して学習済みのデータ
PyConJP2014で競技プログラミングについてLTしてきました。 発表で出した問題と、主要な競技プログラミングのコンテストについて紹介したいと思います。 発表資料 発表で紹介した問題の回答について 発表でみなさんに考えてくださいと言った問題です。 単純に全探索をすると時間制限にひっかかってしまうこの問題。 a + b + c + d = 0 は、 a + b = - (c + d) というのを利用して解いた例がこんなかんじになります。 Pythonではじめる競技プログラミング 例題の解答例 create_pairsの関数でAとB,CとDをそれぞれ足し合わせた数を計算し、それがいくつあるかをカウントしておきます。 あとはAとBの合計値をfor文でまわして、CとDの合計値のなかに-(A+B)がいくつあるかを探しています。 この解法だと計算量はO(N **2)なので、Nが200でも間に合いま
RSpec の入門とその一歩先へ がとてもよい記事だったので、 Python で写経させてもらいました。 https://github.com/methane/pytest-tut Ruby コミュニティと Python コミュニティの考え方の違いも見えて面白いと思います。 環境は Python 3.3 で、実行には py.test コマンドを使いましたが、 py.test の機能は特に使っていないので nose でもなんでも大丈夫です。 ファイルの作成 まずは空の実装とテストを作ります。 message_filter.py class MessageFilter: pass message_filter_test.py 最初のテストを書く py.test は .should といったメソッドを勝手に生やしたりはしません。普通に assert 文を書きましょう。 --- a/messege
はじめに こんにちは、Python界の情弱です。情弱ながらPyCon JP 2012で1セッション持たせてもらえることになりました。予め資料を公開しておきますので、当日は色々と質問・意見して頂ければと思います。 各トピックは各トピックでの総論になっていますので、細かい部分は本文最後の参照にあるリンクを見るとより理解が深まります。 「なおここに書いてある内容は所属する団体とは関係のない、私個人の見解ですので、予めご了承下さい。」テンプレ終わり。 イベント PyCon JP 2012 発表日時 2012-09-16 11:00-11:45 作者 @ymotongpoo URL http://2012.pycon.jp/program/sessions.html#session-16-1100-room357-ja スライド (追記: 2012/09/16 23:50:00) 発表の24:00頃
竹迫さんがPerlで記号なしプログラミングの偉業を達成したのは7年前だった。(see ppencode) そしてoxyさんがRubyで記号のみプログラミングを達成した(rrencode) 7年前にも「Pythonで記号なしプログラミングできないの?」と言われた。当時若かった(まだ四捨五入したら二十歳だった)僕は「いやー、無理ですよ」とバッサリ切り捨てていた。 あれから7年経って、Pythonの文法はさほど変わっていないけど、僕の考え方が変わった。ユーザの要望に「それは無理」なんて言っちゃうのは下策だ。100%達成することが不可能な問題でも、8割解くのは可能だったりする。「100%やるのはこれこれの理由で無理だが、この条件を緩めれば可能」と提案する方が上策だ。後者では8割分の価値を作り出すことができているが、前者では理由がいかに正しかろうが何も作り出すことができていない。 さて、なにを緩める
ご無沙汰しています。id:rokujyouhitomaです。 さてはて、PythonのStringIOモジュールをJavaScriptで実装しました。外部仕様を一緒にしたのではなく、内部仕様(プログラミング仕様)まで一緒にしました。 動機は使う予定があったから。なくても別にコーディングできるけど、抽象化したかったんで。 元コードはPyPy(Python2.7)のStringIO。 コード 書いたコードはgithubにpushしました。 StringIO 前職のRTM以来ClosureCompilerにハマっているので、ClosureCompiler向けのコードを書いています。 引用すると下記の通り。(注記。私独自のutili関数に依存してるので、万が一使おうとする方はgithubのコードを引用してください。) /** * StringIO * @see Python <a href='ht
PyCon JP 2011 8月27日(土) 9:30~17:10 (仮) 産業技術大学院大学 (品川シーサイド駅から徒歩3分) Call for Papers:演題募集中 情弱なので、フォローして是非情強になりたいです。 Armin Ronacher (@mitsuhiko) Ian Bicking (@ianbicking) Michael Foord (@voidspace) Bob Ippolito (@etrepum) Atsuo Ishimoto (@atsuoishimoto) Yutaka Matsubara (@mopemope) Takayuki Shimizukawa (@shimizukawa) Moriyoshi Koizumi (@moriyoshit) Yasushi Masuda (@whosaysni) Atsushi Odagiri (@aodag
This document summarizes Makoto Kuwata's presentation on creating a high-speed template engine in Python. It discusses Tenjin, a template engine created by Kuwata that is very fast. It benchmarks Tenjin against other template engines like Mako, Jinja2, and Django and shows that Tenjin is significantly faster. The presentation provides optimization techniques for template engines like using bound m
概要¶ これは Google Python Style Guide Revision 2.29 を日本語に訳したものです。 本家ガイドは CC-By 3.0 ライセンス の基で公開されています。また、本ガイドも同ライセンスを継承します。 本家ガイドの著者は以下の通りです。 Amit Patel Antoine Picard Eugene Jhong Jeremy Hylton Matt Smart Mike Shields また、本ガイドの翻訳者は以下の通りです。 Kosei Kitahara 本ガイドに誤植、誤訳があった場合は issue で教えてください。 その他本ガイドに関する問い合わせは、サイト最下部に記載のメールアドレスか @Surgo にお願いします。 はじめに¶ Python は Google で使われている主要なスクリプト言語です。 このスタイルガイドは Python によ
こんにちは。id:TAKESAKOです。 サルでもわかるシリーズ第一弾として、Python顔文字プログラミングの基礎を解説してみましょう。 1. Python顔文字プログラミング 以下のプログラムをPythonインタプリタ上で動かすと、'saru' という文字列が表示されます。 `(''<>'')`[-~-~(''=='')]+`(''<>'')`[''=='']+`(''=='')`[''=='':-~-~(''=='')] 'saru' 実際に Python 2.7.1 のインタプリタで実行してみると確かにそうなります。 Python 2.7.1 (r271:86832, Nov 27 2010, 17:19:03) [MSC v.1500 32 bit] on win32 Type "help", "copyright", "credits" or "license" for mor
Perlのperlbrewってツールが凄く使いやすくて羨ましかったので、Pythonで使えるpythonbrewってツールを作ってみました。 perlbrew? perlbrewとはPerlをバージョン毎にインストールして、それらをswitchして使ったりできるツールのこと。 既存の環境を壊さずに最新のPerlを簡単に試すことができます。 PerlからCPANモジュールまでホームディレクトリ以下に全部インストールしてくれるので、自分専用のPerl環境を構築することができます。 perlbrewの作者の劉康民さんは、本当にすばらしいアイデアの持ち主。 pythonbrewとは 基本的にperlbrewをパクったと同じ思想なツール。 Pythonインタプリタのインストールから、それらの管理まで面倒をみてくれます。 例えば、一からPython2.6.6、2.5.5、2.4.6の環境を構築したいな
風邪がなおりかけなので、省エネ更新です。 ちょっと前に、以下の記事を読んでpythonに移植したいなと思ったときには実装してました。 404 Not Found - ゆーすけべー日記 プロシュート兄貴も行ってますね、「実装した」ならば使っていいと。 ソース一式 https://bitbucket.org/ehren/pyzenra/ インストール方法 ソースを落としてpyzenraフォルダに移動し、以下のように実行してください。 python setup.py install 簡単な使い方 ほぼPerlのAcme::Zenraと同じです。 yahooの形態素解析apiを使っていますので、アプリケーションIDが必要です。下を参照ください。 テキスト解析:日本語形態素解析API - Yahoo!デベロッパーネットワーク from pyzenra import Zenra appid = #yo
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く