SlideShare uma empresa Scribd logo
1 de 21
Baixar para ler offline
Komachi Lab. M1 Peinan ZHANG
研究会
2014/06/18
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
進捗というか
今取り組んでいること&近々やること
2
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
前回のTODOs
共同研究でのSurvey
p  Crawlingを修正(今週中に)
n Streaming APIを使うことに
•  たまに途切れる問題を突き止める
n filterとREST Searchを併用
p  盛り上がりをどう評価するか(今週中に)
対話処理の勉強
p  20日までにもらった本を読破
n まだ途中
筋トレ
p  ベンチプレス40kgを10回3セット目指して
n キツかったんで35kgから・・・
3
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
Crawlerが止まったエラー分析
1回目(6/10, 17:30):420エラー
p  複数のIPから同じアカウントを使ってStreaming APIにアクセ
スすると発生するらしい。
p  でもそれをやった心当りがない・・・
2回め(6/14, 08:40):ライブラリのエラー
p  勢いに耐え切れなかった?
4
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
共同研究
5
大
体
の
流
れ
は
決
ま
っ
た
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
TODOs
共同研究
p  Crawlerの安定化
p  引き続きSurvey
n 極性分類
n 盛り上がり評価
p  評価対象データの収集
対話処理
p  引き続きお勉強
6
小テスト作成・採点
p  オートマトンと言語理論
SLP予習
p  4.3, 4.4
筋トレ
p  ベンチ35kgを10回3セット
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
おまけ(本編)
そろそろネタが尽きてきた・・・
7
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
先週の出来事
友人「お前ってpython使うんだよね」
ワイ「一応ね」
友人「んじゃpython教えて」
ワイ「ええで」
友人「そいやデコレータってなに?」
ワイ「それは知らんな。飾り…?調べてみるか」カチカチ
友人「なんかいっぱい出てきた。デコレータ、イテレータ、ジェネレー
タ…紛らわしいな」
ワイ「ほうほう」カチカチ
ワイ「ん?ワンライナー…?」カチカチ
ワイ「ファッ!?」
8
/デェェェェェン\
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
ワンライナーとは
❝ 世界には1行でプログラムを書くワンライナーという技
巧的プログラミングの世界があります。
ワンライナーと言われる言語の多くはPerlやRubyなので
すが、比較的委員長キャラのPythonでもワンライナーが
できます。
PEP8とZen of Pythonで綺麗になっている白Pythonの
世界に
Pythonでも1行で書いたよ!楽しい!!
✌('ω'✌ )三✌('ω')✌三( ✌'ω')✌
とのことらしいです。
ぶっちゃけ読みづらくなるだけじゃn
9
読み難いC言語ソースコード
コンテスト
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
闇Pythonista入門
ワンライナーの世界へようこそ
10
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
デコレータ
イテレータ・ジェネレータ
簡単に言うと
p  デコレータ:関数を引き取り、新たな関数を返す。
p  イテレータ:一連のデータ列(stream)を表現するオブジェ
クト。
p  ジェネレータ:イテレータを返す関数。
11
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
デコレータ
関数を引き取り、新たな関数を返す。

例)
12
def deco(func):	
print("deco")	
return "string"	
	
@deco	
def test():	
pass	
実行結果	
deco	
def deco(func):	
print("deco")	
return "string"	
	
def test():	
pass	
test = deco(test)	
等価
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
デコレータを引数に渡したり
def change_result(result):	
def receive_func(func):	
import functools	
@functools.wraps(func)	
def wrapper(*args, **kwargs):	
func(*args, **kwargs)	
return result	
return wrapper	
return receive_func	
	
@change_result(False)	
def foo():	
return True	
	
