Itsukaraの日記

最新IT技術を勉強・実践中。最近はDeep Learningに注力。

ブラウザ画面を印刷するときの小技

ブラウザ画面を印刷したときに、色々な広告が表示され邪魔な場合があります。そんな時、HTMLのDOM(Document Object Model)やブラウザのDeveloper Toolsを知っていれば、広告を簡単に削除できます。参考までに、削除方法を書いておきます。

なお、ブラウザの拡張機能にAdウェアが入っている場合は、先にそちらを削除した方がよいです。

広告削除前の例

下記、Expediaやレバテックの宣伝が表示されています。
f:id:Itsukara:20161120132838j:plain

Developer Toolsを表示

ブラウザでPF12キーを押すと、Developer Toolsが表示されます。Developer Toolsの表示内容はChromeでもIEでもEdgeでも同じようなものです。以下では、Chromeで記載します。
f:id:Itsukara:20161120141744j:plain

デフォルトでは、ブラウザ下方にDeveloper Toolsが表示されますが、画面が狭く使いにくいので、別画面に表示したほうがよいです。

そのために、Developer Tools画面右上端の「×」の左にある「・」が3つ縦に並んだ部分をクリックしてメニューを表示し、メニュー上の「Dock side」で一番左のアイコンをクリックします。これにより、Developer Toolsが別画面で表示されます。

ブラウザ画面要素選択モードに切替

次に、ブラウザ画面上の削除対象部分を選択するために、、Developer Tools画面左上端にあるアイコンをクリックします。
f:id:Itsukara:20161120143635j:plain

ブラウザ画面上の削除対象選択

クリック後はアイコンが青くなり、ブラウザ画面上の要素を選択できるモードになります。選択候補は、ブラウザ画面上で青っぽく表示されます。そこで、広告を含み、削除しても良い、一番大きな領域を選択します。
f:id:Itsukara:20161120144716j:plain

DOM上での広告要素の削除

すると、画面上の選択部分に対応したHTMLコード部分が、Developer Toolsで選択されます。後は、Deleteキーを押して、このHTMLコードを削除するだけです。
f:id:Itsukara:20161120145025j:plain

広告を1つ削除した後のブラウザ画面

下記が、広告を1つ削除した後のブラウザ画面です。後は、画面上の広告に対して、これを繰り返していけば、広告の無い画面になります。
f:id:Itsukara:20161120145225j:plain

補足

上記では、広告を削除しましたが、逆に、印刷したい部分を選択して、HTMLコードの先頭の方(ヘッダの直後など)に移動する方法もあります。移動するには、選択した部分を単にドラッグするだけです。

なお、広告を削除しても、その部分だけ空白領域になってしまう場合もあります。この場合は、Developer Tools右側のStyle表示でCSSを弄るなど、色々と手がありますが、省略させていただきます。HTML、CSSを少し勉強すれば(図書館で1日位かけて、本1~2冊をざっと目を通せば)直ぐに分かりますので、是非とも勉強してみてください。

「Pythonで体験する 深層学習」第5章輪講資料アップロード

本日、Do2dle(ドゥードゥル)研究会輪講があり、当方が担当した「Pythonで体験する 深層学習」第5章の輪講資料を説明しました。輪講資料を作るのにかなり間が掛かり、もったいないので、slideshareにアップロードしました。

www.slideshare.net

上記資料は、下記の本の第5章「深層学習の現在」を、本で参照している論文をざっと見ながら、本よりもかなり分かりやすく、深く説明したつもりなので、結構楽に読めると思います。

Pythonで体験する 深層学習

Pythonで体験する 深層学習

ちなみに、この本は、誤植が非常に多く*1、内容も説明不足で、深層学習をサクッと速く勉強したい人にはお勧めできません。幅広い論文を非常に浅く紹介するのが目的と思われ、この本を参考にして論文を見るという使い方に適しています。

ともかく、この本を読んで理解できると期待してはいけません。そもそも、この本は、読者にちゃんと説明しようという態度が全く感じられません(説明を全していない用語や記号を使うことが多いため)。

しかしならが、かなり幅広い内容を扱っており、ちゃんと読めば勉強になります。

この本を読みかたですが、本を見て「何を言いたいか」を類推した後で、引用論文の番号を調べ、本の最後に沢山書かれた引用論文でタイトルを確認し、googleで論文の原典や解説記事を探し出し、それらを見て理解するという読み方になります。つまり、この本は道標に過ぎず、本当に理解するには、「ソースに戻って」調べる必要があります。

そのため、とても手間がかかるのですが、その分、とても勉強にはなりました。

理解を助けてくれる本ではなく、「試練を与えてくれる本」です。

幅広く、深く理解したい方には、お勧めです。(かなりつらいですが...)

補足

