雑多な技術系メモ

自分用のメモ。内容は保証しません。よろしくお願いします。

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

javascriptでの型判定についてのメモ

以下のサイトが一番参考になる qiita.com とりあえずは以下のコードで基本的な型は判定可能 var toString = Object.prototype.toString; console.log(toString.call(対象オブジェクト));

nodejsアプリのデバック方法

1. デバックモードで対象アプリを起動 node --debug server.js 2. デバック用のアプリの起動(別のターミナルで) node-inspector 3. Node-inspectorより出力されたurlにブラウザにアクセス 4. nodeで実行しているサーバーにブラウザからアクセス ※デバックが…

vimの便利なテクニックまとめ(自分用)

vim

囲まれている何かの削除 “” の間でds' http://motw.mods.jp/Vim/surround.html f文字 その行の一番最初出る文字まで移動 列一括挿入 矩形ビジュアルモードを利用した編集を使いこなす — 名無しのvim使い

undefined method `[]' for Matrix:Module

railsや自作gemを作成するときにMatrixを使うときの注意。 エラー内容 タイトル通り undefined method `[]' for Matrix:Module 原因 Gemfileに gem 'matrix' と書いてbundle install してしまうとタイトルのようなエラーが出る模様。(matrix 0.0.1っていう…

ajax関連の単語

マッシュアップ 一つのサイトに複数のWebAPIを組み合わせ作られたもの XMLHttpRequest クライアントとWeb サーバ間でデータを伝送するための機能をクライアント側で提供するAPI XHRと略されることがある Same Origin Policy 現在のサーバー出身のwebコンテン…

クロスドメインの危険性

不特定多数からのajax通信を許可することで、ユーザから悪意のあるスクリプトが埋め込まれる危険性が上がる ajax通信ではjavascriptを多様するためスクリプトを埋めやすい。そのため、ajax通信は危険性が増す。 参考サイトの5.10, 5.11がとてもわかりやすい …

REST APIとは

基本的にはGET, POST, PUT, DELETEリクエストを送信して、xmlやjsonで結果を受け取る形式のAPIのことを言うらしい。 以下のサイト参考 http://qiita.com/pink/items/f1a22840619d3b79c4f2

nginxの設定について

nginxのクロスドメイン対策。以下の記事参照 http://qiita.com/rysk92/items/e5cf2fab8531f8ea3683 必要であれば、Access-Control-Allow-Headersにその他のContent Typeなどを加え、動かす。

rubyで行列の積を求める