print(foo())	
デコレータの応用
13
デコレータをネストしたり
@d1	
@d2	
def func():	
pass	
実行結果	
False	
等
価
def func():	
pass	
func = d1(d2(func))
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
イテレータ
一連のデータ列(stream)を表現するオブジェクト。
イテレータオブジェクト自体は以下の2つのメソッドをサポート
する必要があります。これらのメソッドは2つ合わせてイテレー
タプロトコルを成します:
__iter__()	
イテレータオブジェクト自体を返します。このメソッドはコン
テナとイテレータの両方を for および in 文で使えるようにす
るために必要です。
next() ※	
コンテナ内の次の要素を返します。もう要素が残っていない場
合、例外 StopIteration を送出します。
※ Python3系では、__next__ に変更された。
14
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
イテレータ
例)
15
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
ジェネレータ
イテレータを返す関数。
❝ 通常の関数に似ていますが、return 文を使わず、代わりに for ルー
プで使ったり next() 関数で1つずつ取り出せる値の列を生成するため
に yield 文を使います。
❝ yield 文に到達するたびに関数の実行は実行状態(ローカル変数や実
行中の try 文などを含む)を保存して中断されます。
❝ ジェネレータが再開されるとき、(通常の関数が実行の度に初期状態
から開始するのに対して)中断した状態から実行を開始します。
ようするに
p  yield を使ってイテレータを返す。
p  中断しても中断した状態から実行できる。
16
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
ジェネレータ
例)
17
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
lambda
いわゆる無名関数。
構文:
lambda [arguments]: expression
18
func = lambda x: x ** 2	
def func(x):	
return x ** 2	
等価
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
リストの内包表記
リストを生成するための簡潔な方法。
❝ 式、続いて for 節、そしてその後ろに続くゼロ個以上の for
節または if 節からなります。
19
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
それでは、よいPythonライフを!
20
Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG
参考・出典
u  Twitter Streaming APIで420エラー ¦ CTOA日記
http://blog.livedoor.jp/hiroki0907/archives/51751089.html/	
u  闇Pythonista入門(Pythonワンライナーのテクニック集)
http://qiita.com/cocu/items/37bfdc0f24750127e7d3/	
u  Python 2.7 Documentation
http://docs.python.jp/2/library/index.html/	
u  Python ‒ デコレータ ¦ Lambda7 s Website
http://www17.atpages.jp/~lambda7/py/decorator.html/	
u  エキスパートPythonプログラミング(1) イテレータ、ジェネレータ、
ジェネレータ式 ¦ 作業記録/備忘録(仮)
http://d.hatena.ne.jp/nihohi/20120831/1346376992/	
u  Pythonの無名関数(lambda)の使い方 ¦ Life With Python
http://www.lifewithpython.com/2013/01/python-anonymous-function-
lambda.html	
u  マイナビニュース
http://news.mynavi.jp/
21

Mais conteúdo relacionado

Mais procurados

Shibuya JVM Groovy 20150418
Shibuya JVM Groovy 20150418Shibuya JVM Groovy 20150418
Shibuya JVM Groovy 20150418Uehara Junji
 
実行トレース間のデータの差異に基づくデータフロー解析手法の提案
実行トレース間のデータの差異に基づくデータフロー解析手法の提案実行トレース間のデータの差異に基づくデータフロー解析手法の提案
実行トレース間のデータの差異に基づくデータフロー解析手法の提案Kamiya Toshihiro
 
任意粒度機能モデルコードクローン検出手法のリファクタリング理解への適用の試み
任意粒度機能モデルコードクローン検出手法のリファクタリング理解への適用の試み任意粒度機能モデルコードクローン検出手法のリファクタリング理解への適用の試み
任意粒度機能モデルコードクローン検出手法のリファクタリング理解への適用の試みKamiya Toshihiro
 
ちょっと詳しくJavaScript 第4回【スコープとクロージャ】
ちょっと詳しくJavaScript 第4回【スコープとクロージャ】ちょっと詳しくJavaScript 第4回【スコープとクロージャ】
ちょっと詳しくJavaScript 第4回【スコープとクロージャ】株式会社ランチェスター
 
