タグ

ブックマーク / medium.com (46)

  • BERTを用いた日本語文書分類タスクの学習・ハイパーパラメータチューニングの実践例

    BERT を用いて livedoorニュースコーパス分類タスクを学習ハイパーパラメータチューニングによって,テスト正答率を 87.6% から 96.7% まで改善おまけ:カテゴリ「エスマックス」の判別は極めて容易 カラクリ株式会社の Research & development チーム(長いので以下 AIチーム)の吉田です.おはこんばんにちは. 記事では,BERT (Bidirectional Encoder Representations from Transformers) を用いて日語文書分類タスクを学習し,さらに精度向上のためにハイパーパラメータチューニングを実施した場合の実践例について記しました. BERTは,文章(正確にはトークン列)が入力されるとその特徴ベクトルを出力する,巨大なニューラルネットワークです.2018年10月にGoogleから発表された論文で提案された手法で

    BERTを用いた日本語文書分類タスクの学習・ハイパーパラメータチューニングの実践例
  • Apache Airflowでエンドユーザーのための機械学習パイプラインを構築する Part5 (End)

    We organized Japanese financial reports to encourage applying NLP techniques to financial analytics. You can download… Part4からずいぶん間が空きましたが、その間にはデータ公開にまつわるもろもろの調整などがあったという。 Airflowを採用しなかった理由最終的にAirflowを採用しなかった理由は2つあります。 運用コスト開発コスト運用コスト Part3でも触れましたが、Airflowのホスティングは結構高くつきます。ホスティングサービスを提供しているのはGCPのCloud ComposerとAstronomerの2つが主です。Astronomerの場合は月額$100まで抑えることが可能ですが、固定で毎月かかるとなるとそこそこの金額です。 スケジューラーは、スケジュー

    Apache Airflowでエンドユーザーのための機械学習パイプラインを構築する Part5 (End)
  • StarGANを用いた髪色変換

    今回の目的としてはキャラクターの髪色変換(ex. 黒→白)を行います。このように画像の一部分だけを変化させるようなスタイル変換としてはCycleGAN(論文)等が挙げられますが、問題としては2つのドメイン間しか往復できないことにありました。例えば、髪色を例にとると一つの学習器では黒→白と白→黒だけしか変換出来ません。別の髪色に変換しようとしたら更に学習器が必要となります。そこで、多ドメインを多ドメインへと変換出来るような学習器を用意する必要がありますが、そこで今回検討したのがStarGAN(論文)です。今回はこのStarGANを用いて、キャラクターの髪色を様々な色へと変化させることを行いました。 StarGANこの記事では、詳細は割愛します。簡潔に述べると、Generatorに今どのドメインへと変化させようとしているか表すベクトルをconcatして加え、Discriminatorにその画像

    StarGANを用いた髪色変換
  • Apache Kafkaを使ったアプリ設計で反省している件を正直ベースで話す

    Apache Kafka: Producer, Broker and Consumer2017年は生まれて始めてApache Kafkaを格的に業務利用(PoCではなく番運用)した年でした。Apache Kafka的なメッセージングミドルウェアそのもののは、社内的な事情でよく使っていたのでその使い勝手に対して困惑はほとんど無かったですし、ミドルウェアとして非常に安定しているため、Kafkaクラスタそのものでの不具合らしい不具合が発生したことは一度もありませんでした。 しかし、Kafkaのトピック設計などに関してのベストプラクティスは事例ベースでもあまり見かけたことがなく、チームメンバーと悩むことも多かったです。このストーリーでは、主にKafkaを利用したアプリ設計で考えたことや失敗したことを振り返りつつ共有します。なお、パーティション数や各種バッファサイズなどのチューニング要素は今回取

    Apache Kafkaを使ったアプリ設計で反省している件を正直ベースで話す
  • iOSアプリを作るときのおすすめ構成

    高性能なMacマシンを確保まず、技術的なこと抜きに一定以上の性能のMacマシンを用意するのが良いです。取っ掛かりの勉強目的などならともかく、中規模以上のアプリを作る場合低スペックマシンでは著しく非効率です。 大体以下のようなイメージで、これ未満だと早めにマシン変えた方が幸せになれると思っています。 2–3年以内に買った20万円以上程度のMacBook Pro: 許容範囲iMac 5K: 良い感じiMac Pro: 一般的なiOSアプリ開発ではオーバースペック気味でコスパは微妙かも🤔会社で、交渉しても低スペック環境を強いられるのならば転職した方が良い気がしています🤔ちなみに転職ドラフトでSWHGという招待コードで登録するとお互いプロテインゲットできるので、気が向いたらお願いします( ´・‿・`) Continuous Integration(CI)環境次に、CI環境について触れます。CI

    iOSアプリを作るときのおすすめ構成
  • A How-to on Deep Reinforcement Learning: Setup AWS with Keras/Tensorflow, OpenAI Gym, and Jupyter

  • Creating Training Datasets for the SpaceNet Road Detection and Routing Challenge

    The SpaceNet Road Detection and Routing Challenge aims to automatically extract road networks directly from high-resolution satellite imagery. Such automated processes may help improve a vast array of problems, from the mundane (traffic) to the extreme (mass evacuation). In previous posts [1, 2] we detailed the evaluation metric for this challenge, and more recently we described the SpaceNet Roads

    Creating Training Datasets for the SpaceNet Road Detection and Routing Challenge
  • Goを遅くしないための地味な話 – haraheniku – Medium

    この記事はGunosy Advent Calendar 2017の13日目の記事です。 広告技術部の@harahenikuです。 主な業務はGoによる広告配信APIの開発です。たまにPythonとかDjangoとかもやってます。 Goは速いですが遅いコードをかけば当然遅くなってしまいます。 この記事ではGoのプログラムを遅くしないために、実際に行ったチューニングを幾つか紹介したいと思います。 スライスの処理長さを指定するスライスの初期化は次のようなコードはappendでallocが発生します。 feature := []VectorEntry{} for i, v := range vec { e := VectorEntry{ ID: i+stride, Value: v, } feature = append(feature, e) }appendでallocされないように、makeで

  • Gyazo 開発環境の Docker 化 - r7kamura - Medium

    The easy way to save screenshots, GIFs, and websites. Make everyone happy by sharing smarter, faster, and with your… 単純にスクリーンショットを保存するだけなら OS の機能だけでも十分ですが、GIF 動画を保存できたり、いつどこでどんなアプリケーションを利用しているときに撮影したのか、あるいは画面にどんな文字が写っているかといった情報を元に検索できたり、保存した画像をコレクションという単位でまとめて共有できたりと、Gyazo を使って保存しておくと意外と便利なことが多く、個人的にも重宝しているサービスの1つです。 我々が開発環境で Docker を使うメリットGyazo のサーバサイドの実装には、プログラミング言語の観点で見ると RubyGoJavaScript などが

  • グラフ畳み込みの柔軟性を向上させる手法と、深層学習の判断を理解する手法

  • Pythonの環境構築を自分なりに整理してみる

    機械学習ブームなどにより、 Python を触り始める Rubyist が増えてきたと思います。その際に問題になりやすいのが環境構築です。Rubyだと rbenv がデファクトスタンダードになっているのに、なぜか Python に… 私の立ち位置もともとは、数年前まで 年に一回Python3でNLTKやらscikit-learnやら機械学習や自然言語処理の環境を作ろうと試みては失敗してPython使うものかと思っていた人でした。それが、Anacondaで環境導入すると、面倒なことは何も考えずに済むということを知り、CookpadではAnacondaを前提に環境構築を勧めていました。 今は、ymotongpooに「郷に入っては郷に従え」と言われたため、pip+virtualenv/venvで全てをこなしていますが、これで困ったことは特にありません。macOS, Windows, Linux

  • Docker Cheat Sheet

    DisclaimerThis content is part of / inspired by one of our online courses/training. We are offering up to 80% OFF on these materials, during the Black Friday 2019. You can receive your discount here. I’ve been using Docker for years now, in my previous professional experiences and for my company (eralabs.io) customers and I wanted to share my knowledge, that’s why I started Painless Docker Course.

    Docker Cheat Sheet
  • ラベルなしデータの有効活用:深度の推定と画像の分類

    8/9のarXivTimes輪講では、ラベルなしのデータを有効に活用した研究が紹介されました。今あるデータをどう活用するか、という点は実運用においても役立つテーマと思います。 Unsupervised monocular depth estimation with Left-Right Consistency こちらは一枚の写真から深度を推定する手法を、画像/深度(Depth map)のペアではなくステレオ画像から学習させようという試みです。深度の教師データを作成するのは面倒ですが、ステレオ画像なら簡単に集められます。これを有効に活用することを試みた研究です。 手法としては、Depth mapを直接推定するのではなくステレオ画像における視差(Disparity map)の推定を行っています(視差がわかれば深度も推定できるため)。左カメラ画像から視差を推定し、推定視差と元の画像を組み合わせた

  • 「今年は…何か大きめのOSSにコントリビュートしたいですね」

    これはポエム。 先日、晴れてGoにContributeできまして、積年の目標であった「なんか大きめのOSSにコントリビュートする」を達成した。 これは前から当にやってみたかったことで、Issueを立ててはCloseされ、をRubyやらGoやらで何度かやった末のコントリビュート。 割と一個のマイルストーンを経た感じがして、個人的には感慨がある。 OSSにコントリビュートしてみたいそもそも、プログラミング初めてからというもの、「Rubyにpull-req送ってます」とか、言語そのものへのコミットにはかなりの憧れを感じていて、社会人になる前後からというもの、3年前くらいから、何か面談とかで目標を聞かれるたびに、ずっと「技術的には…言語とか有名なソフトウェアへのコミットをしてみたいですね…」と言っていた。 とはいうものの、心理的障壁が高くて、自分のような技術力でできる気がしなかったのと、ソースを

    「今年は…何か大きめのOSSにコントリビュートしたいですね」
  • 入手までに半年かかったけど、ThinkPad X1 Carbon 2017はとても良い

    1月には発表され、2月には販売が始まったはずのThinkPad X1 Carbon 5th Generation (2017)。 WQHDのモデルが販売されるのを待っていたら、7月も半分終わってしまいました。もう、あと数か月すると来年のモデルの話が出てくるのでしょう・・・と思うとちょっとだけ悲しくなりますね。 とはいえ、僕の手元にやってきた5台目のX1 Carbon。 箱2016年モデルと同じく、一番外のシール張られまくり、汚れまくりの箱に始まり、3重の箱です。まぁ、そして、最初の印象は、無駄に軽い。中身、空っぽなんじゃって思うレベルの軽さです。 上が2017、下が2016。箱がちょっと小さくなっている。触り心地僕は毎年X1 Carbonを購入している信者ともいえるような馬鹿野郎ですが、キータッチに関しては、これはひょっとして初代に匹敵する良さじゃないでしょうか。2016は正直なところ、キ

    入手までに半年かかったけど、ThinkPad X1 Carbon 2017はとても良い
  • 1回目)Elasticsearch 勉強会を開催したので資料公開します。

    6月27日にクラスメソッド事業開発部の開発メンバーとベルトラ開発メンバー合同で Elasticsearch 勉強会1/2を開催しました。参加者はリモートも含めて約25人くらい。時間は2時間。久しぶりに長時間喋ったので疲れました。。たくさんの人が参加すると聞いていたので、この勉強会のために資料まとめたので公開します。 Elasticsearch 勉強会 1/2 前半全文検索エンジンの特徴について話しました。いきなり「転置インデックス」と言われても、ピンと来ないかもしれませんが。全文検索エンジンの設計を担当する人も、それを使ってアプリケーションを開発する人もこの仕組みを知らなければ Elasticsearch のリファレンスで提供されている機能を見てもピンと来ません。「この機能何に使うんだろう?」となってしまいます。世の中にある全文検索エンジンに標準規格というものは存在しませんが、その仕組みは

    1回目)Elasticsearch 勉強会を開催したので資料公開します。
  • Python 3’s Killer Feature: asyncio – Paxos – Medium

    Financial technology company delivering pioneering blockchain solutions for financial institutions. Follow us to read our latest blockchain thought leadership. Python 3’s Killer Feature: asyncioA massive debate in the python community about python2/3 has been raging for years. The main reason for python3 to diverge was to provide unambiguous types to handle unicode, strings and bytes (more here),

    Python 3’s Killer Feature: asyncio – Paxos – Medium
  • WebRTC ノハナシ

    主に WebRTC に関する最新情報をメモがてら。 宣伝時雨堂が一から開発した WebRTC SFU Sora を利用すれば、WebRTC でもサーバでの録画、複数人数でのビデオチャット、複数人への配信などを簡単に実現可能です。アプリへの組み込みを意識した作りになっているので認証やクライアントのコントロールも全てアプリ側で可能です。 WWDC17 にて Safari 11 が WebRTC への対応が発表

  • kazeburo/choconと、それを支えるnet/httpの実装について

    【資料公開します】AWS Dev Day Tokyo 2017 にて登壇しました/choconの簡単なご紹介 - Mercari Engineering Blog こんにちは。SREの @ kazeburo です。2017年5月31日から6月2日にAWS Summit Tokyo 2017と同時に開催された「AWS Dev Day Tokyo 2017」に登壇しました。 登壇する機会をいただき、ま… 先日、というか昨日、この資料が流れてきまして、Private Networkの外部との通信を効率良く行うためのミドルウェア、choconというproxyサーバーが紹介されていました。SSL, HTTP/2を加味した上での超シンプルで高速なforward proxyサーバー実装という印象です。 使い方やAPIの叩き方は上記のリンクを参考にしていただくとして、やたらマイクロな実装でなぜこうも高速に

    kazeburo/choconと、それを支えるnet/httpの実装について
  • Musical Novelty Search

    Making music with computer tools is delightful. Musical ideas can be explored quickly and composing songs is easy. Yet for many, these tools are overwhelming: An ocean of settings can be tweaked and it is often unclear, which changes lead to a great song. This experiment investigates how to use evolutionary algorithm and novelty search to help musicians find musical inspiration in Ableton Live. Ma

    Musical Novelty Search