カタカタブログ

SIerで働くITエンジニアがカタカタした記録を残す技術ブログ。Java, Oracle Database, Linuxが中心です。たまに数学やデータ分析なども。

PythonとOpenCV 3でPCのビデオカメラでリアルタイム顔認識してみた

はじめに OpenCV 3インストール OpenCVの顔認識チュートリアルをやってみる PCのビデオカメラでリアルタイム顔認識をやってみる まとめ はじめに Pythonを最近触り始めているので、いまさらながらOpenCV3を使ってPCのWebカメラから顔認識をやってみる。 環境…

PowerShell スクリプトの実行が無効となっている場合の対処法

PowerShell ISEやPowerShell対話式コンソールからは実行できるのに、スクリプトファイル化したps1ファイルを実行しようとすると 以下のようなセキュリティエラーが発生する場合があるので、この場合の対処法についてまとめる。 今回はecho Hello PowerShell…

LinuxのNFSディレクトリをWindows Serverからマウントしユーザマッピングする

Linuxでファイル共有のためにNFSサーバをたててディレクトリを公開することはよくあるが、 今回Windows Serverからも同じフォルダにアクセスするためにLinuxのNFSディレクトリをドライブにマウントする手順を検証した。 また、その際に簡易な方法でWindowsユ…

Fluentd 2.3 + Elasticsearch 5.3 + Kibana 5.3 環境を構築してみた

以前Fluentd (td-agent 2.3.0) + Elasticsearch 2.1 + Kibana 4.3の環境を構築した。 totech.hateblo.jp2017年4月現在、ElasticsearchとKibanaが5.3となり新しくなっていたので、現在の最新版で環境を再構築してみることにした。 結果、手順に大きな変更はな…

Raspberry Pi 2にBluetoothシリアル通信でデータ送受信してみた

以前Raspberry Pi 2にUSBのBluetoothアダプタを接続し、WindowsおよびMacのPCとペアリングするところまでみた。totech.hateblo.jp今回は、Bluetoothによるシリアル通信を行い、Raspberry PiとWindows-PC間でデータ送受信をやってみる。 シリアル通信は本来、…

Windows あるフォルダ以下のファイル一覧を作成する

Windowsで特定のフォルダ以下の全ファイルを一覧化したい場合に使えるコマンドプロンプトのコマンドについてまとめた。 Linuxで言うfindやtreeコマンドのようなもので、 大量のファイルが入ったHDDにほしいファイルがあるか手軽に調べたい場合など、ファイル…

Oracle Java SE 8 Silver/Gold 合格体験記

先日、OracleのJava SE 8の資格試験を受験し、無事合格しました。 記録のために合格体験記を記します。これまでJavaは学生の頃から今の仕事でもよく使ってきたので、基本的なプログラムはある程度一人で書けるレベルでしたが、 体系的な勉強はあまりしてこな…

Java ComparableとComparatorの違いについて

今回はJavaのオブジェクト同士を比較するための以下の二つのインタフェースの違いについて、勉強したことをまとめる。 java.lang.Comparable<T>インタフェース java.util.Comparator<T>インタフェース どちらもオブジェクトを順序付けし、比較するためのインタフェ</t></t>…

Raspberry Pi 2にUSB-Bluetoothアダプタを接続しWindows・Macとペアリングさせてみた

Raspberry Pi 3ではすでにBluetoothは標準機能で搭載されているが、手元Raspberry Pi 2にはBluetooth機能がないので、 市販のUSB-Bluetoothアダプタを購入して試しにMacbookやWindows7のPCとペアリングさせてみた。 Bluetoothアダプタ選定 まず、Raspberry P…

Java ジェネリクスについて勉強したことのまとめ

Javaのジェネリクスについて理解が浅かったため、今回Effective Java第2版を読んで勉強してみたことをまとめる。 ジェネリクスはJava SE 1.5から導入されたものだが、今回はJava SE 8の環境で検証している。EFFECTIVE JAVA 第2版 (The Java Series)作者: Jos…

