tensorflow真难用

w
wdong
楼主 (未名空间)

想加一个regularization,找来找去没有文档说明应该怎么加。
我在搞一个定制化网络,用GradientTape训练,找不到文档。
看源代码吧,绕来绕去,又是tf.keras,又是tf.python.keras。
活该被取代了。

tf1有个collection机制,往里加最后get_total_loss就完了
tf2不知道怎么弄。

我在tf1上invest太多了,现在不上不下的真是难受死了。

l
lightroom

同感。我是这么加的
for variable in model.trainable_variables:
if variable.name in ():
...
但v2的变量必须是resourceful, 所以必须先初始化再加regulaization



l
lightroom

tf v2最大的失败是拥抱keras. model building和training loops应该是分开的。
keras给混在一起了。

但是拥抱keras,google又发现了新问题: Google的编程习惯是从protobuf到令一个
protobuf, 不管好不好,至少是严谨的。后来他们发现没法serialize keras model
class的对象,哈哈,还乱着呢。目前google research很多都跳船jax了
w
wdong

这个jax是theano回魂吗? 真是有点学不动了。

【 在 lightroom (吃一条鱼,思考一个问题,法号三丰) 的大作中提到: 】
: tf v2最大的失败是拥抱keras. model building和training loops应该是分开的。
: keras给混在一起了。
: 但是拥抱keras,google又发现了新问题: Google的编程习惯是从protobuf到令一个
: protobuf, 不管好不好,至少是严谨的。后来他们发现没法serialize keras model : class的对象,哈哈,还乱着呢。目前google research很多都跳船jax了

l
lightroom

jax 是functional programming, immutable的路数。底层设计还是不错的,除了
compiler我不懂,其他不清楚的比较容易看懂代码,因为jax本身没多少代码。它把和
cuda相关单独编译出来,所以jax本身不和cuda版本绑定,这是个很大的优点。缺点是
没有统一的high level抽象,google好像就有3个,我趋向用flax. 我自己还没正式用
jax 写项目,只是在预研阶段

【在 wdong(万事休)的大作中提到:】
:这个jax是theano回魂吗? 真是有点学不动了。


C
Caravel

我是菜鸟,当年看TF,就发现这么大一个公司,竟然拿不出一个像样的manual。要么就是一个个case,要么就是code自动生成的网页。

【 在 wdong (万事休) 的大作中提到: 】
: 想加一个regularization,找来找去没有文档说明应该怎么加。
: 我在搞一个定制化网络,用GradientTape训练,找不到文档。
: 看源代码吧,绕来绕去,又是tf.keras,又是tf.python.keras。
: 活该被取代了。
: tf1有个collection机制,往里加最后get_total_loss就完了
: tf2不知道怎么弄。
: 我在tf1上invest太多了,现在不上不下的真是难受死了。

L
Liber8

pytorch 非常好用
【 在 wdong (万事休) 的大作中提到: 】
: 想加一个regularization,找来找去没有文档说明应该怎么加。
: 我在搞一个定制化网络,用GradientTape训练,找不到文档。
: 看源代码吧,绕来绕去,又是tf.keras,又是tf.python.keras。
: 活该被取代了。
: tf1有个collection机制,往里加最后get_total_loss就完了
: tf2不知道怎么弄。
: 我在tf1上invest太多了,现在不上不下的真是难受死了。

n
netghost

Google沒有好的軟件開發taste,我從來沒有覺得google的任何一個開發工具或者程序
庫能叫得上好用。google的強項從開始到現在只有一個就是搭服務,which it用了無數莫名其妙的東西來掩蓋it賺錢的關鍵所在。

他們把Bell Labs的人找去了,都只能搞出一個Go,which是google項目裏面taste最好
的,但是也就那樣。所以it的DNA是有問題的。
【 在 wdong (万事休) 的大作中提到: 】
: 想加一个regularization,找来找去没有文档说明应该怎么加。
: 我在搞一个定制化网络,用GradientTape训练,找不到文档。
: 看源代码吧,绕来绕去,又是tf.keras,又是tf.python.keras。
: 活该被取代了。
: tf1有个collection机制,往里加最后get_total_loss就完了
: tf2不知道怎么弄。
: 我在tf1上invest太多了,现在不上不下的真是难受死了。

s
sanwadie

严重同意。go还不错原来看dart/flutter感觉不错,最近摊子铺大了,也开始乱搞了。

用狗东西真需要提心吊胆,投资作废

【 在 netghost (Up to Isomorphism) 的大作中提到: 】
: Google沒有好的軟件開發taste,我從來沒有覺得google的任何一個開發工具或者程序
: 庫能叫得上好用。google的強項從開始到現在只有一個就是搭服務,which it用了無數
: 莫名其妙的東西來掩蓋it賺錢的關鍵所在。
: 他們把Bell Labs的人找去了,都只能搞出一個Go,which是google項目裏面taste最好
: 的,但是也就那樣。所以it的DNA是有問題的。

g
guvest

