verilog書く人

自称ASIC設計者です。どなたかkaggle一緒に出ましょう。

iOSで機械学習の推論をするためにCoreMLを使おうとした時のつらみと回避方法まとめ

iOSで機械学習の機械学習の推論をする場合、Core MLやPytorch Mobileなどの選択肢がありますが、 Apple謹製のCore MLを使ってみようと思う人は多いはずです。 Core MLのメリットとしては Pytorch MobileはiOS12以上なのに対し、Core MLはiOS11以上をサポート…

2021年の振り返り

今年一年をつらつらと振り返っていきます。 技術的なこととそうでないことが含まれています。 コロナ まず今年といえばなんと言ってもコロナ禍でした。 長引く緊急事態宣言で、コロナに感染してない自分でも精神的には多少不健康になった時期があったように…

AtCoderで黄色コーダーになりました

rate 会社員やりながら色を上げるのは大変だと思いました。しかし、レート確定の瞬間は全てが報われる爽快感がありました。 継続してよかったです。 以下ではこれから黄色を目指す人の助けになるかもしれないことをつらつらと書いていきます。ポエム多めです…

あなたが知らないかもしれない、そして知ると多分得する、online-judge-toolsの4つの機能(+2)

(この記事の和訳です。) 競技プログラマ向け。

パナソニックプログラミングコンテスト2020 E Three Substrings 感想戦

今回のABCは恐ろしい回だった。 嘘解法が通るなど幸運もあり黄パフォだったが、コンディションによっては緑あたりが出てもおかしくない感じだ。 りんごさん御自ら作門した回ということで、なんらかのメッセージを出してくるんじゃないかなとは思っていたが。…

Codeforces Hello 2020 D - New Year and Conference 解説

本番中は解けませんでした、残念。 Problem - D - Codeforces

似ている単語を別の色でハイライトするVSCodeのプラグイン「colorize-similar」を公開しました

