ytac8のブックマーク (30)

  • Pandasで行うデータ処理を100倍高速にするOut-of-CoreフレームワークVaex - フリーランチ食べたい

    TL;DR アウトオブコア、かつマルチコアでデータ処理を行えるVaexの紹介です。 string関係のメソッドで平均して100倍以上の高速化が確認できました。(作者のベンチマークだと最大1000倍) 文字列処理以外でも数倍~数十倍の高速化が行えそうです。 この記事では性能の比較のみ行い、解説記事は別で書こうと思います。 pandasより1000倍早いフレームワーク? 今週、興味深い記事を読みました。重要な部分だけ抜き出すと次のような内容です。 Vaexの最近のアップデートでの文字列処理が超早くなった 32コアだとpandasと比べて1000倍早い towardsdatascience.com 1000倍って当なの?って感じですよね。そもそも自分はVaex自体を知らなかったので調べてみました。 ちなみに調べていて気づいたのですが、この記事の著者はVaexの作者なんですよね。 疑っているわけ

    Pandasで行うデータ処理を100倍高速にするOut-of-CoreフレームワークVaex - フリーランチ食べたい
    ytac8
    ytac8 2019/04/14
  • オリジナルのキーキャップを作る - ロードヒポキシス

    写真ブログとして頑張っていたときもありましたがとうとう自作キーボードが混入します。 Twitterの方はすでにほとんどキーボードの話ばっかりになってましたが、ここ1年半ぐらいメカニカルキーボードを自作する界隈で活動をしてた流れでとうとうキーキャップを自作するに至った話です。 キーキャップとは キーボードの盤面の文字が書いてあるアレです。 カスタム、自作キーボードの界隈では色形様々なキーキャップの中から好みのキーキャップをとっかえひっかえしてニヤニヤする行為も楽しみの一つでもあります。 キーキャップはプラスチックの成形が伴うことから個人での製造が難しい部分(最近では3Dプリンタで出力するなどの手法もありますが)で、完成品のキーキャップのセットは少数で高額ということもあり、財布を痛めつける原因になっています。 そうしたことから最近では何も刻印されて無いキーキャップ(Blank Keycaps)

    オリジナルのキーキャップを作る - ロードヒポキシス
    ytac8
    ytac8 2018/08/05
  • infやnanになる条件 - のんびりしているエンジニアの日記

    皆さんこんにちは お元気ですか。私は元気です。 機械学習のプログラムを書いていると、infとnanの地獄に巻き込まれることが多々有ります。 正直、戦いたくはないのですが…。 こんな時に出そうなinfやnanの条件を纏めてみました。 Nan=値が数でない時に出現する。 inf=値が無限大でない時に出現する。 とりあえず、ソースコードをペタっと infやnanのサンプル #include <iostream> #include <math.h> using namespace std; int main(int argc, char const *argv[]){ double log_x = log(0); double exp_ma = exp(750); cout << log_x << endl; cout << exp_ma << endl; cout << 0 / 0 << end

    infやnanになる条件 - のんびりしているエンジニアの日記
    ytac8
    ytac8 2017/12/22
  • Vim の g で始まるコマンドというかキーマップの一覧 - Blank File

    今回、gをプレフィックスとするキーマップの種類別一覧を昔作ったのを思い出したので紹介します。地味に便利なものも結構あります。アルファベット順の一覧は :help g で見られますので、開いているマッピングを探す時などはそちらをご参照下さい。 2015年2月11日 整理し直しました。ついでに目次を追加。 目次 移動・ジャンプ カーソル移動 表示行単位の移動 gなしと逆方向の移動 ジャンプ ファイル内移動 検索移動 タグジャンプ マーク タブ移動 ファイル移動 テキスト編集 貼り付け 行連結 オペレータ 大文字・小文字変更 テキスト整形 エンコード テキスト更新履歴を遡る・進む 別モードに入る 挿入モード 選択モード 仮想置換モード その他 再利用 情報表示 その他 未使用の組み合わせ おわりに 移動・ジャンプ カーソル移動 表示行単位の移動 コマンド 動作 gj jと同様。ただしスクリーン行

    Vim の g で始まるコマンドというかキーマップの一覧 - Blank File
    ytac8
    ytac8 2017/11/05
  • ErgoDox EZ を使い始めて1ヶ月ぐらい経った - はやくプログラムになりたい

    タイムラインで購入している人がちらほらいて,評判も良好みたいなので ErgoDox EZ というキーボードを試しに買ってみることにしました.購入したのは無刻印+アームレスト付きの赤軸です. ErgoDox EZ (画像は公式サイトから) とりあえず購入して1ヶ月経ち,そこそこ慣れてきて違和感なく打てるようになってきたので,この辺りで備忘録がてらまとめてみることにしました. 購入 他の人のブログを読んでいると手続きして2週間以上かかったりしていたので,お盆明けぐらいに届けば良いかなーという気持ちで7月22日に購入手続きをしました.しかし実際は台湾からの発送で1週間で届きました.8月頭に1週間サンフランシスコ出張があったので受け取れなかったら返送されてしまうとヒヤヒヤしましたが何とか直前に受け取れました. セットアップ 出張前にとりあえずセットアップだけしました.と言っても箱から出して高さを調

    ErgoDox EZ を使い始めて1ヶ月ぐらい経った - はやくプログラムになりたい
    ytac8
    ytac8 2017/11/01
  • IBM Watson Studio

    IBM Watson® Studio empowers data scientists, developers and analysts to build, run and manage AI models, and optimize decisions anywhere on IBM Cloud Pak® for Data. Unite teams, automate AI lifecycles and speed time to value on an open multicloud architecture. Bring together open source frameworks like PyTorch, TensorFlow and scikit-learn with IBM and its ecosystem tools for code-based and visual

    IBM Watson Studio
    ytac8
    ytac8 2016/10/02
  • Haskell、Scala、ML、Scheme:あなたが次に学ぶ関数型言語 | POSTD

    (編注:2016/7/27、頂いたフィードバックを元に記事を修正いたしました。) 学生たちから、次に学ぶ言語はどれがいいのかとよく聞かれます。IT業界で働きたい人にお薦めするのは、現在盛んに使われている言語です。C++Java、C#はもちろん、PythonRubyPHPPerlなども挙げられるでしょう。 一方、向学のためという人や、学術研究や起業に関心がある人にとって、次の言語を選ぶ基準となるのは、就職に有利かではなく言語の表現力でしょう。学術研究や起業活動を行うには、プログラマとしての能力を何倍にも高める必要があります。そして、(おそらく)確立されたコードベースを扱った経験はないでしょうから、手元にあるタスクにとって最適な言語を自由に選ぶことができます。 この記事では、勉強に適したHaskell、Scala、ML、Schemeという4つの言語を、私の好きな特徴や参考資料のリストと

    Haskell、Scala、ML、Scheme:あなたが次に学ぶ関数型言語 | POSTD
    ytac8
    ytac8 2016/07/27
  • 「異常検知と変化検知」輪読会で論文紹介しました - ほくそ笑む

    去る 7/21(木) に行われた「異常検知と変化検知」輪読会で論文紹介をさせていただきました。 タイトルは「非制約最小二乗密度比推定法 uLSIF を用いた外れ値検出」で、資料は SlideShare に上げています。 非制約最小二乗密度比推定法 uLSIF を用いた外れ値検出 from hoxo_m 発表で紹介した論文は下記です。 Hido+ (2011) Statistical Outlier Detection Using Direct Density Ratio Estimation 『異常検知と変化検知』「第11章 密度比推定による異常検知」では、密度比推定法として カルバック・ライブラー密度比推定法 KLIEP (Sugiyama+ 2008) 最小2乗密度比推定法 LSIF (Kanamori+ 2009) が紹介されていますが、LSIF を進化させた uLSIF という手

    「異常検知と変化検知」輪読会で論文紹介しました - ほくそ笑む
    ytac8
    ytac8 2016/07/26
  • Pythonで少なくメモリを使用する方法 - のんびりしているエンジニアの日記

    皆さんこんにちは お元気ですか。私は元気です。 今日はPythonにおけるメモリ少なく使う方法を紹介したいと思います。 なぜ、そんな方法を書くに至ったか。それは、こんなエラーをしょっちゅう見ているからですね。 Traceback (most recent call last): File "lasagne_wheal.py", line 48, in <module> prediction = model.predict_proba(np.array(X_test)) MemoryError 画像処理を行っている人間ならよくやりがちかもしれませんが、 要はint8で持っている情報をfloatに変換してデータが膨れ上がったことによってメモリが 不足していることから発生しています。 Convolutional Neural Networkを大きな画像で実施しようとするとよく発生するのではないで

    Pythonで少なくメモリを使用する方法 - のんびりしているエンジニアの日記
    ytac8
    ytac8 2016/07/21
  • How To Install and Use Docker on Ubuntu 16.04 | DigitalOcean

    Introduction Docker is an application that makes it simple and easy to run application processes in a container, which are like virtual machines, only more portable, more resource-friendly, and more dependent on the host operating system. For a detailed introduction to the different components of a Docker container, check out The Docker Ecosystem: An Introduction to Common Components. There are tw

    How To Install and Use Docker on Ubuntu 16.04 | DigitalOcean
    ytac8
    ytac8 2016/07/20
  • NVIDIA Dockerで簡単にGPU対応のTensorFlow入りコンテナを作る方法

    こんにちは。 小説家になろうの作品群を読んでいたら連休が終わりそうです。 連休の終わりのアンミラ帰りに衝撃作TensorFlowでGPUが使えないとそのアンサーエントリであるTensorFlow on DockerGPUを使えるようにする方法を読み、書いてみたエントリです。先月購入した最低限Maxwell的なグラフィックカード(図1)絡みで見つけたNVIDIA Docker、なかなか良いものなのでもっと多くの方に知ってもらいたいなと思い。 今回はNVIDIA Docker + TensorFlowでGPUを有効活用する手順を紹介します。他の方による関連記事として、日語でのNVIDIA Docker + Caffe解説はすでにUbuntu14.04.3でnvidia-docker使ってCaffeをインストールしてみたがあります。Caffeな方はそちらを参照ください*1。今回はお題がTen

    NVIDIA Dockerで簡単にGPU対応のTensorFlow入りコンテナを作る方法
    ytac8
    ytac8 2016/07/19
  • わかりやすさの技術 - やしお

    社内向けの教育資料を、ど素人でもわかるようにと思いながら作っていて、じゃあ「わかりやすい」って何だろうって考えてた。今まで読んできたいろんなわかりやすかったとそうでないを思い浮かべながら、一般的にここを注意すればわかりやすさを確保できるだろうっていうポイントを一旦まとめておこうと思った。そうしてまとめてみると、に限らず人に何かを伝えること一般に適用される話だなと思った。 読む側の負担を減らす わからない=理解をはばむ障害物がある。この障害物を取り除く/回避する作業が「わかる」ために必要になる。その作業を、作者ではなく読者が負担するとき「わかりにくい」になる。 日社会だと情報の受け手の側がこの「わかる」ための作業を負うことでコミュニケーションを成立させる傾向にある。空気を読むというようなことだ。そのため発信者側が事前に手を尽くしてわかりやすく発信するというのが苦手で、相手が汲み取っ

    わかりやすさの技術 - やしお
    ytac8
    ytac8 2016/07/11
  • Kerasで学ぶ転移学習

    前回記事では、KaggleのFacial Keypoints Detectionを題材にして、単純なニューラルネットワークから転移学習まで解説しました。 事前に学習した重みを読み込んだ後、全ての層で学習するのではなく、一部の層をフリーズさせることもできるという話を最後に少しだけしました。ちょうどその後、転移学習について詳細に解説しているKerasの公式ブログ記事が公開されましたこともあり、今回はこの記事を参考にしつつ、転移学習をメインに解説していきます。間違いがあれば指摘してください。今回もFacial Keypoints Detectionのデータを使って解説していくので、前回記事も是非合わせて読んでみてください。 また、Keras 1.0.4が公開されたのでまだの人はアップデートしておくと良いかと思います。 目次 転移学習 可視化 全結合層のみ学習(前回モデル) 全結合層+一部の畳み込

    Kerasで学ぶ転移学習
    ytac8
    ytac8 2016/07/10
  • Web界隈で最近気になるWebサービスとか集めてみた【2016年7月版】 - Brian'z Imagination

    2016年もいよいよ下半期突入。 歳を取るごとに1年が過ぎるスピードがますます加速するように感じるけれど、全然悲観的じゃない。むしろ毎日新しくて新鮮なことが向こうからどんどん飛び込んできて、毎日エキサイティングだ。 そんなわけで、今回も先月に引き続き最近気になるWebサービスやアプリケーションなどを紹介していきたい。前回は海外サイトを中心に紹介したけれど、今回は海外編・国内編と2立てで紹介していく。ほとんどのサービスは無料だけれど、とんでもなく便利なものも多いので、きっとあなたの役に立つはずだ。 ちなみに前回の6月版の記事はこちら。 海外編 Real Time Users Real Time Usersは、1分(60秒)以内にサイトを閲覧しているひとの数を表示するカウンターのjavascriptプラグインだ。CSSで表示部分をカスタマイズすることができる。数行のコードではてなブログにも設

    Web界隈で最近気になるWebサービスとか集めてみた【2016年7月版】 - Brian'z Imagination
    ytac8
    ytac8 2016/07/05
  • バイアスと戯れる

    前書き 縁あって著者の方々より、共立出版さんの『自然科学研究のためのR入門 - 再現可能なレポート執筆実践』と『女子高生乱子によるベイズ統計学入門講座』(「とある弁当屋の統計技師」の第3巻)の2冊をご恵贈いただきました。 この場を借りて改めて感謝いたします。ありがとうございます。 自然科学研究のためのR入門 女子高生乱子によるベイズ統計学入門講座 一緒にいただきました『自然科学研究のためのR入門 - 再現可能なレポート執筆実践』はコードを実行しながら読ませていただこうと、『女子高生乱子によるベイズ統計学入門講座』から手に取りましたが。 女子高生乱子さんがわかりやすくベイズ統計を解説してくれるだけでなく、全体を通して切れ味の鋭い地の文とセリフでも読者を楽しませてくれます。特に1章で出てくる「学振と博士」や「相関と疑似相関」の話、「データ分析のわからない教授」に「標と昆虫採集、母集団」の例え

    バイアスと戯れる
    ytac8
    ytac8 2016/06/30
  • TensorFlowでGPUが使えない

    GPUマシンでTensorFlowを実行する際、CUDAもcuDNNも正常にセットアップできているのに、TensorFlowがGPUを認識しない(CUDA_ERROR_NO_DEVICEやNo GPU devices available on machine.が表示される)場合、正しいディスプレイカード・ドライバがインストールされていない可能性があります。 筆者の環境では、既存のドライバーをアンインストール(sudo apt-get remove –purge nvidia*)して、NVIDIAのサイトからドライバーをダウンロード・インストールすることでGPUを認識するようになりました。 あわせて読みたい TensorFlow on DockerGPUを使えるようにする方法 | 株式会社カブク NVIDIA Dockerで簡単にGPU対応のTensorFlow入りコンテナを作る方法 |

    ytac8
    ytac8 2016/06/21
  • Python pandas データ選択処理をちょっと詳しく <前編> - StatsFragments

    概要 書いていて長くなったため、まず前編として pandas で データを行 / 列から選択する方法を少し詳しく書く。特に、個人的にはけっこう重要だと思っている loc と iloc について 日語で整理したものがなさそうなので。 サンプルデータの準備 import pandas as pd s = pd.Series([1, 2, 3], index = ['I1', 'I2', 'I3']) df = pd.DataFrame({'C1': [11, 21, 31], 'C2': [12, 22, 32], 'C3': [13, 23, 33]}, index = ['I1', 'I2', 'I3']) s # I1 1 # I2 2 # I3 3 # dtype: int64 df # C1 C2 C3 # I1 11 12 13 # I2 21 22 23 # I3 31 32

    Python pandas データ選択処理をちょっと詳しく <前編> - StatsFragments
    ytac8
    ytac8 2016/06/20
  • Node.js、Express.js入門 - ぺーぺーSEのブログ

    2015-03-02 Node.js、Express.js入門 Node.js JavaScript Express.js サーバサイドJavaScript実行エンジンNode.js触ってみた。 下記記事の前半のnpmとNode.js」は読んだテイで書く。Grunt入門 - ぺーぺーSEのブログtanakakns.hatenablog.com 使い方 まず、Node.jsをJavaScriptエンジンとしてシンプルに動かしてみる。■hello.js exports.sayHello = function(){ return "Hello World !" } ■main.js var hello = require('./hello.js'); console.log(hello.sayHello()); 上記JSファイルを作成して下記を実行。 > node main.js Hello

    Node.js、Express.js入門 - ぺーぺーSEのブログ
    ytac8
    ytac8 2016/06/12
  • 「締め切りは絶対に守るもの」と考えると世界が変わる

    2011年にインプレスジャパンから「エンジニアとしての生き方」というを出版して以来、書籍よりは「メルマガ(週刊 Life is Beautiful)」の執筆を優先して来た私ですが、この度、とある編集者に説得されて「時間術」のを出版することになりました。 『なぜ、あなたの仕事は終わらないのか スピードは最強の武器である』(文響社) 「時間術」とは言っても、巷に良くある「どうやって時間を効率よく使うか」という話ではなく、実際の仕事の現場において「常に締め切り通りに仕事を終える人」になるための、私なりの「仕事に対する取り組み方」を解説した仕事術のです。 「いつも締め切りに追われている」「締め切り間際にならないと気で仕事ができない」という悩みを抱える人たちには是非とも読んでいただきたいです。締め切りを守れるかどうかは、締め切り間際のラストスパートで決まるのではなく、もっと前の段階での、「

    ytac8
    ytac8 2016/06/07
    “大半の人が、スケジューリングの段階から大きな勘違いをして仕事に取り掛かっています。締め切りという言葉への典型的な誤った考え方は、次のようなものでしょう。 ・見積もりはあくまで見積もりでしかなく、予定
  • Ubuntu 18.04 LTS 64bit インストール後設定 - tshitaの備忘録Ⅱ

    apt-get ではなく apt を使用 (2018年4月19日) システムの設定 [ 日本語入力 ] インストール後に一度,Mozcの入力モードを変更する必要がある 右上の「en」をクリックして「日語(Mozc)」を選択 → 「入力モード」で「ひらがな」を選択 入力ソースの切り替え:「設定」を開く → 「デバイス」を選択 → 「キーボード」を選択 → 「タイピング」の「前の入力ソースへ切り替える」で変更 [外付けキーボード(HHK)] 外付けキーボード(US配列)とノートPC側のキーボード(JIS配列)の切り替え方法 $ sudo apt install fcitx fcitx-mozc # Fcitxのインストール Dashで「Fcitx」と入力して「Fcitx設定」を選択 → 「Mozc」,「キーボード-英語(US)」,「キーボード-日語」を「+」をクリックして追加(他の入力メソ

    ytac8
    ytac8 2016/06/07