话说回来。越难用的东西,学会用了,也是一个竞争力。目前tf还是无法替代的。
d
dumbCoder

想起以前王垠吐槽PyTorch的源码http://www.yinwang.org/blog-cn/2020/02/05/how-to-read-code

你们这种Deep Learning大牛+自己当老板,不能自己写一份自己的DL lib么?
自己写的话,有多大工作量?

我觉得长期来看,"追新式"的捣鼓"著名xx框架"是我们"打工人"干的事情,
因为说起推广"最主流的xx"在公司内部是政治正确,并且不用负责任的.

自己当老板的话(比如你wdong), 很多时候lib自己写的话, 长期收益最高.

【 在 wdong (万事休) 的大作中提到: 】
: 想加一个regularization,找来找去没有文档说明应该怎么加。
: 我在搞一个定制化网络,用GradientTape训练,找不到文档。
: 看源代码吧,绕来绕去,又是tf.keras,又是tf..keras。
: 活该被取代了。
: tf1有个collection机制,往里加最后get_total_loss就完了
: tf2不知道怎么弄。
: 我在tf1上invest太多了,现在不上不下的真是难受死了。

d
dumbCoder

过几年该被淘汰还是死得快
CS工业界嘛... 就是TMD时尚界...

【 在 guvest (我爱你老婆Anna) 的大作中提到: 】
: 话说回来。越难用的东西,学会用了,也是一个竞争力。目前tf还是无法替代的。

d
dumbCoder

不喜欢 Dart/flutter
Dart用过一会儿, 感觉像是个融合了JS和Java的怪胎...
Dart的异步+错误处理,乱糟糟的. Dart1和2还乱的不一样...
Flutter嘛, 就看他爹Google推广力度了. 常常宣传可以比美游戏引擎的渲染效率和FPS, 问题是...我为啥不直接用Unity/UE4? 就因为Dart/Flutter自带的不成熟的UI
components用着很爽...? 除了爹以为, 这个组合没啥竞争力.

【 在 sanwadie (三娃爹) 的大作中提到: 】
: 严重同意。go还不错原来看dart/flutter感觉不错,最近摊子铺大了,也开始乱搞了。
: 用狗东西真需要提心吊胆,投资作废

g
guvest

写容易。测试花时间。更重要的是,维护需要长期的投入。另外api设计是很难的事,
众口难调。性能优化与硬件有关,也是无底洞。

【 在 dumbCoder(HumbleCoder 不懂就问-_-) 的大作中提到: 】
<br>: 想起以前王垠吐槽PyTorch的源码
<br>: http://www.yinwang.org/blog-cn/2020/02/05/how-to-read-code
<br>: 你们这种Deep Learning大牛 自己当老板,不能自己写一份自己的DL lib么?
<br>: 自己写的话,有多大工作量?
<br>: 我觉得长期来看,"追新式"的捣鼓"著名xx框架"是我们"打工人"干的事情,
<br>: 因为说起推广"最主流的xx"在公司内部是政治正确,并且不用负责任的.
<br>: 自己当老板的话(比如你wdong), 很多时候lib自己写的话, 长期收益最高.
<br>

d
dumbCoder

首先写个自己容易懂,容易改,用起来舒服的

【 在 guvest (我爱你老婆Anna) 的大作中提到: 】
: 写容易。测试花时间。更重要的是,维护需要长期的投入。另外api设计是很难的事,
: 众口难调。性能优化与硬件有关,也是无底洞。
:
: 想起以前王垠吐槽PyTorch的源码
:
: http://www.yinwang.org/blog-cn/2020/02/05/how-to-read-code
:
: 你们这种Deep Learning大牛 自己当老板,不能自己写一份自己的DL lib
: 么?
:
: 自己写的话,有多大工作量?
:
: 我觉得长期来看,"追新式"的捣鼓"著名xx框架"是
: 我们"打工人"干的事情,
:
: 因为说起推广"最主流的xx"在公司内部是政治正确,并且不用
: ...................

w
wdong

我也不是没写过。写了只有我一个人用,没法和生态抗衡。

【 在 dumbCoder (HumbleCoder 不懂就问-_-) 的大作中提到: 】
: 想起以前王垠吐槽PyTorch的源码
: http://www.yinwang.org/blog-cn/2020/02/05/how-to-read-code
: 你们这种Deep Learning大牛+自己当老板,不能自己写一份自己的DL lib么?
: 自己写的话,有多大工作量?
: 我觉得长期来看,"追新式"的捣鼓"著名xx框架"是我们"打工人"干的事情,
: 因为说起推广"最主流的xx"在公司内部是政治正确,并且不用负责任的.
: 自己当老板的话(比如你wdong), 很多时候lib自己写的话, 长期收益最高.

s
sanwadie


unity学习难度大,开发比较复杂,开发那些简单的商务软件不划算。flutter看半天教程就可以干。

dart的异步估计抄袭的。我先用了flutter,然后发现python的异步coro一个路数。

