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

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

Python

Pythonで自然言語処理のタスクをやってみる。

皆さんこんにちは お元気ですか。アドベントカレンダー真っ盛りですね。 本日は「python Advent Calendar 2017」のアドベントカレンダー第5日です。qiita.com自然言語処理には様々なライブラリ(NLTKやCoreNLP)があります。 せっかくの機会として、本記事で…

CatBoostを5分程度で動かしてみた

皆さんこんにちは お元気ですか?私は年末の師走フラグが立っています。少し前(この界隈ではだいぶ前っぽい)にYandex社からCatBoostが発表されました。 これが発表されたことは知っていたのですが、時間が取れなくて利用してなかったソフトウェアの1つで…

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…