新人SEの学習記録

14年度入社SEの学習記録用に始めたブログです。気づけば社会人3年目に突入。

学習記録

学習記録:ゼロから作るDeepLearning

参考文献 ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装 3章:ニューラルネットワーク(続き) 出力層の設計 ソフトマックス関数 機械学習の問題は,分類問題(データがどのクラスに属するか)と回帰問題(ある入力データから数値…

学習記録:ゼロから作るDeepLearning

参考文献 ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装 3章:ニューラルネットワーク(続き) 多次元配列の計算 まずはNumPyによる多次元配列の計算について学ぶ。 2次元配列=行列の内積を計算してみる。内積の計算にはdot関数…

学習記録:ゼロから作るDeepLearning

参考文献 ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装 3章:ニューラルネットワーク パーセプトロンからニューラルネットワーク 2層のニューラルネットワークでは,0層が入力層,1層が中間層,2層が出力層と呼ばれる。 パーセプ…

学習記録:ゼロから作るDeepLearning

参考文献 ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装作者: 斎藤康毅出版社/メーカー: オライリージャパン発売日: 2016/09/24メディア: 単行本(ソフトカバー)この商品を含むブログ (10件) を見る 2章:パーセプトロン パーセ…

学習記録:ドワンゴ 新人向けScala研修テキスト

参考文献 http://dwango.github.io/scala_text/index.htmldwango.github.io 19. Javaとの相互運用 ScalaとJava ScalaはJVM上で動作するため,JavaのライブラリのほとんどをそのままScalaから呼び出すことができる。 また,現状ではJavaの機能を利用せざるを…

学習記録:ドワンゴ 新人向けScala研修テキスト

参考文献 http://dwango.github.io/scala_text/index.htmldwango.github.io 18. テスト ユニットテスト ここでは,ユニットテストを小さな単位で自動実行できるテストと定義して解説を行う。 ユニットテストを行う理由は大きく3つあげられる。 実装前に満た…

学習記録:ドワンゴ 新人向けScala研修テキスト

参考文献 http://dwango.github.io/scala_text/index.htmldwango.github.io 17. Future/Promiseについて 非同期プログラミングにおいて,終了しているかどうかわからない処理結果を抽象化した型で,Futureは未来の結果を表し,Promiseは一度だけ,成功あるい…

学習記録:ドワンゴ 新人向けScala研修テキスト

参考文献 http://dwango.github.io/scala_text/index.htmldwango.github.io 15. Implicit Scalaにはimplicit Conversion(暗黙の型変換)とimplicit parameter(暗黙のパラメータ)という機能がある。 この2つを使いこなすことで,Scalaでのプログラミングの…

学習記録:ドワンゴ 新人向けScala研修テキスト

参考文献 http://dwango.github.io/scala_text/index.htmldwango.github.io 14. エラー処理 Scalaでのエラー処理は例外を使う方法と,Option/Either/Tryなどのデータ型を使う方法を状況に応じて使い分ける。 まずは扱う必要のあるエラーとエラー処理の性質に…

学習記録:ドワンゴ 新人向けScala研修テキスト

参考文献 http://dwango.github.io/scala_text/index.htmldwango.github.io 13. ケースクラスとパターンマッチング パターンマッチングはCやJavaのswitch文に似ているが,より強力な機能である。 パターンマッチングの真価を発揮するには,ケースクラスによ…

学習記録:ドワンゴ 新人向けScala研修テキスト

参考文献 http://dwango.github.io/scala_text/index.htmldwango.github.io 12. Scalaのコレクションライブラリ Scalaには一度作成したら変更できないimmutableなコレクションと変更できる通常のmutableなコレクションがある。 Scalaで関数型プログラミング…

学習記録:ドワンゴ 新人向けScala研修テキスト

参考文献 dwango.github.io 11. 関数 Scalaの関数 Scalaの関数は,Function0〜22までのトレイトの無名サブクラスのインスタンスになる。 例えば,2つの整数を取って加算した値を返すadd関数は次のように定義される。 scala> val add = new Function2[Int, In…

学習記録:ドワンゴ 新人向けScala研修テキスト

参考文献 dwango.github.io 10. 型パラメータと変位指定 型パラメータ クラスは0個以上の型をパラメータとして取ることができる。 これは,クラスを作る時点では何の型か特定できない場合を表したいときに役立つ。 class クラス名[型パラメータ1, ... 型パラ…

学習記録:ドワンゴ 新人向けScala研修テキスト

参考文献 dwango.github.io 9. トレイト プログラムの分割(モジュール化)と組み立て(合成)は,オブジェクト指向プログラミングでも関数型プログラミングにおいても重要な設計の概念になる。 Scalaのオブジェクト指向プログラミングにおけるモジュール化…

学習記録:ドワンゴ 新人向けScala研修テキスト

参考文献 dwango.github.io 8. オブジェクト Scalaでは全ての値がオブジェクトであり,全てのメソッドは何らかのオブジェクトに所属している。 そのため,Javaのようにクラスに属するstaticフィールド/メソッドを作成することはできない。 その代わりといっ…

学習記録:ドワンゴ 新人向けScala研修テキスト

参考文献 dwango.github.io 7. クラス クラス定義 class クラス名 (コンストラクタ引数: コンストラクタ引数の型, ... ) { 0個以上のフィールド定義またはメソッド定義 } 例えば,点を表すクラスPointは以下のように定義できる。 class Point(_x: Int, _y: I…

学習記録:ドワンゴ 新人向けScala研修テキスト

あまりにサボっていたのでリハビリがてら。 参考文献 dwango.github.io 6. Scalaの制御構文 構文,式,文 構文:プログラムが構造を持つためのルール 式:プログラムの構成部分のうち,評価することで値になるもの 文:プログラムの構成部分のうち,評価して…

学習記録:ドワンゴ 新人向けScala研修テキスト

あまりにサボっていたのでリハビリがてら。 参考文献 dwango.github.io 4. sbtでプログラムをコンパイル・実行する 以下のディレクトリ構成でプログラムを作成する。 sandbox ├─ HelloWorld.scala └─ build.sbtHelloWorld.scalaは以下のとおり。 object Hell…

学習記録:Docker

参考文献 Dockerコンテナ実践検証 (Think IT Books)作者: 佐藤司,冨永善視,森元敏雄出版社/メーカー: インプレス発売日: 2015/07/24メディア: Kindle版この商品を含むブログを見る 第1章 Dockerが注目されている理由を探る サーバ仮想化方式ごとの特徴比較 …

学習記録:Docker

参考文献 Docker実践入門――Linuxコンテナ技術の基礎から応用まで (Software Design plus) 第4章 Dockerの内部構造と関連ツール Atomic Hostの利用 Atomic Hostの特徴 Atomic Hostは,Docker専用のホストLinux環境である。これまではCentOS7にDockerをインス…

学習記録:Docker

参考文献 Docker実践入門――Linuxコンテナ技術の基礎から応用まで (Software Design plus) 第4章 Dockerの内部構造と関連ツール Kubernetesによるオーケストレーション Kubernetesのアーキテクチャ Kubernetesの環境を構成するサーバ群は,以下のようになる。…

学習記録:Docker

参考文献 Docker実践入門――Linuxコンテナ技術の基礎から応用まで (Software Design plus) 第4章 Dockerの内部構造と関連ツール Dockerの内部構造 コンテナ内部のプロセス管理 コンテナ内部で稼働するプロセスには,それぞれに独立したプロセステーブルが割当…

学習記録:Docker

参考文献 Docker実践入門――Linuxコンテナ技術の基礎から応用まで (Software Design plus) 第3章 Dockerコマンドリファレンス dockerデーモンの管理 CentOS7環境では,systemctlコマンドでdockerサービスを起動する。 // dockerサービスの起動/停止/再起動 # …

学習記録:Docker

参考文献 Docker実践入門――Linuxコンテナ技術の基礎から応用まで (Software Design plus) 第2章 Dockerの利用方法 (基本的な使い方の部分は省略) 複数コンテナの連携活用 ここでは,複数のコンテナを連携したアプリケーションを構築する方法を説明する。 …

学習記録:Docker/今後の予定

参考文献 Docker実践入門――Linuxコンテナ技術の基礎から応用まで (Software Design plus)作者: 中井悦司出版社/メーカー: 技術評論社発売日: 2015/09/26メディア: 大型本この商品を含むブログ (1件) を見る 第1章 Docker入門 Dockerの利用体系 アプリケーシ…

学習記録:Scala関数型デザイン 第8章

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第8章:プロパティベースのテスト(続き) データ型と関数の選択 ジェネレータの意味とAPI Gen[A]がA型の値を生成する方法を知っている何かであることは既に確…

学習記録:Scala関数型デザイン 第8章

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第8章:プロパティベースのテスト(続き) データ型と関数の選択 API:最初のコード テスト用のライブラリで使用するデータ型はどのようなものだろうか。 定義…

学習記録:Scala関数型デザイン 第8章

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第8章:プロパティベースのテスト 本章では,プロパティベースのテストを可能にするためのシンプルながら強力なライブラリに取り組む。 こうしたライブラリの…

学習記録:Scala関数型デザイン 第7章

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第7章:純粋関数型の並列処理(続き) コンビネータを最も汎用的な形式に改良する 関数型の設計は反復的な作業になる。APIを書き出し,プロトタイプを実装した…

学習記録:Scala関数型デザイン 第7章

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第7章:純粋関数型の並列処理(続き) APIの代数 前節で示したように,必要な演算の型シグネチャを書き出し,型に従って実装を進めるだけでほとんどの場合上手…

学習記録:Scala関数型デザイン 第7章

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第7章:純粋関数型の並列処理(続き) APIの改良 APIの設計と表現の選択の境界線はそれほど明白ではなく,2つの始点を流動的に切り替えながら, 疑問点が生じ…

学習記録:Scala関数型デザイン 第7章

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第7章:純粋関数型の並列処理(続き) 表現の選択 ここまで考えてきた結果,APIの大まかなイメージは次のようになった。 // 直ちにa値が得られる計算を作成 de…

学習記録:Scala関数型デザイン 第7章

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第7章:純粋関数型の並列処理(続き) データ型と関数の選択(続き) 並列計算の結合 unitとgetの組み合わせには落とし穴があることがわかったが,次にこれを…

学習記録:Scala関数型デザイン 第7章

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第7章:純粋関数型の並列処理 CPUごとに複数のコアが搭載され,CPU自体が複数搭載されることも珍しくない現代のコンピュータでは, この並列処理能力を活用で…

学習記録:Scala関数型デザイン 第6章

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第6章:純粋関数型の状態(続き) 状態アクションデータ型の一般化 前節で記述したunit, map, map2, flatMapなどはどの角度からも乱数ジェネレータに特化して…

学習記録:Scala関数型デザイン 第6章

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第6章:純粋関数型の状態(続き) 状態の処理に適したAPI(続き) 状態アクションの結合 先ほど定義したmapは,殘念ながらintDoubleやdoubleIntを実装できるほ…

学習記録:Scala関数型デザイン 第6章

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第6章:純粋関数型の状態(続き) 状態の処理に適したAPI ここまでの実装を振り返ると,どの関数でもRNG => (A, RNG)形式の型が使用されている。 この種の関数…

学習記録:Scala関数型デザイン 第6章

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第6章:純粋関数型の状態 副作用を使った乱数の生成 本章では,乱数の生成を例に用いて,状態を操作する純粋関数型のプログラムを記述する方法について見てい…

学習記録:Scala関数型デザイン 第5章

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第5章:正格と遅延 無限ストリームと余再帰 ここまで記述してきた関数は漸進的なので,無限ストリームにも対応します。 例えば,1の無限ストリームは以下のよ…

学習記録:Scala関数型デザイン 第5章

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第5章:正格と遅延 プログラムの記述と評価の切り分け 関数型プログラミングの主なテーマの一つは関心の分離である。 処理の記述をそれらの実際の実行から切り…

学習記録:Scala関数型デザイン 第5章

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第5章:正格と遅延 遅延リストの例 ここでは,例としてストリームでの一連の変換を,遅延を使って一回の処理にまとめる方法を示す。 trait Stream[+A] case ob…

学習記録:Scala関数型デザイン 第5章

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第5章:正格と遅延 一組のトランプから奇数のカードを抜き取り,クイーンのカードを全て裏返すよう言われた時, 理想的には全てのカードを通しで調べる際に奇…

学習記録:Docker

参考文献 Dockerエキスパート養成読本[活用の基礎と実践ノウハウ満載!] (Software Design plus)作者: 杉山貴章,大瀧隆太,Yugui(Yuki Sonoda),中津川篤司,前佛雅人,松原豊,米林正明,松本勇気出版社/メーカー: 技術評論社発売日: 2015/06/18メディア: 大…

学習記録:Scala関数型デザイン 第4章、購入した本

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド Eitherデータ型 概要 エラー処理にOptionはよく用いられるが,例外的な状況で何がうまく行かなかったのかは教えてくれない。 さらに状況を提供するためのStrin…

学習記録:Scala関数型デザイン 第4章:例外を使わないエラー処理(続き)

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド Optionデータ型(続き) Optionの合成,リフト,例外指向のAPIのラッピング Optionを使おうとすると,Optionをやり取りするメソッドの呼び出し元をSomeやNone…

学習記録:Scala関数型デザイン

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第4章:例外を使わないエラー処理(続き) Optionデータ型(続き) Optionの基本関数を使用するシナリオ Optionのそれぞれの基本関数を使用する状況についてガ…

学習記録:Scala関数型デザイン

参考文献 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド 第4章:例外を使わないエラー処理(続き) Optionデータ型 前節までで説明してきた問題の解決策は、問題への答えが常にあるとは限らないことを戻り値の型で表…

学習記録:Scala関数型デザイン

第4章:例外を使わないエラー処理 1章で例外をスローすることは副作用であることを説明した。 本章では、関数型プログラミングにおけるエラーの生成と処理の基本原理を学ぶ。全体的な考えとしては、失敗や例外を通常の値として表し、 エラー処理とリカバリに…

学習記録:Scala関数型デザイン

第3章:関数型プログラミングのデータ構造(続き) 標準ライブラリのリスト Scalaには標準ライブラリにListが存在し、後の章ではこの標準ライブラリのListを使用する。 ここまでで作成してきたListと標準ライブラリのListとの主な違いは、Consが::として参照…

学習記録:Scala関数型デザイン

参考書籍 Scala関数型デザイン&プログラミング ―Scalazコントリビューターによる関数型徹底ガイド (impress top gear) 第3章:関数型プログラミングのデータ構造(続き) リストの再帰と高階関数の一般化(続き) Exercise 3.19 与えられた述語条件が満たさ…