Chainer basic module introduction

  This post is just a copy of chainer_module.ipynb on github, you can execute interactively using jupyter notebook. Advanced memo is written as “Note”. You can skip reading this for the first time reading.  In this tutorial, basic chainer modules are introduced and explained Variable Link Function Chain For other chainer modules are explained in later tutorial. Initial setup Below is typecal import statement of chainer modules.

  Variable Chainer variable can be created by Variable constructor, which creates chainer.Variable class object. When I write Variable, it means chainer’s class for Variable. Please do not confuse with the usual noun of “variable”. Note: the reason why chainer need to […]

Continue reading →

Chainer modules

    Comparing with caffe If you are using caffe, it is easy to get accustomed to chainer modules. Several variable’s functionality is similar and you can see below table for its correspondence. Chainer Caffe Comment datasets Data layers Input data can be formatted to this class for the model input.It covers most of the use case of input data structure. variable blob It is an input and output of functions/links/Chain. functions layers Framework supports widely used functions in deep learning. Ex sigmoid, tanh, ReLU etc. links layers Framework supports widely used layers in deep learning. Ex Linear layer, Convolutional layer etc. Chain net links and functions (layers) are jointed to […]

Continue reading →

English summary of “Chainer Advent Calendar 2016″

I will summarize Chainer Advent Calendar 2016, to introduce what kind of deep learning projects are going on in Japan. Chainer Deep learning framework, chainer, is developed by Japanese company Preferred Networks and the community is quite active in Japan. Since interesting projects are presented and discussed, I would like to introduce them by summarizing it in English. Advent Calendar In Japan, there is a popular programming blog website called Qiita, and the “Advent Calendar” in Qiita is an event that interested people can join and write a blog for specific theme during Dec 1 to Dec 25. Advent Calendar 2016 Chainer Advent Calendar 2016 If you want to read the […]

Continue reading →

python print, string manipulation summary

  Version difference python 3.x: print() is function and not a keyword anymore. () must be used.

python 2.x: print is considered as a keyword, so () is not necessary.

The above syntax cannot be used in python 3! But you can use future module import if you want to use print as a function for python 3 compatibility.

Summary: It is better to use print() for future compatibility from now on. Ref: What is __future__ in Python used for and how/when to use it, and how it works __future__ モジュールについて Single quotation and double quotation for string There is no difference between ‘word’ and “word” in […]

Continue reading →

AtCoder Grand Contest 007 review

Link AGC 007 top page Editorial I felt you need more invetiveness/creativeness in this contest, and it was difficult.  A – Shik and Stone Problem Compared to ARC (regular contest), it is slightly difficult even from problem A. The most elegant solution is to just check the number of ‘#’ is equal to \(W+H-1\) or not as explained in Editorial. However, I could not notice it so I checked that we can actually go using only right or down or not.

  B – Construct Sequences Problem You need to come up with one construction method which satisfies the 3 conditions. Editorial way is much more easier than below […]

Continue reading →

AtCoder Regular Contest 063 review

Link ARC 063 top page Editorial C – 一次元リバーシ / 1D Reversi Problem  

D – 高橋君と見えざる手 / An Invisible Hand Problem I didn’t notice that there is a restriction that each \(A_i \) is different. So it took time for implementation.

  E – 木と整数 / Integers on a Tree Problem Follow editorial.


Continue reading →

Codeforces Round #378 Div. 2 review

Link Codeforces Round #378 Div. 2 (Contest 733) A. Grasshopper And the String Link: Problem Category: Implementation Even this is a first problem, I get wrong answer for first time submission. It is necessary to consider a corner case at the “end of the text”. Some other solution is inserting extra ‘A’ at the end of text so that you can handle it in the same way. (ex. latte0119’s solution)  

B. Parade Link: Problem Category: math Below implementation is a little bit optimized solution for not to use memory of \(O(N)\), but use \( O(1) \). But in the contest, it is better to consider solve it as fast as possible rather […]

Continue reading →

Codeforces Round #377 Div. 2 review

Link Codeforces Round #377 Div. 2 (Contest 732) A. Buy a Shovel Problem It can be paid without change if the change is 0 or \(r\).

B. Cormen — The Best Friend Of a Man Problem At day \(i\), dog need to walk \( k-a[i-1] \) times.

C. Sanatorium Problem Basic idea to the solution is not difficult, just check all the popssibility of what time start eating (enter room) and what time end eating (exit room). But the corner case handling makes this problem difficult and I cannot answer correctly in one time. Rather than below, more elegant/ short code solution can be found at pekempey’s solution.

D. Exams […]

Continue reading →

AtCoder Regular Contest 062 review

Link ARC 062 top page Editorial C – AtCoDeerくんと選挙速報 / AtCoDeer and Election Report Problem

  D – AtCoDeerくんと変なじゃんけん / AtCoDeer and Rock-Paper Problem

  E – AtCoDeerくんと立方体づくり / Building Cubes with AtCoDeer Problem   Implementation based on Editorial.


Continue reading →

Topcoder SRM 699 Div2 review

Single Round Match 699 Sponsored by Cisco Statistics – Problem Editorial   Div II Level One: UpDownHiking Idea is same with editorial.

  Div II Level Two: LastDigit Category: Arithmetric The approach is different from editorial which uses binary search.

  Div II Level Three: FromToDivisibleDiv2 Category: Arithmetric, graph I couldn’t solve it in contest, so I just followed editorial for my practice.


Continue reading →