すごいHaskell 第7章 型や型クラスを自分で作ろう(後編)
すごいHaskell 第7章 型や型クラスを自分で作ろう(後編)すごいHaskell 第7章 型や型クラスを自分で作ろう(後編)
すごいHaskell 第7章 型や型クラスを自分で作ろう(後編)Nozomu Kaneko
 
Linq To Fun
Linq To FunLinq To Fun
Linq To Fundeflis
 
定理証明言語によるハードウェア検証
定理証明言語によるハードウェア検証定理証明言語によるハードウェア検証
定理証明言語によるハードウェア検証Shunji Nishimura
 
【java8 勉強会】 怖くない!ラムダ式, Stream API
【java8 勉強会】 怖くない!ラムダ式, Stream API【java8 勉強会】 怖くない!ラムダ式, Stream API
【java8 勉強会】 怖くない!ラムダ式, Stream APIdcomsolution
 
中3女子が狂える本当に気持ちのいい constexpr
中3女子が狂える本当に気持ちのいい constexpr中3女子が狂える本当に気持ちのいい constexpr
中3女子が狂える本当に気持ちのいい constexprGenya Murakami
 
おいしいLisp
おいしいLispおいしいLisp
おいしいLispKent Ohashi
 
xv6から始めるSPIN入門
xv6から始めるSPIN入門xv6から始めるSPIN入門
xv6から始めるSPIN入門Ryousei Takano
 
言語処理系入門€10
言語処理系入門€10言語処理系入門€10
言語処理系入門€10Kenta Hattori
 
ジェネリック関数の呼び出され方 #cocoa_kansai
ジェネリック関数の呼び出され方 #cocoa_kansaiジェネリック関数の呼び出され方 #cocoa_kansai
ジェネリック関数の呼び出され方 #cocoa_kansaiTomohiro Kumagai
 
データサイエンスワールドからC++を眺めてみる
データサイエンスワールドからC++を眺めてみるデータサイエンスワールドからC++を眺めてみる
データサイエンスワールドからC++を眺めてみるShintaro Fukushima
 
Real World OCamlを読んでLispと協調してみた
Real World OCamlを読んでLispと協調してみたReal World OCamlを読んでLispと協調してみた
Real World OCamlを読んでLispと協調してみたblackenedgold
 
(define)なしで再帰関数を定義する
(define)なしで再帰関数を定義する(define)なしで再帰関数を定義する
(define)なしで再帰関数を定義するblackenedgold
 

Mais procurados (20)

Sml#探検隊
Sml#探検隊Sml#探検隊
Sml#探検隊
 
Shibuya JVM Groovy 20150418
Shibuya JVM Groovy 20150418Shibuya JVM Groovy 20150418
Shibuya JVM Groovy 20150418
 
たのしい関数型
たのしい関数型たのしい関数型
たのしい関数型
 
実行トレース間のデータの差異に基づくデータフロー解析手法の提案
実行トレース間のデータの差異に基づくデータフロー解析手法の提案実行トレース間のデータの差異に基づくデータフロー解析手法の提案
実行トレース間のデータの差異に基づくデータフロー解析手法の提案
 
任意粒度機能モデルコードクローン検出手法のリファクタリング理解への適用の試み
任意粒度機能モデルコードクローン検出手法のリファクタリング理解への適用の試み任意粒度機能モデルコードクローン検出手法のリファクタリング理解への適用の試み
任意粒度機能モデルコードクローン検出手法のリファクタリング理解への適用の試み
 
ちょっと詳しくJavaScript 第4回【スコープとクロージャ】
ちょっと詳しくJavaScript 第4回【スコープとクロージャ】ちょっと詳しくJavaScript 第4回【スコープとクロージャ】
ちょっと詳しくJavaScript 第4回【スコープとクロージャ】
 
すごいHaskell 第7章 型や型クラスを自分で作ろう(後編)
すごいHaskell 第7章 型や型クラスを自分で作ろう(後編)すごいHaskell 第7章 型や型クラスを自分で作ろう(後編)
すごいHaskell 第7章 型や型クラスを自分で作ろう(後編)
 
