俺とプログラミング

某IT企業でエンジニアをしてます。このブログではプログラミングに関わることを幅広く発信します。

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

Mac Book Pro 2016年モデルにおススメの周辺機器4つ

新型のMac Book Pro 2016モデルにはUSB Type-C端子しかないので、周辺機器の購入は必須といえます。せめてUSB3.0一個ぐらいは残しておいてほしかったですね。さて、このエントリでは私が実際に購入して良かった周辺機器や、ケースを4つ紹介します。

自己組織化マップ(SOM)のPythonライブラリsompyを公開しました

自己組織化マップ(Self Organizing Map: SOM)のライブラリを公開してみたので、インストール、使い方とともに紹介します。Python2.7でnumpy基盤のライブラリです。既存のSOMPYというのもあるのですが、かなり使いにくかったので作りました。まだ至らない部分…

英語下手なプログラマが二流な5つの理由と英語が学べるオススメサービス5選

一流のプログラマとして生きていくために、なぜ英語が必要不可欠なのかを自身の経験を踏まえて解説します。最後にこれから英語を学びたいと思っているプログラマにお薦めのサービスを紹介します。

トップIT企業にソフトウェアエンジニアとして就職するためのプログラミング能力

Google, Apple, Microsoft, Amazon, Facebook, Twitter, IndeedなどのトップIT企業のコーディング面接で要求されるプログラミング能力について紹介します。これらの外資IT企業では、面接でホワイトボードでのコーディングが要求されます。私はこれまでに上記…

Pythonの組み込み関数(built-in)の使い方と小技集まとめ

Pythonには数多くの組み込み関数があります。組み込み関数とは、インポートや定義なしでどこでも使用できる関数のことです。これらを使いこなすことで,効率的な開発が可能になります。この記事では、割とよく使うものをまとめてみました。

CupyからNumpyへの変換(gpu to cpu)

chainerでcupyのndarrayから、numpyのndarrayへの変換(つまりGPUからCPUへの変換)をどうやるか少し手こずったので、メモしておきます。

【Ubuntu/CUDA】GPGPU計算サーバーを構築する【CUI】

CUI環境で利用する,CUDAを使用したGPU計算サーバーを構築する方法を述べます。OSはUbuntuを使用しています。sshで計算サーバーに接続します。

JavaのクロスプラットフォームライブラリlibGDXでiOS/Android両対応のアプリをつくろう

libGDXはJavaのクロスプラットフォームなゲーム用ライブラリです。 出力可能なプラットフォームはiOS/Android/Windows/Mac OS/Linux/HTML5と多岐に渡ります。そのため、普段はDesktop向けでデバッグし、たまに実機でテストするという使い方ができます。 また…

Deep Residual Learning(ResNet)の実装から比較するディープラーニングフレームワーク

Deep Residual Learning(ResNet)とは、2015年にMicrosoft Researchが発表した、非常に深いネットワークでの高精度な学習を可能にする、ディープラーニング、特に畳み込みニューラルネットワークの構造です。154層で画像を学習することにより、人間を超える精…

Chainerチュートリアル の和訳【リカレントネットと計算グラフ編】

前回に引き続きChainerチュートリアルのリカレントネットと計算グラフ編を和訳したので公開します。なにか問題があったら教えてください。

RoboVM開発終了するらしい

RoboVMの開発を2017年4月までに完全に終了することが決定されたようです。

Githubスター数ランキングトップ100まとめ

Githubでスター数トップ100のレポジトリをまとめたのでご紹介します。スター数が多いライブラリのほうが必ずしも優れているわけではないということに注意ですね。こうしてみるとライブラリ以外にも、エンジニアにとって有用なレポジトリが多くありますね。無…

SPP(Spatial Pyramid Pooling)を使ってCNNの精度を向上させよう

Max Poolingの代わりにSPP(Spatial Pyramid Pooling)と呼ばれる特別なプーリング層を用いることで、CNNの性能をお手軽に向上させることができる。この記事では、SPP-netの使い方や、有効性について検証した結果を紹介する。

CNNの学習に最高の性能を示す最適化手法はどれか

Adam, AdaGrad, AdaDelta, RMSpropGraves, SGD, MomentumSGDなど数ある最適化手法の中で、畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)の学習には、どのOptimizerをつかうのが最も適しているのかということを実験しました。

libGDX, RoboVMでOutOfMemoryと言われたら

RoboVMでコンパイルするのは結構メモリの消費量が多いようで、たまにOut of Memory系のエラーがでます。単純にもう一度実行したり、再起動すると治る場合もありますが、Java実行時のヒープサイズが足りないケースがあります。その場合、gradlw.propertiesを…

Chainerチュートリアル の和訳【Chainerの紹介と多層パーセプトロン】

バージョン1.5からFunctionSetがdeprecated(非推奨) となり、Chain, Linksなどが追加されました。バージョン1.11からTrainerが追加されました。これらの勉強ついでに【Introducion to Chainer】を和訳したので公開します。なにか問題があったら教えてくださ…

【libGDX入門】TiledMapを描画しよう

TiledMapとは二次元のタイルをつなぎあわせて、簡単にマップを表現できるツールです。 TiledMapを作れるTiledMapEditorの使いかたは以下の記事を参照。

Scalaのリスト処理でテキストファイルの単語数をカウントする (with Python)

Scalaでテキストファイルの中でスペース区切りになった単語の数を数える方法について紹介します。Scalaはスクリプトファイルとしても実行できるので、便利です。

Copyright © 2016 ttlg All Rights Reserved.