Submit Search
Upload
【LT版】Elixir入門「第7回:Python/KerasをElixirから繋いでアレコレする」
•
10 likes
•
4,148 views
fukuoka.ex
Follow
データのパターンマッチと並行分散処理が強いElixirと、Python/Kerasによる機械学習を組み合わせると、ビッグデータ分析の強力なフレームを作れる、という内容です
Read less
Read more
Engineering
Report
Share
Report
Share
1 of 39
Recommended
laravelのiocコンテナについて
Iocコンテナについて
Iocコンテナについて
Akio Terayama
2013.03.02 CLR/Hでの発表資料です. http://clr-h.jp/Home/tabid/40/ModuleID/396/ItemID/30/mctl/EventDetails/language/en-US/Default.aspx
テスト駆動開発のはじめ方
テスト駆動開発のはじめ方
Shuji Watanabe
KMC春合宿2017
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
kiki utagawa
JJUG CCC 2017 Fall の LT 資料です。
JEP280: Java 9 で文字列結合の処理が変わるぞ!準備はいいか!? #jjug_ccc
JEP280: Java 9 で文字列結合の処理が変わるぞ!準備はいいか!? #jjug_ccc
YujiSoftware
スピーカー: ユニティ・テクノロジーズ・ジャパン 安原祐二・名雪通
C#×LLVM=アセンブラ!? 〜詳説・Burstコンパイラー〜
C#×LLVM=アセンブラ!? 〜詳説・Burstコンパイラー〜
UnityTechnologiesJapan002
2年ぐらい前の社内勉強会で使った資料。
イベント駆動プログラミングとI/O多重化
イベント駆動プログラミングとI/O多重化
Gosuke Miyashita
Erlang & Elixir Fest 2019で講演しました! 関数型言語ElixirによるIoT開発フレームワーク“Nerves”について,ライブデモをふんだんに交えながら日本の皆さまに共有させていただきました. https://elixir-fest.jp/ 最後にbig news!!があるので,ぜひご覧ください! https://swest.toppers.jp/keynote/ 誤記 P.27: fukuoka.exでのNerves Trainingは6/7ではなく7/7に開催しますm(_ _)m 講演概要: Nervesってご存知でしょうか? "Craft and deploy bulletproof embedded software in Elixir"のスローガンのもと,ElixirでIoTデバイスの開発を実現できるフレームワークです.Raspberry PiやBeagleBoneなどを対象として,数十MB程度の省メモリでElixirアプリの駆動を可能とします.mixツールに統合されたビルドシステム,GPIOやI2CなどIoTデバイス制御のための豊富なデバイスドライバ・ライブラリ,NervesHubを介したクラウド経由のセキュアなファームアップデート,Phoenixと連携したリアルタイム通信とデータ可視化と,そのエコシステムの完成度は目を見張るものがあります.本発表では,IoTシステム開発のライブデモを交えながら,Nervesの概要ならびに現状と目指しているところを紹介します. 発表者はLonestar ElixirConf 2019に参加してきました.Nervesのコア開発者からTrainingを直接受講してきて,多くのNerves技術者の発表を聴講して議論してきて,その動向に大いに衝撃を受けました.Austinで得てきたこれらの知見と経験について,日本の全てのElixir技術者の皆さまとこの技術を共有したいと思います.
Nervesが開拓する「ElixirでIoT」の新世界
Nervesが開拓する「ElixirでIoT」の新世界
Hideki Takase
Forkwell Meetup #3 https://forkwell.connpass.com/event/48147/
「速」を落とさないコードレビュー
「速」を落とさないコードレビュー
Takafumi ONAKA
Recommended
laravelのiocコンテナについて
Iocコンテナについて
Iocコンテナについて
Akio Terayama
2013.03.02 CLR/Hでの発表資料です. http://clr-h.jp/Home/tabid/40/ModuleID/396/ItemID/30/mctl/EventDetails/language/en-US/Default.aspx
テスト駆動開発のはじめ方
テスト駆動開発のはじめ方
Shuji Watanabe
KMC春合宿2017
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
kiki utagawa
JJUG CCC 2017 Fall の LT 資料です。
JEP280: Java 9 で文字列結合の処理が変わるぞ!準備はいいか!? #jjug_ccc
JEP280: Java 9 で文字列結合の処理が変わるぞ!準備はいいか!? #jjug_ccc
YujiSoftware
スピーカー: ユニティ・テクノロジーズ・ジャパン 安原祐二・名雪通
C#×LLVM=アセンブラ!? 〜詳説・Burstコンパイラー〜
C#×LLVM=アセンブラ!? 〜詳説・Burstコンパイラー〜
UnityTechnologiesJapan002
2年ぐらい前の社内勉強会で使った資料。
イベント駆動プログラミングとI/O多重化
イベント駆動プログラミングとI/O多重化
Gosuke Miyashita
Erlang & Elixir Fest 2019で講演しました! 関数型言語ElixirによるIoT開発フレームワーク“Nerves”について,ライブデモをふんだんに交えながら日本の皆さまに共有させていただきました. https://elixir-fest.jp/ 最後にbig news!!があるので,ぜひご覧ください! https://swest.toppers.jp/keynote/ 誤記 P.27: fukuoka.exでのNerves Trainingは6/7ではなく7/7に開催しますm(_ _)m 講演概要: Nervesってご存知でしょうか? "Craft and deploy bulletproof embedded software in Elixir"のスローガンのもと,ElixirでIoTデバイスの開発を実現できるフレームワークです.Raspberry PiやBeagleBoneなどを対象として,数十MB程度の省メモリでElixirアプリの駆動を可能とします.mixツールに統合されたビルドシステム,GPIOやI2CなどIoTデバイス制御のための豊富なデバイスドライバ・ライブラリ,NervesHubを介したクラウド経由のセキュアなファームアップデート,Phoenixと連携したリアルタイム通信とデータ可視化と,そのエコシステムの完成度は目を見張るものがあります.本発表では,IoTシステム開発のライブデモを交えながら,Nervesの概要ならびに現状と目指しているところを紹介します. 発表者はLonestar ElixirConf 2019に参加してきました.Nervesのコア開発者からTrainingを直接受講してきて,多くのNerves技術者の発表を聴講して議論してきて,その動向に大いに衝撃を受けました.Austinで得てきたこれらの知見と経験について,日本の全てのElixir技術者の皆さまとこの技術を共有したいと思います.
Nervesが開拓する「ElixirでIoT」の新世界
Nervesが開拓する「ElixirでIoT」の新世界
Hideki Takase
Forkwell Meetup #3 https://forkwell.connpass.com/event/48147/
「速」を落とさないコードレビュー
「速」を落とさないコードレビュー
Takafumi ONAKA
学生LT発表コンテンツ
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
Atsushi Nakamura
八進数と名機の命令コード・フォーマットの関係 Why Old men talk in Octal-code?
どうして昔の人は八進数でしゃべるのか?
どうして昔の人は八進数でしゃべるのか?
たけおか しょうぞう
グループ内の個人用PCにローカル環境構築するためのハンズオン資料です、この先クラウドメインになったらまた講習資料つくります
WSL2+docker+JupyterとVS Codeリモート環境の構築
WSL2+docker+JupyterとVS Codeリモート環境の構築
Saito5656
Pythonには文字列やリストなど、長さをもつオブジェクトがあります。長さを手に入れるには、文字列なら、name.length ではなく len(name) のようにlen関数を使います。len関数はどうやってnameに入っているオブジェクトの長さを手に入れているのでしょうか。if文にはTrue/Falseとなる条件式を指定しますが、それだけでなく文字や数字、自分で作ったデータ型も渡せます。if文はどうやって与えられたオブジェクトがTrueなのかFalseなのかを手に入れているのでしょうか。 この発表では、Pythonのプログラムがどうやって必要な情報を手に入れているのか、また、自分で実装するときにどう実装すればlen()やif文やfor文に指定できるのかを説明します。
Pythonはどうやってlen関数で長さを手にいれているの?
Pythonはどうやってlen関数で長さを手にいれているの?
Takayuki Shimizukawa
近藤豊さんの著書「ROS2ではじめよう次世代ロボットプログラミング」を輪講形式で読み進めていくROS2勉強会@別府の資料です. 本資料はそのうち第7章Pythonクライアントライブラリrclpyについて紹介しています. 公開されているソースコードのうち本章の部分のみソースコード等を一部変更して公開しています. 本家リポジトリ: https://github.com/youtalk/get-started-ros2 7章部分のみ抜き出して変更を加えたもの: https://github.com/AtsukiYokota/ros2_examples
ROS2勉強会@別府 第7章Pythonクライアントライブラリrclpy
ROS2勉強会@別府 第7章Pythonクライアントライブラリrclpy
Atsuki Yokota
例外設計における大罪 Jun 27, 2012 @ java-ja
例外設計における大罪
例外設計における大罪
Takuto Wada
2/28社内勉強会用
Akkaとは。アクターモデル とは。
Akkaとは。アクターモデル とは。
Kenjiro Kubota
株式会社 ゼンアーキテクツ 大平かづみ GitHub 上に展開される開発環境をブラウザや Visual Studio Code から接続し、あたかも手元で作業しているかのように利用できる GitHub Codespaces。手元のマシンスペックに影響されず、プロジェクトで共通の環境をオンデマンドで利用できるため、コーディングからレビュー、デバッグに至るまでシームレスに作業することができます。実際に GitHub Codespaces を用いて開発を進めたプロジェクトを例に、デモを交えてご紹介します。
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
日本マイクロソフト株式会社
C#でわかる こわくないMonad 2017.5.27 岐阜Sharp #gifsharp #fsharp
C#でわかる こわくないMonad
C#でわかる こわくないMonad
Kouji Matsui
アプリ「ニュースパス」をマイクロサービスで開発してみた泥臭い体験談です。
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
Japanese version only Agile Tour Osaka 2011 講演資料
Head First Inception Deck
Head First Inception Deck
Naoto Nishimura
Boost.Logとfluentdで始めるログ活用術
Boost.Logとfluentdで始めるログ活用術
Boost.Logとfluentdで始めるログ活用術
Toshiki Teramura
2014年6月に開催されたSSII2014(http://www.ssii.jp/)のチュートリアル講演用資料です. 使用したコード等はこちら. https://github.com/norishigefukushima/SSII2014 アブストラクト 「CPUのクロック数が年月とともに増加する時代は終わり、プログラムの高速化をCPUの性能向上に任せることのできるフリーランチの時代は終わりを迎えています。しかしムーアの法則はいまだに続いており、CPUはマルチコア化、SIMD化という形で高性能化が続いています。本チュートリアルでは、計算コストの高い画像処理を高速化するために、CPUの能力をあますことなく引き出す、マルチコアプログラミング、SIMDプログラミングを解説します。」
マルチコアを用いた画像処理
マルチコアを用いた画像処理
Norishige Fukushima
社内勉強会資料
SQLアンチパターン - ジェイウォーク
SQLアンチパターン - ジェイウォーク
ke-m kamekoopa
「モノタロウの1900万商品を検索するElasticsearch構築運用事例」として、2022年10月26日に「第50回 Elasticsearch 勉強会」にて発表した内容の資料です。 モノタロウの商品検索の仕組みや、取り入れた工夫について説明しています。
モノタロウの1900万商品を検索する Elasticsearch構築運用事例(2022-10-26 第50回Elasticsearch 勉強会発表資料)
モノタロウの1900万商品を検索する Elasticsearch構築運用事例(2022-10-26 第50回Elasticsearch 勉強会発表資料)
株式会社MonotaRO Tech Team
PostgreSQLのロール管理とその注意点 (Open Source Conference 2022 Online/Osaka 発表資料) 2022年1月29日 NTTデータ 技術開発本部 先進コンピューティング技術センタ 加藤 慎也
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
NTT DATA Technology & Innovation
IIJ社内で行われている新人向けハンズオン勉強会「IIJ Bootcamp」で行われた "DevOps Overview" です。 開発者と運用者がうまくいくには。効率的な時間の使い方。自動化の話。Kubernetesなどを紹介します。 ▼IIJ Bootcampについて IIJ Bootcampとは、様々な技術に触れることを目的としたIIJ社内で行われている新人向けハンズオン勉強会です。 https://iij.github.io/bootcamp/ 各技術が誕生した経緯・歴史、ほかの技術と比較といった知識を得るためのきっかけとして、さまざまな言語・フレームワーク・ツールに触れて実際に動かすハンズオンを行っています。 カリキュラムにはハンズオンだけでなく、「overview」として技術ジャンルの全体像や歴史などを紹介する回も設けています。
DevOps Overview
DevOps Overview
IIJ
2022年2月24日に開催された「製造業向け量子コンピュータ時代のDXセミナー~最適化の中身を覗いてみよう~」の当日資料です。
製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~
製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~
Fixstars Corporation
JJUG CCC 2018 Springの登壇資料です。
Spring Boot on Kubernetes : Yahoo!ズバトク事例 #jjug_ccc
Spring Boot on Kubernetes : Yahoo!ズバトク事例 #jjug_ccc
Yahoo!デベロッパーネットワーク
株式会社クララオンラインの社内勉強会(LT会)の資料です。 今回は「Confluence&JIRA」がテーマでした。 "5分で出来る!イケてるConfluenceページ" 吉村真輝
5分で出来る!イケてるconfluenceページ
5分で出来る!イケてるconfluenceページ
CLARA ONLINE, Inc.
Kerasで開発すると、複雑な数式によるモデル構築をせずとも、ディープラーニングによる時系列学習モデルが開発でき、 データ予測が実現できる、ということを、実際に動くコードで実感していただくセッションです。
【macOSにも対応】AI入門「第3回:数学が苦手でも作って使えるKerasディープラーニング」
【macOSにも対応】AI入門「第3回:数学が苦手でも作って使えるKerasディープラーニング」
fukuoka.ex
Elixirの上で動くWebアプリケーションサーバ「Phoenix」を使って、高速なWebアプリやREST APIをサクっと書いてみます ※旧Phoenix(バージョン1.2)対応のスライドは、以下にあります https://www.slideshare.net/piacere_ex/elixir3phoenixweb-rest-api-75571536
Elixir入門「第3回:Phoenix 1.3で高速webアプリ & REST APIアプリをサクッと書いてみる」
Elixir入門「第3回:Phoenix 1.3で高速webアプリ & REST APIアプリをサクッと書いてみる」
fukuoka.ex
More Related Content
What's hot
学生LT発表コンテンツ
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
Atsushi Nakamura
八進数と名機の命令コード・フォーマットの関係 Why Old men talk in Octal-code?
どうして昔の人は八進数でしゃべるのか?
どうして昔の人は八進数でしゃべるのか?
たけおか しょうぞう
グループ内の個人用PCにローカル環境構築するためのハンズオン資料です、この先クラウドメインになったらまた講習資料つくります
WSL2+docker+JupyterとVS Codeリモート環境の構築
WSL2+docker+JupyterとVS Codeリモート環境の構築
Saito5656
Pythonには文字列やリストなど、長さをもつオブジェクトがあります。長さを手に入れるには、文字列なら、name.length ではなく len(name) のようにlen関数を使います。len関数はどうやってnameに入っているオブジェクトの長さを手に入れているのでしょうか。if文にはTrue/Falseとなる条件式を指定しますが、それだけでなく文字や数字、自分で作ったデータ型も渡せます。if文はどうやって与えられたオブジェクトがTrueなのかFalseなのかを手に入れているのでしょうか。 この発表では、Pythonのプログラムがどうやって必要な情報を手に入れているのか、また、自分で実装するときにどう実装すればlen()やif文やfor文に指定できるのかを説明します。
Pythonはどうやってlen関数で長さを手にいれているの?
Pythonはどうやってlen関数で長さを手にいれているの?
Takayuki Shimizukawa
近藤豊さんの著書「ROS2ではじめよう次世代ロボットプログラミング」を輪講形式で読み進めていくROS2勉強会@別府の資料です. 本資料はそのうち第7章Pythonクライアントライブラリrclpyについて紹介しています. 公開されているソースコードのうち本章の部分のみソースコード等を一部変更して公開しています. 本家リポジトリ: https://github.com/youtalk/get-started-ros2 7章部分のみ抜き出して変更を加えたもの: https://github.com/AtsukiYokota/ros2_examples
ROS2勉強会@別府 第7章Pythonクライアントライブラリrclpy
ROS2勉強会@別府 第7章Pythonクライアントライブラリrclpy
Atsuki Yokota
例外設計における大罪 Jun 27, 2012 @ java-ja
例外設計における大罪
例外設計における大罪
Takuto Wada
2/28社内勉強会用
Akkaとは。アクターモデル とは。
Akkaとは。アクターモデル とは。
Kenjiro Kubota
株式会社 ゼンアーキテクツ 大平かづみ GitHub 上に展開される開発環境をブラウザや Visual Studio Code から接続し、あたかも手元で作業しているかのように利用できる GitHub Codespaces。手元のマシンスペックに影響されず、プロジェクトで共通の環境をオンデマンドで利用できるため、コーディングからレビュー、デバッグに至るまでシームレスに作業することができます。実際に GitHub Codespaces を用いて開発を進めたプロジェクトを例に、デモを交えてご紹介します。
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
日本マイクロソフト株式会社
C#でわかる こわくないMonad 2017.5.27 岐阜Sharp #gifsharp #fsharp
C#でわかる こわくないMonad
C#でわかる こわくないMonad
Kouji Matsui
アプリ「ニュースパス」をマイクロサービスで開発してみた泥臭い体験談です。
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
Japanese version only Agile Tour Osaka 2011 講演資料
Head First Inception Deck
Head First Inception Deck
Naoto Nishimura
Boost.Logとfluentdで始めるログ活用術
Boost.Logとfluentdで始めるログ活用術
Boost.Logとfluentdで始めるログ活用術
Toshiki Teramura
2014年6月に開催されたSSII2014(http://www.ssii.jp/)のチュートリアル講演用資料です. 使用したコード等はこちら. https://github.com/norishigefukushima/SSII2014 アブストラクト 「CPUのクロック数が年月とともに増加する時代は終わり、プログラムの高速化をCPUの性能向上に任せることのできるフリーランチの時代は終わりを迎えています。しかしムーアの法則はいまだに続いており、CPUはマルチコア化、SIMD化という形で高性能化が続いています。本チュートリアルでは、計算コストの高い画像処理を高速化するために、CPUの能力をあますことなく引き出す、マルチコアプログラミング、SIMDプログラミングを解説します。」
マルチコアを用いた画像処理
マルチコアを用いた画像処理
Norishige Fukushima
社内勉強会資料
SQLアンチパターン - ジェイウォーク
SQLアンチパターン - ジェイウォーク
ke-m kamekoopa
「モノタロウの1900万商品を検索するElasticsearch構築運用事例」として、2022年10月26日に「第50回 Elasticsearch 勉強会」にて発表した内容の資料です。 モノタロウの商品検索の仕組みや、取り入れた工夫について説明しています。
モノタロウの1900万商品を検索する Elasticsearch構築運用事例(2022-10-26 第50回Elasticsearch 勉強会発表資料)
モノタロウの1900万商品を検索する Elasticsearch構築運用事例(2022-10-26 第50回Elasticsearch 勉強会発表資料)
株式会社MonotaRO Tech Team
PostgreSQLのロール管理とその注意点 (Open Source Conference 2022 Online/Osaka 発表資料) 2022年1月29日 NTTデータ 技術開発本部 先進コンピューティング技術センタ 加藤 慎也
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
NTT DATA Technology & Innovation
IIJ社内で行われている新人向けハンズオン勉強会「IIJ Bootcamp」で行われた "DevOps Overview" です。 開発者と運用者がうまくいくには。効率的な時間の使い方。自動化の話。Kubernetesなどを紹介します。 ▼IIJ Bootcampについて IIJ Bootcampとは、様々な技術に触れることを目的としたIIJ社内で行われている新人向けハンズオン勉強会です。 https://iij.github.io/bootcamp/ 各技術が誕生した経緯・歴史、ほかの技術と比較といった知識を得るためのきっかけとして、さまざまな言語・フレームワーク・ツールに触れて実際に動かすハンズオンを行っています。 カリキュラムにはハンズオンだけでなく、「overview」として技術ジャンルの全体像や歴史などを紹介する回も設けています。
DevOps Overview
DevOps Overview
IIJ
2022年2月24日に開催された「製造業向け量子コンピュータ時代のDXセミナー~最適化の中身を覗いてみよう~」の当日資料です。
製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~
製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~
Fixstars Corporation
JJUG CCC 2018 Springの登壇資料です。
Spring Boot on Kubernetes : Yahoo!ズバトク事例 #jjug_ccc
Spring Boot on Kubernetes : Yahoo!ズバトク事例 #jjug_ccc
Yahoo!デベロッパーネットワーク
株式会社クララオンラインの社内勉強会(LT会)の資料です。 今回は「Confluence&JIRA」がテーマでした。 "5分で出来る!イケてるConfluenceページ" 吉村真輝
5分で出来る!イケてるconfluenceページ
5分で出来る!イケてるconfluenceページ
CLARA ONLINE, Inc.
What's hot
(20)
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
どうして昔の人は八進数でしゃべるのか?
どうして昔の人は八進数でしゃべるのか?
WSL2+docker+JupyterとVS Codeリモート環境の構築
WSL2+docker+JupyterとVS Codeリモート環境の構築
Pythonはどうやってlen関数で長さを手にいれているの?
Pythonはどうやってlen関数で長さを手にいれているの?
ROS2勉強会@別府 第7章Pythonクライアントライブラリrclpy
ROS2勉強会@別府 第7章Pythonクライアントライブラリrclpy
例外設計における大罪
例外設計における大罪
Akkaとは。アクターモデル とは。
Akkaとは。アクターモデル とは。
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
C#でわかる こわくないMonad
C#でわかる こわくないMonad
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
Head First Inception Deck
Head First Inception Deck
Boost.Logとfluentdで始めるログ活用術
Boost.Logとfluentdで始めるログ活用術
マルチコアを用いた画像処理
マルチコアを用いた画像処理
SQLアンチパターン - ジェイウォーク
SQLアンチパターン - ジェイウォーク
モノタロウの1900万商品を検索する Elasticsearch構築運用事例(2022-10-26 第50回Elasticsearch 勉強会発表資料)
モノタロウの1900万商品を検索する Elasticsearch構築運用事例(2022-10-26 第50回Elasticsearch 勉強会発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
DevOps Overview
DevOps Overview
製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~
製造業向け量子コンピュータ時代のDXセミナー~ 最適化の中身を覗いてみよう~
Spring Boot on Kubernetes : Yahoo!ズバトク事例 #jjug_ccc
Spring Boot on Kubernetes : Yahoo!ズバトク事例 #jjug_ccc
5分で出来る!イケてるconfluenceページ
5分で出来る!イケてるconfluenceページ
Viewers also liked
Kerasで開発すると、複雑な数式によるモデル構築をせずとも、ディープラーニングによる時系列学習モデルが開発でき、 データ予測が実現できる、ということを、実際に動くコードで実感していただくセッションです。
【macOSにも対応】AI入門「第3回:数学が苦手でも作って使えるKerasディープラーニング」
【macOSにも対応】AI入門「第3回:数学が苦手でも作って使えるKerasディープラーニング」
fukuoka.ex
Elixirの上で動くWebアプリケーションサーバ「Phoenix」を使って、高速なWebアプリやREST APIをサクっと書いてみます ※旧Phoenix(バージョン1.2)対応のスライドは、以下にあります https://www.slideshare.net/piacere_ex/elixir3phoenixweb-rest-api-75571536
Elixir入門「第3回:Phoenix 1.3で高速webアプリ & REST APIアプリをサクッと書いてみる」
Elixir入門「第3回:Phoenix 1.3で高速webアプリ & REST APIアプリをサクッと書いてみる」
fukuoka.ex
TensorFlowでディープラーニング使うと、画像のマッチングをさせたり、画像に特徴を注入する画像加工が、簡単にできることを、みんなでワイワイ楽しむオーディエンス参加型セッションです
AI入門「第1回:AIの歴史とTensorFlow」
AI入門「第1回:AIの歴史とTensorFlow」
fukuoka.ex
※本スライドは、macOS未対応で、一部コードや説明に誤植もあるため、以下スライドの方をご覧ください https://www.slideshare.net/piacere_ex/macosai3keras-82043095 Kerasで開発すると、複雑な数式によるモデル構築をせずとも、ディープラーニングによる時系列学習モデルが開発でき、 データ予測が実現できる、ということを、実際に動くコードで実感していただくセッションです。
AI入門「第3回:数学が苦手でも作って使えるKerasディープラーニング」【旧版】※新版あります
AI入門「第3回:数学が苦手でも作って使えるKerasディープラーニング」【旧版】※新版あります
fukuoka.ex
dot DeepLearning部での発表に使う資料です。 これまでの焼き直しですが、いろいろ分かりやすくなっています。 TensorFlow の概要が分かる資料などが追加されてたりします。
Dots deep learning部_20161221
Dots deep learning部_20161221
陽平 山口
深層学習について調べてみた途中経過を社内で発表したときの資料です。 TensorFlowを触ってみたかったのですが、 そもそもの機械学習の知識がないと全くわからなかったのでその勉強内容です。
ニューラルネットワークの仕組みを学ぶ 20170623
ニューラルネットワークの仕組みを学ぶ 20170623
Hiroki Takahashi
Atlassian Japan Forum 2017 特別講演 ゼンアーキテクツ岡様の講演資料です。
Atlassian Japan Forum 2017 The Information Ageの現実 なぜ組織が構造改革を進めなければならないのか
Atlassian Japan Forum 2017 The Information Ageの現実 なぜ組織が構造改革を進めなければならないのか
アトラシアン株式会社
AlphaGo ( アルファ碁, アルファご ) の中身はどうなってるのかを調べるために色々ブログや記事などを読んでいたのですが、当時は難しいアルゴリズム説明がドンとくる不親切な情報しか見あたらなかったです。私みたいにゲームAIの背景知識が無い人にはとても理解出来ない。何を説明しているのか全く分からなかったので、結局AlphaGoの論文を直接読むことになりました。そこで分かったのが、これはゲームAIの背景知識が無いと理解しにくいことでした。AlphaGoがモンテカルロ木検索とDLを使って強くなったとは理解しましたが、これって何がすごいのかが全く伝わらないのです。 突然AlphaGoのアルゴリズムをドンと説明されても困る。そもそもなぜAlphaGoが今の形になったのか、従来のアルゴリズムと何が違うのか、性能はどれくらい上がったのかが全く見えなかったです。 結局私はゲームAIの歴史を含め、他の木探索系のアルゴリズムを調査しその違いを比較することになりました。 その背景知識を得た後にやっとなぜAlphaGoが今の形になったのか、どこがすごいのかが理解できたのです。 本資料の狙い この資料は私のように、ゲームAIに関する背景知識は無いがAlphaGoの中身が知りたい人のための資料です。単純にアルゴリズムを説明するのではなく、古典的なゲームAIに比べAlphaGoはどう発展してきたのか、何がすごいのかを説明していきます。 この資料に書いている古典的ゲームAIは全てのゲームAIではないですが、AlphaGoの発展の方向性を理解するには十分だと思っています。本資料ではディープラーニングや強化学習の詳細については触れませんが、その詳細が知りたい人はAlphaGoの論文を直接読んだ方が絶対に分かりやすいと思いますので、論文をお勧めします。 本資料の目次 AlphaGo簡略紹介 ゲームAIの基層知識紹介 ゲーム木 完全ゲーム木 部分ゲーム木 効果的にゲーム木を計算するためのポイント ミニマックス法 (1949年) アルファ・ベータ法 (1958年) 古典的アルゴリズムの成功と失敗 チェスでの成功:Deep Blue、1997年 囲碁での失敗 モンテカルロ木検索 (1993年) 囲碁での進歩 AlphaGoのベースになるアルゴリズム Deep Learningの登場 (2012年) AlphaGoの登場 (2016年) モンテカルロ木検索の改良 Policy Network Value Network Rollout Policy 強化学習 AlphaGoのアーキテクチャ 性能比較 まとめ 本資料は2016年の論文をベースにしてますが、現在のAlphaGoは仕組みがかなり変わったらしいですね。2017年末新しい論文が出るらしいですがすごく楽しみです。その論文が出る前に、この資料がたくさんの人の役に立てればと思っています。 ちなみに、技術職ではない私のかわいい妻に見せたら、何の問題もなく理解してくれたので、背景知識が無くても全然読めると思います。 では、また新しい論文がでるまで、みなさんお元気に!
古典的ゲームAIを用いたAlphaGo解説
古典的ゲームAIを用いたAlphaGo解説
suckgeun lee
Caffe,Caffe2,TensorFlow,Keras,Torch,PyTorch,Chainer,MatConvNetの各ディープラーニングフレームワークについて,実際の使用感を比較しました.
【2017年】ディープラーニングのフレームワーク比較
【2017年】ディープラーニングのフレームワーク比較
Ryota Suzuki
2017/9/11 Deep Learning JP: http://deeplearning.jp/seminar-2/
[DL輪読会] MoCoGAN: Decomposing Motion and Content for Video Generation
[DL輪読会] MoCoGAN: Decomposing Motion and Content for Video Generation
Deep Learning JP
2017年10月19日に発表されたGoogle DeepMindのAlphaGo Zero ( アルファ碁, アルファご ) の論文解説。 AlphaGo Zeroの仕組みを分かりやすく説明します。
AlphaGo Zero 解説
AlphaGo Zero 解説
suckgeun lee
Pythonで動かして学ぶ機械学習入門 第三回 Jupyter Notebooks: https://goo.gl/5rTZt3
Kerasで深層学習を実践する
Kerasで深層学習を実践する
Kazuaki Tanida
ディープニューラルネット確率的プログラミングライブラリEdward
Pycon2017
Pycon2017
Yuta Kashino
Presented at Tokyo Web Mining
Tokyo webmining 2017-10-28
Tokyo webmining 2017-10-28
Kimikazu Kato
2017年1月27日、found it project勉強会で発表した資料です。 機械学習を勉強するためにどうPythonを役立てればいいかという話です。
Pythonを使った機械学習の学習
Pythonを使った機械学習の学習
Kimikazu Kato
What is machine learning? Is UX relevant in the age of artificial intelligence (AI)? How can I take advantage of cognitive computing? Get answers to these questions and learn about the implications for your work in this session. Carol will help you understand at a basic level how these systems are built and what is required to get insights from them. Carol will present examples of how machine learning is already being used and explore the ethical challenges inherent in creating AI. You will walk away with an awareness of the weaknesses of AI and the knowledge of how these systems work.
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
Carol Smith
Viewers also liked
(16)
【macOSにも対応】AI入門「第3回:数学が苦手でも作って使えるKerasディープラーニング」
【macOSにも対応】AI入門「第3回:数学が苦手でも作って使えるKerasディープラーニング」
Elixir入門「第3回:Phoenix 1.3で高速webアプリ & REST APIアプリをサクッと書いてみる」
Elixir入門「第3回:Phoenix 1.3で高速webアプリ & REST APIアプリをサクッと書いてみる」
AI入門「第1回:AIの歴史とTensorFlow」
AI入門「第1回:AIの歴史とTensorFlow」
AI入門「第3回:数学が苦手でも作って使えるKerasディープラーニング」【旧版】※新版あります
AI入門「第3回:数学が苦手でも作って使えるKerasディープラーニング」【旧版】※新版あります
Dots deep learning部_20161221
Dots deep learning部_20161221
ニューラルネットワークの仕組みを学ぶ 20170623
ニューラルネットワークの仕組みを学ぶ 20170623
Atlassian Japan Forum 2017 The Information Ageの現実 なぜ組織が構造改革を進めなければならないのか
Atlassian Japan Forum 2017 The Information Ageの現実 なぜ組織が構造改革を進めなければならないのか
古典的ゲームAIを用いたAlphaGo解説
古典的ゲームAIを用いたAlphaGo解説
【2017年】ディープラーニングのフレームワーク比較
【2017年】ディープラーニングのフレームワーク比較
[DL輪読会] MoCoGAN: Decomposing Motion and Content for Video Generation
[DL輪読会] MoCoGAN: Decomposing Motion and Content for Video Generation
AlphaGo Zero 解説
AlphaGo Zero 解説
Kerasで深層学習を実践する
Kerasで深層学習を実践する
Pycon2017
Pycon2017
Tokyo webmining 2017-10-28
Tokyo webmining 2017-10-28
Pythonを使った機械学習の学習
Pythonを使った機械学習の学習
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
Similar to 【LT版】Elixir入門「第7回:Python/KerasをElixirから繋いでアレコレする」
第1回 関数型言語勉強会 大阪 の資料です。
たのしい関数型
たのしい関数型
Shinichi Kozake
まるでドッグ・イヤーのごとく変化するフロントエンド開発に疲れていませんか?本セッションでは、BabelやPostCSSの導入の仕方や使い方を解説することによって、次世代の標準仕様であるEcmaScript 6やCSS 3を先取りし、長く使える技術を身につけます。流れの速さに惑わされないようにしましょう。 Koji Ishimoto @IWATE HTML5 COMMUNITY #3 on October 14 https://www.facebook.com/events/674956182641567/
JavaScript/CSS 2015 Autumn
JavaScript/CSS 2015 Autumn
Koji Ishimoto
Hokuriku.NET C# 勉強会「C# 式木 (Expression Tree) ~ LINQをより深く理解するために ~」 https://atnd.org/events/57085 で使用した資料に加筆 1. LINQ to Objects 復習 2. IQueryable<t> 3. 式木 (Expression Tree) 4. 式木メタ プログラミング 5. LINQ プロバイダー
C# 式木 (Expression Tree) ~ LINQをより深く理解するために ~
C# 式木 (Expression Tree) ~ LINQをより深く理解するために ~
Fujio Kojima
機械学習
機械学習
機械学習
ssusere8ae711
旭川オープンソースコミュニティ11月勉強会 だいぶ適当です!
Pythonで始めるDropboxAPI
Pythonで始めるDropboxAPI
Daisuke Igarashi
boost tour 1.48.0 all
boost tour 1.48.0 all
Akira Takahashi
社内向けPython入門講義資料
Introduction of Python
Introduction of Python
Tomoya Nakayama
やや関数型を意識した内容のElixir/Phoenixをご紹介するスライドです
やや関数型を意識した風Elixir/Phoenixご紹介
やや関数型を意識した風Elixir/Phoenixご紹介
fukuoka.ex
Boost Tour 1.50.0 All
Boost Tour 1.50.0 All
Akira Takahashi
2015-4-28に東北大学 乾・岡崎研究室でおこなったチュートリアルの資料です。 研究室にはHadoopクラスタ(CDH5.3)があります。実験や実験の前処理といったタスクでそのクラスタを利用するためのチュートリアル、という前提です。 (追記)PMIの計算はもっと実行効率がいい手順があります。という説明を入れ忘れてました。 (追記)PMI計算でIntと書いてある部分は全部Longの間違いでした。
Apache Spark チュートリアル
Apache Spark チュートリアル
K Yamaguchi
Scala関西Summit 2017 の発表資料です。 http://summit.scala-kansai.org/
Scala の関数型プログラミングを支える技術
Scala の関数型プログラミングを支える技術
Naoki Aoyama
2013/3/31 ekmett勉強会発表資料 中で紹介されているURLのバージョンが古かったり治ったり(?)してるのはご愛嬌
Ekmett勉強会発表資料
Ekmett勉強会発表資料
時響 逢坂
Python opt
Python opt
Mikio Kubo
Boost.勉強会 #1で使用したセッション資料。Boost 1.40.0までのほとんどのライブラリを書いてるはず。
Boost tour 1_40_0
Boost tour 1_40_0
Akira Takahashi
CMSIハンズオン資料
ALPSチュートリアル(4) Python入門
ALPSチュートリアル(4) Python入門
Computational Materials Science Initiative
Game requires high performance to its run times. asm.js brings Web browsers high performance JavaScript processing and allows us to build heavy games on the top of Web browsers. In this talk, we can see 1 )the background of asm.js 2) asm.js details and 3) overview of emscripten, a compiler which emits asm.js formatted JavaScript code from C/C++. asm.js の詳細と emscripten の簡単な使い方について解説します。
asm.js x emscripten: The foundation of the next level Web games
asm.js x emscripten: The foundation of the next level Web games
Noritada Shimizu
Zansaの発表資料
PythonによるDeep Learningの実装
PythonによるDeep Learningの実装
Shinya Akiba
Pythonintro
Pythonintro
Mikio Kubo
秀スクリプトの話 2017年11月の#ssmjp http://bit.ly/2AesqgD
秀スクリプトの話
秀スクリプトの話
Hiroshi Tokumaru
Ekmett勉強会発表資料
Ekmett勉強会発表資料
時響 逢坂
Similar to 【LT版】Elixir入門「第7回:Python/KerasをElixirから繋いでアレコレする」
(20)
たのしい関数型
たのしい関数型
JavaScript/CSS 2015 Autumn
JavaScript/CSS 2015 Autumn
C# 式木 (Expression Tree) ~ LINQをより深く理解するために ~
C# 式木 (Expression Tree) ~ LINQをより深く理解するために ~
機械学習
機械学習
Pythonで始めるDropboxAPI
Pythonで始めるDropboxAPI
boost tour 1.48.0 all
boost tour 1.48.0 all
Introduction of Python
Introduction of Python
やや関数型を意識した風Elixir/Phoenixご紹介
やや関数型を意識した風Elixir/Phoenixご紹介
Boost Tour 1.50.0 All
Boost Tour 1.50.0 All
Apache Spark チュートリアル
Apache Spark チュートリアル
Scala の関数型プログラミングを支える技術
Scala の関数型プログラミングを支える技術
Ekmett勉強会発表資料
Ekmett勉強会発表資料
Python opt
Python opt
Boost tour 1_40_0
Boost tour 1_40_0
ALPSチュートリアル(4) Python入門
ALPSチュートリアル(4) Python入門
asm.js x emscripten: The foundation of the next level Web games
asm.js x emscripten: The foundation of the next level Web games
PythonによるDeep Learningの実装
PythonによるDeep Learningの実装
Pythonintro
Pythonintro
秀スクリプトの話
秀スクリプトの話
Ekmett勉強会発表資料
Ekmett勉強会発表資料
More from fukuoka.ex
Kerasで実行した学習過程を、TensorFlowに付属のTensorBoardで見ると、内部動作や処理の繫がりが可視化され、SGDやSigmoidといった、AI・MLのアルゴリズムを動くコードとセットでステップバイステップで理解しやすい、ということを実感いただくセッションです
AI入門「第4回:ディープラーニングの中身を覗いて、育ちを観察する」
AI入門「第4回:ディープラーニングの中身を覗いて、育ちを観察する」
fukuoka.ex
Elixirの「プロセス生成」と「プロセス間通信」を説明した後、プロセス可視化ツール「Visualixir」にて、Elixirのプロセスが増殖する様を眺めてみます
Elixir入門「第5回:Visualixirで見るマルチプロセス」
Elixir入門「第5回:Visualixirで見るマルチプロセス」
fukuoka.ex
Elixirの「パターンマッチ」と「パイプ」、各種ライブラリを使って、JSON APIを叩き、JSONをパースするアプリをサクっと書いてみます
Elixir入門「第1回:パターンマッチ&パイプでJSONパースアプリをサクっと書いてみる」
Elixir入門「第1回:パターンマッチ&パイプでJSONパースアプリをサクっと書いてみる」
fukuoka.ex
Elixirの「スーパーバイザ」を使って、シンプルかつ強力な耐障害性を実現するコードをサクっと書いてみます
Elixir入門「第6回:Elixirはtry…catchを書かない~障害対応のパラダイムシフト~」
Elixir入門「第6回:Elixirはtry…catchを書かない~障害対応のパラダイムシフト~」
fukuoka.ex
「重力」の理論から始め、その「数式」を紐解き、数式を「コード化」していきます。数学や物理学のコード化が思った以上にカンタンということを実感していただけたら幸いです
重力プログラミング入門「第1回:地球の重力下で人工衛星を公転軌道に乗せる」
重力プログラミング入門「第1回:地球の重力下で人工衛星を公転軌道に乗せる」
fukuoka.ex
AWS EMRをベースに、Scala→Sparkによるデータ集計と、Mahoutの機械学習を組み合わせて、レコメンドエンジンを構成し、マーケティングシステムとして活用します
AI入門「第2回:Scala/Spark/Mahoutでレコメンドエンジンを作る」
AI入門「第2回:Scala/Spark/Mahoutでレコメンドエンジンを作る」
fukuoka.ex
Elixirの「プロセス生成」と「プロセス間通信」を使って、リモートにあるPC上のファイルを一覧したり、ファイル内容を覗くクライアントサーバアプリをサクっと書いてみます
Elixir入門「第2回:PC間で通信するアプリをサクっと書いてみる」
Elixir入門「第2回:PC間で通信するアプリをサクっと書いてみる」
fukuoka.ex
※本スライド、旧版のため、下記最新版をご覧ください https://www.slideshare.net/piacere_ex/elixir1json-81100124 Elixirの「パターンマッチ」と「パイプ」、各種ライブラリを使って、JSON APIを叩き、JSONをパースするアプリをサクっと書いてみます
Elixir入門「第1回:パターンマッチ&パイプでJSONパースアプリをサクっと書いてみる」【旧版】※新版あります
Elixir入門「第1回:パターンマッチ&パイプでJSONパースアプリをサクっと書いてみる」【旧版】※新版あります
fukuoka.ex
※本スライド、旧版(Phoenix 1.2)のため、下記最新版をご覧ください https://www.slideshare.net/piacere_ex/elixir3phoenix-13web-rest-api-81219622 Elixirの上で動くWebアプリケーションサーバ「Phoenix」を使って、高速なWebアプリやREST APIをサクっと書いてみます
Elixir入門「第3回:Phoenix 1.2で高速Webアプリ & REST APIをサクッと書いてみる」【旧版】※新版あります
Elixir入門「第3回:Phoenix 1.2で高速Webアプリ & REST APIをサクッと書いてみる」【旧版】※新版あります
fukuoka.ex
More from fukuoka.ex
(9)
AI入門「第4回:ディープラーニングの中身を覗いて、育ちを観察する」
AI入門「第4回:ディープラーニングの中身を覗いて、育ちを観察する」
Elixir入門「第5回:Visualixirで見るマルチプロセス」
Elixir入門「第5回:Visualixirで見るマルチプロセス」
Elixir入門「第1回:パターンマッチ&パイプでJSONパースアプリをサクっと書いてみる」
Elixir入門「第1回:パターンマッチ&パイプでJSONパースアプリをサクっと書いてみる」
Elixir入門「第6回:Elixirはtry…catchを書かない~障害対応のパラダイムシフト~」
Elixir入門「第6回:Elixirはtry…catchを書かない~障害対応のパラダイムシフト~」
重力プログラミング入門「第1回:地球の重力下で人工衛星を公転軌道に乗せる」
重力プログラミング入門「第1回:地球の重力下で人工衛星を公転軌道に乗せる」
AI入門「第2回:Scala/Spark/Mahoutでレコメンドエンジンを作る」
AI入門「第2回:Scala/Spark/Mahoutでレコメンドエンジンを作る」
Elixir入門「第2回:PC間で通信するアプリをサクっと書いてみる」
Elixir入門「第2回:PC間で通信するアプリをサクっと書いてみる」
Elixir入門「第1回:パターンマッチ&パイプでJSONパースアプリをサクっと書いてみる」【旧版】※新版あります
Elixir入門「第1回:パターンマッチ&パイプでJSONパースアプリをサクっと書いてみる」【旧版】※新版あります
Elixir入門「第3回:Phoenix 1.2で高速Webアプリ & REST APIをサクッと書いてみる」【旧版】※新版あります
Elixir入門「第3回:Phoenix 1.2で高速Webアプリ & REST APIをサクッと書いてみる」【旧版】※新版あります
Recently uploaded
Solana Developer Hub Online #6 https://lu.ma/evx8jtpi
Compute Units/Budget最適化 - Solana Developer Hub Online 6 #SolDevHub
Compute Units/Budget最適化 - Solana Developer Hub Online 6 #SolDevHub
K Kinzal
ビジュアルプログラミングIoTLT17資料です。
ビジュアルプログラミングIotLT17-オープンソース化されたビジュアルプログラミング環境Noodlの紹介
ビジュアルプログラミングIotLT17-オープンソース化されたビジュアルプログラミング環境Noodlの紹介
miyp
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料
Toru Miyahara
人的資本経営[1]を実現するには,生産性とQoW(Quality of Work,働き方の質)を同時に改善し続けていくことが有効である.そのための課題は多岐に渡るため,DX(Digital Transformation)的発想が求められる。一方、情報の約60~80%が位置情報に関連していることが報告されている.本稿では,地理空間情報と他の情報とを連携させて課題解決を支援する地理空間インテリジェンス(GSI)でDXを促進し,製造現場やサービス現場で人的資本経営を支援することに資する筆者らの一連の取り組みについて紹介する.
人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例
人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例
Kurata Takeshi
スタートアップCTO経験から キャリアについて再考する DIGGLE 株式会社 取締役CTO 水上駿 こちらのイベントでの登壇資料です。 https://rosca.connpass.com/event/319175/
【登壇資料】スタートアップCTO経験からキャリアについて再考する CTO・VPoEに聞く by DIGGLE CTO 水上
【登壇資料】スタートアップCTO経験からキャリアについて再考する CTO・VPoEに聞く by DIGGLE CTO 水上
mizukami4
下記の会の感想 https://kichijojipm.connpass.com/event/315276/presentation/
本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について
本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について
Masatsugu Matsushita
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
Toru Miyahara
エンジニアのセルフブランディングと技術情報発信の重要性 テクニカルライターになろう 講演資料
エンジニアのセルフブランディングと技術情報発信の重要性 テクニカルライターになろう 講演資料
エンジニアのセルフブランディングと技術情報発信の重要性 テクニカルライターになろう 講演資料
Toru Miyahara
Recently uploaded
(8)
Compute Units/Budget最適化 - Solana Developer Hub Online 6 #SolDevHub
Compute Units/Budget最適化 - Solana Developer Hub Online 6 #SolDevHub
ビジュアルプログラミングIotLT17-オープンソース化されたビジュアルプログラミング環境Noodlの紹介
ビジュアルプログラミングIotLT17-オープンソース化されたビジュアルプログラミング環境Noodlの紹介
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料
人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例
人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例
【登壇資料】スタートアップCTO経験からキャリアについて再考する CTO・VPoEに聞く by DIGGLE CTO 水上
【登壇資料】スタートアップCTO経験からキャリアについて再考する CTO・VPoEに聞く by DIGGLE CTO 水上
本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について
本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
エンジニアのセルフブランディングと技術情報発信の重要性 テクニカルライターになろう 講演資料
エンジニアのセルフブランディングと技術情報発信の重要性 テクニカルライターになろう 講演資料
【LT版】Elixir入門「第7回:Python/KerasをElixirから繋いでアレコレする」
1.
Elixir入門 第7回 Python/KerasをElixirから 繋いでアレコレする ~ 数値演算・ML+データ変換・並行分散=…
~ 2017/10/25 ver0.5作成
2.
1 1. 数値演算・ML+データ変換・並行分散=… 2. Pythonを使えるようにする 3.
Elixirを使えるようにする 4. ElixirからPythonを呼び出す 5. Kerasを使えるようにする 6. ElixirからKerasを呼び出す 7. Elixir分散データ処理→Keras ML 目次
3.
2 1.統計・ML+データ変換・並行分散=…
4.
3 1.数値演算・ML+データ変換・並行分散=… ご存知とは思いますが、Pythonは、豊富なライブラリによる数値 演算、自動処理、理工学、統計・解析に強みがある言語です 最近は、TensorFlowやKeras、Chainerといった、機械学習 のベースプラットフォームとして、一躍有名になりました 一方、Elixirは、様々なデータのパターンマッチ (バイナリデータも 含む) が強力、かつ並行分散処理が得意で、データ加工・変換 をマルチプロセスで同時に実行する部分に強みをもった言語です この2つを組み合わせることで、ビッグデータの分析や機械学習を 並行分散処理する、といった構築が可能となります なお両言語は、スリムで凝縮された言語仕様により、「可読性」 と「高信頼性」、「高機能」を実現するといった共通点もあります
5.
4 2.Pythonを使えるようにする
6.
5 2.Pythonを使えるようにする GUI環境 (Windows/Mac/Linux) がある場合、Python 環境の構築に「Anaconda」を使うと、Pythonパッケージのイン ストールが簡単にでき、複数Python環境の使い分けもできます
7.
6 2.Pythonを使えるようにする ターミナルを起動します
8.
7 2.Pythonを使えるようにする PythonコマンドでREPLが起動することを確認します exit()と打てば、Pythonを抜けて、ターミナルに戻ります もしエラーが出たときは、前ページをやり直してください LinuxやMacであれば、以下のように、pip単体をapt/yum /BrewでインストールしてからPythonを入れることも可能です # python >>> >>> exit() # #
apt-get install pip # pip install python
9.
8 2.Pythonを使えるようにする Pythonのサンプルとして、ノイズ入りsin波のグラフ表示をします 以下で起動します import numpy as
np def sin( x, T = 100 ): return np.sin( 2.0 * np.pi * x / T ) def noisy_sin( T = 100, ampl = 0.05 ): x = np.arange( 0, 2 * T + 1 ) noise = ampl * np.random.uniform( low = - 1.0, high = 1.0, size = len( x ) ) return sin( x ) + noise def plot(): f = noisy_sin() plt.figure() plt.plot( range( 0, len( f ) ), f, color = "b", label = "sin" ) plt.legend() plt.show() py_sample.py # pip install matplotlib # python predict_sin.py
10.
9 2.Pythonを使えるようにする こんな感じのグラフが表示されるのを確認します
11.
10 3.Elixirを使えるようにする
12.
11 3.Elixirを使えるようにする インストーラ (Macの場合はBrew) でインストールした後、iexと いうElixirのREPLを起動します Ctrl+cを2回入力すると、iexを抜けて、ターミナルに戻ります #
iex Interactive Elixir (1.5.2) - press Ctrl+C to exit (type h() ENTER for help) iex(1)> iex(1)> BREAK: (a)bort (c)ontinue (p)roc info (i)nfo (l)oaded (v)ersion (k)ill (D)b-tables (d)istribution #
13.
12 4.ElixirからPythonを呼び出す
14.
13 4.ElixirからPythonを呼び出す Anacondaから起動したターミナルで、Elixir PJを作成します ※紫字の部分は、作成するプロジェクト名 (全部、小文字で打つこと) 以下のようなフォルダ/ファイルが作られます プログラミングするソースコードは、libフォルダ配下に作ります #
mix new pyex # cd pyex # pwd; find . | sort | sed '1d;s/^.//;s//([^/]*)$/|--1/;s//[^/|]*/| /g' /code/pyex |--_build |--config |--deps |--lib |--mix.exs |--README.md |--test mixはビルドツール ※Railsのbundler+rake的なもの
15.
14 4.ElixirからPythonを呼び出す Elixir/Erlangから、Pythonを呼び出すためのライブラリである 「ErlPort」をインストールするため、mix.exsに下記追加します 以下コマンドで、Elixirモジュールを取得します (要ネット接続) 以下コマンドで、Pythonモジュールをインストールします defmodule Pyex.Mixfile
do … defp deps do [ { :erlport, "~> 0.9.8" }, ] end end # mix deps.get # pip install erlport mix.exs
16.
15 4.ElixirからPythonを呼び出す lib/pyex.exを、お好きなエディタで以下の通り、書き換えます ファイル保存したら、以下コマンドでビルドします defmodule Pyex do def
plot_sin_noisy() do { :ok, py_exec } = :python.start( [ python_path: 'lib' ] ) :python.call( py_exec, :py_sample, :plot, [] ) end end # iex –S mix iex> Pyex.plot_sin_noisy lib/pyex.ex Pythonファイル名を指定 Python関数名を指定
17.
16 4.ElixirからPythonを呼び出す ElixirからのPython呼出でもグラフが表示できるのを確認します
18.
17 4.ElixirからPythonを呼び出す 単純に起動するだけで無く、値の受け渡しもできます Elixirから渡した値を、Python側で計算し、Elixirに戻せます lib/pyex.ex # recompile # iex
–S mix iex> Pyex.value_send_receive Pyex.value_send_receive( 3 ) received from python: 30 defmodule Pyex do … def value_receive( value ) do { :ok, py_exec } = :python.start( [ python_path: 'lib' ] ) result = :python.call( py_exec, :py_sample, :value_receive, [ value ] ) IO.puts "received from python: #{result}" end end … def value_receive( value ): return value * 10 py_sample.py
19.
18 4.ElixirからPythonを呼び出す クラスを呼び出すこともできます lib/pyex.ex defmodule Pyex do … def
value_receive( value ) do { :ok, py_exec } = :python.start( [ python_path: 'lib' ] ) result = :python.call( py_exec, :py_sample, :Sample, [] ) result = :python.call( py_exec, :py_sample, :"Sample.arrange", [ object, value ] ) IO.puts "received from python: #{result}" end end … def class Sample( object ): def __init__( self ): print( " on python: __init__()" ) self.message = "Hello " def arrange( self, name ): print( " on python: arrange()" ) return self.message + name.decode( "utf-8" ) py_sample.py Elixirから渡した文字列は、 Pythonだと、bytes型で解釈 されるので、str型に変換する クラスのインスタンスを生成 メソッド名をクラス名と共に指定 インスタンスを 第1引数に指定 引数を第2引数 以降に指定
20.
19 4.ElixirからPythonを呼び出す Elixirから渡した値を、Python側で計算し、Elixirに戻せます # recompile # iex
–S mix iex> Pyex.value_send_receive Pyex.value_send_receive( 3 ) received from python: 30
21.
20 5.Kerasを使えるようにする
22.
21 5.Kerasを使えるようにする Kerasは、TensorFlowをコアとして動作するラッパーライブラリで、 本来、数学を用いて、ニューラルネットワークやディープラーニング を構築する必要があるところの大部分を代行してくれます Kerasを使わず、TensorFlowそのままでコーディングした場合、 「学習」部分を数式に相当するコードで書くこととなります※が、 Kerasを使った場合は、数式を一切使わずとも、「学習」部分が コーディングできるのが、最大の特徴です https://keras.io/ja/
23.
22 5.Kerasを使えるようにする Anacondaから起動したターミナルで、Kerasをpipによりインス トールします PythonコマンドでREPLが起動し、Kerasがエラー無くimport できれば、インストールは成功です もしエラーが出たときは、前ページをやり直してください # python >>> import
keras Using TensorFlow backend. >>> # pip install keras
24.
23 5.Kerasを使えるようにする RNN (Recurrent Neural
Network) という、時系列に特化 した学習モデルで「未来のデータ並びの予測」ができます たとえば、単語の並びから、発言した人の感情が、どんな状態に なっているかを推測する、といったような先読み分析に向いてます
25.
24 5.Kerasを使えるようにする ノイズ入りサイン波を予測するKerasコードをPythonで組みます predict_sin.py import numpy as
np from keras.models import Sequential from keras.layers import Dense, Activation from keras.layers.recurrent import LSTM from keras.optimizers import Adam from keras.callbacks import EarlyStopping def sin( x, T = 100 ): return np.sin( 2.0 * np.pi * x / T ) def noisy_sin( T = 100, ampl = 0.05 ): x = np.arange( 0, 2 * T + 1 ) noise = ampl * np.random.uniform( low = - 1.0, high = 1.0, size = len( x ) ) return sin( x ) + noise def make_dataset( datas, n_prev = 100 ): data = [] target = [] maxlen = 25 for i in range( len( datas ) - maxlen ): data.append( datas[ i: i + maxlen ] ) target.append( datas[ i + maxlen ] ) re_data = np.array( data ).reshape( len( data ), maxlen, 1 ) re_target = np.array( target ).reshape( len( data ), 1 ) return re_data, re_target …
26.
25 5.Kerasを使えるようにする (続き) 学習モデルを構築し、学習させます … def predict(): f
= noisy_sin() g, h = make_dataset( f ) length_of_sequence = x.shape[ 1 ] in_out_neurons = 1 n_hidden = 300 model = Sequential() model.add( LSTM( n_hidden, batch_input_shape = ( None, length_of_sequence, in_out_neurons ), return_sequences = False ) ) model.add( Dense( in_out_neurons ) ) model.add( Activation( "linear" ) ) optimizer = Adam( lr = 0.001 ) model.compile( loss = "mean_squared_error", optimizer = optimizer ) early_stopping = EarlyStopping( monitor = "val_loss", mode = "min", patience = 20 ) model.fit( x, y, batch_size = 300, epochs = 100, validation_split = 0.1, callbacks = [ early_stopping ] ) future_test = g[ 175 ].T time_length = future_test.shape[ 1 ] future_result = np.empty( ( 0 ) ) … predict_sin.py
27.
26 5.Kerasを使えるようにする (続き) 学習モデルで未来データを予測し、グラフ表示します … for step2
in range( 400 ): test_data = np.reshape( future_test, ( 1, time_length, 1 ) ) batch_predict = model.predict( test_data ) future_test = np.delete( future_test, 0 ) future_test = np.append( future_test, batch_predict ) future_result = np.append( future_result, batch_predict ) predicted = model.predict( x ) plt.figure() plt.plot( range( 0, len( f ) ), f, color = "b", label = "sin" ) plt.plot( range( 25, len( predicted ) + 25 ), predicted, color = "r", label = "predict" ) plt.plot( range( len( f ), len( future_result ) + len( f ) ), future_result, color = "g", label = "future" ) plt.legend() plt.show() predict() predict_sin.py
28.
27 5.Kerasを使えるようにする 予測した未来データは、緑のグラフで、元データ (青) のsin波を 再現しています なお、学習時データ
(赤) を見ると、元データと比べ、若干振幅 が縮んで学習しているため、未来データも徐々に縮んでいます (ノイズがランダムに出ている影響)
29.
28 6.ElixirからKerasを呼び出す
30.
29 6.ElixirからKerasを呼び出す Kerasを使うPythonも当然呼び出せます ファイル保存したら、以下コマンドでビルドします defmodule Pyex do def
predict() do { :ok, py_exec } = :python.start( [ python_path: 'lib' ] ) :python.call( py_exec, :predict_sin, :predict, [] ) end end # iex –S mix iex> Pyex.predict lib/pyex.ex
31.
30 6.ElixirからKerasを呼び出す Python単独と同様、sin波の予測が行われます
32.
31 7.Elixir分散データ処理→Keras ML
33.
32 7.Elixir分散データ処理→Keras ML ここまでを組み合わせることで、Elixirから分析元データを渡し、 Kerasで機械学習による予測ができることがお分かりと思います ただし、元データは、常にキレイとは限りません そこで、Elixirのパターンマッチをフル活用し、データ加工・変換を 施した (≒前処理)
上で、クリーン化されたデータでKerasに渡し、 機械学習を行い、それをElixirに戻して、予測結果を更に加工・ 変換し (≒後処理)、アプリケーションで利用する、という枠組み を考えます 弊社は、国内人口の1/5のデータを持っており、その他の業務 データも多く蓄積しているため、こうしたフレームでのビッグデータ 分析の構築が欠かせません
34.
33 LT版はここまで(^^)
35.
34 続きは、12月末開催の fukuoka.ex #4にて
36.
35 fukuoka.ex #4の開催は、 下記クリックでお知らせきます
37.
36 fukuoka.exでググってください
38.
37 株式会社TechJIN CTO when デジタルマーケッター 。
森 正和 = 。 { XPer: 17, KernelHacker: 7 } [ Elixir, ElixirScript, Elm, Keras ] |> 福岡信仰 |> 東京侵攻w my favotite technology & implements. Twitter @piacere_ex Qiita @piacere 私をフォローいただいても 開催タイミング分かります
39.
38 ご清聴ありがとうございます