Linq To Fun
Linq To FunLinq To Fun
Linq To Fun
 
定理証明言語によるハードウェア検証
定理証明言語によるハードウェア検証定理証明言語によるハードウェア検証
定理証明言語によるハードウェア検証
 
【java8 勉強会】 怖くない!ラムダ式, Stream API
【java8 勉強会】 怖くない!ラムダ式, Stream API【java8 勉強会】 怖くない!ラムダ式, Stream API
【java8 勉強会】 怖くない!ラムダ式, Stream API
 
kollectionの紹介
kollectionの紹介kollectionの紹介
kollectionの紹介
 
中3女子が狂える本当に気持ちのいい constexpr
中3女子が狂える本当に気持ちのいい constexpr中3女子が狂える本当に気持ちのいい constexpr
中3女子が狂える本当に気持ちのいい constexpr
 
おいしいLisp
おいしいLispおいしいLisp
おいしいLisp
 
xv6から始めるSPIN入門
xv6から始めるSPIN入門xv6から始めるSPIN入門
xv6から始めるSPIN入門
 
言語処理系入門€10
言語処理系入門€10言語処理系入門€10
言語処理系入門€10
 
Functional Way
Functional WayFunctional Way
Functional Way
 
ジェネリック関数の呼び出され方 #cocoa_kansai
ジェネリック関数の呼び出され方 #cocoa_kansaiジェネリック関数の呼び出され方 #cocoa_kansai
ジェネリック関数の呼び出され方 #cocoa_kansai
 
データサイエンスワールドからC++を眺めてみる
データサイエンスワールドからC++を眺めてみるデータサイエンスワールドからC++を眺めてみる
データサイエンスワールドからC++を眺めてみる
 
Real World OCamlを読んでLispと協調してみた
Real World OCamlを読んでLispと協調してみたReal World OCamlを読んでLispと協調してみた
Real World OCamlを読んでLispと協調してみた
 
(define)なしで再帰関数を定義する
(define)なしで再帰関数を定義する(define)なしで再帰関数を定義する
(define)なしで再帰関数を定義する
 

Semelhante a 研究会20140618:進捗と闇Pythonistaのワンライナーテクニックを少々

po-6. 繰り返し実行(ループ),ステップ実行
po-6. 繰り返し実行(ループ),ステップ実行po-6. 繰り返し実行(ループ),ステップ実行
po-6. 繰り返し実行(ループ),ステップ実行kunihikokaneko1
 
boost::shared_ptr tutorial
boost::shared_ptr tutorialboost::shared_ptr tutorial
boost::shared_ptr tutorialNU_Pan
 
研究会20140702:進捗報告
研究会20140702:進捗報告研究会20140702:進捗報告
研究会20140702:進捗報告Peinan ZHANG
 
Replace Output Iterator and Extend Range JP
Replace Output Iterator and Extend Range JPReplace Output Iterator and Extend Range JP
Replace Output Iterator and Extend Range JPAkira Takahashi
 
タダで始めるテストファースト入門 ~ C# Express + NUnit
タダで始めるテストファースト入門 ~ C# Express + NUnitタダで始めるテストファースト入門 ~ C# Express + NUnit
タダで始めるテストファースト入門 ~ C# Express + NUnitYasuhiko Yamamoto
 
Coq 20100208a
Coq 20100208aCoq 20100208a
Coq 20100208atmiya
 
The Why and How of Java8 at LINE Fukuoka
The Why and How of Java8 at LINE FukuokaThe Why and How of Java8 at LINE Fukuoka
The Why and How of Java8 at LINE FukuokaYouhei Nitta
 
Constexpr 中3女子テクニック
Constexpr 中3女子テクニックConstexpr 中3女子テクニック
Constexpr 中3女子テクニックGenya Murakami
 
