モーグルとカバとパウダーの日記

モーグルやカバ(EXカービング)山スキー(BC)などがメインの日記でした。今は仕事のコンピュータ系のネタが主になっています。以前はスパム対策関連が多かったのですが最近はディープラーニング関連が多めです。

MacとWindows混在でgit使ってる時の問題

pc

世の中の主なOS、Unix系、Windows系、Mac系ではそれぞれ改行コードが違っています。 LinuxなどUnix系の改行コードは「LF」で、Windowsは「CRLF」、Macは「CR」(昔のOS9の頃まで。今のOSXはUnix系なので「LF」)となぜかそれぞれ別になってしまっています。 自…

Windowsのdocker-composeでのマウント

pc

WindowsのDocker Toolbox上でdockerを動かしているのですが、最近はWindowsでもdocker-composeも使えるようになっています。なのですが、普通にdocker run -vではマウントできる設定でも、docker-composeでvolumes指定を使ってマウントを行おうとすると、エ…

WordPressのW3 Total Cache導入時の注意点

pc

とあるサイトで使われているWPを高速化・低負荷化したいという話があり、いくつか提示した中で一番簡単なキャッシュプラグインの導入を試したいということで、W3TCの導入をしました。その時にテスト用サーバで試して問題が出たこととその対策と、tipsをメモ…

「みんなのPython勉強会 in 長野」で発表した「ディープラーニングハンズオンを準備して学んだこと」のスライド

もう2ヶ月も前になるんですが(これを書いてるのは2017/5/18) みんなのPython勉強会 in 長野 #1 - connpass https://startpython.connpass.com/event/48846/ で発表させていただいたスライドを公開しておきます。 ディープラーニングハンズオンを準備して…

Alpineに入れたPython3にh5pyを入れる

pc

友人に alpine + Python3 + TensolFlow + Jupyter のdockerイメージを作ってもらって、それベースにKerasとサンプルデータ入りのdockerイメージを作ったのですが、Kerasからモデルのsaveをしようとするとエラーになってしまいました。 KerasはHDF5形式という…

Firefoxが起動して時間が経つごとにすごく重くなる問題

pc

去年の11月辺りからFirefoxがすごい重くなる現象が発生していました。 起動時点では重さは感じないのですが、ずっとPC起動してるとだんだんとFirefoxの動きが重くなってきて、タブ切り替えやスクロールですら非常に時間がかかってから動き出す、という感じで…

ExcelのCSV読み込みでセル内改行がある場合

pc

セル内に改行があるCSVは "111","aaa" "222","bbb ccc"のように「"」でくくってやれば表現可能です。 しかしセル内改行がある場合にExcelで読み込むと、セル内改行で切れてしまい表が崩れてしまう、という問題が起こりました。 実は最初にそのCSVを吐き出す…

numpyで多次元配列の一部を渡した時の動作について

pc

※追記で解決しました 最近、趣味でニューラルネット系のことをやっているためnumpyを触っているのですが、不可解な動作をすることがありました。 a = np.array([[1, 2], [3, 4]]) def test2(x): test1(x[0]) def test1(x): x += np.array([2, 3]) test2(a) …

WindowsでDockerToolboxとVBoxHeadlessTray使って起動時点でdocker使える環境にする

pc

ここのところずっとvagrant+ansibleでやってたんですが、最近なにかとdockerいいよってのを見せつけられて、やっぱこれからはdockerだよね、ってなってました。 が、Windows環境ってdocker使いにくいですよね。 Docker for Windows使えばいいんでしょうが、…

s3fs配下でchmod 0755/0644する速度

pc

S3をs3fsでマウントしている環境で、アップロードされたファイルのパーミッションを、ディレクトリは0755、ファイルは0644にchmodするスクリプトがあり、だいぶ処理時間が掛かっているので改善できないか調べていました。 s3fs使ってS3にアクセスするのは非…

NYAGOSからDockerを使う設定

pc

DockerToolbox(Docker for Windowsではなく)を使ってDockerを使える環境を作っていたのですが、普段使っているNYAGOSの上でDockerを使おうとしたところ、ぜんぜん動きませんでした。 DockerToolboxは動かすのに環境変数の設定が必要で、その設定内容は例えば…

なぜCNNではAutoEncoder使わなくても学習が収束するのか

7月のGCPUG信州の発表資料をやっと公開したので、そこで質問が出てた、CNNがなんでAutoEncoder使わなくても学習が収束するのかの話でつらつら考えてたことを、今さら書いてみます。 その時はCNNはネオコグニトロンの子孫でネオコグニトロンは自己組織化する…

Dropoutが効果的な理由についての疑問

現在のDeep Neural Networkがうまく収束できるようになっていることにはDropoutの効果が大きいと言われている。Dropoutはニューラルネットで中間層などの入力を50%の確率で落としてやることで、非常に強い正規化が行われるというものだ。 なぜDropoutが効果…

MySQLの接続最大数に達した時にどのクエリの問題か確認する

pc

MySQLで障害時にprocesslistを表示したいが、接続クライアント数最大に達していて入れず、セッション消費してるはずのアプリ側デーモン止めてもクライアント数減らないような場合があると思います。このような場合に、Javaのスレッドダンプ的に外から状況を…

mod_rewriteでURL末尾に付いた「?」を取る

pc

アクセスされたURLが例えば「http://example.jp/foo/?」のように「?」だけで他のクエリパラメータがついていない場合にだけ、mod_rewriteで「http://example.jp/foo/」に直したいという要望がありました。 このURLはクエリが渡される場合があるため、単にク…

