Python

D級アンプボードと Raspberry Pi で音を鳴らしてみる

電子工作でセンサー等を使って何かを検知する仕組みを作った時に、結果を Slack に通知するなどはよくやるのですが、それ以外にも何か通知する手段を使いたいなと思い、アンプボードと小型スピーカーで音を鳴らせるようにしてみました。今回使ったアンプボー…

Amazon FreeRTOS のサンプルを実機で動かしてみる

もう結構前の話になってしまいますが、 re:Invent 2017で Amazon FreeRTOS が発表されました。 aws.amazon.com そもそも RTOS とはなんぞやというような説明はここでは割愛しますが、発表されてから気になっていたので今回は実機でチュートリアルに従ってサ…

Voice Kit + Dialogflow で来客受付システム

前回は Voice Kit と Web カメラで簡単な対話を行う処理を実装してみましたが、単語での回答に対してテキストマッチングするだけのものだったので、今回はもっと対話的な処理を行えるよう、 Dialogflow と組み合わせて会社の受付システムを想定したものを実…

Voice Kit で顔認識をトリガーにして対話する

前回は音声によるリクエストをトリガーにして、カメラ画像からの顔認識結果を返しましたが、今回は常に顔認識処理を続行し、顔が検出された場合はそれをトリガーにして簡単に対話する処理を実装してみたいと思います。 今回の実装内容 今回の具体的な実装内…

AIY Voice Kit + Web カメラで顔認識(誰かそこにいる?)

前回は Voice Kit + Web カメラで画像を表示しつつ、音声で写真を撮るということをやってみました。今回は Web カメラで撮っている画像の中に人がいるかどうかを顔認識によって判定してみたいと思います。 実装内容 今回の実装内容としては、スクリプトを実…

AIY Voice Kit + Web カメラで画像を表示しながら写真を撮る

前回は Voice Kit に Web カメラを接続して、音声で写真を撮れるようにしてみましたが、カメラにどんな映像が写っているかは写真を撮ってみないとわからなかったので、今回はカメラからの映像をデスクトップに映しつつ、写真を撮れるようにしてみました。デ…

AIY Voice Kit + Web カメラで音声で写真を撮る

前回は Voice Kit にブレッドボードとLEDをつないで音声で操作してみました。今回は手持ちの Web カメラを繋げて音声で操作して写真を撮ってみたいと思います。 Web カメラの接続 今回はUSB接続の Web カメラを使用します。まず接続前の USB デバイスの認識…

AIY Voice Kit にブレッドボードをつないで音声で LED を操作する

前回 Google AIY Voice Kit を購入してマニュアル通りに組み立ててサンプルプログラムを動かすところまでやってみましたが、やはり Voice Kit が Google Echo と違って面白いのは Raspberry Pi ベースであるからこその自由度ということで、今回はとりあえず…

AWS Greengrass のデバイスコードを Python版 SDK で実装してみる

前回は AWS Greengrass の公式ドキュメントで紹介されているロボットアームのシナリオをそのまま動かしてみましたが、手順をそのままトレースしただけだったので、内容の理解のためにも Python 版の SDK を使ってデバイス用コードを実装してみました。 具体…

Alexa Skills Kit + AWS IoT + Raspberry Pi + 赤外線LED でテレビリモコンを作る

Amazon Echo や Google Home では Fire TV や Chromecast 等と組み合わせることで音声でテレビを操作することができるようになりますが、今回は Amazon Echo と Raspberry Pi を連携させ、赤外線LEDなどと組み合わせることでテレビを操作してみたいと思いま…

Alexa Skills Kit でスロットを使ったスキルを実装する

前回は Alexa Skills Kit で、起動のリクエストを受け付けると決まった処理をしてレスポンスを返すだけのシンプルなスキルを実装してみましたが、今回はユーザからの入力値を使って処理をするスキルを実装してみたいと思います。具体的には、前回は順番決め…

Alexa Skills Kit でシンプルなカスタムスキルを実装

前回 Amazon Echo Dot の初期設定と既存のスキルを使ってみるところだけやりましたが、今回は自作のスキル(カスタムスキル)を実装してみます。Alexa では対話形式で複雑な処理を行うスキルも実装できますが、まず今回はシンプルに、スキルを起動したら結果…

SensorTag のデータを Amazon Polly で読み上げる

前回の記事では SensorTag で取得した値を AWS IoT に送信して、照度の値によって LED を点灯したり、SNSからメールを送信したりしてみましたが、今回はさらに Polly で照度の値を読み上げる音声ファイルを生成し、Raspberry Pi で再生する処理を追加してみ…

SensorTag のデータを AWS IoT から CloudWatch と LED で可視化する

以前の記事(TEXAS INSTRUMENTS の SimpleLink SensorTag CC2650 から BLE でデータ取得)で SensorTag から BLE でデータを取得できるようになったので、今回はそのデータを AWS IoT に送信し、Rule によって CloudWatch に送信して可視化してみたいと思い…

Raspberry Pi を AWS IoT に接続する

今回はRaspberry PiをAWS IoTに接続してみたいと思います。AWS IoTとは簡単に言うと、IoTデバイスをAWS上のプラットフォームに登録しておき、デバイスの状態を記録するとともに、複数のデバイス間やデバイスとAWSサービス間の通信のハンドリングを行うことが…