Unity2015_No10_~UGUI&Audio~
Unity2015_No10_~UGUI&Audio~Unity2015_No10_~UGUI&Audio~
Unity2015_No10_~UGUI&Audio~CHY72
 
El text.tokuron a(2019).watanabe190613
El text.tokuron a(2019).watanabe190613El text.tokuron a(2019).watanabe190613
El text.tokuron a(2019).watanabe190613RCCSRENKEI
 
Using PyFoam as library(第25回オープンCAE勉強会@関西)
Using PyFoam as library(第25回オープンCAE勉強会@関西)Using PyFoam as library(第25回オープンCAE勉強会@関西)
Using PyFoam as library(第25回オープンCAE勉強会@関西)TatsuyaKatayama
 
PostgreSQLとpython
PostgreSQLとpythonPostgreSQLとpython
PostgreSQLとpythonSoudai Sone
 
Ryuの遊び方(pica8も併せてもっと楽しく)(2014/1/23修正版)
Ryuの遊び方(pica8も併せてもっと楽しく)(2014/1/23修正版)Ryuの遊び方(pica8も併せてもっと楽しく)(2014/1/23修正版)
Ryuの遊び方(pica8も併せてもっと楽しく)(2014/1/23修正版)hiroshi oshiba
 
T69 c++cli ネイティブライブラリラッピング入門
T69 c++cli ネイティブライブラリラッピング入門T69 c++cli ネイティブライブラリラッピング入門
T69 c++cli ネイティブライブラリラッピング入門伸男 伊藤
 
関数型言語&形式的手法セミナー(3)
関数型言語&形式的手法セミナー(3)関数型言語&形式的手法セミナー(3)
関数型言語&形式的手法セミナー(3)啓 小笠原
 
Lisp tutorial for Pythonista : Day 1
Lisp tutorial for Pythonista : Day 1Lisp tutorial for Pythonista : Day 1
Lisp tutorial for Pythonista : Day 1Ransui Iso
 

Semelhante a 研究会20140618:進捗と闇Pythonistaのワンライナーテクニックを少々 (20)

po-6. 繰り返し実行(ループ),ステップ実行
po-6. 繰り返し実行(ループ),ステップ実行po-6. 繰り返し実行(ループ),ステップ実行
po-6. 繰り返し実行(ループ),ステップ実行
 
boost::shared_ptr tutorial
boost::shared_ptr tutorialboost::shared_ptr tutorial
boost::shared_ptr tutorial
 
研究会20140702:進捗報告
研究会20140702:進捗報告研究会20140702:進捗報告
研究会20140702:進捗報告
 
Replace Output Iterator and Extend Range JP
Replace Output Iterator and Extend Range JPReplace Output Iterator and Extend Range JP
Replace Output Iterator and Extend Range JP
 
タダで始めるテストファースト入門 ~ C# Express + NUnit
タダで始めるテストファースト入門 ~ C# Express + NUnitタダで始めるテストファースト入門 ~ C# Express + NUnit
タダで始めるテストファースト入門 ~ C# Express + NUnit
 
Coq 20100208a
Coq 20100208aCoq 20100208a
Coq 20100208a
 
The Why and How of Java8 at LINE Fukuoka
The Why and How of Java8 at LINE FukuokaThe Why and How of Java8 at LINE Fukuoka
The Why and How of Java8 at LINE Fukuoka
 
Constexpr 中3女子テクニック
Constexpr 中3女子テクニックConstexpr 中3女子テクニック
Constexpr 中3女子テクニック
 
Unity2015_No10_~UGUI&Audio~
Unity2015_No10_~UGUI&Audio~Unity2015_No10_~UGUI&Audio~
Unity2015_No10_~UGUI&Audio~
 
El text.tokuron a(2019).watanabe190613
El text.tokuron a(2019).watanabe190613El text.tokuron a(2019).watanabe190613
El text.tokuron a(2019).watanabe190613
 
Introduction of Python
Introduction of PythonIntroduction of Python
Introduction of Python
 
