cloverrose's blog

Python, Machine learning, Emacs, CI/CD, Webアプリなど

Spark版xgboostでRank学習できるようにPR投げた

機械学習で有名なxgboostというライブラリに先日PRがマージされた!嬉しい! [jvm-packages] call setGroup for ranking task by cloverrose · Pull Request #2066 · dmlc/xgboost · GitHub PRを送った経緯 会社の業務で検索のランキングモデルを作っていて…

ゆゆ式 Advent Calendar 2016 17日目 AR縁ちゃんを作りました

ゆゆ式アドベントカレンダー2016の17日目です。 www.adventar.org 今年自分はARで縁ちゃんを発見するアプリ、「AR縁ちゃん」を作りました。 AR縁ちゃんとはカメラの画像をリアルタイムで解析して、縁ちゃんの目っぽいもの(コンセント)があったら、そこに縁…

Android OpenCV face-detection 動かすメモ

ブログを色々参考にしながら進めたが結構苦戦したのでまとめておく。 環境 macOS Sierra 10.12.1 Android Studio 2.2.2 ASUS Zenfone2 laser; Android version 5.0.2; API Level 21 (Lollipop) OpenCV for Android version 3.1 手順 0. Android StudioにOpen…

Ubuntu ServerでX serverを動かす手順メモ

AWSのEC2のUbuntu Server (Ubuntu Server 14.04 LTS (HVM), SSD Volume Type - ami-a21529cc) でX serverを動かす手順メモ sudo apt-get update && sudo apt-get upgrade && sudo reboot sudo apt-get install xorg sudo apt-get install python-qt4 sudo xi…

PyQt4でJavaScriptでレンダリングしてるWebページをScraping! CookieとUserAgentも扱うよ

JavaScriptでレンダリングしてるWebページをScrapingしたい!!! 自分の環境 Virtualbox (Host OS Windows 7 64bit) Guest OS Ubuntu16.04.1 LTS Desktop 64bit Python 2.7.12 PyQt4は sudo apt-get install python-qt4 でインストール 実現方法 調べたら素晴…

Raspberry Pi3 起動に苦戦

昨日Raspberry Pi3 ModelBが届いた www.amazon.co.jp NOBESのダウンロードを30分位待って、よっしゃ遊ぶぞって思って、電源を挿したらPWRの赤色LEDは点滅するけど、モニターには何も映らない。 ぐぐったら、Raspberry Pi3からは電源として5V, 2.5Aのものを使…

pywebhdfsにHAとFederationをサポートするPRがマージされた

WebHDFSについて WebHDFSはhdfsコマンドではなくREST APIにhttpでアクセスできる便利なもの。 Hoop(httpfs)とwebhdfsの違い - たごもりすメモとかが図もあってわかりやすいと思う。 背景1 (hdfsコマンドへの不満) MapReduceなどを使って解析を行って、その結…

ピープルウェア 第3版 感想

感想が、読書メーターに収まらなかったのでブログに書きます。 人月の神話の中でおすすめされていたので読みました。 Amazon.co.jp: ピープルウエア 第3版: トム・デマルコ, ティモシー・リスター, 松原友夫, 山浦恒央: 本 新しい知見が得られたり、面白か…

Pythonのjsonモジュールの便利機能

PythonでJSONを読み書きする機会が割りとあったんですが、改めて調べたり、公式ドキュメントをちゃんと読んだら便利な機能を知ったのでメモしておきます。 jsonファイルの辞書を順番通りにloadしたい 設定ファイルとしてJSONを使っている時、普通にloadする…

EmacsでGithub flavorなMarkdownをプレビューできるようにする

markdown-modeを設定すると、C-c C-c pでMarkdownで書かれたファイルをHTMLに変換して、ブラウザで表示してくれるのでとっても便利です。 しかし、オリジナルのMarkdown.plを使うと表を変換できない、CSSを設定しないとすごくそっけないHTMLが表示されるとい…

Squid調査

Squidというプロキシサーバーを使ってみました。 アクセスログの設定で調べたことをまとめて置きます。 インストール方法 MacにHomebrewでインストールしました $ brew install squid squidのバージョンは $ squid -v Squid Cache: Version 3.3.11 設定ファ…

iOSアプリでやさしさゴシックを使う

アプリを作っていると、iOSで標準で使えるフォントだけではどうもしっくりこない場面が出てきます。ググってみるとiOS3.2以降、カスタムフォントがサポートされたようで、アプリのリソースにttfファイルやotfファイルを追加して、 Supporting Files>MyAppNam…

ビリヤードシミュレーションぽいものを作る

その1 誰もがやりたいパーティクルの衝突 その9 移動する2つの球の衝突場所と時刻を得る 楽しい!クリエイト作品!: ビリヤード球の衝突の計算 JavaScript ゲームのための単純な 2D 物理エンジンを作成する 反発係数について 5.2.3.2 2物体の反発係数 ■わ…

AndroidでOpenGL ES 2.0調査

現在、Androidで何かアプリを作ろうと思い、OpenGL周りを調査しています。OpenGLで調べるとC++だったり、OpenGL 1.0, 1.1だったり、 OpenGL 2.0の 意外とWeb上に完全な情報がまとまっておらず線を引くだけでも、苦労しました。 (最初に)OpenGL 1.0について O…

MarvericksのEmacsでdefault-directoryがルートになってしまうバグへの対応