GCPUG信州キックオフ勉強会で『GCEをTensorFlowの「計算エンジン」にする』という発表をしました

※発表したのは7/23なのですが、このエントリ書いたのは10/12です。早く書かねば、と思いながらもう秋になってしまいましたとさ… GCPUG信州キックオフ勉強会で『GCEをTensorFlowの「計算エンジン」にする』という発表をしました。 当初はTensorFlowメインの発…

Docker for Windowsオープンベータのインストールと問題点

pc

先日6/21ごろから、Docker for Windows がオープンベータになったので早速試してみました。 Announcing the Docker for Mac and Windows Public Beta | Docker Blog https://blog.docker.com/2016/06/docker-mac-windows-public-beta/ 下記ページから Docker…

ConEmuでMSYS2のbash上でvagrant sshした時に画面が崩れる件

pc

ターミナルとしてConEmuを使っていて、そこからMSYS2のbashやzshを bash.exe --login のようにして呼び出して使っていました。 で、そこからvagrantを動かしているのですが、vagrant sshして入った先のemacsが画面が崩れて使えない、みたいなことが起きてい…

revealjsで作ったプレゼン資料をphantomjsを利用してPDF化

pc

こないだの勉強会で作った資料は、MarkDownで書いたものをrevealjsを使ってスライド化していました。 それだとSlideShareに載せれないのでrevealjsのPDF出力機能を使ってPDF化しました。revealjsではプレゼン用URLの後ろに「?print-pdf」と付けると、PDF出力…

ニューロンになってみる

LIGさん主催の勉強会「づや会」の機械学習の回で『ニューロンになってみる』という題でLTをさせていただきました。 づや会 vol5 「機械学習の話」 - connpass http://lig.connpass.com/event/30420/ ニューロンになってみる from Kiyoshi SATOH ニューロンに…

NetCommons2で大きなサイズの画像アップロードに失敗する理由

pc

NetCommonsというCMSがあり、そこで画像ファイルアップロードするとある程度のサイズの画像なら問題ないが、大きなサイズの画像だとアップロードに失敗する、という問題が起きました。 メモリやアップロードファイルサイズの設定はすでにphp.iniでされており…

CakePHP2.7以降はPHP5.2では動かない

今さらながらPHP5.2の環境で動くシステムを作らなければならなくて、でもまあCakePHP2系はPHP5.2対応だから大丈夫だよね、と思って作ってたのです。 が… 本番環境で動かしてみたら下記のようなエラーが出てはまりました。 PHP Parse error: syntax error, un…

Vagrantの共有フォルダをapacheの公開ディレクトリにしていると更新が反映されない問題

pc

今、WindowsでCakePHPの開発を行っているのですが、Vagrant上にCentOSを入れ、共有フォルダ /vagrant 以下にディレクトリを作ってそこにCakePHPを入れ、apacheの設定でそこをDocumentRootにして使っています。 開発はWindows上のNetBeansで直接共有フォルダ…

古いWebアプリのMySQLからエクスポートで文字化け

pc

perl+MySQLで書かれた古いWebアプリをリプレースする件があるのですが、まず今登録されているデータをエクスポートしてくるところからはまりました。 いわゆるレンタルサーバ上で動いておりシェルは使えないため、webの管理画面からphpMyAdminを使ってエクス…

vagrantサーバで時間を動かしてテストする

pc

vagrantで動かしている仮想サーバ上に開発/テスト環境を作ってあり、そこで date で時間を進めてテストを行おうとしていました。しかし、ntpdを動かしていないのに勝手に時間がすぐ戻ってしまい、なんで?となりました。ただVMwareとかVirtualBoxのようなVM…

SNS時代のスパム手法

この記事はNSEGアドベントカレンダーの24日目の記事です。 …といいつつ新規に作ったものではなく、これは去年の11月にとあるセキュリティ系の講演で喋った内容のプレゼン資料です。今、スパマーたちはメールによるスパムから、SNSを使ったスパムへと軸足を移…

Picate (Picasaタグ編集ヘルパー)という簡易Webサービスを公開します

pc

Picasaのタグ編集ヘルパー「Picate」 http://k2net.hakuba.jp/picate/ (追記)Google、写真管理サービス「Picasa」終了へ、「Googleフォト」に統合 -INTERNET WatchGoogleフォトではPicasaにあった「タグ」機能がないため、このPicateも使えなくなります。 …

JenkinsからSelenium IDEのテストケースを使って自動テストを行う

pc

この記事はNSEGアドベントカレンダーの10日目の記事と、 Selenium/Appium Advent Calendar 2015の22日目の記事です。 概要 Selenium IDEというWeb UIの自動テストを行うツールで作ったテストケースを、Jenkinsというビルドやテストの自動化を行うCI(継続的…

gitで取ってきたファイルのタイムスタンプをcommit日付に直す

pc

git clone等で取得したファイルのタイムスタンプは、commitされた日時ではなく、そのgitコマンドを発行した日時になってしまいます。なんかオプション指定でもすれば、commitした日時にできるのかな?と思ったのですが、簡単にはできないみたいで、gitのwiki…

git pushでCannot access…というエラーとその対応

pc

とある共用で使いたい環境にあるansibleの設定ファイルをgitで管理していて、ローカルのgitbucketのリポジトリにpushしようとしたのだけど Cannot access URL http://gitbucket.local/toarurepo/toarurepo.git/, return code 22 のようなエラーが出てpush出…