Using PyFoam as library(第25回オープンCAE勉強会@関西)
Using PyFoam as library(第25回オープンCAE勉強会@関西)Using PyFoam as library(第25回オープンCAE勉強会@関西)
Using PyFoam as library(第25回オープンCAE勉強会@関西)
 
PostgreSQLとpython
PostgreSQLとpythonPostgreSQLとpython
PostgreSQLとpython
 
pi-6. 繰り返し
pi-6. 繰り返しpi-6. 繰り返し
pi-6. 繰り返し
 
CakeにTestがやってきた
CakeにTestがやってきたCakeにTestがやってきた
CakeにTestがやってきた
 
Ryuの遊び方(pica8も併せてもっと楽しく)(2014/1/23修正版)
Ryuの遊び方(pica8も併せてもっと楽しく)(2014/1/23修正版)Ryuの遊び方(pica8も併せてもっと楽しく)(2014/1/23修正版)
Ryuの遊び方(pica8も併せてもっと楽しく)(2014/1/23修正版)
 
T69 c++cli ネイティブライブラリラッピング入門
T69 c++cli ネイティブライブラリラッピング入門T69 c++cli ネイティブライブラリラッピング入門
T69 c++cli ネイティブライブラリラッピング入門
 
関数型言語&形式的手法セミナー(3)
関数型言語&形式的手法セミナー(3)関数型言語&形式的手法セミナー(3)
関数型言語&形式的手法セミナー(3)
 
Lisp tutorial for Pythonista : Day 1
Lisp tutorial for Pythonista : Day 1Lisp tutorial for Pythonista : Day 1
Lisp tutorial for Pythonista : Day 1
 
Rの高速化
Rの高速化Rの高速化
Rの高速化
 

Mais de Peinan ZHANG

単語分散表現を用いた多層 Denoising Auto-Encoder による評価極性分類
単語分散表現を用いた多層 Denoising Auto-Encoder による評価極性分類単語分散表現を用いた多層 Denoising Auto-Encoder による評価極性分類
単語分散表現を用いた多層 Denoising Auto-Encoder による評価極性分類Peinan ZHANG
 
EMNLP 2014: Opinion Mining with Deep Recurrent Neural Network
EMNLP 2014: Opinion Mining with Deep Recurrent Neural NetworkEMNLP 2014: Opinion Mining with Deep Recurrent Neural Network
EMNLP 2014: Opinion Mining with Deep Recurrent Neural NetworkPeinan ZHANG
 
COLING 2014: Joint Opinion Relation Detection Using One-Class Deep Neural Net...
COLING 2014: Joint Opinion Relation Detection Using One-Class Deep Neural Net...COLING 2014: Joint Opinion Relation Detection Using One-Class Deep Neural Net...
COLING 2014: Joint Opinion Relation Detection Using One-Class Deep Neural Net...Peinan ZHANG
 
20140801ACL2014読み会
20140801ACL2014読み会20140801ACL2014読み会
20140801ACL2014読み会Peinan ZHANG
 
研究会20140604:進捗とWWDCとコードの書き方を少々
研究会20140604:進捗とWWDCとコードの書き方を少々研究会20140604:進捗とWWDCとコードの書き方を少々
研究会20140604:進捗とWWDCとコードの書き方を少々Peinan ZHANG
 
研究会20140512:研究テーマ決めとvimを少々
研究会20140512:研究テーマ決めとvimを少々研究会20140512:研究テーマ決めとvimを少々
研究会20140512:研究テーマ決めとvimを少々Peinan ZHANG
 

Mais de Peinan ZHANG (6)

単語分散表現を用いた多層 Denoising Auto-Encoder による評価極性分類
単語分散表現を用いた多層 Denoising Auto-Encoder による評価極性分類単語分散表現を用いた多層 Denoising Auto-Encoder による評価極性分類
単語分散表現を用いた多層 Denoising Auto-Encoder による評価極性分類
 
