Stimulator

機械学習とか好きな技術話とかエンジニア的な話とかを書く

xonsh拡張のxontribをつくる

- はじめに - この記事はxonshのextension的立ち位置であるxontribを自作し、公開するまでの流れのメモです。1年程前に現存していたxontribを紹介する記事を書きましたが、次は作成者側に回ってみようという旨です。 - はじめに - - xontribとは - - cookiec…

フォロワーを管理するためだけのWebアプリを作った

- はじめに - フォロワーも増えてきて大体毎月n*100単位でフォロワーが変動するようになってきて、巷のフォロー管理ツールじゃ全然要求を満たせないので、自作する体でGWに友人と1日ハッカソンみたいなのを開いて勢いだけで作った話。「100万人とかフォロワ…

Pytorchでpretrainモデルを用いた画像向けSiameseNetworkのメモ

- はじめに - NIPS 2016のSiamese Neural Networks for One-shot Image Recognitionを参考に、画像の距離学習を行う。Siamese Networkは、各クラスの画像量にバラつきがあり、一部クラスが数枚しかない学習データでも上手く学習させられるネットワークである…

「機械学習のための特徴量エンジニアリング」が良かったので訳者に媚を売る

- はじめに - 本ブログでは恒例になりつつある、献本されたので媚を売るシリーズです。「機械学習のための特徴量エンジニアリング」は2/23に発売される、機械学習エンジニアのための書籍です。本記事は、筆者に媚びを売りつつ、どういった内容の書籍か、どう…

horovodを用いたPytorchの分散学習

- はじめに - 近年、分散深層学習の研究、ライブラリ開発が盛んに行われている。本記事はuber社が公開しているhorovodを利用した分散CNNのメモである。 - 前提 - horovodとは、バックエンドをOpenMPIとしTensorFlow、Keras、PyTorchを最小限のコード変更で分…

2018年のxonshrc

- はじめに - この記事はXonsh Advent Calendar 2018 - Qiita最終日の記事です。私のxonshrc、業務用のコマンドとか含めると大体1500行くらいあるんでgithubで公開するんじゃなくて一部ずつ切り取ってここで紹介しようかなと思いました。なんか作る時の参考…

Python moduleがない場合に自動でpip installする