この本は、内容が古くなる前に早く読んでもらうことを優先して出版された、との話をある方から伺いました。確かに、深層学習の分野は、非常に進化の速度が速いので、あまり時間を掛けていては、内容が古くなり、価値がなくなってしまうという問題があると思います。

ただ、誤植指摘への対応も迅速化してほしいものです。10/24に、出版社にメールで誤植を知らせましたが、正式回答が来たのは11/9で、回答に2週間以上もかかりました。出版を迅速化するなら、誤植対応も迅速化してほしいものです。(出版社にもっと頑張ってほしい)

*1:最初の44ページで7個も誤植がありました。ほかにも誤植多数。誤植があるのは当たり前と思って読む必要があります。

【DRL, Montezuma】スライドを更新

到達した部屋が以前よりもかなり増えているので、スライドを更新しました(p.18)。また、到達した部屋に至る動画もスライドの途中に追加しました。

【DRL, Montezuma】Room18, 19に到達しました

最近は、定職についたため、なかなかDeepLearningのソースコードをいじる機会がなく、同じソースコードのままで、色々とパラメーターを変えて試しています。その結果、新たに、Room18、19に到達しましたので、動画を下記にアップしました。
youtu.be

DeepMindの論文に載っていない到達Roomとしては、これで下記のようになりました。ピンクの部分は報告済で、黄色い部分が今回到達したRoomです。
f:id:Itsukara:20161112181124p:plain

なお、色々とパラメーターを変えても、移動平均SCOREの最高点は1300点どまりで、ほとんどの場合は、600点ぐらいです。そろそろ限界かと思っていたのですが、参考にしていた論文がv2になり、少し情報が増えたので、その情報を元に、更にパラメーターを変えて試して見る予定です。

ちなみに、実験環境は、Google Cloud Platformの無料枠($300まで60日間まで無料で利用可)です。格安なGCP Preemptible VM Instanceを最大限に活用することにより、4CPUのVM2を8台利用し、それぞれで学習を行っています。なお、Preemptible VMなので、これだけ使っても、1日$6.5程度で済みます。具体的には、次のような感じで使ってます。
f:id:Itsukara:20161112175606p:plain

GCP00は、過去の学習曲線を保管し、いつでも見れるようにしています。
http://104.155.42.5/で、どなたでも見れますので、興味のある方は参照ください。

4CPUとはいえ、GPUが無いため結構遅く、1回の実験には1週間ぐらい掛かります。約1周間の実験が終わる度に、1つのディレクトリにまとめ保管していましたが、Webに置いたほうがいつでも見れるので、GCPの最小構成のVM($2/月)に入れることにした次第です。それぞれのディレクトリの下にある00index.htmlというファイルを開くと、その回の実験結果(学習曲線と到達room)が見れます。

ただし、GCPの無料期間は12月7日で終了しますので、それ以降は、上記URLにはアクセスできませんので、あしからず。

入口

f:id:Itsukara:20161113005740p:plain

1階層下

f:id:Itsukara:20161113005844p:plain

2階層下

f:id:Itsukara:20161113010145p:plain

英語スライドなのに、日本からのアクセスが多い Why?

Montezuma's Revengeの件を英語スライドにしたら、結局、10日強で200件のアクセスがありましたが、アクセス元は日本・米国・中国が15:6:3の比率で、なぜか日本からのアクセスが多かったです。Why?

f:id:Itsukara:20161103071208p:plain

上記、合計が200にならないのも気になりますが...

OpenAI Gymとのテレコンの反省から英語版スライドを作成

以前の記事で、OpenAI Gymから$250のご支援を頂くことになったことを書きましたが、その関係で、本日OpenAI Gymの方と電話会議をする機会がありました。

OpenAI Gymにアップロードしたプログラムのことを説明したのですが、英語版のスライドを用意していなかったために、言葉に詰まり、かなり苦労しました。

その反省として、Montezuma's Revengeへの取り組み内容が書かれたスライドを英語化しました。日本語で書かれたこのブログを読んでいる人には余り関係しない気がしますが、一応、お知らせします。

www.slideshare.net

  • 追記(2016/10/23 12:40)

英語版スライドをSlideshareにアップしたら、13時間で73のアクセスがありました(普段アクセスの少ない当方にとっては多い数字)。まだ統計情報が見れず不明ですが、日本語版を見た人が英語版も見ているのか、英語化効果で海外からのアクセスがあったのか.... ???
f:id:Itsukara:20161023123952p:plain

  • 日本語版(ご参考)

ちなみに、下記は日本語版です。日本語版のほうが古く、アップデートしていないので、中身は多少異なります。所属も違っていたりします。

www.slideshare.net

OpenAI GymにMontezuma' Revengeの最高得点更新

以前の記事で、Montezuma's Revengeの最高得点をOpenAI Gymサイトにアップしたことを書きましたが、さらに高い点数が出ましたので、更新しました。前回1127点に対して、今回は1284点と約150点アップしました。

gym.openai.com