各種パラメータ最適化手法の実装(SGD, Momentum, AdaGrad, Adam)

今回は「ゼロから作るDeepLearning」で紹介されている各種パラメータ最適化手法を、書籍のPythonのサンプルコードをベースに、Rubyで実装してみました。 www.oreilly.co.jp 各手法のロジックについては書籍で説明されていますので割愛します。また、前回の記…

ニューラルネットワークの誤差逆伝播法による学習アルゴリズムの実装

今回も引き続き「ゼロから作るDeepLearning」をベースに、前回数値微分で実装した学習アルゴリズムの誤差逆伝播法版をRubyで実装してみました。計算の内容等は書籍を参照いただくとして、Rubyで実装した際のポイントを説明していきたいと思います。 www.orei…

ニューラルネットワークの数値微分による学習アルゴリズムの実装

今回も引き続き「ゼロから作るDeepLearning」をベースに、数値微分による学習アルゴリズムをRubyで実装してみました。 www.oreilly.co.jp 最初に書いておくと、今回の数値微分での実装は、実装はシンプルなもののその分処理に時間がかかり、手元の環境では繰…

ニューラルネットワークの推論処理

前回に引き続き書籍「ゼロから作るDeepLearning」をベースに、前回NArray配列として扱うようにしたMNISTデータに対して推論処理を行うニューラルネットワークを実装してみます。 www.oreilly.co.jp ニューロンの構成は下記の通りです。 入力層: 784 # 28 x 2…

MNISTデータセットをNArray配列として扱う

RubyからMNISTのデータセットを扱えるように、書籍「ゼロから作るDeepLearning」のコードをベースにMNISTのデータセットをNArray配列としてロードするコードを書いてみました。 www.oreilly.co.jp コード全体 まずはコード全体を掲載します。 require 'open-…

3層ニューラルネットワーク実装

書籍「ゼロから作るDeepLearning」で紹介されている3層ニューラルネットワークをRubyで実装してみました。 www.oreilly.co.jp サンプルコード全体 まずは実装したコード全体を掲載します。 # 3層ニューラルネットワーク実装 # 各層のニューロン数は下記の通…

NumPyとNumo::NArray, Matrixでの演算の比較

最近「ゼロから作るDeepLearning」を読み始めました。 www.oreilly.co.jp この本ではプログラミング言語としてはPythonを使用していて、配列や行列の演算にはNumPyが使われています。第1章ではNumPyでの基本的な演算について説明されているのですが、その内…

ベイズ推定による回帰分析のコード

今回は下記書籍のベイズ推定による回帰分析のコードを Ruby で実装してみたいと思います。今回で下記書籍のコードの置き換えは終了です。 www.amazon.co.jp サンプルコードはこちらで公開されています。 github.com 単位行列の生成 Python版では numpy.ident…

ベイズ推定による正規分布の推定のコード

今回は下記書籍のベイズ推定による正規分布の推定のコードを Ruby で実装してみたいと思います。 ITエンジニアのための機械学習理論入門 https://www.amazon.co.jp/IT-ebook/dp/B016Q22IX2/ サンプルコードはこちらで公開されています。 github.com スクリプ…

混合ベルヌーイ分布による手書き文字分類のコード

今回は下記書籍の混合ベルヌーイ分布による手書き文字分類のコードを Ruby で実装してみたいと思います。 ITエンジニアのための機械学習理論入門 https://www.amazon.co.jp/IT-ebook/dp/B016Q22IX2/ サンプルコードはこちらで公開されています。 github.com …

k平均法による画像の減色処理のコード

今回は下記書籍のk平均法による画像の減色処理のコードを Ruby で実装してみたいと思います。 ITエンジニアのための機械学習理論入門 https://www.amazon.co.jp/IT-ebook/dp/B016Q22IX2/ サンプルコードはこちらで公開されています。 github.com 画像ファイ…

ロジスティック回帰のROC曲線のコード

今回は下記書籍のロジスティック回帰のROC曲線のコードを Ruby で実装してみたいと思います。 ITエンジニアのための機械学習理論入門 www.amazon.co.jp サンプルコードはこちらで公開されています。 github.com データセットの更新 Python版では計算結果の確…

ロジスティック回帰とパーセプトロンの比較コード

今回は下記書籍のロジスティック回帰とパーセプトロンの比較のコードを Ruby で実装してみたいと思います。 ITエンジニアのための機械学習理論入門 https://www.amazon.co.jp/IT-ebook/dp/B016Q22IX2/ サンプルコードはこちらで公開されています。 github.co…

パーセプトロンによる二項分類のコード

今回は下記書籍のパーセプトロンによる二項分類のコードを Ruby で実装してみたいと思います。 ITエンジニアのための機械学習理論入門 https://www.amazon.co.jp/IT-ebook/dp/B016Q22IX2/www.amazon.co.jp サンプルコードはこちらで公開されています。 githu…

推定量の一致性と不偏性の確認コード

今回は下記書籍の推定量の一致性と不偏性の確認のサンプルコードをRubyで実装してみたいと思います。 ITエンジニアのための機械学習理論入門 | 中井悦司 | 工学 | Kindleストア | Amazon サンプルコードはこちらで公開されています。 github.com 算術平均メ…