のんびりしているエンジニアの日記

ソフトウェアなどのエンジニア的な何かを書きます。

Python

Pandasで特徴量取得する場合に使う操作をまとめてみた

皆さんこんにちは お元気ですか。私は元気です。分析は基本的にPythonを使って行います。(大体Pandasですが・・・) Pandasを利用すると色々できます。が、ふとどうするんだっけ処理が増えていきました。自分のメモがてらカテゴリを分けて記録に残したいと…

Anacondaを使ったPythonの環境構築

皆さんこんにちは お元気ですか。私は暇です(だと信じています)。 最近ブログタイトルと本人の忙しさが一致していないと言われるので とりあえず暇ですといってみます。本日は、Anacondaについて書きます。 Anacondaについて Anacondaとは インストール方…

Cookiecutterを使ってテンプレートからプロジェクトを作成する

皆さんこんにちは お元気ですか。ユニクロの極暖Tシャツ着ているとかなり暑い。。。冬なのに今日は、Cookiecutterを使ったテンプレートからの複製生成を試みます。 テンプレートからちょっと変えたい部分を用意することで、簡単に 似たプロジェクトを作成で…

クリスマスにもなってカノジョがいないからカノジョを作ってみた。

皆さんこんにちは お元気ですか?私はぼっちです。本記事は「カノジョできない機械学習エンジニア」の最終日です。 qiita.com本日の話の流れは次のとおりです。 はじめに カノジョがいないことに対する解決法 カノジョについての考察 カノジョとは 理想のカ…

Chainerの抽象化に挑戦してみた

皆さんこんにちは お元気ですか?年末ってこんなに忙しくなるものですね。本記事はChainer Advent Calendar 16日目の記事です。qiita.com本日はScikit-learn likeなChainerを作った記事です。なぜ、作ったのかは後述します。 はじめに なぜ、抽象化コードを…

Pythonを使った音楽解析をやってみる

皆さんこんにちは お元気ですか。私は元気です。本記事はPythonのアドベントカレンダー第6日です。 qiita.com本日はPythonを使った音楽解析に挑戦します。 偶然にも音楽解析に便利なライブラリを発見したので、試してみたいと思います! 音楽解析 librosa li…

ChainerのTrainerを使ってみた

皆さんこんにちは お元気ですか。最近、Chainer便利でびっくりしたような頃合いです。頻繁に更新することで有名なChainerですが、久々にupgradeすると以前よりも シンプルなタスクについて、簡単に学習ができます。 Trainer Chainer version 1.11.0よりTrain…

Keras.jsを使って、JavascriptでDeepLearningを動かしてみる

皆さんこんにちは お元気ですか?一人で箱根温泉りらっくすできました。Keras.jsが出て、遂にKerasをjavascriptを扱えるようになりました。 (これ公式なのかどうかが非常に不安で、きっと違う) ということで実際に動かしてみようと思います。 Kerasについ…

高速化のためのPython Tips

皆さんこんにちは お元気ですか?私は元気です。Pythonにおける高速化手法を掲載してみます。 簡単なコード並びに索引のような感じで引けるようなイメージで作成しました。本日の目次です。 Pythonにおける高速化の必要性 Pythonの高速化 高速化の手順 Profi…

Chainerにおけるグラフ構造をループで書いてみる。

皆さんこんにちは お元気ですか。私は元気です。実は私、Chainerでのfor文でLinkとして作成できることを知らず、 今の複雑なネットワークにChainer使いにくいと思っていましたが、以下にサンプルがあって こうすれば複雑なネットワークも組めるんだ。みたい…

Pythonで書ける便利な書き方を紹介します。