突然ですが、このコードを読んでなにか気づいたことはないでしょうか? def add2d(input_x, input_y): return [input_x[0] + input_y[0], input_x[1] + input_y[1]] def sub2d(input_x, input_y): return [input_x[0] - input_x[0], input_x[1] - input_y[1]…

Hacktoberfestが素晴らしいので、OSS開発者になりたい人/すでになっている人は参加しよう!

Hacktoberfestとは DigitalOceanとDEVが主催しているOSSを祝うイベントで、 任意のタイムゾーンで10/1 - 10/31上でGithubの公開リポジトリ上で4つのPRを送った参加者の内、 先着50000名に限定Tシャツとステッカーが送られます。 (※スパムと判断されたPRは含…

Pythonの文法エラー箇所(行番号、何文字目)を取得するには

Pycon JPでPythonをサポートしてないIDEを紹介したトークがあったらしい() さて、競プロIDEのPython対応を進めていますが、Pythonのシンタックスエラー箇所取得に少しつまづいたのでメモ。 IDEで文法エラー箇所をハイライトするには何行目、何文字目で文法エ…

Pycon JP 2019 登壇の感想

感想 資料はこちら。(gifが動きません) speakerdeck.com 発表動画はこちら。(恥ずかしいので自分では見てません。) www.youtube.com 採択率が厳しくてどの発表も質が高く、感想書きたいですが、ひとまず登壇の感想を。 技術系カンファレンスの登壇は初めてで…

Rustで文字列を数字に、あるいは数字を文字列にする方法

毎回ググってるのでまとめ。 10進数だけでなく、2進数など、基数変更に対応。 文字と数字の相互変換 charと数値型を行き来したい場合は、to_digit()あるいはfrom_digit()を使う。こっちは覚えやすい。 >> '5'.to_digit(10).unwrap() // 10進数 5 >> std::cha…

diverta 2019 Programming Contest 2 D - Squirrel Merchant 別解

動的計画法は全くわからないので、静的無計画法で解く。 問題

AtCoderで青になるまでにやったこと

一年一ヶ月ほどの苦心の末、ようやく青コーダーになりました。感慨深いです。 rate 全く独自性のないブログタイトルですが、なるべく他の人が書いてないことを書くようにします。胡散臭い箇所はスキップしてみてください。

AtCoder Beginner Contest 128 E Roadwork 別解

問題 N個の工事が行われ、それぞれの工事はS_i-0.5, t_i-0.5に座標X_iで行われる。 Q人の歩行者が存在し、それぞれ時刻D_iに座標0を出発する。 歩行者は一度工事に遭遇するとそこで停止する。 各歩行者が座標いくつまで歩けるか出力せよ。 解法 想定解法全然…

AtCoder Beginner Contest 126 XOR Matching 別解

問題: 非負整数 M (≤17) と非負整数 K (≤109) が与えられる。以下の条件を満たす0 ~ 2M の数列が存在するか判定し、存在するなら一例を示せ。

Ubuntu 18.04でPycharmをランチャーとお気に入りに登録する。

PyCharmを公式からダウンロードして展開して/bin/pycharm.shを叩けば実行できるが、 常に左に表示されているgnomeのお気に入りバーにこんな感じで登録されていた方が立ち上げやすい。

Ubuntu 18.04でGDBビルドチャレンジ

GDBはUbuntuならばsudo apt-get install build-essentialでインストールすることができるが最新版を使いたい場合は自分でビルドする必要がある。 さて、GDBビルドチャレンジだが基本的にはこの記事が正確なのでその通りやればよい。 本の虫: GCCのSVN trunk…

自作している競技プログラミング用IDE for Rust進捗

大分動作は安定してきたので、もうAtomはやめてこちらに移りました。 ファイアーエムブレム由来でrujaionという名前にしました(暫定) github.com

ThinkPad13 + Ubuntu16.04でやった設定

CapsLockキーのCtrl化 コマンド一発でCapsLockをCtrlに変える方法 | Linux Fan の通りやればよい。 $ sudo gedit /etc/default/keyboardで XKBOPTIONS="ctrl:swapcaps" の行を加える。 ただし、 $ sudo systemctl restart console-setup しても設定は反映さ…

Rustのデバッグ体験を上げるには

結論をいうと、 rust-gdbを使う rustのバージョンを上げる gdbのバージョンを上げる。 の3つを行うとよい。

Rustでdefaultdict

RustでPythonのDefaultDictのようにデフォルト値を持ったハッシュマップを使いたい場合、 entry APIを使って、以下のようにすればよい。 let mut normal_map = std::collections::HashMap::<i32, i32>::new(); // normal_map[3]を呼ぶ。ただし、存在しなければmap[3] =</i32,>…

競プロ向けのrustテスト/デバッグ環境を作った

最近競技プログラミングにはまっています。数年前は「誰も使わないコードのためのコードなんて」と思っていたけど、今はスポーツ感覚で楽しめる心境になりました。継続的に出ることで、小難しいアルゴリズムをバグなくスピーディーに組む力は上がっているの…

【雑記】最近rust試してるので感想

最近、rustで楽しく書いてます。 C++の古い部分、危険な部分をそぎ落とし、関数型言語の要素が入っているということで、これから新しくC++のプロジェクトを始めるならいっそrustで始めたらいいんじゃないかなと思いました。 まだrust歴二週間程度ですが感想…

caffeベースで配布されているネットワークをdockerで試す、Refinedetを題材に

caffe本家に含まれていない独自レイヤを使ったネットワークをcaffe実装で公開するとき、追加レイヤ分だけを含むリポジトリを作るのではなく、caffeごとforkして独自レイヤを足す形での配布が多いようです。 (というかそれしか手段がない?) 例えば、物体検…

リアルタイム物体検出向けニューラルネット、SSD(Single Shot Multi Detector)及びその派生モデルの解説

さて、昨年行ったGTC Japan 2017では物体検出のデモを行っているブースが多く、盛り上がりを見せている分野と感じています。たしかに、物体検出のデモってすごくAI感(?)があります。 今回の記事はリアルタイム(~0.1sec)物体検出に使われるSSD及びその派生モ…

FastRGFはじめました@rgf_python2.3.0

rgf_pythonですが、ありがたいことにPorto Seguro’s Safe Driver Prediction Competitionを中心にkaggleで使ったよ、という報告が増えてきました。 Safety in Numbers - My 18th Place Solution to Porto Seguro's Kaggle Competition – Joseph Eddy – Data …

chainer GUI designerを使ってchainerのコードを生成してみる

皆さんこんばんは。Chainer Advent Calender 2017の9日目の記事です。 (Advent Calendarに不慣れで、空の記事を公開していました、すいません、) 今回の記事は拙作のGUIクライアント(非公式)でネットを構築してchainerのコードを生成してみようというのが趣…

CupyとNumpyのパフォーマンスを比較してみた

GPUで、Numpy互換のAPIで行列計算ができるCupyは活発に更新されています。 sortやinv、最近はsparseまで、numpy(とscipy)の機能の多くをカバーするようになってきて、numpyの代用になりえるものになってきたと思います。 そこでどれだけの機能がサポートされ…

ChainerWing、インストールから画像分類まで

自作したchainerGUIクライアントの日本語のマニュアルが作れてなかったので、ようやくこの記事で公開です。 サンプルプロジェクトを叩くのもいいと思います。 動かないとかあったら、コメントでも投げてください。

自作しているChainer GUIクライアントを、画像分類に対応させました

以前ブログで発表した、chainerの自作GUIクライアント、ほそぼそと開発進めています。 画像分類対応に意外とかかってしまった。 GitHub - fukatani/ChainerWing: GUI deep learning IDE based on chainer. 今までどおり、GUI上で、ドラッグアンドドロップで…