タグ

勉強に関するzyzyのブックマーク (157)

  • Minimal safe Bash script template

    Published on December 14, 2020   ·   Updated on December 16, 2020 Bash scripts. Almost anyone needs to write one sooner or later. Almost no one says “yeah, I love writing them”. And that’s why almost everyone is putting low attention while writing them. I won’t try to make you a Bash expert (since I’m not a one either), but I will show you a minimal template that will make your scripts safer. You

    Minimal safe Bash script template
    zyzy
    zyzy 2021/01/18
    bash苦手でオレオレ仕様でしか書いてないのをそろそろ卒業せんと……
  • 2で割ることと3で割ること - Qiita

    この記事でお題にするのはCPUレジスタ上の整数除算です。以下、単に除算とも書きます。 除算は非常に高コストな演算なため、コンパイラは最適化によって、できるだけ整数除算を別の計算に置き換えようとします。 最適化ができる場合の一つとして、割る数が定数である場合があります。頭のいいコンパイラは、除算を乗算とビットシフト等を駆使した演算に置き換えます。この記事では、そういった最適化の背景にある理屈を部分的に解説します。 計算機環境としてはモダンなx86 CPUを仮定します。したがってレジスタは32/64ビットであり、負数は2の補数表現になっています。ある程度は他の命令セットでも通用する話になっているかもしれません。 そもそも整数の除算とは プログラミングにおける整数の除算の定義について確認します。整数$n$を整数$d$で割るとき $$ n = q \times d + r $$ が成り立つように除

    2で割ることと3で割ること - Qiita
    zyzy
    zyzy 2020/12/10
    ひえー、こんな事してたのか。2の倍数と3の倍数がハックできれば、かなりの計算が楽できるよな。
  • Takayuki Todo on Twitter: "ここ10年の脳に関する研究で明らかになったのは、脳神経細胞のシナプスというのは信号を伝達するたびにレセプターがリン酸化してゲインが落ちノイズが上がっていくのに対し、その劣化したレセプターを酵素によってリフレッシュする機能があり、それが睡眠中に行われるのだということ。"

    ここ10年の脳に関する研究で明らかになったのは、脳神経細胞のシナプスというのは信号を伝達するたびにレセプターがリン酸化してゲインが落ちノイズが上がっていくのに対し、その劣化したレセプターを酵素によってリフレッシュする機能があり、それが睡眠中に行われるのだということ。

    Takayuki Todo on Twitter: "ここ10年の脳に関する研究で明らかになったのは、脳神経細胞のシナプスというのは信号を伝達するたびにレセプターがリン酸化してゲインが落ちノイズが上がっていくのに対し、その劣化したレセプターを酵素によってリフレッシュする機能があり、それが睡眠中に行われるのだということ。"
    zyzy
    zyzy 2020/11/16
    結構前から知りたかったことがまとまってる
  • Pythonのオブジェクト指向プログラミングを完全理解 - Qiita

    1. オブジェクト指向の起源 2003年チューリング賞の受賞者アラン・ケイさんはよくオブジェクト指向プログラミングの父と称されます。ご人も憚ることなく、幾度、公の場で発明権を宣言しています。しかし、ケイさんは「C++」や「Java」などの現代のオブジェクト指向言語を蔑ろにしています。これらの言語は「Simula 67」という言語を受け継いだもので、私が作った「Smalltalk」と関係ないのだとケイさんは考えています。 オブジェクト指向という名称は確かにアラン・ケイさんに由来するものです。しかし、C++Javaで使われている現代のオブジェクト指向は当初のと結構違います。ケイさん自身もこれらの言語を後継者として認めないです。では、ケイさん曰くC++Javaの親であるSimula 67という言語はどんな言語でしょうか。ここで、簡単なサンプルコードを見てみましょう。 Class Recta

    Pythonのオブジェクト指向プログラミングを完全理解 - Qiita
    zyzy
    zyzy 2020/11/02
    これは大作
  • 【決定版】スーパーわかりやすい最適化アルゴリズム -損失関数からAdamとニュートン法- - Qiita

    オミータです。ツイッターで人工知能のことや他媒体で書いている記事など を紹介していますので、人工知能のことをもっと知りたい方などは気軽に@omiita_atiimoをフォローしてください! 深層学習を知るにあたって、最適化アルゴリズム(Optimizer)の理解は避けて通れません。 ただ最適化アルゴリズムを理解しようとすると数式が出て来てしかも勾配降下法やらモーメンタムやらAdamやら、種類が多くあり複雑に見えてしまいます。 実は、これらが作られたのにはしっかりとした流れがあり、それを理解すれば 簡単に最適化アルゴリズムを理解することができます 。 ここではそもそもの最適化アルゴリズムと損失関数の意味から入り、最急降下法から最適化アルゴリズムの大定番のAdamそして二階微分のニュートン法まで順を追って 図をふんだんに使いながら丁寧に解説 していきます。 それでは早速最適化アルゴリズムとは何

    【決定版】スーパーわかりやすい最適化アルゴリズム -損失関数からAdamとニュートン法- - Qiita
    zyzy
    zyzy 2020/10/27
    ライブラリ任せにしてないでちょっとちゃんと一度自分で理解してみないとあかん気はしている
  • Data Models

    Data Models: A Comprehensive Guide to Structuring Information for Optimal Insights and Decision-Making In the realm of data management, the use of effective data models plays a pivotal role in organizing and representing information in a structured and meaningful way. Data models serve as the blueprint for databases, facilitating efficient data storage, retrieval, and analysis. This article delves

    Data Models
    zyzy
    zyzy 2020/10/23
    まずこんなにパターンあるんだ、っていう。
  • 音階の数学|じーくどらむす

    私の大好きな数学者の名言で、「音楽は感性の数学であり、数学は理性の音楽である」という言葉があります。 数を原理とするピタゴラス教団がピタゴラス音律を作り出し、そこから純正律という整数比率によるハーモニーを重視した音律が作られたことからも、音楽数学の関係性は深いと言えるでしょう。 しかし、 実際に数学を多少わかって、音楽を多少嗜んでいる方であれば、音楽で使われる様々な単位への違和感を感じたことがあるのではないでしょうか。 とにかく既存の音楽理論や音楽文化が、「12音種」「7幹音」「5線譜」「1から数える」すべてが噛み合っていない感じがすごい。この噛み合ってない上で究極の覚えゲーを重ねがけして理論作り上げてんのヤバい。 — じーくどらむす/岩翔 (@geekdrums) July 12, 2020 音楽を取り巻く数への違和感まずこの「12音階」(ド~シまで、#、♭も含めた1オクターブ以内の

    音階の数学|じーくどらむす
    zyzy
    zyzy 2020/08/02
    子供の頃学びたいのに本が見つからなかった事が、今こうしてあちこちにあっさり見つかる良い時代/ワロタ>数学徒はXとかΣとかπは好んで扱うくせに、数字は0と1と2しか扱いたくありません
  • Rustの型推論の概略 - 簡潔なQ

    概要: Rustの型推論の大枠を説明する。 なお、筆者もRustの型推論の動作を詳細に把握しているわけではない。 短くまとめると Rustの型推論はHindley-Milner型推論ベースである。したがって後方の式や文の内容から手前の型が推論されることもある。しかし以下に挙げるようなRust独自の特徴をもつ。 型推論は原則として関数定義の中で閉じており、関数の引数型や戻り値型は推論されない。これは、関数を抽象化の境界とするための意図的なものである。この意味で「局所的」というのであれば間違いではない。 ただし、let多相を含む型推論を避ける意図もあるかもしれない。 関数呼び出しや一部の演算子などは、その部分の制約を立てる段階で、型の一部分が判明している必要がある。この動作は推論順序の影響を受ける。 トレイトによりオーバーロード可能になっている関数や演算子は、射影型を使っている場合、ボトムアッ

    Rustの型推論の概略 - 簡潔なQ
    zyzy
    zyzy 2020/07/09
    いじっている間に気づいては忘れることがまとまってる
  • Rustで組込みプログラミングや自作OS作成をするには

    これは以前からつくっていたErkOSという自作OSでの経験を元にして、どうやったらRustで自作組込みOSの最初の一歩を踏み出せるか、というものをドキュメントにしたものです。 このドキュメントはこの前の技術書展の告知が来たあたりから構想を練っていて、すきま時間にちまちまと書き進めていたものですが、とりあえず、プロセスの切り替えっぽいところまでの説明を終えることができたので公開しました。 組込みでRustをやる話や自作OSを書く話というのは先駆者がたくさんいて、僕自身もそれらの資料を参考にしつつ書き進めて来ました。 一応、それらの既存のものとは差別化はしているつもりではあるものの、既存のものを完全に上回るというものではないです。内容もまだまだ足りない。 以前、RustでOSを書くプロジェクトもろもろでいくつかOSを書く際に参考になりそうなプロジェクトをまとめましたが、情報も古くなってきたので

    Rustで組込みプログラミングや自作OS作成をするには
    zyzy
    zyzy 2020/05/24
    入口として。
  • この英単語を覚えるだけで、英文の9割は読めるようになるという話【NGSL,NAWL,TSL,BSL】|相川真司(かわんじ) #DiQt

    【要約】 最高の英単語帳を見つけました。 しかもなんと、その英単語帳は『無料』です。 このnoteでは、その画期的な英単語帳の紹介と、英単語帳のデータを無料配布します。 【更新履歴】 22/08/19: ・8000件を超える改善を行いました。 ・改善をリアルタイムで配布データに反映できるように、データのダウンロード方法を変更しました。 21/12/09: ・iOS/Android版アプリをリリースしました。 科学者がつくった最高に怠惰な英単語帳「これだけ覚えておけば英語が読めるようになる英単語帳とかないかなぁ〜〜」 なんて考えたことありませんか? わたしはわりとあります。 プログラミングを始めてからは、英語に触れる機会が格段に増えたこともあり、わたしの中でこのニーズはますます強くなっています。 しかし、わたしは怠惰です。 できることなら、最小限の努力で英語を身に付けたい。 そこでわたしは、

    この英単語を覚えるだけで、英文の9割は読めるようになるという話【NGSL,NAWL,TSL,BSL】|相川真司(かわんじ) #DiQt
    zyzy
    zyzy 2020/01/17
    ただ汎用的な単語ほどニュアンスが曖昧で使いどころが限定されにくいので、その単語の持つ感覚を理解して落とし込むのが結構大変だったりする。
  • RISC-Vのベクトル拡張命令の仕様書を(ほぼ)日本語化したので公開する - FPGA開発日記

    というか昔からずっと昔から公開していたのだけれども、場所を全く公開していなかっただけで。 RISC-Vのベクトル拡張命令の仕様がかなり固まってきた。現在は0.7.1が公開されている。と思ったら以下のドキュメントをよく見てみると0.7.2に更新されているのでどっちが正しいのかな?まあいいや。 RISC-V "V" Vector Extension Version 0.7.2-draft-20190616 undefined https://riscv.github.io/documents/riscv-v-spec/ とりあえず、上記の資料を読みながらちまちまと日語化してみた。これは別に営利目的などではなく、完全に自分の趣味で理解のために翻訳してみたかったところがある。しかし翻訳しながら「なんじゃこりゃ?」な部分はとりあえず飛ばして先に進んだりしたので、すべて理解をしているかというとそれは

    RISC-Vのベクトル拡張命令の仕様書を(ほぼ)日本語化したので公開する - FPGA開発日記
    zyzy
    zyzy 2019/09/27
    自分で翻訳するのが一番勉強になりそう
  • 『形式意味論入門』を Haskell に書き下す (前編) - ryota-ka's blog

    この記事は以下のページに移転しました. blog.ryota-ka.me 一昨年のゴールデンウィークに池袋のジュンク堂を訪れた際,『形式意味論入門』という表題のに目が止まり,数学や論理学を用いて自然言語表現の意味を形式的に考察する学問分野があることを知った*1.また,その道具立てとして単純型付きラムダ計算が用いられていることが,なおのこと私の興味を惹いた.ラムダ計算といえば,読者の多くが計算機科学分野での応用を思い浮かべると思うが,Richard Montague*2 が自然言語分野に応用して以来,そちらの方面でも道具立てとして用いられているようである. 形式意味論入門 (開拓社叢書) 作者:拓郎, 田中開拓社Amazon このは,Irene Heim と Angelika Kratzer による Semantics in Generative Grammar (以下 Heim and

    『形式意味論入門』を Haskell に書き下す (前編) - ryota-ka's blog
    zyzy
    zyzy 2019/08/23
    見慣れた記述形式で読めるのありがたい。
  • 物理学者のための圏論入門

    zyzy
    zyzy 2019/06/25
    学ぶ段階で疑問に思う事に丁寧に答えてくれてる奴
  • 京極夏彦氏が一挙公開、ルビと禁則処理の法則 文字詰め、改行、記号などを整理して今のスタイルに行き着いた | JBpress (ジェイビープレス)

    2018年6月2日に東京・下北沢の書店「屋B&B」で「[京極夏彦×装丁夜話]京極夏彦の版面」というイベントが開催された。このイベントを企画したのは、装丁家の折原カズヒロさんと坂野公一さん。今回は、坂野さんがこれまでに何冊もの装丁を手掛けた作家京極夏彦さんを呼んで、版面(はんめん、はんづら)づくりの詳細を語ってもらった。 今回はその後編である。 前編はこちら http://jbpress.ismedia.jp/articles/-/53511 ルビを振る基準のマニュアルを作成 版面をパッと見たときに、ルビの存在はかなり大きなウェイトを占めていることがわかります。傍点よりも存在感があるわけで。難読漢字には比較的画数の多い漢字が多いです。画数の多い漢字の横にルビがあるかないかは、大きな問題になります。 さらに、ルビには位置の問題があります。肩付き、中付き、3字ルビ(1文字の漢字に3文字のルビが

    京極夏彦氏が一挙公開、ルビと禁則処理の法則 文字詰め、改行、記号などを整理して今のスタイルに行き着いた | JBpress (ジェイビープレス)
    zyzy
    zyzy 2019/04/19
    小説でこういうテクニックの開示は珍しい気がする
  • TypeScript再入門 ― 「がんばらないTypeScript」で、JavaScriptを“柔らかい”静的型付き言語に|ハイクラス転職・求人情報サイト AMBI(アンビ)

    TypeScript再入門 ― 「がんばらないTypeScript」で、JavaScriptを“柔らかい”静的型付き言語に JavaScriptプロジェクトTypeScriptを導入する際には、“柔らかい”静的型付き言語とするのがおすすめです。藤吾郎(gfx)さんがまとめた「がんばらないTypeScript」のガイドラインです。 TypeScriptは、すべてのJavaScriptプロジェクトで採用する価値のある技術です。TypeScriptとこれに対応したエディタを導入することで、補完や型ベースの整合性のチェックにより、すべてのプロジェクトで生産性が上がります。またリファクタリングも容易になるので、長期あるいは大規模なプロジェクトでも品質を保ちやすくなります。 この記事では、TypeScriptについて最低限の知識とともに、サクッと(どちらかというと既存のプロジェクトに)導入するための

    TypeScript再入門 ― 「がんばらないTypeScript」で、JavaScriptを“柔らかい”静的型付き言語に|ハイクラス転職・求人情報サイト AMBI(アンビ)
    zyzy
    zyzy 2019/04/16
    Scalaをbetter Javaで始めるのと同じ感じで、better JavaScriptとしてのTypeScript入門
  • 「形式手法」の“論理の力”による開発効率と品質の向上事例

    社会人エンジニア向けの教育プログラム「トップエスイー」から、エンジニアの皆さんに対して有用な情報をお届けするコーナーです。ところで、形式手法という言葉はご存じでしょうか? 一般には「数理論理学に基づき、効率よく高品質なソフトウェアを開発するための手法の総称」などといわれます。とはいえ「数理論理学」といわれてもなかなか実感ができないと思います。さらに「総称」と述べましたが、セミナーや書籍などで勉強した方も、その中の一つの手法や観点のみに触れたのではないかと思います。記事ではAmazon Web ServiceやFacebook等の具体的な事例にも触れ、形式手法と呼ばれるアプローチのいくつかの方向性・可能性について紹介します。「形式手法」という広すぎる言葉はいったん忘れて、難しい専門用語に振り回されないよう、できるだけ一般的な言葉での説明を補足します。 「網羅的テストが可能な擬似コード」を用

    「形式手法」の“論理の力”による開発効率と品質の向上事例
    zyzy
    zyzy 2019/01/25
    そろそろちゃんと勉強したい
  • これなら分かる!マイクロサービス(活用編)~そのアーキテクチャを実現するデザインパターンを一気に学習

    マイクロサービスについて、前回はそのアーキテクチャの概要から利点、そして課題についてまとめました。第2回の今回は、マイクロサービスを構成する個別の要素(デザインパターン)を一挙に説明します。マイクロサービスを学ぶ上で避けて通れない用語たちを、ひとつひとつ、分かりやすく丁寧に解説しました。さらに、マイクロサービスが持つどの利点に結び付くかをセットで解説することにより、単なる知識の列挙を避けたイメージしやすい構成をとっています。紹介しているものはいずれも特定の製品などに依存しない核となる要素ですので、エンジニアの方、ビジネスサイドの方問わず、長く役立つ知識となるはずです。 前回記事:これなら分かる! マイクロサービス(入門編)~モノリスと比較した特徴、利点と課題 マイクロサービスは「複数のデザインパターンの集合体」 入門編で解説したようなマイクロサービスを構成し、その利点を実現するためには、ひ

    これなら分かる!マイクロサービス(活用編)~そのアーキテクチャを実現するデザインパターンを一気に学習
    zyzy
    zyzy 2019/01/13
    そろそろちゃんと勉強しないと
  • TypeScript Deep Dive 日本語版 | TypeScript Deep Dive 日本語版

    出典: https://www.npmtrends.com/typescript TypeScriptJavaScriptを拡張して作られたプログラミング言語です。トレンドが示すとおり、TypeScriptJavaScriptに代わって第一に選択される言語になりました。TypeScriptが提供する静的型システムは、コードの保守性と可読性を大幅に向上させます。またブラウザ等の互換性を心配することなく、モダンで便利なJavaScriptの機能を利用できます。 TypeScript DeepDiveは初心者からベテランまで役立つオープンソースのドキュメントです。JavaScriptのモダンな機能からTypeScriptの様々な魔法に至るまで丁寧に説明されています。多くのコードサンプルがあり、具体的なTypeScriptの使い方を簡単に理解できます。TypeScript DeepDive日

    TypeScript Deep Dive 日本語版 | TypeScript Deep Dive 日本語版
    zyzy
    zyzy 2018/12/25
    そろそろ本格的に勉強したい
  • TypeScriptの型初級 - Qiita

    この記事は「TypeScriptの型入門」の続編です。入門の続編ということなので初級というタイトルにしてみました。TypeScriptの型よくわからんという方は先に入門から読むことをおすすめします。入門レベルのTypeScriptくらい分かるよという方は読まなくても大丈夫です。 TypeScriptの型入門 さて、前回の記事ではTypeScriptの型を一通り紹介しました。この記事ではその続編として、実用上必要になるTypeScriptの型の挙動を理解したり、標準ライブラリに存在する型の使い方を理解することを目標にします。前回に引き続き、あくまでTypeScriptの型に関する話ですから、JavaScriptの言語機能とか、TypeScriptの構文とかの話はしません。悪しからずご了承ください。 最終更新: 2019-03-16 (TypeScript 3.4に対応しました) union型

    TypeScriptの型初級 - Qiita
    zyzy
    zyzy 2018/11/02
    入門編に続いて分かりやすい。後付けなせいかちょっと非直感的な挙動もするんだな。
  • 制御工学の基礎あれこれ

    In English ■初めに PID制御や現代制御などの制御工学(理論)の基礎や、制御工学に必要な物理、数学、ツール等について説明します。 私のプロフィールを簡単に説明しますと、私は自動車関連企業に勤めており、そこで日々制御工学(理論)を利用しながら設計開発をしております。 ここで説明する内容は、制御理論を扱い実際にモノに実装していく上で最低限理解しておいた方が良い内容と思います。 少しでも皆様の役に立ち、学力の底上げに貢献し、ひいては日の発展、ひいては人類の発展に貢献できたらこの上ない喜びです。 内容を説明する際に次のことを心掛けています。 ① できるだけシンプルに。より少ない文章で内容を的確に説明する。 ② 1ページの記事のボリュームを多くし過ぎない ③ 文字のフォントは大きすぎず、行間を開けすぎない。(画面スクロールが頻繁になると情報が伝わりづらくなる) ④ 内容の説明とは直接関

    zyzy
    zyzy 2018/10/19
    なにこれすごい