- はじめに - この記事は、Xonsh Advent Calendar 2018 - Qiita 10日目の記事です。複数のサーバを業務で利用おり、それぞれのサーバ環境設定のためpythonパッケージもインストールする作業が必要だが、別サーバからpip freezeするほどでもない(ちょっとした…

macOSの通知リストをpython経由で取得しShellに流す

- はじめに - macOSを使っていると、通知(Notifications)に色んな情報が集約される。 メールが来ただのSlackの更新だの、アプリのアップデート等がそれにあたる。 「OS通知を定期的に取得してシェルのbottom barとかに表示してやれば、作業中でも社内チャッ…

ptk1.xから2.xへの変更を選択コマンド実装から学ぶ

- はじめに - この記事は、Xonsh Advent Calendar 2018 - Qiitaの5日目の記事です。 前年度、Xonsh Advent Calendar 2017 - Qiitaにおいて、私は以下のような2つの記事を投稿しています。 Python Prompt Toolkitで対話的な選択コマンドを作る - Stimulator P…

xonshの2018年の歩み

- はじめに - この記事は、Xonsh Advent Calendar 2018 - Qiitaの1日目の記事です。 1日目という事ですので、2018年を振り返ってxonshにどんな動きがあったかの簡単な振り返りです。 私は社内チャットにおいても #xonsh なるxonshの情報を発信する部屋を運用…

LeapMotionでPythonを使ってジェスチャーで家電を操作する

- はじめに - 近年、VRのブームのおかげもあってモーションキャプチャー分野も発展しつつあります。本記事は、お手軽モーションキャプチャー端末であるLeap MotionをPython 3.xから利用し、様々な家電やPC上の操作をジェスチャーで行おうという記事です。都…

複数ノードDockerでChainerMNを動かすためのTips

- はじめに - ChainerMNがついに本家Chainerにマージされました。分散深層学習への本気度が伺えます。github.com 節目という事で、Dockerを利用して複数ノードでChainerMNするために行った事のメモをTips形式で残しておこうという記事です。私は半年くらい前…

PyTorchで学習済みモデルを元に自前画像をtrainしてtestするまで

- はじめに - 最初のステップとなる「学習済みのDeep Learningモデルをpre-train modelとして自分が用意した画像に対して学習」する時のメモ。多分これが一番簡単だと思います。 - はじめに - - 準備 - - pretrainモデルで簡易に学習する - - modelを保存す…

xonshにおけるpexpectを利用した対話コマンド自動化

- はじめに - shellでsshのパスワード入力などの対話行動を自動化するには、expectコマンドを使うのが一般的である。対して、xonshではPythonの記述やパッケージの利用が可能となる。本記事は、pythonを利用しながら筆者が利用しているssh周りのコードを例に…

Python製シェルxonshを半年使った所感や環境設定のまとめ

- はじめに - Pythonにおけるpython-prompt-toolkit(以下ptk)を使って作られたシェルである「xonsh」を同僚にオススメされて、大体半年くらい使ったので設定とかxontribとか所感を晒していく。前半でxonshのメリット、デメリットの概要を記載し、後半に自身…

Pythonでyahoo画像検索した結果をimgcatに流して表示してURLをクリップボードにコピーするやつ

- はじめに - 近年では、チャットツールの発展が睦まじく、グループ内、企業内においてもチャットツールによるコミュニケーションが盛んとなっている。チャットツールでのコミュニケーションにおいて欠かせないのが、画像によるハイコンテクストなやり取りで…

CLI上でtableを綺麗に見たくて各言語のtable表示について調べた

- はじめに - データ分析、機械学習という仕事柄、csvやtsvを見る機会が多い。処理する時は大体はpythonのpandasで読み込んで〜とするのだが、コンソール上で作業する時、どうしても「このcsvなんだっけ…」という事が発生する。 cat hoge.csv | head 等とし…

MANABIYAで「AI屋さんの1日」なるタイトルで登壇した話とその内容

- はじめに - 以下、MANABIYA techなるイベント内のAIセッションにて登壇させて頂きました。manabiya.tech大きなスペースでフザけたタイトルで発表するという最悪さでしたが、満員になり立ち見状態でした。 ありがとうございました。 正当な方向性でいけば登…

xonshのPROMPTにdatetimeを表示する

- はじめに - xonshで作業をしているとつい時間を忘れてしまうので、時間を表示してやるメモ。POWERLINEで良くみるやつをxonshrcで実装。 - timeを表示する - コンソール上の右側に表示するにはこんな感じ from time import strftime $RIGHT_PROMPT = lambda…

Qiitaの特定記事やタグ付記事をいいね、ストックしているユーザを見るPythonスクリプト

- はじめに - Qiitaは、プログラミングに関する知識を記録・共有するためのサービスです。Qiitaアカウントには企業情報が紐付いている場合があり、Qiitaの様々な記事から情報を取得し分析する事で「機械学習を記事を多くストックしている勉強熱心な会社はこ…

『人工知能プログラミングのための数学がわかる本』が機械学習研究入門書としてとても良さそうだった

- はじめに - 本を読んで筆者に媚を売る記事シリーズです。「人工知能プログラミングのための数学がわかる本」という書籍を筆者の石川 聡彦(Aidemy)@akihiko_1022さんから譲り受けました。人工知能プログラミングのための数学がわかる本作者: 石川聡彦出版…

共同通信と朝日新聞の記事URLを含むツイートを削除するPythonスクリプト

- はじめに - この記事の起点となったのは、2018年1月25日、共同通信が配信した「山中氏、科学誌創刊に深く関与か」というタイトルの記事が、同日午後8時頃「山中所長が給与全額寄付」というタイトルの記事に書き換えられていた件である。下記ツイートの通り…

自動運転シミュレータのCARLAを動かす

- はじめに - Python APIを備えた自動車運転シミュレータである「CARLA: An Open Urban Driving Simulator」を動かすまでの記事です。CARLAはConference on Robot Learning 2017でも発表された、Unreal Engine 4を使ったシミュレータパッケージです。 自動運…

Xonshのconfigを書く

- はじめに - //------------------------ 追記 2018/06/22:以下の通り、config.jsonはサポートされなくなり、xonshrcになりました。 WARNING! old style configuration (/Users/xxx/.config/xonsh/config.json) is no longer supported. Please migrate to…

Pythonモジュールの遅延import

- はじめに - この記事は、Xonsh Advent Calendar 2017 - Qiita 18日目の記事です。Pythonのmoduleのloadを実際に利用する前に遅延してやろうというTipsです。加えて、xonshのxonshrcに記載する事で、xonshの起動も早くしようという話を書いています。 アジ…

PythonでHatenaブックマークのホットエントリを取得して表示する

- はじめに - この記事は、Xonsh Advent Calendar 2017 - Qiita 25日目最終日の記事です。本記事では、PythonスクリプトでHatenaブックマークのホットエントリのリストを取得、xonshへ表示する内容を記載します。追記:2018/11/23 ptk 2.xでは、本記事のコー…

Python Prompt Toolkitで対話的な選択コマンドを作る

- はじめに - この記事は、Xonsh Advent Calendar 2017 - Qiita 23日目の記事です。遅れ気味ですが、Python Prompt Toolkit (以下、ptk)を利用して、対話型のセレクタ(上下矢印で回答を選択できるやつ)を作りたいなと思います。名前が分からないんですが、se…

xonshのCore Eventsまとめ

- はじめに - この記事は、Xonsh Advent Calendar 2017 - Qiita 16日目の記事です。前日のxonshのExceptionを見やすくする記事で手こずって遅れ気味です。本記事では、Xonshの大事なCore Eventsについてまとめます。 アジェンダ - はじめに - - xonshのCore …

XonshのException発生時のtracebackを見やすくする

- はじめに - この記事は、Xonsh Advent Calendar 2017 - Qiita 15日目の記事です。完全に遅刻しています。3日間xonsh本家のコードを読みながら「あーでもないこーでもない」とやっており遅れました。結論を先に述べてから、後半でその経緯も話します。 Xont…

PythonのException発生時のTracebackを綺麗に見る

- はじめに - PythonでOSSパッケージ等を利用していると、Exceptionが発生した際に表示されるTraceback(正確にはスタックトレース)がかなり長い場合がある。例えば、以下の簡易なコード実行で表示されるTracebackの行数は30近くなる。 import pandas as pd d…