Raspberry Pi 2 でLチカ

Raspberry Pi 2はこれまで簡易サーバ的な使い方しかしてこなかったが、今回初めて電子工作的な使い方をしてみる。 電子工作の領域ではLEDを点灯されることを"Lチカ"と呼び、Hello World的な入門するときに最初に作るべきものという位置づけらしいので、 今回…

Raspberry Pi 2にWi-Fi USBアダプタで無線LAN接続したときのメモ

Wi-Fiが標準搭載されたRaspberry Pi 3も出ているこのご時世に今更感は否めないが、 今回自宅のRaspberry Pi 2にWi-Fi USBアダプタを使って無線LAN接続設定を行ったので、内容をメモ。 Wi-Fi USBアダプタ準備 今回はWi-Fi USBアダプタはRaspberry Piと相性が…

AWSにCloudera ManagerでCDH(Hadoop)クラスタを構築してみた

AWSにEC2インスタンスを複数立てて、Cloudera ManagerをインストールしてCDHクラスタを構築してみた。 Hadoopのクラスタ構成を自前で組むと結構面倒らしいが、Cloudera Managerを入れるとかなり簡単に組むことができた。環境情報は以下。 Redhat Enterprise …

SQL テーブル参照先の条件句 JOIN vs EXISTS

昨日の記事に続き、今日もSQLネタ。さて、あるテーブルにある行を検索する際に検索条件が外部キーで参照した別テーブルの列にあり、かつそのテーブルの値をselectしない場合、 そのようなSQLは結合もしくはexists句を使う2パターンで表現できる。今回はこの2…

SQL グループごとの最大値を持つ行を取得するときは分析関数MAXを使う

SQLを書いていて、あるグループごとにある項目を集計して最大値を持つ行だけを検索したいときがある。 これまではあまり気にせずにgroup byと集計関数MAXを使ったサブクエリを検索条件に使うことで求めていたが、 パフォーマンスがよくないことがあり、今回…

Raspberry Pi 2とSoftEtherを使って自宅VPNを構築してみた

これまでヤマハやBUFFALOの市販のルータを使って自宅VPNを構築してきた。 totech.hateblo.jp totech.hateblo.jp しかし、先日BUFFALOのルータを買い換えたところ、PPTPサーバ機能がなくてVPNサーバとして使えなかったため、 Raspberry Pi 2を使ってソフトウ…

apt-get install時に「 パッケージ 'wireless-tools' のファイル一覧ファイルに最後の改行がありません」エラー

久しぶりにRaspberry Piを触った。 Raspberry Pi 2にapt-getでchkconfigを入れようとしたときによくわからないエラーが出たので、対策をメモ。 エラーと対応方法 apt-getでchkconfigを入れようとしたときに、wireless-toolsパッケージ周りでエラーが発生し、…

【ベイズ統計】HMC(ハミルトニアン・モンテカルロ)法をRで理解する

