タグ

ブックマーク / memo.sugyan.com (12)

  • TensorFlowによるDeep Learningでのアイドル顔識別モデルの性能評価と実験 - すぎゃーんメモ

    以前から書いているDeep Learningによるアイドル顔識別の話の続き。 コツコツと顔画像収集とラベル付けを続けて、そこそこにデータが集まってきたので ここらでちゃんと性能評価をしてみよう、と。 データセットの作成 今回は、現時点で重複なく180件以上の顔画像が集まっている40人のアイドルを分類対象とした。 対象アイドル一覧 これらのアイドルに分類のラベルindexを振り(推してる順とかじゃなくてランダムにね)、それぞれから無作為に抽出した180件の顔画像をそれぞれラベルとセットでレコードを作り、シャッフルして30件ずつ6つのデータセットに分けて保存。 data-00.tfrecords data-01.tfrecords data-02.tfrecords data-03.tfrecords data-04.tfrecords data-05.tfrecords レコードは、以前の記

    TensorFlowによるDeep Learningでのアイドル顔識別モデルの性能評価と実験 - すぎゃーんメモ
    sucrose
    sucrose 2016/10/16
  • TensorFlowによるDCGANでアイドルの顔画像生成 その後の実験など - すぎゃーんメモ

    memo.sugyan.com の続編。 あれから色々な変更しつつ実験してみたりしたのでその記録。 結論を先に書くと、これくらい改善した。 DCGAN ざっくりおさらい Generator: 乱数の入力から画像を生成する Discriminator: 入力した画像がGeneratorが生成したものか学習データのものかを判別する という2種類のネットワークを用意し、お互いを騙す・見破るように学習を行うことで Generatorが学習データそっくりの画像を生成できるようになる、というもの 学習用画像の増加 前回の記事では90人の顔画像データから生成していたけど、あれから収集を続けて もう少し多く集まったので、今回は260人から集めた顔画像100点ずつ、計26,000件を学習に使用した。 Feature matching openai.com の記事で紹介されている "Improved Tech

    TensorFlowによるDCGANでアイドルの顔画像生成 その後の実験など - すぎゃーんメモ
    sucrose
    sucrose 2016/10/12
  • TensorFlowで顔識別モデルに最適化した入力画像を生成する - すぎゃーんメモ

    動機 elix-tech.github.io の記事を読んで、「可視化」の項が面白いなーと思って。 引用されている図によると、人間の目にはまったく出力クラスとは関係なさそうに見える画像でもCNNによる分類器は騙されてしまう、ということのようだ。 なるほど分類モデルの方を固定しておいて入力を変数として最適化していけば任意の出力に最適な入力を得ることができるのか、と。 自分でもやってみることにした。 分類モデル TensorFlowによるDeep Learningでのアイドル顔識別モデルの性能評価と実験 - すぎゃーんメモ の記事で使ったモデルとデータセットで、ここではCross Validation用にデータを分けずに7,200件すべてを学習に使い20,000 step進めたものを用意した。 このモデルは学習したアイドルたちの顔画像に対してはかなりハッキリと分類できるようになっていて、試しに

    TensorFlowで顔識別モデルに最適化した入力画像を生成する - すぎゃーんメモ
    sucrose
    sucrose 2016/07/10
  • TensorFlowによるDCGANでアイドルの顔画像生成 - すぎゃーんメモ

    アイドル顔識別のためのデータ収集 をコツコツ続けて それなりに集まってきたし、これを使って別のことも…ということでDCGANを使ったDeep Learningによるアイドルの顔画像の「生成」をやってみた。 まだだいぶ歪んでいたりで あまりキレイじゃないけど…。顔画像を多く収集できているアイドル90人の顔画像からそれぞれ120件を抽出した合計10800件をもとに学習させて生成させたもの。 分類タスクとは逆方向の変換、複数のモデル定義などがあってなかなか理解が難しい部分もあったけど、作ってみるとそこまで難しくはなく、出来上がっていく過程を見るのが楽しいし とても面白い。 DCGANとは "Deep Convolutional Generative Adversarial Networks"、略してDCGAN。こちらの論文で有名になった、のかな? [1511.06434] Unsupervise

    TensorFlowによるDCGANでアイドルの顔画像生成 - すぎゃーんメモ
    sucrose
    sucrose 2016/05/16
  • TensorFlowでのMNIST学習結果を、実際に手書きして試す - すぎゃーんメモ

    Deep Learningという言葉を色んなところで聞くようになり、Googleからも TensorFlow というものが出たし、そろそろちょっと勉強してみるか〜 ということで初心者が機械学習に手を出してみた。 TensorFlowのtutorialを見てみると、まず最初に「MNIST」という手書き文字の識別問題が出てくる。その問題に対して、こういうモデルを作ってこうやって学習させていくと91.2%くらいの識別率になります、さらに飛躍させてこういうモデルでこうやって学習させると99.2%くらいまで識別率が上がります、とか書いてあって、確かになるほどーと数字で納得もできるのだけど、せっかくなら実際にその学習結果を使って自分の書いた数字を識別してもらいたいじゃないか、ということで そういうのを作ってみた。 https://github.com/sugyan/tensorflow-mnist c

    TensorFlowでのMNIST学習結果を、実際に手書きして試す - すぎゃーんメモ
    sucrose
    sucrose 2015/11/24
  • Perl6での6記号プログラムの作りかた - すぎゃーんメモ

    先日、 Perl6で記号Hello worldする - すぎゃーんメモ perl6なので6種類の記号だけでプログラムを書く - すぎゃーんメモ の2つの記事でPerl6の記号プログラムを紹介したけど、その作り方については何も言及していなかったので ちゃんと書いておこうと思います。 おさらい: Perl5における記号プログラムの基礎 Perl5における記号プログラミングの手法は古くから確立されていて、 記号だけのPerlプログラミングの基原理 - JPerl Advent Calendar 2010 Sym Track の記事にも全貌が載っていますが、要するに「任意のプログラム文字列を排他的論理和(XOR)を使って生成し、それを拡張正規表現を利用してevalする」という方法です。 01100000 => 0x60 ('`') ^) 00100001 => 0x21 ('!') ------

    Perl6での6記号プログラムの作りかた - すぎゃーんメモ
    sucrose
    sucrose 2015/10/27
  • perl6なので6種類の記号だけでプログラムを書く - すぎゃーんメモ

    Perl6で記号Hello worldする - すぎゃーんメモ という記事を書いたところ なるほど、文字の種類が少なくて簡単 / 他3コメント URL “Perl6で記号Hello worldする - すぎゃーんメモ” URL 2015-10-22 19:30:57 via Hatena というブコメをいただいたけど、あの記事では適当に生成したので 11種類もの記号を使っていて まだちょっと多いかな、という感じがした。 ので最大限に使う文字種類を減らして、6種類の記号だけでHello worldを書いてみた。 ::('('~^(~::('~'~^~(^(''~~''))~':'~^~(^(''~~''))~^'~'~^'('~^')'~')'~^':'~^'~')(')'~^~(^(''~~''))~^'('~'^'~^~(^(''~~''))~^':'~^'~'~'^'~^':'~^'~

    perl6なので6種類の記号だけでプログラムを書く - すぎゃーんメモ
    sucrose
    sucrose 2015/10/24
  • Perl6で記号Hello worldする - すぎゃーんメモ

    一番簡単なHello worldです。 ::('!{.(?'~^'.~!)~'~^')^.^^'~^'?!^?('~^'??)!{')('!?}}~~(!^~{~))(.{~('~^'))?^?.).(?.}?)().!~'~^'~!.?}?~.^.{?!)~}!).'~^'}!!.~(}(!?}~{!}).(('~^')^(^.(.)~?!.()!})?)')普通に実行できると思います。 $ cat hello.pl6 ::('!{.(?'~^'.~!)~'~^')^.^^'~^'?!^?('~^'??)!{')('!?}}~~(!^~{~))(.{~('~^'))?^?.).(?.}?)().!~'~^'~!.?}?~.^.{?!)~}!).'~^'}!!.~(}(!?}~{!}).(('~^')^(^.(.)~?!.()!})?)') $ perl6 hello.pl6 Hello,

    Perl6で記号Hello worldする - すぎゃーんメモ
    sucrose
    sucrose 2015/10/22
  • hostsに".local"で終わるドメインを書いて使うと面倒なことになる - すぎゃーんメモ

    Webアプリを開発する際に、ローカル環境で動かしたいのだけど特定のドメイン名で閲覧したくて、/etc/hostsに 127.0.0.1 hoge.fuga.piyo.localみたいに書いて、[]http://hoge.fuga.piyo.local:5000/[]とかでローカル稼働しているアプリを見られるようにしてみたところ、どうもレスポンスが遅い。アプリ自体がどんなに軽くても、ブラウザ見てもcurlで叩いても返ってくるのが遅い。 どうやらアプリ自体じゃなくて、アドレスの解決に時間がかかっているらしい。 Mac OS X v10.4, 10.5, 10.6: How to look up ".local" hostnames via both Bonjour and standard DNS - Apple Support https://discussions.apple.com/th

    hostsに".local"で終わるドメインを書いて使うと面倒なことになる - すぎゃーんメモ
    sucrose
    sucrose 2012/07/25
  • Shibuya.XSS テクニカルトーク#1 に行ってきた - すぎゃーんメモ

    Shibuya.XSS テクニカルトーク#1 : ATND 大人気イベントに何故か3番目で申し込むことが出来ていたので行ってきた。ちょっと書くわけにはいかないような話や怖い話もあったりして楽しかった。とりあえずTwitterでの呟きだけメモ代わりに残しておく。 #shibuyaxss キター @ 株式会社ミクシィ(mixi, Inc.)なう URL 2012-04-04 18:59:31 via ロケタッチ(loctouch) MAP 「ミクシィ」シールを手に入れた! URL 2012-04-04 18:59:32 via ロケタッチ(loctouch) 自重せずにピザとビール始めてる #shibuyaxss 2012-04-04 19:04:33 via Twitter for iPhone XSSによるパスワード盗み対策例: パスワード入力させるようなところは"login.exampl

    sucrose
    sucrose 2012/04/05
  • Twitterの新しいStreaming API「ChirpUserStreams」がすごすぎる件 - すぎゃーんメモ

    最近発表されて、一部で話題を呼んでいるTwitterの新しいStreaming API「ChirpUserStreams」。 まだdeveloperへのpreviewリリースということでプロダクトに使うようなことはできないけど。 http://apiwiki.twitter.com/ChirpUserStreams 今までのStreaming APIでは基的に public timelineから、指定したキーワードを含む発言を拾う 指定したユーザーの発言を拾う というものだった(はず)。検索系としては便利だけど、home_timelineのように自分がフォローしているユーザーの発言をStreamingで得ようとすると全idを繋げたものをリクエストパラメータとして送らないといけなかったりで、あまりカッコよくない形になってしまっていた。 ところが今回使えるようになった「ChirpUserSt

    Twitterの新しいStreaming API「ChirpUserStreams」がすごすぎる件 - すぎゃーんメモ
    sucrose
    sucrose 2010/04/24
  • 記号解読にチャレンジ - すぎゃーんメモ

    Perlで記号プログラミング - TAKESAKOのはてな出張所 に対しての挑戦が。 id:TAKESAKO に挑戦してみる - yujiorama の日記 面白そうなので自分もやってみる。 #!/usr/bin/perl $^='-^\\\\%+"<&]\\$=/**:.](%_,//;<#)\\^_%$=]."\\&=\'?/:$?({/!_})(([=##!-^/\'%_#"]{"?~<]$\':$;#"&]`<#:?', $^_='_~`||`]@^_`"./,))<%?%<"(?<_}+^.;#^^@@{`:,|[{_``__[]_;/@-<~<;^.[^~::<&""[_`}*.[?]+[?!|-_`@[*);//(]?",=_+?]{{#`,@@<*@[{|/`.@#@[""[+_}[?__(?.+[_}<.?_"{>|!{}@@^_,{<', $^_^='{>][[[;/,

    記号解読にチャレンジ - すぎゃーんメモ
    sucrose
    sucrose 2009/07/18
  • 1