サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
買ってよかったもの
nonbiri-tereka.hatenablog.com
皆さんこんにちは お元気ですか?私はぼっちです。 本記事は「カノジョできない機械学習エンジニア」の最終日です。 qiita.com 本日の話の流れは次のとおりです。 はじめに カノジョがいないことに対する解決法 カノジョについての考察 カノジョとは 理想のカノジョとは 理想のカノジョ作成方針 カノジョを作成する。 Neural Conversational Model 概要 構成解説 実装してみた データの構築 Step1 探す Step2 存在しない言葉 Step3 名前 学習する Slack Botで実用化する 前準備 Botをコントロールするコード 実際にどうなったのか 最後に 参考文献 はじめに カノジョがいなくて寂しい。こんなクリスマスを送る男性の皆様は結構いらっしゃるのでは ないでしょうか(と信じたい)。 カノジョを作るために、世間でよく言われるのは「行動が大事だ」ということで
皆さんこんにちは お元気ですか?私は元気です。 今日はCppUnitについて解説していきたいと思います。 CppUnitとは? C++の単体テストを自動化するライブラリです。 インストール Homebrewを使いましょう。 brew install cppunit CppUnitの使い方 サンプルコード 今回、Functionの内部が正確かどうかチェックします。 #include <cppunit/BriefTestProgressListener.h> #include <cppunit/CompilerOutputter.h> #include <cppunit/extensions/TestFactoryRegistry.h> #include <cppunit/TestResult.h> #include <cppunit/TestResultCollector.h> #inclu
皆さんこんにちは お元気ですか。私は元気です。 本記事はPythonのアドベントカレンダー第6日です。 qiita.com 本日はPythonを使った音楽解析に挑戦します。 偶然にも音楽解析に便利なライブラリを発見したので、試してみたいと思います! 音楽解析 librosa librosaとは 音楽を解析してみた。 音楽を取得する。 データ読み込み 音楽情報を取得する。 時間の計算 ピッチやテンポの計算 スペクトラム分析をやってみる。 音楽特徴量を取得する。 音楽を加工する。 時間の引き伸ばし、短縮 要素の抽出 打楽器要素の抽出 ハーモニック要素の抽出 音楽の保存 参考文献 音楽解析 本日の挑戦は特徴量抽出と一部の音楽の加工です。 基本的な音楽ファイルの読み込みや特徴量抽出、音楽の加工分離です。 音楽解析に便利なライブラリ、librosaを紹介します。 librosa librosaとは
皆さんこんにちは お元気ですか?私はフリーダム生活です。お盆休み近くて少々嬉しい 本日はネットワークXについて NetworkXはグラフやネットワーク解析のライブラリです。 実はにこにこタグネットワークでもつくろうかなと考えていたりいなかったりということで どうプログラムを組もうかの予行演習だったりします。 インストール 毎度おなじみpipを使います。 sudo pip install networkx 例題 import networkx as nx import matplotlib.pylab as plt G = nx.Graph() G.add_node("a") G.add_nodes_from(["b","c"]) G.add_edge("a","c",weight=3) G.add_edge("b","c",weight=5) pos = nx.spring_layout(
皆さんこんにちは お元気ですか。私は元気です。 さて、今日はパケットを覗いてみました。 題材 今回の題材はこちらです。 アニメ化をも決まっているブラウザーゲーム「艦隊これくしょん」略して「艦これ」です。 「艦隊これくしょん〜艦これ〜」 DMMオンラインゲーム公式ページ どうしてこれを選んだのかといいますと・・・・ 何やらネットでは Kancolle 艦これの通信内容にポカーンとした話 - Togetterまとめ 【艦これ】艦これのクライアント-サーバ間の通信がザルすぎてやばい? 他Twitterまとめ : あ艦これ ~艦隊これくしょんまとめブログ~ なんか脆弱だ。と言わんばかりの報告が…。 そこで、WireSharkを使って、実際に覗いてみましょう。(WireSharkって何という人はこちらから) 注意事項 私は不正な行動を奨励しているわけではございません。 この手法を使って悪用しないでく
皆さんこんにちは お元気ですか。最近、Chainer便利でびっくりしたような頃合いです。 頻繁に更新することで有名なChainerですが、久々にupgradeすると以前よりも シンプルなタスクについて、簡単に学習ができます。 Trainer Chainer version 1.11.0よりTrainerと呼ばれる機能が実装されています。 以前まで学習用バッチ処理を自前で書くようなことが 必要でしたが、これを使うことによってバッチ処理を書く必要がなくなります。 実際の機能としてはある処理をhockしたり、グラフを出力したり レポートを表示したりと学習中に確認したいグラフは沢山あります。 それらのグラフを可視化したいといったことは往々にしてあります。 Trainerの基本的な使い方 Trainerを使うと、Progress Barやlogを自動的に吐き出すことができます。 通常のモードでは、T
皆さんこんにちは お元気ですか?一人で箱根温泉りらっくすできました。 Keras.jsが出て、遂にKerasをjavascriptを扱えるようになりました。 (これ公式なのかどうかが非常に不安で、きっと違う) ということで実際に動かしてみようと思います。 Kerasについて Keras(Python) Keras-js ディレクトリ構成 Demoを動かしてみよう Clone サーバの起動 カスタマイズポイント Model もしくは、Sequentialの構成の出力 hdf5として出力したファイルを変換する。 javascript上でのkerasのNeural Networkの宣言 データ形式 予測 感想 Kerasについて Keras(Python) KerasはDeepLearningのライブラリです。 Theano、TensorFlowをバックエンドとして動作し、 切り替えることが可能
皆さんこんにちは お元気ですか。ラーメン食べたくなってきた。 私自身は自他共に認めそうなPython2.7.x userのつもりなのですが、 PyConJP2016でAndrey Vlasovskikh氏の講演でType Hints(型ヒント)の話があって Python3.5すごいとか思いながら聞いてました。 ぶっちゃけ型ヒント何か知りません。 ということで、今回はPythonにおけるType Hintsを調べてみました。 Type Hintsについて そもそもType Hintsってなに? 型に対するアノテーションです。具体的には実例を見るとおそらくわかりやすいです。 PEP484に規定されたType Hintsを提供するらしく、Python3.5で導入されています。 何のことやらわからないので、早速読んでみようと思ったら意外に長かったので読めておりません。 www.python.org
皆さんこんにちは お元気ですか?私は元気です。 Pythonにおける高速化手法を掲載してみます。 簡単なコード並びに索引のような感じで引けるようなイメージで作成しました。 本日の目次です。 Pythonにおける高速化の必要性 Pythonの高速化 高速化の手順 Profiling 基本的な条件 計測コード Pythonの基本的な書き方部分 rangeよりxrangeを(Python2.7) リストの生成 文字列結合 Import文のコスト 関数呼び出しのコスト ドットを避ける yieldを使う Numpyに関するTips Numpyを使用して基本演算を高速化する Numpyの要素にアクセスする演算をしない Numbaで手早く高速化 その他高速化ツール Cython Dask PyPy 感想並びに展望 参考文献 Pythonにおける高速化の必要性 PythonはC++やJavaと比較すると非
みなさんこんにちは お元気ですか。私は元気です。 Jupyter Notebookの次世代版、JupyterLabを紹介したいと思います。 ※7/17 誤字脱字、一部画像を修正 JupyterLab JupyterLabとは JupyterLabのインストール Jupyter Labの凄い点 1.画面分割が可能 2.タブによる画面切り替え 3.ファイルの操作機能 4.コマンドの検索機能 5.csvを綺麗に表示する 6.Widgetが1度のみの表示がされる。 感想 JupyterLab JupyterLabとは JupyterLabはJupyter Notebookをベースに拡張したものである。 所謂IDEと呼ばれるツールと同様である。 現在はAlpha版がリリースされています。 ※Scipy2016のカンファレンスビデオはこちらにあります。 JupyterLab: Building Blo
皆さんこんにちは お元気ですか。私は元気です。 日本ではあまり見られないdlibと呼ばれるライブラリの画像処理ライブラリを 使ってみたいと思います。 dlibについて dlibとは 公式サイト:dlib C++ Library Dlib is a modern C++ toolkit containing machine learning algorithms and tools for creating complex software in C++ to solve real world problems. It is used in both industry and academia in a wide range of domains including robotics, embedded devices, mobile phones, and large high perfo
皆さんこんにちは お元気ですか。私は修論という壁に殺されそうでございます。 最近は画像日和なので、今日はScikit-Imageを使ってみましょう。 Scikit-Imageとは 画像処理に関するアルゴリズムを集めたライブラリです。 無料で扱うことができて、ボランティアによる作成だそうな。(Homepage Topより) 特徴量抽出とかでHogやLBPなどを取得することができます。うん、なんか便利 因みに類似ライブラリにはOpencvがありますが、ただ特徴量を取りたいときとかはこちらのほうが便利な気がしそうです。(僕は殆どOpencvを使うので、このライブラリは使ったことがない) インストール Pipを使う 毎度おなじみpip先生 sudo pip install scikit-image トラブルシューティング 因みに以下のようなエラーが出る可能性があります(私は出ました) >>> fr
皆さんこんにちは お元気ですか。私は元気です。 本日はBandit Problemと呼ばれる問題を強化学習で解いてみます。 Bandit Problemについて 解き方 今回解いた問題 epsilon greedy algorithm Softmax Tempature UCB 感想 参考文献 ソースコード Bandit Problemについて Bandit Problem(和名:バンディット問題)は 当たる確率の異なるスロットマシンから最も大きい報酬を得るには どうすればよいか?といった問題です。 以下のようなスロットがあったとします。 しかし、実はスロット達、あたる当たる確率が異なるスロットなのです。 そのようなスロットの中で最も報酬を高くするようスロットを選んでいくにはどうすればよいかといった問題を 解くことができます。 つまり、どうすれば大金持ちになれるかわかるということです、もち
皆さんこんにちは お元気ですか。私は元気です。 今日は強化学習の勉強がてらメモを書いてみました。 個人的には最近、注目している分野で、ゴールがあるような(クラス分類やRegression) 機械学習と異なり、汎用的に色々問題が解けそうだからというのが理由です。 (なんか色々語弊を生みそう) 間違っていれば教えて下さい。 強化学習 強化学習における要因 Policy Reward Function Value function model of the environment 強化学習で解ける問題 参考文献 強化学習 強化学習はある環境ないにおけるエージェントが、 現在の状態を観測し、取るべき行動を決定する問題を扱う 機械学習の一種 by wikipedia この中で登場するのは、「状態」と「行動を決定する」といったところでしょうか。 つまり、「ある状態の時に、どう行動をするか」といったこと
本日はさくっとSensorBeeを使ってみました。 皆さんこんにちは お元気ですか。連休でほっとしています。 What is SensorBee Stateful Expressive LightWeight Install Go(Mac) SensorBeeのインストール Tutorial データの取得と初期化 サーバの起動 BQN はじめに SELECT文 WHERE文 GROUP BY ストリームの作成 参考文献 今回はSensorBeeと呼ばれるライブラリを紹介します。 Machine Learningまでは流石に長過ぎるので、word countまでやってみました。 What is SensorBee sensorbee.io SensorBeeは特徴として以下の内容を兼ね揃えます。 Stateful 機械学習に有用な構造化されていない情報を取得し、ユーザが定義した機械学習のモデ
皆さんこんにちは お元気ですか。私は元気です。 今日は前回の以下のページからだいぶ更新が立ち、Kaggleのコンペ的にも多くの開催がありました。 そこで、新しいページでリンクを纏めてみました。 中にはインタビューやフォーラム、githubなど様々なものが混合しているのはお許し下さい。 nonbiri-tereka.hatenablog.com Prudential Life Insurance Assessment 1st - 1st place solution - Prudential Life Insurance Assessment | Kaggle 2nd - Solution -- 2nd place - Prudential Life Insurance Assessment | Kaggle Homesite Quote Conversion 3rd- Homesite Q
皆さんこんにちは お元気ですか。私は元気です。 今日は珍しくNeural Networkを使っていく上での失敗経験について語ります。 学習の時に案外、失敗するのですが、だいたい原因は決まっています。そう大体は・・・ ということで、今回は失敗の経験、アンチパターンのようなものを書こうと思います。 Trouble1:学習時にNanを叩き出す。 原因1 cross-entropy誤差を使っている。 原因2 結果が小さすぎて、0と認識される。 原因3 重みがあらぬ方向へ学習する。 Trouble2:収束しない 原因1 学習率が高すぎる 原因2 学習率が低すぎる 原因3 適切な誤差関数ではない 原因4 活性化関数を誤った 原因5 そもそも入力が誤っている Trouble3:Validation Scoreが低い 原因1 過学習しているにも関わらず、気づかなかった。 原因2 与えるデータとラベルの1対
皆さんこんにちは お元気ですか。私は元気です。 実は私、Chainerでのfor文でLinkとして作成できることを知らず、 今の複雑なネットワークにChainer使いにくいと思っていましたが、以下にサンプルがあって こうすれば複雑なネットワークも組めるんだ。みたいなところがわかりました。 Deep Residual Network definition by Chainer · GitHub ChainerのLink構造について グラフ構造を容易にかくには 部分構造を構築する。 ChainerのLink構造について 以下のスライドにChainer version1.5のチュートリアル解説があります。 このうち今回で必要な情報はChain、Link、Functionが何を示しているのかです。 Chainerチュートリアル -v1.5向け- ViEW2015 from Ryosuke Okut
皆さんこんにちは お元気ですか。プレゼン資料作るのって結構めんどくさいですね。 さて、本日はエラーについて Pythonにも様々なエラーがありますがだいたいは決まっています。 そんなエラーの原因をご紹介します。 ImportError: No module named そんなモジュールありません(今回はインポートでやってみました) >>> import ssa Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: No module named ssa list index out of range リストの参照先が範囲外です。 >>> list = [] >>> list[2] Traceback (most recent call last): File "<stdin>"
皆さんこんにちは お元気ですか。私は元気です。 今日はPythonにおける便利記法を書いてみます。 他の言語しか使ったこと無い人もぜひ ※1/25間違いかと思われる箇所の加筆修正を実施 リストに関するイテレーション enumerate(インデックスとオブジェクトのループ) zip(同時に2つのオブジェクトでループ) yield(途中で一旦返す) for-else(forで途中で停止しない場合の条件) リスト内包表記 Collections Counter default dict(辞書のデフォルト値設定) Sort(ソート) sorted if文の書き方 Fileに関する処理(with) in(オブジェクトに存在しているかどうか) 関数について 返り値を複数返す。 関数のオブジェクト化 参考文献 リストに関するイテレーション enumerate(インデックスとオブジェクトのループ) enu
皆さんこんにちは お元気ですか?暑いですね。最近 今までC++でOpenCvをいじっていましたが、今回はPythonから弄ってみましょう。 (使っているけど遅くて泣きそう) どうやって使うの? numpy入れたら勝手についてきます。 入れていなければ、Opencvはもちろん入れてください。 brew install numpy 確かUbuntuだと以下のモジュールが必要です。 sudo apt-get install python-opencv Example #coding:utf-8 import cv2 import numpy as np def readFile(filename): image = cv2.imread(filename) cv2.imshow('original',image) cv2.waitKey() def readCamera(): print fil
皆さんこんにちは お元気ですか。私は腹痛です。 エラーはコーディングしている時、環境設定している時、様々ありますね。 さすがにライブラリとかまで使っていると、もう見てられないぐらいコードやエラーの可能性が膨れ上がっています。 そこで、私の解決方法をご紹介したいと思います。 エラーを読み、理解しましょう。 当然ですが、エラーを読みましょう。 最近のコンパイラは優しいので自分でコーディングした時のミスは 優秀なコンパイラがエラーを出してくれます。 例えば…以下の様な関数があるとします。 #include <iostream> #include <string> using namespace std; int add(int a,int b){ return a + b; } int main(int argc, char const *argv[]){ string aa = 0232; a
皆さんこんにちは お元気ですか。私は元気です。 今日はPythonにおけるメモリ少なく使う方法を紹介したいと思います。 なぜ、そんな方法を書くに至ったか。それは、こんなエラーをしょっちゅう見ているからですね。 Traceback (most recent call last): File "lasagne_wheal.py", line 48, in <module> prediction = model.predict_proba(np.array(X_test)) MemoryError 画像処理を行っている人間ならよくやりがちかもしれませんが、 要はint8で持っている情報をfloatに変換してデータが膨れ上がったことによってメモリが 不足していることから発生しています。 Convolutional Neural Networkを大きな画像で実施しようとするとよく発生するのではないで
友利奈緒の皆さんこんにちは。 お元気ですか?私は元気です。 これは、友利奈緒アドベントカレンダー24日目の記事です。 www.adventar.org 今日は友利奈緒らしさについて追求していきます。 世の中友利奈緒を降臨させようとする方々は沢山いらっしゃると思います。 しかし、友利奈緒は既に降臨しているかもしれません。 そこで、友利奈緒らしさについて調査してみようと思った次第です。 (ええ、題材は自然言語処理ですがね。) データセットの集め方 インターネットから収集しました。無駄に頑張りました。 テキストにぱちぱちと貼ります。 まさかの、神が出現して驚いております。伏線でしょうかこれ。 github.com で何をするか? 発言傾向 まずは、友利奈緒の発言の傾向を見てみます。 どんな単語が多いか、純粋に見てみましょう。 全てのワードの中から発言傾向を探ります。 以下は全ての発言に対して、形
皆さんこんにちは お元気ですか。私は全然です。 Deep Learning 一言で言うとただの深層学習ですが、 作り手や用途によって構造が全然違います。 今回は逆引き辞典よろしく、Deep Learningの実装のリンク集を作ってみました。 今回はライブラリは問わず、掲載します。 Caffe、Theano(Lasagne)、Torch7、Chainerなんでもござれです。 後日、追記するかも・・・ Neural Network(Full Connected) Auto Encoder Auto Encoder Denoising AutoEncoder Convolutional AutoEncoder Convolutional Neural Network Convolutional Neural Network R-CNN Fast-RCNN Faster-RCNN Recurren
皆さんこんにちは お元気ですか。私は元気です。 ChainerのAdvent Calendar第16日目です。 DeepLearningのライブラリの比較を行ってみました。 Chainer Advent Calendar 2015 - Qiita ライブラリ紹介 Chainer chainer.org 日本製PFIが開発したライブラリ。個人的には書きやすくて結構好き。 時系列ニューラルネットワークが組みやすいことを売りにしている。 Tensorflow Googleが公開したライブラリ https://www.tensorflow.org/www.tensorflow.org Googleが公開したことで、評判のライブラリ。 やたらとニュースになるほど凄かったが、果たして他とくらべてどうなのか。 Lasagne github.com Theanoを基盤として書きやすくしたライブラリ Kag
皆さんこんにちは お元気ですか。私は元気です。 最近、ChainerのVersionが1.5へUpgradeしましたが… 従来までと異なり、GPUへの対応が大変です。 なぜ、大変になったか? Cythonへの対応 調べた限りだとCythonです。従来まではctypesを使って 行っていたのですが、ctypesはボトルネックとなっていたようです。 このボトルネックをCythonを使って解消したことから、発生している諸々のエラーです。 h5pyへの対応 あっさり解消できますが、外部ライブラリが必要になります。 これは学習済みモデルを保存する為に使われるようです。 基本コンパイルコマンド apt-get install libhdf5-dev sudo pip install -U chainer 失敗した人はハマった箇所を見てみましょう。以下に私がハマった箇所を記載していきます。 開発者のun
本日はTensorFlowの可視化機能を使ってみる。 皆さんこんにちは お元気ですか。私は元気です。 今日はTensorFlowの可視化機能を使ってみました。 TensorFlowって何ぞ?といった方はこちらの記事を御覧ください。 nonbiri-tereka.hatenablog.com まずは、可視化用のソースコードを準備しました。Tutrialで用いられているソースコードを少々いじり、 扱いやすいコードにしました。 https://tensorflow.googlesource.com/tensorflow/+/master/tensorflow/g3doc/tutorials/mnist/fully_connected_feed.py 可視化用ソースコード import tensorflow as tf import time import input_data import ma
今日は様々な箇所で賑わっているTensorFlowを使ってみました。 皆さんこんにちは。 お元気でしょうか。朝弱いと結構困りますよね。 TensorFlowが盛り上がってたのでつい書いてみました。 TensorFlowとは http://tensorflow.org/ http://download.tensorflow.org/paper/whitepaper2015.pdf (詳細にライブラリのことを知りたい人はこちらのpdfへどうぞ) TensorFlowはGoogleが開発したデータフローグラフを使用した数値計算ライブラリです。 グラフの各ノードは数値計算のオペレータを示し、エッジはデータの配列を示す。 desktopやserverなどでのCPU,GPU演算をシンプルなAPIで実現することが可能です。 開発者は、GoogleのBrain Teamの研究者、エンジニアです。目的は、機
次のページ
このページを最初にブックマークしてみませんか?
『のんびりしているエンジニアの日記』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く