元Facebookエンジニアが語るイノベーション教材

お久しぶりです、ロードローラーです。

先日、元Facebookエンジニアのスピーチを聴く機会がありました。内容はイノベーションを起こす組織作りについてです。

冒頭に彼は「イノベーションに関して教材がたくさん出てますね、立派なハードカバーの本もあります。」と言いました。たしかにこの類の書籍は溢れるほど出版されています。

 

で、そこからズバッと一言「読まなくていいです」と切り捨てました。

・・・・ ( ゚д゚)エッ!

続いての主張はこうです

「どのように考え、どのように働くのかという習慣を社員に浸透させるというときに、まとめるのに数百ページもかかるようなノウハウを他人が実践できるわけがない。」

これは私、けっこう納得。

たしかに辞書的に使う専門書ならともかく、そうでない本が丸ごと役に立つことって少ないんですよね。例えば、以前にエディ・ジョーンズの本を読んで気付きを得たことがありますが、僕の行動を変えるに至った内容はたった数行のエディさんの言葉でした。(そのたった数行に出会うために僕は本を読んだわけですが、この考えをチームに浸透させるためにわざわざまた本を読ませる必要はありませんね。)

スピーチの内容に話を戻しますが「大切なのはシンプルな問い」と述べていました。例えばFacebookでは「What would you do if you weren’t afraid?」という「失敗を恐れないなら君はどう行動する?(⇒それがやるべきことだ)」というシンプルかつ強烈なメッセージを大切にしているそうです。

そしてFacebook社では、この短い問いをわざわざ本になんてせずに社内の壁に直接書いているそうです。そして見事に浸透。

日本企業には社憲が定められていることが多いですが、それはそれで大切にしつつ、何百ページの本を写真に読ませる前に、行動指針となるようなシンプルな問いをぶつけてみると良いかもしれません。

Pythonでテキストを1行ずつ読み込む

なんかいっつもググってる気がするのでメモしておく

以上

ValueError: An operation has `None` for gradient. Please make sure that all of your ops have a gradient defined (i.e. are differentiable). Common ops without gradient: K.argmax, K.round, K.eval.

Q.「kerasで次のErrorがでるときの対処」

A.「原因はlossを計算するときに通過していないlayerが存在すること」

特に分岐型のネットワークを組んだときに発生しやすいです。Classificationタスクのニューラスネットワークを組んで、自己教示学習やAutoencoderで中間層を事前に学習するときに、classificationのlossを設定していないとClassification部分で「勾配が計算できません!」と怒られるわけです。

とはいっても、事前学習のときにはClassification部分を学習せさたくないのどうするか?

こんなときはloss-weightをゼロにしたり、常にゼロをreturnするダミーのloss関数を用意しておきましょう。

How to Display image as grayscale using matplotlib ??

UserWarning: Discrepancy between trainable weights and collected trainable weights, did you set `model.trainable` without calling `model.compile` after ? ‘Discrepancy between trainable weights and collected trainable’

 

UserWarning: Discrepancy between trainable weights and collected trainable weights, did you set model.trainable without calling model.compile after ? 'Discrepancy between trainable weights and collected trainable'

 

Solution: You should define layers before define models, and setting ‘trainable’ each time

kerasで複数の出力とLOSS関数を持つモデルを生成

ClassificationだったりReconstructionだたり1つのモデルで2つ以上の出力やLOSS関数を適応したモデルが近年は増えてきました。となると次のような実装が必要になってきます。

・1つのモデルで複数の値を出力したい

・モデルの複数出力に異なるLOSS関数を設けたい

 

Kerasだと簡単に実装できます。

XREAサーバのSSL化

 

条件

  • XREAサーバを利用中
  • VALUE-DOMAINで独自ドメインを登録済
  • WordPressを使用

 

設定その1

  • XREA.COMの旧コンパネのメニューから「ドメインウェブ」を開く
  • Mainに「blank」、SSL用ドメインのSub6に独自ドメインを設定(私の場合は「r2d.info」)
  • 「すべてのドメインでAレコードのチェックを行わない(強制設定)」のチェックを外す
  • 「ドメイン設定」

 

設定その2

  • XREA.COMの新コンパネのメニューから「サイト設定」を開く
  • 独自ドメインの方で「サイト設定の変更」
  • 同期設定⇒「する」
  • SSL⇒「無料SSL」
  • 「サイト設定を変更する」
  • 20分ほど待つ

 

最後に、WordPressプラグインのReally Simple SSLをインストールして有効化すれば完了です