皆さんこんにちは お元気ですか。私は元気です。今日はPythonにおける便利記法を書いてみます。 他の言語しか使ったこと無い人もぜひ※1/25間違いかと思われる箇所の加筆修正を実施 リストに関するイテレーション enumerate(インデックスとオブジェクトのル…

Pythonで少なくメモリを使用する方法

皆さんこんにちは お元気ですか。私は元気です。今日はPythonにおけるメモリ少なく使う方法を紹介したいと思います。 なぜ、そんな方法を書くに至ったか。それは、こんなエラーをしょっちゅう見ているからですね。 Traceback (most recent call last): File …

友利奈緒らしさとは何か。

友利奈緒の皆さんこんにちは。 お元気ですか?私は元気です。これは、友利奈緒アドベントカレンダー24日目の記事です。 www.adventar.org今日は友利奈緒らしさについて追求していきます。 世の中友利奈緒を降臨させようとする方々は沢山いらっしゃると思い…

DeepLearningを使った実装を纏めてみた

皆さんこんにちは お元気ですか。私は全然です。Deep Learning 一言で言うとただの深層学習ですが、 作り手や用途によって構造が全然違います。今回は逆引き辞典よろしく、Deep Learningの実装のリンク集を作ってみました。 今回はライブラリは問わず、掲載…

TensorFlowのTutrialの解説と機械学習の実験をした。

今日は様々な箇所で賑わっているTensorFlowを使ってみました。皆さんこんにちは。 お元気でしょうか。朝弱いと結構困りますよね。 TensorFlowが盛り上がってたのでつい書いてみました。 TensorFlowとは http://tensorflow.org/ http://download.tensorflow.o…

Autogradで微分して、モデルを構築するとこまでの解説

皆さんこんにちは お元気ですか。Twitter上で突然賑わった、Autogradについて 書いてみることにします。 Autogradとは Autogradについての説明 github.com Autogradはnumpyらしく書くことができ、その記載した式を微分してくれるライブラリです。(in Python…

UbuntuにおけるOpenCV3のインストール

実は一度も使ったことがないOpenCV3を使ってみたいと思います。皆さんこんにちは お元気ですか。睡魔に襲われながらこの記事を書いています。今回はPython3を想定しています。Python2で使いたい人は適宜読み替えてください。 OpenCV3の機能について OpenCV3…

Mac10.9 でApache-Sparkを動作させてみる(in Python)

分散処理で有名なApache-Sparkを初動作させてみる。皆さんこんにちは お元気ですか。腹減った。分散処理のプラットフォームSparkを扱ってみます。 Apache Sparkとは spark.apache.orgApache Sparkは大きいデータを高速に処理する為のプラットフォームで Hado…

Sphinxを使ったAPIドキュメンテーションの作成

皆さんこんにちは お元気ですか。私は元気です。今日はSphinxを使ったドキュメンテーションを紹介します。 Sphinxを使うとモジュールの表示とコメントを自動的に表示するところを見ていきたいと思います。 Sphinxとは Sphinxは知的で美しいドキュメントを簡…

Lasagneを使ったNeural Networkの構築

皆さんこんにちは お元気ですか。私は元気です。本日は、Lasagneを紹介したいと思います。 What is Lasagne? Lasagneは簡単にニューラルネットワークを構築できるライブラリです。 Lasagne/Lasagne · GitHub CNNやRNN(LSTM含)をサポートしている 複数の入…

Hyperoptを使った、関数の最適化

皆さんこんにちは お元気ですか。私は元気です。本日はhyperoptと呼ばれるライブラリを紹介したいと思います。 KaggleのForamで時々あがっていたので、気になっていました。 Hyperoptについて What is Hyperopt? hyperoptはTree-structured Parzen Estimator…

ChainerをUbuntu14.04を使ってGPUで動かしてみる

皆さんこんにちは お元気ですか。私は元気です。本日は、ChainerのGPU設定を行っています。 なぜか、GPUの設定をすると毎度、毎度苦労することになります。 pip install chainer-cuda-deps このコマンドで実行できるとありますが、たいていの人のところでは …

Recurrent Neural Networkについて調査してみた

皆さんこんにちは お元気ですか。私は自由に元気です。今日はRecurrent Neural Networkについて見て行きたいと思います。 Recurrent Neural Network Recurrent Neural Networkは通常のネットワークと異なり、時系列が考慮されているニューラルネットワークで…

マルコフ連鎖で自動的に文章を生成してみた

皆さんこんにちは お元気ですか。私は二郎食べたいと思ったり、思わなかったりです。今日はマルコフ連鎖を使って、文章の自動生成を行いたいと思います。 マルコフ連鎖とは? マルコフ連鎖は、一連の確率変数 X1, X2, X3, ... で、現在の状態が決まっていれ…

ChainerでCIFAR-10の分類を行ってみる

皆さんこんにちは お元気ですか。私は元気です。前回はChainerの紹介をしました。機械学習ライブラリ Chainerの紹介 - のんびりしているエンジニアの日記nonbiri-tereka.hatenablog.com 本日はこのChainerを使って、CIFAR-10の分類を行ってみようと思います…

機械学習ライブラリ Chainerの紹介

皆さんこんにちは お元気ですか。私は元気です。Chainerと呼ばれる機械学習ライブラリを紹介しようと思います。 Chainerについて Chainerとは? ChainerはPreffered Networksが開発したニューラルネットワークを誤差伝播で学習する ライブラリです。(Python)…

Scikit learnで行う文章の特徴ベクトルの抽出

皆さんこんにちは お元気ですか。私は元気です。今日は、Scikit learnを使って、お手軽に文を特徴ベクトルに変換してみます。 どんな時に使うのか? ある文章、例えば、This is a pen(①)とThat is a pen(②)を機械学習で学習させるとき、 基本的に文字を…

Scikit-learnのモデルをまとめてみた

皆さんこんにちは お元気ですか。私は元気です。今日はScikit-learnで扱えるモデルについて紹介したいと思います。気が向いたら追加します。 ※Sampleは割りと公式サイトのを少々改変したもの使っていたりします。ご了承ください。 モデル全般について Parame…

Cythonを使って、Pythonを高速化してみよう①:インストール

皆さんこんにちは お元気ですか。私は元気です。最近、このブログの色がPythonに傾きつつあるようなないような。 今日はCythonをご紹介したいと思います。 Cythonとは? C言語によるPythonの拡張モジュールの作成の労力を軽減することを目的として開発された…

PythonでPickleを使ったデータ保存

皆さんこんにちは お元気ですか。私は元気です。今日はPickleを使ってみます。Pickleを使うとデータを文字でファイルに保存することができます。 これをすると、どうなるかって? 例えば途中の計算結果を自分のクラスごと保存することができるといったことが…

PyPyのインストール

皆さんこんにちは お元気ですか。TOEIC終わって疲れた。本日はPyPyについて What is PyPy(パイパイ) Pythonの実装の一つでございます・JIT コンパイラで動く為、高速。CPythonの代わりを目指したんだとかなんとか ・RPythonで書かれているとか(Wikipedia…

FrickrのAPIで画像を探してダウンロードする

皆さんこんにちは お元気ですか。私は元気です。今日はFrickrのAPIの画像検索を紹介したいと思います。 Frickrのデータ取得方法 準備するもの API Keyの獲得が必要です。 そのためには、Yahoo!への登録とAPIKeyの取得の申請が必要です。 コードをかくにあた…

Python リファクタリングに使えるCloneDigger

皆さんこんにちは お元気ですか。私は元気なのか・・・? TOEICのリベンジを果たす時が来るのだろうか。さてと、今日はリファクタリングに使えるソフトであるCloneDiggerを紹介したいと思います。 一言でいうと、ソフトウェアのクローンコードを検出=類似コ…

Scikit-Imageのインストールと画像表示

皆さんこんにちは お元気ですか。私は修論という壁に殺されそうでございます。最近は画像日和なので、今日はScikit-Imageを使ってみましょう。 Scikit-Imageとは 画像処理に関するアルゴリズムを集めたライブラリです。 無料で扱うことができて、ボランティ…

Pythonで並列分散処理(multiprocess)

皆さんこんにちは お元気ですか。私は元気です。さて、今日はPythonで並列分散処理を行ってみましょう 今回使うライブラリはmultiprocessです。まずは、引数を与えて出力をしてみましょう。 最も単純な例 #coding:utf-8 import multiprocessing import os de…

Pylearn2のインストール(OS:Mac10.9 Marvericks)

皆さんこんにちは お元気ですか。私は元気です。今日はPythonを使ってDeepLearningを動かすpylearn2をインストールしてみました。なかなか手こずりました 事前準備 さて、事前にインストールしなければいけないソフトウェアが5つあります。 PIL PyYAML IPyth…

PythonのTupleに代入ができないことを初めて知ったこの秋

皆さんこんにちは お元気ですか。私は筋肉痛です。PythonのTupleについてのお話 Opencvだと色をTuple形式で記載したりしますが(255,20,0)みたいな形式で計算でもして後で代入しようと思ったらエラーが出ました。tupleってこんなのです (1,2,3) 因みにエラ…

Pythonで使うrangeとxrangeについて

皆さんこんにちは お元気ですか。私は元気です。さて、今日はrangeとxrangeについて見てみましょう。 さて、Pythonを使う人であれば、この2つよく使いますよね Pythonでよく見るコードはこちらです。 for i in xrange(100): print i もちろんrangeで書く人…

Pythonで演算をするときはnumpyを使いましょう

皆さんこんにちは お元気ですか。私はそこそこ元気です。さて、今日はnumpyをオススメしたいと思います。 皆さんリスト内の合計を求める時、どうしていますか? こんなコードを書いていないでしょうか・・・・・・? for i in xrange(N): sum += list[i] こ…

Python リスト追加についての速度比較(append,内包表記など)

皆さんこんにちは お元気ですか。私は元気です。 実は情報技術者試験が終わったんです。ひゃっほー …受かってそうにないのはまた別のお話さて、今日は便利なPythonのリストについての速度を比較してみましょう 皆さんこんなコードありませんか list = [] for…

Pythonでテストをしてみよう(unittest)

皆さんこんにちは お元気ですか。私は元気です。本日はunittestについて勉強してみましょう。 unittestとはPythonでのテストのライブラリです。JUnitとかCppUnitが親戚に当たりますね。Pythonでは標準についているので、昨日使ってみるとかなり便利でした。…

アニメの顔写真をBag of Keywordsで分類してみた

皆さんこんにちは お元気ですか。私は眠いです。書いている時間が深夜なんて言えない。さて、今日はアニメの顔写真を分類してみます。 画像認識の分野において結構メジャーな手法であるBag of Keywordsを使います。 Bag of Keywordsの概要 Bag of keypoints,…

PythonでコマンドラインをParseしよう(OptParse)

皆さんこんにちは お元気ですか?眠いんですよおおおおさて、プログラムを書いた時にコマンドラインを解析したいと思ったことはありませんか? 私は有ります。通常のコマンドラインからの入力を取り込むには、sys.argvを利用すればできます。こんな感じ pyth…

Pipを使ったら変なエラーが出たよ!(unknown argument: '-mno-fused-madd')

皆さんこんにちは お元気ですか。私は元気です。今日、Pythonでpipを使ってライブラリを入れていたのですが、以下の様なエラーが出ました。泣きそう。 clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-fu…

PythonでHtmlを解析する(BeautifulSoupを使って)

皆さんこんにちは お元気ですか。私は元気です。さて、今日はBeautifulSoupを使ったhtmlの解析をしたいと思っています。 インストール sudo pip install beautifulsoup BeautifulSoupを使って解析する #coding:utf-8 import BeautifulSoup import urllib2 op…

Pythonでニコニコタグ解析、ネットワーク作ってみた

皆さんこんにちは お元気ですか。私は元気です。今回もニコニコタグ解析をやってみようと思います。最近ですが、タグでネットワークを構築してみました。 見た目が悪すぎて泣きそう。皆どうやって作ってるの。ネットワーク。まぁ一応作ってみたので公開して…

ニコニコデータセットでタグ一覧を作る

皆さんこんにちは お元気ですか。私は元気です。今から実家に帰ります。前回、ニコニコ動画データセットの集計を行いました。 今回はそのニコニコデータセットでタグの一覧を作ってみましょう。 import json import gzip import os import sys def createWor…

MySQLをPythonから弄る

皆さんこんにちは お元気ですか。私は元気です。さて、今まで掲載していた記事では全てConsoleから弄っていたのですが、 プログラムできないと不便でございます。MySQLをプログラムから弄ることができます。さて、必要なパッケージをpipを使ってインストール…

Pythonで可変長引数(*args,**kargs)

皆さんこんにちは お元気ですか。私は・・・・・いやあ実家涼しい素晴らしい。Pythonの可変長引数について記載します。 可変長の引数を実装する方法が2つあります。一つは変数に*を戦闘につけることによってTuple型として渡すことができます。 例題は以下の…

Pythonのネットワーク、グラフ解析 Network-Xを使って・・・

皆さんこんにちは お元気ですか?私はフリーダム生活です。お盆休み近くて少々嬉しい本日はネットワークXについて NetworkXはグラフやネットワーク解析のライブラリです。実はにこにこタグネットワークでもつくろうかなと考えていたりいなかったりということ…