Marvericksがリリースされてからかなり経ちましたが、Marvericks版のEmacsに以下の不具合があります。 不具合 Dockから起動したEmacsのdefault-directory(Find-file等でファイルを開こうとした時に、最初にミニバッファに表示されるディレクトリ)がルート・…

dot2texiを使う

dot2texiとはdot2texをより便利にしたもの。 dot2tex=Graphviz+TeX=ノードとか辺のラベルにp_1とかTeXのように記述することができる。 dot2texi=dot2texをTeX処理系が自動で呼び出しすことで、ユーザーはtexソースに直接Graphvizのグラフを書くことができる…

GNU Emacs For Mac OS X向けの設定ファイルメモ

GNU Emacs For Mac OS XをGUIモードでターミナルから起動すると、一番上の画面として表示されないという困った問題があります。この問題を解決するために調べるとナイスな解決方法が見つかりました。 How to launch GUI Emacs from command line in OSX? - S…

GitHub Flavored Markdownを変換できるgripが便利だった

Python Markdownで検索すると、Python Markdownがヒットするけど、これはGithubが拡張したMarkdown GitHub Flavored Markdown · GitHub Help(シングルクォートでソースコード埋め込みとか)が変換できない。検索してると、Is there a command line utility …

ServerNameを設定する

sudo /etc/init.d/apache2 restartをするたびに警告が出ていたのでちゃんと設定した。 環境はUbuntu12.04です。/etc/hostsを書き換える(2行目) 127.0.0.1 localhost 127.0.1.1 cloverrose.mydns.jp precise32 # 以下略hostname --fqdnでcloverrose.mydns.j…

GNU Emacs For Mac OS X向けの設定ファイルメモ(古い情報です)

GUIのEmacsとしてMacではGNU Emacs For Mac OS Xを使っています。新しくMac book Airでの設定をメモしておきます。 パスを通す(というか起動スクリプトを書く) GNU Emacs For Mac OS Xをインストールしただけだとパスが通っていないので、ターミナルから起…

Tweepyがもうじきversion2.2に!

PythonのTwitter APIライブラリTweepy(tweepy/tweepy · GitHub)のversion2.2のリリースノートが書かれ始めていました。Add release notes for 2.2 (WIP) release. · fd7cc6e · tweepy/tweepy · GitHub ヘッダー(banner)の更新ができるようになりました 大…

Vagrantで作ったサーバの/etc/network/interfacesはいじるとダメ?

注意:この記事は完全に僕のメモ用途としての意味合いが強いです。

Vagrantでpublic_networkのIPアドレスを指定する方法

Vagrantのpublic_networkで嵌ってる時(Vagrantのpublic_networkで嵌まる → forwarded_portを使って解決! - cloverrose's blog)に、public_networkでもIPアドレスを指定することができることがわかったのでまとめておきます。 まず公式ドキュメント(Public N…

Vagrantのpublic_networkで嵌まる → forwarded_portを使って解決!

Vagrantで作ったVMにApacheをインストールして外部に公開しようとして嵌ったのでメモしておきます。普段Vagrantを使わずにWebアプリを公開するときはVirtual Boxの設定でネットワークをブリッジアダプターにして、ルータのポートマッピング設定で直接VMのロ…

Ansible環境が整ったNodeをAnsibleで構築する遊び

今までnode1, node2を作って、node1にAnsibleをインストールしてnode2に疎通確認やplaybookを使った環境構築をやっていたが、node1にsshの秘密鍵を設置したり、Ansibleをインストールしたり、inventory fileを作成したりする部分は手動でやっていました。こ…

Vagrant+ansible手順メモ

Ansible Tutorialを見ながらごにょごにょしてたけど、-kオプションつけるんだっけ?-Kだっけ?とか混乱してきたので自分用にMac OSXできちんと動いたものを記録しておく。Vagrantfileにファイル類は入れたのでエディタを起動する必要がなくて楽ちん! VMを作…

Ansible Tutorial のscp部分がいまいちわからなかったのでいろいろの方法でやってみた

自分がscp(ssh)に詳しくなかったため、Ansible Tutorialの次の部分がどういうものかわからなかった。 $ vagrant ssh-config node1 > ssh_config $ vagrant ssh-config node2 >> ssh_config $ scp -F ssh_config ~/.vagrant.d/insecure_private_key node1:.ss…

Ansible ver1.3の新機能 changed_when を使って、ファイルに追記するPlaybookを書いてみた

Ansibleで今まで書いてきたOSセットアップスクリプトを置き換えていると、.bashrcとかに追記したいときの方法が見つかりませんでした。(copyはAnsible実行側にあるファイルをリモートに置き換えるものなので違う)(書いた後に、本当はAnsible実行側に完成した…

クリーンな環境にAnsibleインストールしてローカルでpipとapt-getを試す

前回はsudoなしで済むplaybookにしていたが、aptなどsudoが必要なplaybookを試してみた。--ask-sudo-passを知らなくて--ask-passでsudoしようとしていたため躓いた。また、ローカルでやる場合も、リモートでやる場合もAnsibleをインストールする必要があるの…

Ansibleをローカルで使ってみた

Ansibleを選ぶまでに調べたこととAnsibleをローカルで動かす方法でつまづいたのでメモしておきます。 構成管理ツール選び サーバー環境をきちんと管理したくなったのでいろいろ調べてみました。Rubyではchefが有名です。Pythonで調べるとAnsibleかSaltがヒッ…