やりたいこと 以下の行列の積を求めたい時 \begin{equation} a = \left[ \begin{array}{r} -1 & 20 & 3 \end{array} \right] \\ \end{equation} \begin{equation} b= \left[ \begin{array}{rrr} -1 \\ 4 \\ 7 \end{array} \right] \end{equation} \begin{equ…

arrayの各要素をindexを参照しながら、足していく場合のコード

rubyで「arrayの各要素のindexを参照しながら、足す」という操作をしたかったので、メモ 以下、参考コード array = [1, 2, 3] sum = array.each_with_index.inject(0.0){|sum, (d, i)| p "i:#{i}" # index sum += d } p "sum = #{sum}" 以下、出力 "i:0" "i:…

mathjaxでマイナスがうまく表示されない時の対処法

問題 数式を書くときに引っかかった。 以下のコマンドがうまく動かなかった \begin{equation} y\_{ij} = \sum^{m-1}\_{s=0}\sum\^{n-1}\_{t=0} w\^{k}\_{st} x\_{(i+s)(j+t)} + b\^k \end{equation} マイナス(-)がうまく反応していないようだったので、以下…

ipythonをvimモードにする

~/.ipython/profile_default/ipython_config.py に以下の行を追加(なければ作る) c.TerminalInteractiveShell.editing_mode = 'vi'

he shape of the input to "Flatten" is not fully defined (got (512, 1, 0). Make sure to pass a complete "input_shape" or "batch_input_shape" argument to the first layer in your model.

kerasでのエラーの対処法 問題 Flattenでうまくいかなく、以下のようなエラーをはいた the shape of the input to "Flatten" is not fully defined (got (512, 1, 0). Make sure to pass a complete "input_shape" or "batch_input_shape" argument to the f…

pickleでエラー

問題 Traceback (most recent call last): File "predict.py", line 8, in <module> import cPickle as pickle ImportError: No module named 'cPickle' 対処法 before import cPickle as pickle after from six.moves import cPickle</module>

lambda式メモ

lambda式 pythonで lambda 引数:処理 hello = lambda who : print(who + "hello!") hello("inoki") # => inoki hello! rubyで = -> (引数){処理} ()は省略可能 hello = -> (who){p who+" hello!"} hello["inoki"] # => inoki hello! パーフェクトRuby (PERFE…

バイナリファイルなどがコンフリクトした場合の処理

git

バイナリファイルなどがコンフリクトした場合の処理 今回はpdfファイルがコンフリクトした場合の処理 コマンド 以下の場合でいうとtest.pdfのみがマージ対象のbranchファイルにcheckoutされる git checkout --theirs test.pdf 参考 http://blog.ruedap.com/2…

texで数式や参考文献が参照できなかった

tex

問題 \citeなどがうまくいかなかい。参照したように書いても??になってしまったり 対処法 完全に私のミス。 platexを実行した際に出力される.auxファイルを削除していた。 .auxファイルが参考文献や数式を参照する際に必要になるらしい。 参考 cns-guide.sfc…

rubyのMechanizeでダウンロード

rubyのMechanizeでダウンロード rubyのmechanizeを使ってファイルをダウンロードしたいとき コード require "mechanize" agent = Mechanize.new agent.pluggable_parser.default = Mechanize::Download agent.get(<url>).save(<filename>) # <> はすべて自分用に変更してく</filename></url>…

numpyの配列の要素を四捨五入する

numpyの配列の要素を四捨五入する import numpy as np a = np.array([0.01, 2.0]) a = np.array(a) # => array([0., 2.])

anacondaでpythonのバージョン切り替える

anacondaでpythonのバージョン切り替える 前提 すでにanacondaが入っていること やりたいこと python2系に切り替えたい 手順 conda create -n py27 python=2.7 anaconda conda info -e # インストール済みのpythonのバージョン確認 source activate py27 # …

mechanizeのlinks_withの使い方メモ

mechanizeのlinks_withの使い方メモ linksの中から特定の文字列が含まれるlinkだけ取りたい時 require "mechanize" agent = Mechanize.new a = agent.get("http://yahoo.co.jp") a.links_with(text: /yahoo/)

pryでshellコマンドを実行する方法

pryでshellコマンドを実行する方法 ドット(.)でshell コマンドが使える 例 .ls .cd

numpyのshapeとndim

numpyのshapeとndim 前提 import numpy as np shape 各次元の要素数を確認することができる。 a = np.array([1, 2]) a.shape ## => (2,) , 各次元の要素数(行数、列数) ndim 次元を確認することができる a = np.array([1, 2]) a.ndim ## => 1 , 次元数

chainer初心者が畳み込みニューラルネット試してみた

うさぎとミサイルを見分ける うさぎ3枚、ミサイル2枚学習 とりあえず細かい動きだけ知りたかったのでやってみた しっかりしたやつは後日 画像は適当にとってきた コード import time import six.moves.cPickle as pickle import numpy as np import chainer …

はてなブログのグローバルナビ参考

以下のサイトどうり、html,cssを記述していけば、最低限のものはできる www.yukihy.com

リモートのbranchと同じbranchをローカルに作る方法

git

リモートのbranchと同じbranchをローカルに作る方法 git checkout -b test origin/test

ValueError: setting an array element with a sequence.

環境 ubunut : 16.04 python : Python 3.5.2 :: Anaconda 4.2.0 (64-bit) 原因 あたりまえだが、各配列のサイズが異なっていることが原因だった。 修正前 x_train = [] img = cv2.imread("labit.jpg", 0) img = cv2.resize(img, ( 100, 100 )) x_train.appen…

python 3系でopencvをpipでインストールする方法

環境 ubunut : 16.04 python : Python 3.5.2 :: Anaconda 4.2.0 (64-bit) opencv インストール pip install opencv-python 確認 import cv2

kerasのCIFAR10画像データ・セットについて

下記のコードのX_trainの中身をよく忘れるのでメモ。50000枚の画像データがX_trainに格納されている。 from keras.datasets import cifar10 (X_train, y_train), (X_test, y_test) = cifar10.load_data() X_trainの中身を視覚化 ゼロから作るDeep Learning ―…

ImportError: No module named 'pydot' 

「ImportError: No module named ‘pydot'」というエラーが出た。 自分の解決法をメモ 以下のコマンドで動くことを確認(ubuntu16.04,python3.5.2) pip install pydot pip install pydot-ng sudo apt-get install graphviz 退屈なことはPythonにやらせよう ―ノ…