另外写一次代码,ios,安卓,win,macos,linux,web 全部搞定。亲测。这个目前仅此一家。

【 在 dumbCoder (HumbleCoder 不懂就问-_-) 的大作中提到: 】
: 不喜欢 Dart/flutter
: Dart用过一会儿, 感觉像是个融合了JS和Java的怪胎...
: Dart的异步+错误处理,乱糟糟的. Dart1和2还乱的不一样...
: Flutter嘛, 就看他爹Google推广力度了. 常常宣传可以比美游戏引擎的渲染效率和
FPS
: , 问题是...我为啥不直接用Unity/UE4? 就因为Dart/Flutter自带的不成熟的UI
: components用着很爽...? 除了爹以为, 这个组合没啥竞争力.

g
ggggwan

Flutter还是不错,写手机app超级快
g
ggggwan

狗家很多代码写的极其绕,Webrtc就是,很多代码乱糟糟的一团,最崩溃的就是用它的语音引擎,初始化后居然检查是否在主线程中运行的,功能代码和线程检查搞在一起,匪夷所思。
l
lshtar

在优化器里面加
d
dumbCoder

"""
另外写一次代码,ios,安卓,win,macos,linux,web 全部搞定。
亲测。这个目前仅此一家。
"""
你说这些主流3D游戏引擎都能搞定, 并且比flutter成熟.
游戏引擎是有3D&math门槛, 但是跨过了以后, 比用flutter那些"高级UI components"
逻辑清晰多了, 是保值的技术投资. flutter这种东西嘛...过几年可能就过气了,风险
大.

【 在 sanwadie (三娃爹) 的大作中提到: 】
: unity学习难度大,开发比较复杂,开发那些简单的商务软件不划算。flutter看半天教
: 程就可以干。
: dart的异步估计抄袭的。我先用了flutter,然后发现的异步coro一个路数。
: 另外写一次代码,ios,安卓,win,macos,linux,web 全部搞定。亲测。这个目前仅
: 此一家。
: FPS

b
bihai

gMock如何?值得学吗?

【 在 netghost (Up to Isomorphism) 的大作中提到: 】
: Google沒有好的軟件開發taste,我從來沒有覺得google的任何一個開發工具或者程序
: 庫能叫得上好用。google的強項從開始到現在只有一個就是搭服務,which it用了無數
: 莫名其妙的東西來掩蓋it賺錢的關鍵所在。
: 他們把Bell Labs的人找去了,都只能搞出一個Go,which是google項目裏面taste最好
: 的,但是也就那樣。所以it的DNA是有問題的。

d
desheng

您感觉unity是好的游戏引擎吗?

【 在 dumbCoder (HumbleCoder 不懂就问-_-) 的大作中提到: 】
: """
: 另外写一次代码,ios,安卓,win,macos,linux,web 全部搞定。
: 亲测。这个目前仅此一家。
: """
: 你说这些主流3D游戏引擎都能搞定, 并且比flutter成熟.
: 游戏引擎是有3D&math门槛, 但是跨过了以后, 比用flutter那些"高级UI components"
: 逻辑清晰多了, 是保值的技术投资. flutter这种东西嘛...过几年可能就过气了,风险
: 大.

s
sanwadie

是好的游戏引擎,也很保值。那位兄弟说的我都认同。

但是用来开发商业应用,也很酷。就是太费力了。当然如果你是快手+熟手,另当别论

【 在 desheng (你回来了~~) 的大作中提到: 】
: 您感觉unity是好的游戏引擎吗?

d
desheng

谢谢

【 在 sanwadie (三娃爹) 的大作中提到: 】
: 是好的游戏引擎,也很保值。那位兄弟说的我都认同。
: 但是用来开发商业应用,也很酷。就是太费力了。当然如果你是快手+熟手,另当别论

s
silverhawk

国内有一个oneflow,不知道有人用过吗,我觉得看起来做的还不错
【 在 dumbCoder (HumbleCoder 不懂就问-_-) 的大作中提到: 】
: 想起以前王垠吐槽PyTorch的源码
: http://www.yinwang.org/blog-cn/2020/02/05/how-to-read-code
: 你们这种Deep Learning大牛+自己当老板,不能自己写一份自己的DL lib么?
: 自己写的话,有多大工作量?
: 我觉得长期来看,"追新式"的捣鼓"著名xx框架"是我们"打工人"干的事情,
: 因为说起推广"最主流的xx"在公司内部是政治正确,并且不用负责任的.
: 自己当老板的话(比如你wdong), 很多时候lib自己写的话, 长期收益最高.

s
silverhawk

狗家代码最好的应该是infra那些,比如levelDB之类
【 在 ggggwan (ggggwan) 的大作中提到: 】
: 狗家很多代码写的极其绕,Webrtc就是,很多代码乱糟糟的一团,最崩溃的就是用它的
: 语音引擎,初始化后居然检查是否在主线程中运行的,功能代码和线程检查搞在一起,
: 匪夷所思。