ひろこま Hack Log

プログラミングや機械学習などの知識を記録・共有します

2018-01-01から1年間の記事一覧

GANを使って簡単に架空アイドル画像を自動生成(Progressive Growing of GANs)

Artificial Idol この記事で紹介する方法で、このような画像が作れるようになります。 (adsbygoogle = window.adsbygoogle || []).push({}); 最近趣味でやってる画像生成系のDNNについて簡単にレポートします。 1. Progressive Growing of GANsとは Paperは…

Pythonでゼロパディング (ゼロ埋め)を行う

以下の関数でOK int型であってもstr型であってもうまく動きます。 def zero_padding(num, length): num = str(num) return num.zfill(length) print( zero_padding(402, 5) ) print( zero_padding(4032, 7) ) print( zero_padding('402', 5) ) print( zero_p…

OpenCV3をインポートするときcv3ではなくcv2なのは何故?

ふと気になったので調べてみました。 こちらに答えがありました。↓ answers.opencv.org cv2はconvert toの略なんじゃないか?という意見もあるみたいですが、実際は、「2はバージョンを表しているのではなく、C APIをcvというプレフィックスで表し、C++ API…

Google ColaboratoryのCUDAを9.0にアップグレードする方法【失敗】

結論 失敗しました。CUDA9をインストールしても、Nvidiaドライバとの互換性を合わせられなかったり、pipでtensorflowをアップグレードできなかったりと、色々ハマります。Googleが公式でCUDA9をサポートしてくれるのを待つしかなさそうだという結論に至りま…

Image Inpainting(画像修復)をやってみた

画像出典: https://arxiv.org/pdf/1804.07723.pdf Image Inpaintingとは 不定形に塗りつぶされた画像を修復させるというタスクだ。NVIDAが発表した論文とデモ動画が、その精度の高さで話題となっている。 元論文 元論文はこちら。 Image Inpainting for Irre…

Google Colaboratory に大量データをアップロードする方法

Google Colaboratory に大量データをアップロードする方法 Google Driveをマウントする Colab上で以下を実行。/content/driveというディレクトリにGoogle Driveがマウントされる。 !apt-get install -y -qq software-properties-common python-software-prop…

RailsアプリをAWS EC2で公開する超簡単な手順 【独自ドメイン/HTTPS対応】

やりたいこと Railsアプリをインターネットに公開したい AWS EC2で公開したい 独自ドメインで公開したい HTTPSで公開したい 単一のEC2で複数のアプリを公開したい この記事では、独自ドメインやHTTPSにも対応した形でEC2でアプリを公開する手順を紹介する。 …

深層学習の「超解像」でモザイクは除去できるのか (Tensorflow + Keras)

画像出典: http://mmlab.ie.cuhk.edu.hk/projects/SRCNN.html 結論から言うと うまくいかなかった。 あくまで実験記録として記事を書くが、ここにあるコードを真似してもうまく高解像度化できないので注意していただきたい。 超解像をやってみた。 モザイク…

Falconを使い超簡単なAPIを作る 【所要時間たったの3分】

Falconとは Falcon - Bare-metal web API framework for Python Falcon を使えばRESTful な Web API をサクッと作ることができる。業務で簡単なWeb API を用意する必要があったり、ハッカソンなどの短期間開発で疎結合なアークテクチャを作らなくてはならな…

Google Colaboratory のTips集その1 (GoogleDriveマウント、セッション継続、TensorBoard接続)

Google Colaboratory のTips集 Google Colaboratory、すごいです。 誰でも、Tesla K80のGPUを無料ですぐに使うことができる。Tensorflow環境もすぐに手に入れることができる。 https://colab.research.google.com/ この記事では、Google Colaboratoryを使っ…

GPU搭載のMacBook Pro (Retina, 15-inch, Mid 2014)でCUDAを動かす

※ 2019/12/26追記。この記事の情報は古く、適切なバージョンのライブラリは入手できなくなっているかもしれません。また、以下に記載のバージョンをインストールできても、何故かうまく動作しないことがあります。そのため、あくまで参考程度に読んでいただ…

pip face_recognitionでcmakeエラー(Mac OSX)

Macでpip install face_recognitionが失敗してハマったので、解決策をメモしておく。 まず、筆者がハマったときのエラーを以下に示す。 -- Looking for sys/types.h - found -- Looking for stdint.h -- Looking for stdint.h - found -- Looking for stddef…

正規表現をFSTに変換してOpenFSTで扱えるようにする

FSTとは Finite-state Transducerの略。オートマトンの一種で、複数のノードとアークから成る。 入力系列に対し、その入力系列が受領可能か受領不可能かを返す。受領可能だった場合は、同時に出力系列も返す。 出力系列の候補が2通りあった場合、重みの大小…

独自学習したモデルをTensorFlow.jsで使う

1. TensorFlow.js Tensorflowをブラウザで動かす技術が登場した。その名もTensorFlow.jsだ。 js.tensorflow.org この記事では、独自に学習したモデルをTensorflowで使うときの流れを紹介する。 2. 学習するモデル(デブ判定器) 身長と体重を入力すると、ど…

世界一わかりやすいTensorflowのチュートリアル(を目指す)

Tensorflowの公式チュートリアル、わかりにくくないっすか…? Get Start with Tensorflow!さぁ、チュートリアルを始めよう! そう思って1番最初のBasic classificationに足を踏み入れた瞬間、そこにはFashion Mnistをmatplotlibで描画するGoogle先生の姿が……

bashrcに定義した関数をシェルスクリプトの中で呼ぶ

bashrcで以下のように関数を定義することができる。 myfunction() { echo "Hello" } 定義した関数はコマンドとして使えるようになる。 $ myfunction Hello この関数を内部で使用するスクリプトを書いてみた。 #!/bin/bash myfunction このスクリプトを実行す…

OpenFSTを使ってWFSTを作成・描画してみる (日本語対応)

重み付き有限状態トランスデューサ(WFST)の簡単なサンプルを作って描画してみる。 なお、WFSTの説明は他サイトに譲る。 参考:http://www.openfst.org 以下のような、入力シンボル、出力シンボル、そしてWFSTを定義しよう。 cat sample.ins <eps> 0 あ 1 b 2 c 3 </eps>…

Linuxコマンドのリダイレクトで上書き保存できる?

echo "今日も1日がんばるぞい" > a cat a > a cat a # a に書かれていた文字列はきえてしまう。。。 あるファイルをリダイレクトで上書きできるのだろうか? 結論から言うとできない。上の例で書いたように、リダイレクト後のファイルは中身が空になる。 少…

1文字ごとに改行するコマンド (日本語もOK)

あいうabc ▲これを、こうしたい▼ あ い う a b c 自然言語処理をやっていると、テキストファイルの中に含まれている「文字」を1つ1つ列挙したくなることが時折ある。Linuxコマンドを使ってサクッとできないものかと思い、「1文字ごと 改行」などのキーワード…

お名前.com + Route53 で独自ドメインのメールアドレスをGmailで運用する【無料: 所要時間5分】

お名前.comなどのレジストラで独自ドメインをゲットし、それを外部のネームサーバ(Route53など、お名前.com以外のネームサーバ)で運用するケースがよくある。たとえば、AWSのEC2でWebサイトを公開している場合だ。 このとき、www.example.com や example.com…

Koma Hirokazu 's Hacklog ―― Copyright © 2018 Koma Hirokazu