chakokuのブログ(rev4)

テック・コミック・DTM・・・ごくまれにチャリ

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

2017は何をするか

2017に集中したいこと AI:作りかけているNNを最後まで仕上げる、俺NNをいろんな場面でのツールとして使えるようにする ニューロサイエンス:昔買って中途半端になっている脳波計測装置を使ってマインドフルネスの活動中の脳の状態を測る。FFTとか上記NN等で…

ロールケーキを作る

家族の要望でロールケーキを作った。新しいオーブンになってから初めて焼いたので途中かなり変になった。最終的には仕上がったけど反省点も多い。 スポンジの材料 卵3(今回は186g) 砂糖70g 牛乳 大1 小麦粉50g クリーム等 生クリーム 200cc 砂糖 大1.5 予…

DoCoMo音声合成試作(NTT版)

前回HOYA版を手抜きの英文で音声合成APIを試したけど、NTTアイティ版だといろいろエラーが出るというコメントを頂いたので、、NTTアイティ版を使ってみた。また、今回は日本語(漢字文字列)を使って音声合成してみた。漢字コード体系をutf-8に整えるのに、S…

シフォンケーキを焼いた

材料はいつも通りの以下 卵黄3 砂糖40g サラダ油 40g 湯 80cc (40℃ぐらい) 小麦粉 80g バニラビーンズ メレンゲ: 卵白3 砂糖50g 焼き: 予熱200℃、焼きは180℃、35分(の予定が33分で中断) 卵黄、小麦粉等(メレンゲ以外)を混ぜ終えた状態。ちょっと緩めに…

昼夜連続運転させようとsakura VPSを試行中、一番安い512MBコースでは全然メモリ足りず

夜間PCを連続で走らせるとやかましいし、自分が外出中にヨメサンがPCをぶちっと切ったりもする。そこで、VPSかクラウドで連続稼働させられないか検討。sakura VPSの一番安いコースが月額500円ぐらいで500MBという契約があり、これを試してみた。。結…

バックプロパゲーションの前に、微分をやりなおす

しこしこと取り組んでいるDLfS本ですが、数値的微分によるSGDはまぁこんなものと思い、次はバックプロパゲーションとその前段階の自動微分(本では計算グラフと表現されていますが、自動微分という分野らしい)になります。高校数IIIで微分が始まり、自分と…

【DLfS】俺NNの学習状況→10時間稼働でaccuracy:0.4〜0.5

DLfS本を勉強しながら、数値的微分による勾配法で俺NNを実装して学習させています。数値的微分による勾配降下法はアルゴリズムが理解しやすく簡単に実装できる反面、時間がかかるのはしょうがない。それは十分承知の上とはいえ、おおよそ10時間ぐらい走ら…

【DLfS】俺NNに対してMNISTデータを使って学習させてみる→めちゃくちゃ時間かかる