EMNLP 2014: Opinion Mining with Deep Recurrent Neural Network
EMNLP 2014: Opinion Mining with Deep Recurrent Neural NetworkEMNLP 2014: Opinion Mining with Deep Recurrent Neural Network
EMNLP 2014: Opinion Mining with Deep Recurrent Neural Network
 
COLING 2014: Joint Opinion Relation Detection Using One-Class Deep Neural Net...
COLING 2014: Joint Opinion Relation Detection Using One-Class Deep Neural Net...COLING 2014: Joint Opinion Relation Detection Using One-Class Deep Neural Net...
COLING 2014: Joint Opinion Relation Detection Using One-Class Deep Neural Net...
 
20140801ACL2014読み会
20140801ACL2014読み会20140801ACL2014読み会
20140801ACL2014読み会
 
研究会20140604:進捗とWWDCとコードの書き方を少々
研究会20140604:進捗とWWDCとコードの書き方を少々研究会20140604:進捗とWWDCとコードの書き方を少々
研究会20140604:進捗とWWDCとコードの書き方を少々
 
研究会20140512:研究テーマ決めとvimを少々
研究会20140512:研究テーマ決めとvimを少々研究会20140512:研究テーマ決めとvimを少々
研究会20140512:研究テーマ決めとvimを少々
 

Último

知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 

Último (10)

知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 