ベイズ統計に関する以下の本を読んだ。基礎からのベイズ統計学: ハミルトニアンモンテカルロ法による実践的入門作者: 豊田秀樹出版社/メーカー: 朝倉書店発売日: 2015/06/25メディア: 単行本この商品を含むブログ (5件) を見るこの本のゴールはHMC法(ハミル…

Cloudera Managerのチャート機能でリソース使用状況を可視化する

前回、Hadoopのパフォーマンスを計測するベンチマークの使い方を見た。 totech.hateblo.jp通常、パフォーマンス計測時には裏でdstatやsarのようなサーバのリソース使用状況を取得するツールを走らせておくが、これらはログとして保管したり報告資料を作る上…

Hadoopのベンチマーク計測サンプル(TeraSort, TestDFSIO)を動かしてみる

構築したHadoopクラスタの性能がどの程度なのかを知る上で、共通で標準的な計測手順があると便利だと思い調べてみたところ、Hadoopに標準でベンチマークを計測するスクリプトが用意されているようだったので、これを使ってみる。 サンプルはたくさんあるよう…

RubyでHadoop Streamingを動かしてみる

mHadoopでMapReduceジョブを実行するには最近はHiveを使うのが一般的だが、MapReduceを手軽に使うための方法としてHadoop Streamingがある。 これは標準入出力を利用してMapReduceジョブを実行できるというもので、Javaで複雑なコードを実装せずに手軽に試せ…

MacでR+MeCabによる形態素解析をやってみた

R

自然言語処理でおなじみの形態素解析ツールMeCabをMac上のRから使えるようにしてみた。今回は環境構築の手順をメモ。 環境情報は以下。 Mac OS X El Capitan (10.11.3) MeCab 0.996 R 3.2.3 (2015-12-10) MeCabインストール MeCabは、macではbrewで簡単にイ…

R言語とImageMagickでgifアニメを作成

R

R言語で分布などをグラフィック生成される場合に、パラメータを少しずつ変えて微妙に変化するグラフィックをアニメーションさせて見てみたくなるときがよくある。 例えば、カイ二乗分布のような自由度ごとにグラフの形が大きく変わるようなものは、自由度を…

【統計】二項分布をR言語で描画してみた

今回は二項分布のヒストグラムをR言語で可視化してみた。二項分布は「コイン投げで表が出る」や、「サイコロを振って1の目が出る」のような事象が一定確率で「成功するか、しないか」の2者択一の試行をそれぞれ独立に繰り返したときに現れる分布(ちなみにこ…

【機械学習】Rで手書き数字データMNISTをニューラルネットで学習してみた

今日はR言語を使って機械学習の入門ということで、ニューラルネットを使ってみた。 今回の目標は、Rを使って機械学習の一連のプロセスである、トレーニングデータの学習によるモデル構築と、それを使ったテストデータの評価までを一通りやってみる。なので、…

【統計】F分布をR言語で実験してみた

前回、カイ二乗分布をR言語で実際に描いてみた。 totech.hateblo.jp 今回はカイ二乗分布とも関連のあるF分布を同じ要領で、Rを使って実際にヒストグラムを描いてみる。 F分布の定義 まずは教科書的なF分布の定義の確認から。 確率変数U, Vがそれぞれ自由度k_…

【統計】カイ二乗分布をR言語で実験してみた

再び、統計の勉強。今回はカイ二乗分布について勉強してみたので、分布をR言語で実際にデータを生成してヒストグラムを描いてみる。カイ二乗分布の標準正規分布の二乗和として定義され、自由度dfごとに分布がある。数式での定義は他の文献に譲るとして、要す…

【統計】中心極限定理をR言語で実験してみた

最近、統計の勉強をしている。ちょっと前に流行ったこの本(の続編?)を読んでいるのだが、その中の「中心極限定理」の説明が分かりやすかったので、R言語で実験してみた。統計学が最強の学問である[実践編]---データ分析のための思想と方法作者: 西内啓出…

Mac上でheroku createでエラーが出たのでheroku updateしたら直った

久しぶりにMacからHerokuにRailsアプリを作ろうといつものようにheroku createするとエラーになってしまった。 結論としてはただプラグインが古かっただけのようだが、そのときの様子をメモ。まず、herokuへのログインは正常にできる。 $ heroku loginその後…

Raspberry Pi 2の有線LANでのIPアドレス固定化手順が変わったのでメモ

Raspberry Pi 2を再構築したときに、有線LANのIPアドレス固定化の手順を前回のメモ通りにやってみると、うまく行かなかったので、その時の対応手順をメモ。なお、RaspbianはNOOBSの現在の最新版であるNOOBS_v1_5_0.zipを使ったところが前回と違っている。 ht…