Intro Public Suffix List (PSL) は、現在の Web プラットフォームの一端を支えている非常に重要な要素だ。 実はこれが、少数のボランティアにより GitHub でメンテナンスされた、単なるテキストリストであることは、あまり知られていないかもしれない。 最近、このリストへの追加リクエストがあとを絶たず、問題になっている。 そもそも PSL とは何であり、今どのような問題が起こっているのかについて解説する。 Public Suffix List とは何か PSL を解説するには、まず関連する用語について整理する。 Top Level Domain (TLD) 例えば、このブログのドメインは blog.jxck.io であり、これは筆者が取得したドメイン jxck.io のサブドメインだ。 jxck.io は、 .io という TLD のサブドメインを販売しているレ
フェイスブックがVR内テキスト入力の研究内容を公開、物理キーボードと近い水準に フェイスブックのAR/VR部門Facebook Reality Labs(FRL)は、物理的なキーボードを使わずに、AR/VRでテキスト入力を行うためのハンドトラッキングの研究内容を公開しました。マーカー付き手袋を使用しているものの、入力精度は物理キーボードの水準に近い数値となっています。 マーカー付き手袋とOculus Questのカメラで手指の動きを追跡 今回FRLが公開したのは、AR/VR空間上での操作の中でもっともフラストレーションがたまりやすい「文字入力」に関するもの。新たなハンドトラッキング方式では、マーカーを取り付けた手袋をOculus Questの内蔵カメラで追跡し、机などの平面上で文字入力ができるようになっています。 フェイスブックは研究がまだ初期段階であることを述べつつも、「新方式では高速タ
FacebookはC++、Java、Pythonなどの高水準言語で書かれたプログラムコードを別のプログラミング言語に変換するニューラルトランスコンパイラを開発したという。このシステムは教師なし学習を採用しており、同社は従来よりもかなり効率が改善したとしている。 既存のプログラムコードを別の言語に移行するには、両方の言語について専門的な知識が必要な上、コストがかかってしまいがちだ。たとえばオーストラリアのコモンウェルス銀行はプラットフォームをCOBOLからJavaに移行するために5年の歳月と約7億5,000万米ドルを費やした。 Facebookは教師なし学習というアプローチ法に取り組み、C++、Java、Python間でソースコードを変換することができる「TransCoder」を開発した。トレーニングには280万件以上のオープンソースリポジトリからなるGitHubコーパスを使用した。Tran
米フェイスブック(Facebook)ではいよいよ、AI(人工知能)がソフトウエアのバグ修正まで始めた。AIが自動でアプリケーションをテストしてバグを見つけ出し、修正パッチを開発。新しいテストケースを作って再テストしたうえで、人間のエンジニアにレビューを要求する。同社はこれらのシステム一式をOSS(オープンソースソフトウエア)として公開する計画だ。 デバッグ自動化の詳細は、フェイスブックが2018年9月13日にシリコンバレーで開催した大規模システム開発の勉強会「@Scale Conference」で明らかにした。新たに発表したのは、Android用アプリケーションのバグを修正するパッチを自動生成する「SapFix」というシステムだ。 フェイスブックはこれとは別に、テストの自動化ツールも以前から自社開発している。2018年5月に発表した「Sapienz(サピエンス)」は、AndroidやiOS
Out of memory killing has historically happened inside kernel space. On a memory overcommitted linux system, malloc(2) and friends usually never fail. However, if an application dereferences the returned pointer and the system has run out of physical memory, the linux kernel is forced to take extreme measures, up to and including killing processes. This is sometimes a slow and painful process beca
TFX社内の勉強会でGoogle, Facebookが提供する機械学習基盤に関する論文を紹介したので、その資料を公開します 経緯機械学習をサービスとして提供開始すると、継続的な学習やプロダクション環境での機械学習の提供はモデル構築以外にもいろいろと考える問題が多くなります¹ 要するに機械学習をサービスとして届けるには、実はめちゃんこ大変なんだよという話なんですが、みんな同じ問題にぶち当たります。 そのためプロダクションレディなレベルで機械学習を提供できるプラットフォームを各社が提案しておりその中でもGoogle, Facebookの事例を提供します。 TL; DR;FBLearner: MLaaSの事例として最初に読むべき論文、MLaaSをどのような戦略で提供しているかを抽象的にまなべるため、鳥瞰図として読みましょうTFXは逆に機械学習基盤が必要とする技術スタックや要件などを詳細に説明して
データ分析ガチ勉強アドベントカレンダー 13日目。 仮想通貨がはやり始めて、チャートを見るようになった人も多いのではないでしょうか? チャートから予測をしたい という思いを持ちつつも、結構ハードルの高いのが時系列予測。 それをできるだけ簡単にできるツールがProphet。 自分の持っているドメイン知識を導入しながら、簡単に時系列データ予測を行うことができます。 prophetとは 資料 ビジネス予測のための課題 設計思想 Prophetでできないこと 根底のアルゴリズム インストール Prophet tutorial 型の変換 将来の予測 Components 特別なイベントなど help まとめ prophetとは 資料 公式記事 github わかりやすい資料(slideshare)*1 ビジネス予測のための課題 Completely automatic forecasting tec
Steven J. Vaughan-Nichols (ZDNET.com) 翻訳校正: 編集部 2017-10-23 12:23 計算処理を順番に実行する逐次コンピューティングのやり方を学ぶのは簡単だ。このことはプログラミングを学んでいれば誰でも分かっているはずだ。そして、スーパーコンピュータの計算処理を支えている同時計算処理を実現するためのパラレル(並列)コンピューティングはずっと難しいものの、できない話ではない。その一方で、複数の計算処理が同時並行的に実行されるコンカレント(並行)コンピューティングははるかに困難なものとなっている。ただ、コンカレントコンピューティングは、列車運行管理において単一軌道上を運行している複数の列車を管理するのか、単一のFacebookページ上にある複数のコメントを管理するのかにかかわらず、極めて有用なものとなる。これこそ、Facebookがコンカレントプログ
Facebookは、Javaのコードを静的に解析してマルチスレッドプログラミングで発生するデータ競合のバグを発見するツール「RacerD」をオープンソースでリリースした。 アプリケーションのレスポンスを改善するうえで、マルチスレッド化は重要な選択肢のひとつです。 その一方で、マルチスレッドのアプリケーションは十分に注意深くプログラミングしないと、変数の値が予期しないタイミングでほかのスレッドから書き換えられるなどの問題が紛れ込みやすいものです。 しかもマルチスレッドに起因する問題は再現が難しく、一般に発見するのが困難です。 RacerDリリース:Facebookで1000以上ものバグを発見 Facebookは、こうしたデータ競合の問題を、コードを静的解析することで発見し、警告してくれるツール「RacerD」をオープンソースで公開しました。 Facebookの説明によると、RacerDはロッ
機械学習のスタックしていた案件をFacebook Prophetで3日で返済した話 背景 広告代理店業を行なっており、クライアント企業から予算を預かって、インターネット広告やマーケティング業をしているのだが、クライアントの予算消化の異常値を監視したい 2016年半ばに外部のデータ分析専門の会社に、その日の予算消化が異常の場合、アラートを鳴らすシステムを外注開始、2016年10月に納品 2017年9月半ばに進捗率が芳しくないことが判明した。終わる見込みが立たなかったので、私が解決に当たる (ついでに"Machine Learning: The High-Interest Credit Card of Technical Debt[2]"と呼ばれる負債化してしまう機械学習のシステムとはという評価軸があったので、これらから今回使えそうなプラクティスを取り出して適応してみたいというモチベーションが
Facebook が出した誰でも簡単に時系列予測ができるツール Prophet についていくつか発表しました。 Prophet入門【Python編】 Prophet入門【R編】 Prophet入門【理論編】 Prophetはビジネス時系列、すなわち人間の行動に左右される時系列データに対する自動予測ツールです。 ビジネスでは大量の時系列データに対する予測を作成する必要があります。 しかし、それを1人のデータ分析者が1つ1つ作っていくのでは手が足りません。 そこで、統計の知識を必要しない、誰にでも簡単に時系列予測を行うツールとして Prophet が作成されました。 Prophet はオープンソースで開発され、Python と R のライブラリが公開されています。 まずは今年5月に Python版についての発表を foundIT データ解析・機械学習セミナー にて行いました。 Python版の
この記事はfreee Engineers Advent Calendar 2016の...っと、もう空きがないじゃないか! というわけで、急遽MySQL Casual Advent Calendar 2016の16日目としてお送りします。 MySQLエキスパートであるところのFacebook 松信嘉範さんによるMyRocks紹介プレゼンを聞く機会に恵まれたので、本人の許可を得てその内容を公開します。 経緯 松信さんと自分は以前に同じ会社で働いていた元同僚で、彼のデビュー作「現場で使える MySQL」の元となったDBマガジンの連載時にちょっとお手伝いした縁もあり、その後も交流が続いております。 今回は松信さんがちょいと日本に寄るというので食事に誘ったのですが、ついでなので私の現職 freee株式会社のオフィス見学に来てもらい、「せっかくだから何かしゃべって」という図々しいお願いをしたところ、
先月あたりから、オープンソースソフトウェア(以下、OSS)のライセンスのあり方について、Facebookを火種にして侃々諤々の議論が起こっているので解説してみる。 ASFがFacebookにNOをつきつけることの始まりは、Apache Software Foundation(以下、ASF)という著名OSSプロジェクトを多数保有する非営利団体が、Facebookが自社OSSに付加している独自ライセンス Facebook BSD+Patents license を「Category-X」リスト(禁忌リスト)に追加したことだ。 ASFプロジェクトは、Category-Xに含まれるOSSに依存してはいけない決まりがあるため、Facebook製のOSSに依存しているプロジェクトは、8月31日以降はそれらの依存を取り除いてからではないと新しいリリースが出来ない。影響を受けたプロジェクトは少なくとも C
米Facebookの人工知能研究機関Facebook AI Research(FAIR)は6月15日(現地時間)、英語で交渉する能力を持つbot(ダイアローグエージェント)を開発したとして、論文を発表し、そのコードをGitHubでオープンソースで公開した。 交渉は、テレビのチャンネル争いや値引き交渉など、人間は日常的に行っていることだが、2者が同時に目的を定め、それを言語を使って実現するという、AIにとっては非常に複雑な行為だ。botでこれを実現するには、長期的な目的を理解させ、それを達成するための、協調的/敵対的な発話を可能にしなければならない。 FAIRはまず、人間同士の交渉データで「教師あり学習」をさせて交渉のための言葉を学ばせ、次に多数の交渉シナリオ(双方の目的を同時には満たせないもの)を用意し、2つのbotに学習させた。交渉を放棄するか10回のやり取りでも成立しない場合は0ポイン
今日やること 今日はFacebookアカウントでOpenAMにサインインをしてみます。 わたしの場合、OpenAMの活用場所が従業員向けのIAMとなっているので、きっと使わない機能だとおもいます。完全に興味本位での検証です。 俗にいうソーシャルログインっていわれている機能ですが、仕組み自体はOpenID Connectと似たようなもんでしょう。たぶん。 Facebook開発者になろう FacebookからFederationしてもらうにあたり、当然ですがFacebookが提供しているエンドポイントをたたきます。まずは、たたくためのクライアント登録(Relying Partyの登録)を行います。 下記のURLにアクセスします https://developers.facebook.com/quickstarts/?platform=web Facebookの認証画面が表示されるので、ログイン
#はじめに みなさん、日頃JavaScriptのテストはどのように行っていますか? 昨今ではAngularJSやReactJSを始め、JavaScriptのフレームワークやライブラリを使用してのフロントエンドの開発が当たり前のようになってきております。 ではそのフロントエンド、JavaScriptのテストはどんなツールを使っていますか? mochaやpower-assert、chai、Karma、Jasmine等を組み合わせて使用してテストしているでしょうか。 前置きが少し長くなりましたが、Facebookが開発したオールインワンな「Jest」というツールのReactでのHowto的な使い方から実際のテストでの使用例を交えて紹介したいと思います。 ちなみにこのJest、最近リリースされて話題になったパッケージ管理のYarnでも使われています。 #対象バージョン Jest:22.0.4 Re
まえがき データにIDを持たせたいとき、単純な方法としては、DBの提供するauto incrementを使う場合やUUIDを利用することがある。それぞれの方法の利点欠点は以下の通り。 データベースのauto incrementを使う場合 利点: 特別な実装が必要ない 欠点: DBを1台で運用するとデータベースがパフォーマンス・障害のボトルネックになる DBを二台にするとIDのユニークさや順序の保証が困難 UUID(v4)※1を利用する場合 利点: 分散環境で各々がIDを生成しても衝突しない IDを公開したくない場合に、推測されにくいIDを生成できる 欠点: 128ビット必要、DBのインデクシングやプログラミング言語で扱うときに不利なことがある IDから時間の情報が失われる、例えば2つのIDを比べてどちらが古い投稿か判断できない 世界の大企業がどうしてるか 調べてみると多くの企業がブログなど
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く