研究会20140618:進捗と闇Pythonistaのワンライナーテクニックを少々

  • 1. Komachi Lab. M1 Peinan ZHANG 研究会 2014/06/18
  • 2. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG 進捗というか 今取り組んでいること&近々やること 2
  • 3. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG 前回のTODOs 共同研究でのSurvey p  Crawlingを修正(今週中に) n Streaming APIを使うことに •  たまに途切れる問題を突き止める n filterとREST Searchを併用 p  盛り上がりをどう評価するか(今週中に) 対話処理の勉強 p  20日までにもらった本を読破 n まだ途中 筋トレ p  ベンチプレス40kgを10回3セット目指して n キツかったんで35kgから・・・ 3
  • 4. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG Crawlerが止まったエラー分析 1回目(6/10, 17:30):420エラー p  複数のIPから同じアカウントを使ってStreaming APIにアクセ スすると発生するらしい。 p  でもそれをやった心当りがない・・・ 2回め(6/14, 08:40):ライブラリのエラー p  勢いに耐え切れなかった? 4
  • 5. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG 共同研究 5 大 体 の 流 れ は 決 ま っ た
  • 6. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG TODOs 共同研究 p  Crawlerの安定化 p  引き続きSurvey n 極性分類 n 盛り上がり評価 p  評価対象データの収集 対話処理 p  引き続きお勉強 6 小テスト作成・採点 p  オートマトンと言語理論 SLP予習 p  4.3, 4.4 筋トレ p  ベンチ35kgを10回3セット
  • 7. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG おまけ(本編) そろそろネタが尽きてきた・・・ 7
  • 8. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG 先週の出来事 友人「お前ってpython使うんだよね」 ワイ「一応ね」 友人「んじゃpython教えて」 ワイ「ええで」 友人「そいやデコレータってなに?」 ワイ「それは知らんな。飾り…?調べてみるか」カチカチ 友人「なんかいっぱい出てきた。デコレータ、イテレータ、ジェネレー タ…紛らわしいな」 ワイ「ほうほう」カチカチ ワイ「ん?ワンライナー…?」カチカチ ワイ「ファッ!?」 8 /デェェェェェン\
  • 9. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG ワンライナーとは ❝ 世界には1行でプログラムを書くワンライナーという技 巧的プログラミングの世界があります。 ワンライナーと言われる言語の多くはPerlやRubyなので すが、比較的委員長キャラのPythonでもワンライナーが できます。 PEP8とZen of Pythonで綺麗になっている白Pythonの 世界に Pythonでも1行で書いたよ!楽しい!! ✌('ω'✌ )三✌('ω')✌三( ✌'ω')✌ とのことらしいです。 ぶっちゃけ読みづらくなるだけじゃn 9 読み難いC言語ソースコード コンテスト
  • 10. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG 闇Pythonista入門 ワンライナーの世界へようこそ 10
  • 11. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG デコレータ イテレータ・ジェネレータ 簡単に言うと p  デコレータ:関数を引き取り、新たな関数を返す。 p  イテレータ:一連のデータ列(stream)を表現するオブジェ クト。 p  ジェネレータ:イテレータを返す関数。 11
  • 12. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG デコレータ 関数を引き取り、新たな関数を返す。 例) 12 def deco(func): print("deco") return "string" @deco def test(): pass 実行結果 deco def deco(func): print("deco") return "string" def test(): pass test = deco(test) 等価
  • 13. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG デコレータを引数に渡したり def change_result(result): def receive_func(func): import functools @functools.wraps(func) def wrapper(*args, **kwargs): func(*args, **kwargs) return result return wrapper return receive_func @change_result(False) def foo(): return True print(foo()) デコレータの応用 13 デコレータをネストしたり @d1 @d2 def func(): pass 実行結果 False 等 価 def func(): pass func = d1(d2(func))
  • 14. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG イテレータ 一連のデータ列(stream)を表現するオブジェクト。 イテレータオブジェクト自体は以下の2つのメソッドをサポート する必要があります。これらのメソッドは2つ合わせてイテレー タプロトコルを成します: __iter__() イテレータオブジェクト自体を返します。このメソッドはコン テナとイテレータの両方を for および in 文で使えるようにす るために必要です。 next() ※ コンテナ内の次の要素を返します。もう要素が残っていない場 合、例外 StopIteration を送出します。 ※ Python3系では、__next__ に変更された。 14
  • 15. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG イテレータ 例) 15
  • 16. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG ジェネレータ イテレータを返す関数。 ❝ 通常の関数に似ていますが、return 文を使わず、代わりに for ルー プで使ったり next() 関数で1つずつ取り出せる値の列を生成するため に yield 文を使います。 ❝ yield 文に到達するたびに関数の実行は実行状態(ローカル変数や実 行中の try 文などを含む)を保存して中断されます。 ❝ ジェネレータが再開されるとき、(通常の関数が実行の度に初期状態 から開始するのに対して)中断した状態から実行を開始します。 ようするに p  yield を使ってイテレータを返す。 p  中断しても中断した状態から実行できる。 16
  • 17. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG ジェネレータ 例) 17
  • 18. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG lambda いわゆる無名関数。 構文: lambda [arguments]: expression 18 func = lambda x: x ** 2 def func(x): return x ** 2 等価
  • 19. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG リストの内包表記 リストを生成するための簡潔な方法。 ❝ 式、続いて for 節、そしてその後ろに続くゼロ個以上の for 節または if 節からなります。 19
  • 20. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG それでは、よいPythonライフを! 20
  • 21. Komachi Lab. M1 Peinan ZHANGKomachi Lab. M1 Peinan ZHANG 参考・出典 u  Twitter Streaming APIで420エラー ¦ CTOA日記 http://blog.livedoor.jp/hiroki0907/archives/51751089.html/ u  闇Pythonista入門(Pythonワンライナーのテクニック集) http://qiita.com/cocu/items/37bfdc0f24750127e7d3/ u  Python 2.7 Documentation http://docs.python.jp/2/library/index.html/ u  Python ‒ デコレータ ¦ Lambda7 s Website http://www17.atpages.jp/~lambda7/py/decorator.html/ u  エキスパートPythonプログラミング(1) イテレータ、ジェネレータ、 ジェネレータ式 ¦ 作業記録/備忘録(仮) http://d.hatena.ne.jp/nihohi/20120831/1346376992/ u  Pythonの無名関数(lambda)の使い方 ¦ Life With Python http://www.lifewithpython.com/2013/01/python-anonymous-function- lambda.html u  マイナビニュース http://news.mynavi.jp/ 21