自己回帰型モデルの深層学習

初めまして、データチームの上月です。
今回はVASILYテックブログ初の論文紹介、テーマは 自己回帰型モデル(Autoregressive, AR)です。

f:id:vasilyjp:20170615175304j:plain

はじめに

VASILYではIQONの類似画像検索にAutoencoderを適用しています。
具体的にはアイテム画像で学習したAutoencoderの潜在変数を特徴量として類似画像検索を行っていますが、背景やモデルの影響を受けやすいなどの課題があります。
この問題は「潜在変数にどのような情報を持たせるか」を調整することで解決できる可能性が高く、潜在変数の分布にはdecoderの表現力が関係しています。 最近ではVAEのdecoderとしてRNNや自己回帰型モデルなどといった表現力のあるモデルを用いたり1、 decoderの後にPixelCNN2を追加することで潜在変数がもつ情報を目的にあったものにする例があります(PixelVAE3)。 そこで今回はARの中でも特に、画像と相性が良いといわれている畳み込み層がメインの 自己回帰型モデルを幾つか紹介します。

はじめに生成モデルとしてメジャーなVAE4とGAN5について触れた後にARを紹介します。


  1. Søren, M. F., Sønderby, K., Paquet, U., & Winther, O. (n.d.). Sequential Neural Models with Stochastic Layers. Retrieved from https://arxiv.org/pdf/1605.07571.pdf

  2. Oord, A. van den, Kalchbrenner, N., & Kavukcuoglu, K. (2016). Pixel Recurrent Neural Networks. Retrieved from http://arxiv.org/abs/1601.06759

  3. Gulrajani, I., Kumar, K., Ahmed, F., Taiga, A. A., Visin, F., Vazquez, D., & Courville, A. (n.d.). PIXELVAE: A LATENT VARIABLE MODEL FOR NATURAL IMAGES.

  4. Kingma, D. P., & Welling, M. (2013). Auto-Encoding Variational Bayes, (Ml), 1–14. Retrieved from http://arxiv.org/abs/1312.6114

  5. Goodfellow, I., Pouget-Abadie, J., Mirza, M., Xu, B., Warde-Farley, D., Ozair, S., … Bengio, Y. (2014). Generative Adversarial Nets. Advances in Neural Information Processing Systems 27, 2672–2680. Retrieved from http://papers.nips.cc/paper/5423-generative-adversarial-nets.pdf

続きを読む

Fashion Tech meetup vol.4を開催しました

2017年6月7日、第4回目となるFashion Tech meetupを開催しました。今回はVASILYが主催となり、バックエンドチーム、フロントエンドチーム、データチームが業務で行っている開発・運用のノウハウを発表しました。

本記事で弊社の登壇資料を公開しますので、ご参加できなかった方、Fashion Tech meetupを初めて知った方、是非ご一読ください。

続きを読む

レコメンドに画像の情報を活用する方法

データサイエンティストの中村です。 ファッションアイテムの画像から抽出した特徴量は検索以外にも利用することができます。 今回はレコメンドにおける画像特徴量の活用について、以下の3トピックを考えてみたいと思います。

  • 画像特徴量を利用したコンテンツベースレコメンド
  • モデルベース協調フィルタリングにおけるコールドスタート問題の軽減
  • 画像特徴量を利用したモデルベース協調フィルタリングの高度化
続きを読む

HTML5における画像のレスポンシブ対応方法まとめ

こんにちは、Webフロントエンドエンジニアの権守です。
弊社では200以上の提携ECサイトから集めた大量の商品写真を取り扱っています。そのサービスの性質上、画像配信の最適化は非常に重要な課題の1つです。今回は最適化の一環として画像のレスポンシブ対応を導入しましたので、その際に調査した内容やハマったポイントなどを紹介します。

f:id:vasilyjp:20170519162709j:plain

続きを読む

開発効率を上げる!Swaggerで作るWEB APIモック

こんにちは。バックエンドエンジニアのじょーです。

みなさんは、開発初期の段階でWeb API(以下API)の実装が追いつかずクライアント側が開発できないという経験をしたことはありますか? クライアント側はAPIがないと開発が滞ってしまうことがありますが、かといってAPIの開発も始まったばかりではすぐに必要なAPIを提供することができません。その問題を解決し、両者でスムーズに開発をすすめるために有効な方法の1つに、APIモックの作成があります。 弊社では、開発初期の段階でWeb APIのモックを作成し、スムーズに開発できるようにしています。

以前は、Apiaryをモック作成ツールとして利用していましたが、記法やエディターに使いづらい点があり最近Swaggerに移行しました。 本記事では、Swaggerを使ったAPIモックの作成方法と手順、また気をつけるべき点などを紹介します。

目次

  1. Swaggerとは?
  2. Swagger記法の一例
  3. Swaggerのエディター選択
  4. SwaggerAPIモックの動かし方
  5. 結論
  6. まとめ
続きを読む

Apache Mesos / Marathon を本番で運用するための5つのTips

こんにちは。 インフラエンジニアの光野です。

先日のブログ記事でご紹介したとおり、弊社のクローラーはDockerコンテナ化されています。このコンテナはApache MesosとMarathonのクラスタ上で動いています。

先日の記事はクローラーシステム全体を取り扱いましたが、本記事ではMesos/Marathonを導入するにあたって必要だった設定について「〜したい」という形で紹介いたします。 Tips集として導入や検討の参考にしていただければ何よりです。

記事中の用語については先頭の前提知識・用語まとめにまとめています。また、Tipsは各見出しごとに独立させていますので、お好きな部分を参照ください。

続きを読む

モダンなSwiftのExtensionについて - Targeted Extensions

f:id:vasilyjp:20170419195827p:plain

VASILYのiOSエンジニアにこらすです。最近、Swift Evolutionに私の2つ目の提案がマージされました。

今回は、Swiftで型にExtensionを作る特殊な方法について説明します。 今回紹介する方法を使ってExtensionを作ると、名前空間が切り分けられ、コードの読み書きがしやすくなります。

ブログを書くに当たって、この Extension 実装方法を研究しましたが、この手法の正確な名前がわからなかったため、この記事では「Targeted Extensions」と呼ぶことにします。

続きを読む