タグ

2016年5月17日のブックマーク (12件)

  • Push通知を自前でつくるか、SaaSを使うか - Amazon SNS, Urban Airship, PushWoosh, CORE PUSH, Fello を比較してみた - API比較.com

    はじめまして。 いろんなSaaS, APIを比較してみるブログを始めてみることにしました。 今回は、スマホアプリやWebブラウザへのPush通知サービスについてまとめてみました。 サービスを作っている方に、少しでも参考になれば嬉しいです。 ※各サービスの機能や価格は2016年5月の執筆時点のものです。間違いがあれば、コメントにてご指摘ください。 ※こちらの記事を書いた数日後、Google I/OにてFirebaseの大幅な機能強化が発表され、GCMと連動したFirebase Notificationsなるサービスも発表されました。ぜひとも追記したいのですが、今、まとめる時間がないので、後日書きます。こちらの記事にご興味の方、よろしければFirebaseもご参考になさってみてください。 Push通知とは? Push通知の仕組み 自前でやるか、SaaS でやるか - 利用ステップ毎に設計の難易

    Push通知を自前でつくるか、SaaSを使うか - Amazon SNS, Urban Airship, PushWoosh, CORE PUSH, Fello を比較してみた - API比較.com
  • AWS Lambdaを使ってベンチサーバー無しで社内ISUCONを運営したはなし - KAYAC engineers' blog

    新人研修担当の長田です。 今年も新人研修の締めとして社内ISUCONを行いました。 昨年はプログラミング基礎の講師をやったのですが、 今年はその実績を買われて(?)社内ISUCONの出題を担当することになりました。 過去のISUCON準備の様子を傍から見ていた身としては、 準備を始める前から「とにかく大変そうだ・・・」というイメージを持っていました。 問題を作りこむ以上、どうしてもISUCON当日ぎりぎりまでかかってしまうのでしょう。 ぎりぎりになるのはまあ準備する人が頑張ればいいとして、 ぎりぎりになった結果競技自体の進行が危ぶまれるのは避けたい! ということで、いくつか効率化という名の妥協策をとることにしました。 効率化できるところは? 毎回新規に出題するのはしんどい! 社内ISUCONは過去2回実施していますが、 どちらも新規に高速化対象のWebアプリケーションを作成していました。

    AWS Lambdaを使ってベンチサーバー無しで社内ISUCONを運営したはなし - KAYAC engineers' blog
  • 奥一穂さんインタビュー - Tokyo RubyKaigi 11

    13:25 Invited Speaker 最速ウェブサーバの作り方 近年、ウェブの体感速度は、ネットワークのバンド幅ではなくレイテンシによって律速される傾向が強まってきています。また、それに伴い、TCP Fast Open、HTTP/2、TLS 1.3といった、レイテンシの影響を削減/隠蔽する技術の標準化が進んでいます。セッションでは、HTTP/2サーバ「H2O」の主開発者が、レイテンシの影響削減を主目的とするサーバのプログラミング技法や、HTTP/2の更なる高速化を実現する手法として標準化提案中の「Cache Digest」等を紹介し、それらをrubyから制御する手法を検討します。 必要となる知識 TCP/IPとUnixのソケットプログラミングに関する基礎的な知識があると、分かりやすいかと思います。 奥一穂 株式会社ディー・エヌ・エー MIT TR100、日OSS貢献者賞受賞、未踏

    奥一穂さんインタビュー - Tokyo RubyKaigi 11
    clavier
    clavier 2016/05/17
  • DockerでのNodeアプリ構築で学んだこと | POSTD

    以下に紹介するのは、 Docker を使って node.js 用のWebアプリケーションを開発、およびデプロイする際に、私が四苦八苦しながら学んだ秘訣やコツです。 このチュートリアル記事では、Dockerで socket.ioのチャットサンプル を白紙の状態から番状態へとセットアップしていきます。このプロセスを通じて、そうした秘訣などを簡単に習得していただければ幸いです。特に、以下のような内容について見ていきます。 実際にDockerでNodeアプリケーションを起動する。 すべてをrootとして実行させない(悪いやり方です)。 開発時のテスト-編集-リロードサイクルを短くするため、バインドを使用する。 再構築を高速にするため、 node_modules をコンテナで管理する(これには秘訣があります)。 npm shrinkwrap で、ビルドを反復可能にする。 開発環境と番環境で Do

    DockerでのNodeアプリ構築で学んだこと | POSTD
  • TensorFlow 大量の画像から学習するには・・・〜(ほぼ)解決編〜 - Qiita

    はじめに どうも、ikkiです。ようやく、大量の画像をTensorFlowにわせるのか、解決しました。 解決してみれば、ホント恥ずかしい内容でしたが。。。 中途半端に理解してのコピペはダメゼッタイ! 以前までの問題点 こちらで自前で用意した画像を学習するプログラムを掲載したが、このままだと、数万枚の画像データを学習することはできなかった。 というわけで、まずは修正したプログラムを掲載する。 #!/usr/bin/env python # -*- coding: utf-8 -*- import sys import cv2 import numpy as np import tensorflow as tf import tensorflow.python.platform NUM_CLASSES = 3 IMAGE_SIZE = 28 IMAGE_PIXELS = IMAGE_SIZE

    TensorFlow 大量の画像から学習するには・・・〜(ほぼ)解決編〜 - Qiita
    clavier
    clavier 2016/05/17
  • MNIST for ML Beginnersの数学的な意味合い - neuralnetな日記

    Tensor flowの初めの一歩のチュートリアルであるMNIST For ML Beginners について、数学的な意味合いを書いてみようと思います。 (ブログに不慣れなもので、修正/継ぎ足しながら公開していくことをお許しください) まず、このチュートリアルで実行していることは、 入力がn次元の配列 (は実数)が複数個あった時 、個々の出力 ()を得る写像を用意して、出力が 個々のに対する解 (あるz=1以外はz=0) に近い結果を得れるように、Fを最適化することです。 ここで、の各要素 は実数と書きましたが、これは概念上の話であり、プログラムの実装上ではfloatになります。以後、集合(つまり配列)の要素は数学上は実数ですが、プログラム上はfloatであると考えて下さい。は、となるm個の(実数の)集合です。また任意の要素は0以上であり、したがって、は0から1までの値をとることになりま

    MNIST for ML Beginnersの数学的な意味合い - neuralnetな日記
    clavier
    clavier 2016/05/17
  • これまでにやったこと(2015年上半期を振り返って) - PGは電子羊の夢を見るのか?

    機械学習機会学習アンド機械学習。 どうも、ピルティです。 もうまもなく2015年も半分が終わります。今回はこの上半期に自分がやったことを残しておこうと思います。 …とはいえ、やったことといえば機械学習に関するを読み、サンプルを写経し、いろいろ考えたって言うことぐらい。しかも3月ぐらいから。 でも、飽き性の僕が今も飽きずにやってることを考えると、ようやく面白そうなものに辿り着いたんだなって思う… 読んだ書籍 以下のを読みました。 読了 フリーソフトでつくる音声認識システム?パターン認識・機械学習の初歩から対話システムまで? 作者: 荒木雅弘出版社/メーカー: 森北出版発売日: 2007/10/01メディア: 単行(ソフトカバー)購入: 45人 クリック: 519回この商品を含むブログ (39件) を見る 史上最強図解 これならわかる!ベイズ統計学 作者: 涌井良幸,涌井貞美出版社/メー

    これまでにやったこと(2015年上半期を振り返って) - PGは電子羊の夢を見るのか?
    clavier
    clavier 2016/05/17
  • Discover opportunities at Pinterest

    Pinterest is an equal opportunity employer and makes employment decisions on the basis of merit. We want to have the best qualified people in every job. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, protected veteran status, or any other characteristic under federal,

    clavier
    clavier 2016/05/17
  • ニューラルネットワーク実装 - yambe2002’s diary

    Courseraの機械学習コースでニューラルネットワークを学んだので、習作としてC#で実装してみた。 多層パーセプトロン対応。Classification専用(シグモイド関数をベタ書きしてるので)。 ソースコードはここにおいてある。 実装の概略 ネットワーク各層の関数を、行列型の配列Thetas[]で保持している。 public class NeuralNetwork { public Matrix[] Thetas { get; set; } public int NumLayers { get; set; } public int[] NumNeurons { get; set; } これに、(RandomizeThetas()で初期化したあと)関数Learn()に学習用データとパラメタを渡せば最急降下法で学習を開始する。 public void Learn(Matrix[] inpu

    ニューラルネットワーク実装 - yambe2002’s diary
    clavier
    clavier 2016/05/17
  • コラッツの問題を並列計算するコマンドをGolangで書く練習をする - Line 1: Error: Invalid Blog('by Esehara' )

    今日の料理 カマンベールミルフィーユ鍋。 コラッツの問題 コラッツの予問題というとピンとこないかもしれないが、別名「3n+1問題」と言われたら、何処かで聞いたことがある人もいるんじゃないんだろうか。内容自体は簡単で、「任意の整数が与えられたとき、その整数が偶数ならば2で割り、奇数なら3倍に1を足す。そうしてできた数を先のルールに従って、同じように数を作る。こりを繰り返し、1になったら終了する」というもので、これが停止するかどうか、という話である。。 どんなアルゴリズムであっても、それが停止することが保証されていなければ、実際に使うときに非常に困ったことになる。このコラッツの問題が直接なんの役に立つのかは置いておくとして、このような単純なアルゴリズムでさえ、停止するかどうかの証明は難しいらしいのだが、この説明を聞いたら、直感的には「これは何となく止まりそうだ」と思うんじゃないかと思う。実際、

    コラッツの問題を並列計算するコマンドをGolangで書く練習をする - Line 1: Error: Invalid Blog('by Esehara' )
    clavier
    clavier 2016/05/17
  • Ruby on Railsの3日間マスター講座が期間限定4800円!

    【更新情報】*** 2017/3/3 更新! *** macOSの環境構築をmac OS Sierra対応(10.12.3)に更新しました。 10.10.xや10.11.xに比較するとパーミッションの問題がなくなり、スムーズにインストールできるようになりました。 【このコースについて】 このコースは Ruby on Railsで短期間にウェブサービスを開発したいあなたが現役エンジニアからRubyの基礎から、Railsによるウェブアプリ開発を学べます。 Ruby on Railsは、インスタグラムやAirbnbなど人気サイト構築に使われている、短期間でWebサービスを作るためのライブラリです。 この講座で学ぶと、 Ruby on Rails 4 の開発環境を確実に構築できます。はじめてRubyを学ぶ方でも、Rubyを基礎から学べます。Railsの開発に必要なHTMLの知識を学べます。1つめの

    Ruby on Railsの3日間マスター講座が期間限定4800円!
  • 画像内の不要部分を取り除き、修復する(OpenCV / iOS) - Qiita

    写真に意図せず写りこんでしまった物体等を取り除き、それによって欠損した領域を自動修復する技術を、画像修復/画像補間/インペインティング(Inpainting)と呼びます。 で、OpenCV にその機能があったので iOS で実装してみました。 関数 inpaint は,選択された画像領域を,その領域境界付近のピクセルを利用して再構成します.この関数は,スキャンされた写真からごみや傷を除去したり,静止画や動画から不要な物体を削除したりするために利用されます. (opencv documentationより) 実装方法 基的には inpaint() 関数を呼ぶだけです。OpenCV 3.0.0 における inpaint 関数のリファレンス によると、次のように定義されています。 C++: void inpaint(InputArray src, InputArray inpaintMask,

    画像内の不要部分を取り除き、修復する(OpenCV / iOS) - Qiita