俺NNのデバッグが終えたと判断して、MNISTデータを使って学習させてみた。使ったネットワーク構成はDLfS通りで、2層で、[784,50,10]とした。データは10パターンを1セットとして、一回学習するごとに次の10パターンを使って勾配での学習(gradient_desce…

【DLfS】俺NNの動作がおかしいのでデバッグ..

簡単なネットワークでは学習したが、なぜかBiasが修正されない。これはまぁ単純なミスだろうから後からデバッグするとして、、バッチ実行させたところ、出力段のソフトマックス関数がバッチに対応してないことが判明。これはDLfS版の関数、softmax(P69)をそ…

【DLfS】めちゃくちゃ単純なネットワークでデバッグ→4千回学習すると正解を出す

MNISTのデータを使ったテストではまともに動いているように思えなかったのでめちゃくちゃ単純な2層ネットワークを作ってテストした。入力が[1,0]の場合は正解が[1,0]、入力として[0,1]の場合は正解が[0,1]で試した。今回はバッチ実行等はしておらず、2つの…

【DLfS】自分の好みでNNを実装、しかし学習がおかしい

DLfSの「4.5章 学習アルゴリズム」のアルゴリズムを踏襲しつつ、自分の好き勝手な実装方法で学習機能(数値微分による勾配降下法)を持つNNを作成した。エラーなしに走るには走るけど、相変わらずいろんな入力に対して同じ答えしか返さない。。しかも、誤差平…

【DLfS】よく理解できなかったサンプルコード→この実装はちょっとルール違反では!?

交差エントロピー誤差(P89)等、完全に数式の背景を理解できない部分もあったがなんとかニューラルネットの勾配(4.2.2 P109)まで読み進めた。で、、Pythonの実装で全く理解できない箇所に出くわした。それは、、P111の以下の実装 def f(W): return net.loss(x…

【DLfS】学習しない俺ニューラルネットでMNISTデータを認識させた→正解率10%なぜなら。。

例によって、DLfS本(ゼロから作るDeep Learning)で勉強しながら、学習しない俺ニューラルネットを組んで、MNISTデータを認識させてみた(DLfS本の3.6.2(P75))。ニューラルネットの重みづけは単なる乱数で設定した。バイアスも同様。結果、どんなデータを入…

fostexのスピーカーボックス(エンクロージャー)を購入、スピーカを組み込み

最初はBOSEか何かのスピーカセット買おうかと思っていたけど、結構高いし、評価もまちまちなので、試聴せずに買うのはまずかろうと思った。そこで、、少し調べるとfostexのエンクロージャが非常に安く売られているのを知った。 普段PCでの音楽再生はヘッドフ…

無料音楽サービス;Spotify(free)で寝られない。。

TVで広告付き無料音楽サービスSpotifyの日本上陸というニュースをやっていて、気になったのでクーポンを申し込んでいた。つい先日クーポンメールが来たので早速使ってみた。 無料の前提は時々差し込まれる広告を試聴することによるものなんですが、提供され…

【DLfS】ゼロから作るDL;MNISTデータを読み込んで表示させるサンプル

学習しない俺ニューラルネットができたところで、、次は認識結果テストだ。 DLfsでは、MNISTを使って認識率の算出を行っている(学習済みのネットワークデータも用意されていて、それを使うと認識率が90%だったか)。あらかじめ用意されたMNIST読み込みラ…

【DLfS】3.4章、forwardのみのニューラルネットを実装

ゼロから作るDeep Learning、3.4.3章 3層ニューラルネット実装まとめ(P65) 昔、スクラッチでニューラルネット(逆伝搬で頓挫)を作ってみたことがあり、その時はnumpyを使わなかったので行列計算はループ回して演算していました。numpyの行列演算ライブラリを…

【DLfS】3.2章、3種類の活性化関数を学ぶ

ゼロから作るDeep Learningでは、3種類の活性化関数が紹介されている(3.2章 P44) 1. シグモイド関数 2. ステップ関数 3. ReLU(Rectified Linear Unit)本通りに実装してpyplotでグラフ化してみた #!/usr/bin/python3 import numpy as np import matplotlib.p…

【DLfS】2章パーセプトロンを学ぶ

「ゼロから作るDeep Learning」の2章はパーセプトロンで、入力を重み係数で加算して出力を決める手法の説明。AND,OR,NAND,XORについてpytonで実装。以下は実装例(ほとんど本のままですが、if文はちょっと変えています) #!/usr/bin/python3 ################…

ゼロから作るDeep Learning【DLfS】取り組み、Cygwin環境にPython3と各種パッケージを導入

積極的にPython3Xを使う理由が無かったので普段はPython2Xを使っていた。ゼロから作る(以降、DLfs(DeepLearning from scratchとか風)ではPy3なので、そっちを入れる。Pythonが動く環境はいろいろだけど、Cygwinを使うことが多いので、Cygwin環境でCygwinのSe…

ゼロから作るDeep Learningを購入

DeepLearningがいろんなところで取り上げられていて、よく講習会等にも参加した。DeepLearningのフレームワークとして、Caffe、TensorFlow、Chainer等があって、それぞれの使い方もいろんなサイトで紹介されているし、情報処理学会のセミナーでも、あれをこ…

EPSONのトレーニングウオッチSF-850を買った。。

普段全く運動していない、健康診断でいろいろ言われる、ヨメハンが歩き志向でタニタの歩数計買った、等々が背景となって、GPS+心拍計が一つになったエプソンのSF850を買った。最初はガーミンのForeAthlete 235Jが欲しかったけど、サイズがデカすぎて派手め…

チキンカレーを作る

インド料理が好きだけどそう何度も食べに行くわけにはいかない。できたら自宅で作りたい。だがしかーし、香辛料の香りがきつくてヨメサンから「家では作ってくれるな」と言われている。幸い今日はみんなお出かけで自宅には自分ひとり。。こうなったら、こっ…

PiZeroで録音する

音声認識させるのを目標として、、次は録音してみる。 まずは録音・再生用デバイスの確認 root@raspberrypi:~# arecord -l **** List of CAPTURE Hardware Devices **** card 1: U0x41e0x30d3 [USB Device 0x41e:0x30d3], device 0: USB Audio [USB Audio] S…

Node-REDでLチカ

PiZeroで音声認識をさせようと思っていて、開発のベースはNODE-Red + WebAPIと考えています*1。また、GPIOもいろいろ操作したいと思っており、まずはピン番号等を確認。gpioコマンドを使うと、ピン名が一覧で表示され、かつ、設定状態も表示されるので設定間…

今さらながら、、PiZeroでLチカ→おおハマり→原因はハンダをケチっていたから

Node-REDのネタとして、次は音声認識でPiZeroを操作したいと考えており、音声の開始をボタンでやらせようと考えている。本当は無音かどうかを判断して、音声が入力された時に音声データを切り出して音声認識APIを叩くのが理想だけど、無音判断と音声データ切…

DoCoMoの音声合成APIを活用して読み上げ品質を向上させる

前回、お手軽にパッケージインストールで音声合成させて、Twitterの読み上げをさせていたが、組み込みパッケージ版だとやっぱりイントネーションが少し不自然で聞き取りにくい。今後音声認識もさせたいと思っており、DoCoMoのAPIを使ってみることに。しかし…

お絵かき講座にならってマンガの顔を書いてみた

自分はマンガ漬け(Kindleのお試し本)の毎日ですが、できたら描いてみたいとも思っています。といっても自己満足の世界ですが。。ただ、どうやって勉強したらいいのかすら分からず、デッサン本とか買ったけど、あまりに雲の上で自分のスキルとまったく噛み…

お決まりコース、ラズパイ+USBカメラ

Pi Zeroを動かしてみて、音が出たら次は画像だというわけで、、家にあるUSBカメラを取り付けてみた。使ったのはLogiCoolのWebカム(C310)。WebカムをUSBにさしてPi Zeroをブート。 左は現在の構成。PiZeroのUSBポートにUSB HUBをさしてUSBポートをN増し、そこ…

Pi Zeroに喋らせてNode-REDの部品にする

Pi Zeroでお手軽に喋らせる方法として、DoCoMoとかのWebAPIを使う方法(他力に頼る)と、Pi上のLinuxに音声合成エンジンを乗せる方法が考えらえる。WebAPI経由の場合、利用制限があるものの、多分高品質な合成が可能と思われる。ただ、API呼び出すのに作法が…