想い出ざわざわ

画像処理・機械学習を学びます。

「サマる技術(第三章)」要約

前提

「理解」するためのポイント
  • 語彙や背景知識、接続詞の知識を増やす
  • 事前に文章のサポーターを見つける 
「記憶」するためのポイント
  • 知識を整理整頓する
  • 知識を自分ごと化する 
「活用」するためのポイント
  • 知識を「いつ」「どのように」使うかも一緒に考える
  • 理由を考える
  • 具体的な事例を複数紐付ける
  • 要約を作る
  • 人に説明する
 提案
  • 普段の準備によって、「理解」のポイントを抑える
  • 構造的に整理した要約の作成で、「記憶」と「活用」のポイントを抑える  

要約はクラウドにすべきである

対抗
  1. ノート(アナログ)
  2. ローカルPC(オフライン)
 決め手

編集・検索・共有において、クラウドが最良

 

要約の進め方

手順
  1. ジャンルごとにフォルダを作る
  2. 本ごとにファイルを作る
  3. 文章の主題を抽出する
  4. 小見出しに、1つの主題がある
  5. 小見出しがない場合、10ページごとに主題を探す
  6. 主題を構造化する
 自己決定感について

「ああしなさい」「こうしなさい」というような書き方を本書はしていません。繰り返しになりますが、ポイントをきちんと押さえ、とにかく自分で要約を作ってみるということが大事です。 

 コメント

実際に要約すること、そして継続することが重要と思う。この本は読書→要約までを改善してくれるが、継続までは観点に入っていない。そして大概の人が躓くのは、継続に関してかも。

「サマる技術(第二章)」要約

第二章では、本を「理解」「記憶」「活用」する方法を述べる

「理解」

定義:サポーター=速く、深い読書をサポートする知識

主張:サポーターをチェックし、トップダウン処理を促す

本の中にあるサポーター

「はじめに」

内容:全体の流れ、各章の位置付けを示す内容を示す

「あとがき」

内容:結論を再度明示するとともに、本文で述べてきた内容を繰り返す

「各章の最初と最後」「小見出し」「太字」

位置付け:「はじめに」「あとがき」の次に、重要

重要度順:「各章の最初と最後」>「小見出し」>「太字」

数の多さ:「各章の最初と最後」<「小見出し」<「太字」

注意点

出版不況により、サポーターが分かりにくい本もある

目次はぶつ切りで、理解しにくい

本の外にあるサポーター

 語彙

理由:言葉の意味だけでなく、それが使われる文脈も想起できるから

語彙の本①:「大学入試 現在文キーワード&ボキャブラリー320(長野研一)」

語彙の本②:「ことばはちからダ! 現代文キーワード(河合出版)」

背景知識

理由:語彙と同じく、次に来る文章を推測できるようになるから

一般教養

漫画:高速に一般教養をインプットできる

接続詞の知識

理由:接続詞は前後の文脈の関係性を教え、明確にする

論理の接続詞:だから、それとも(順接)しかし、ところが(逆説)

整理の接続詞:そして、それに(並列)一方、または(対比)第一に、最初に(列挙)

理解の接続詞:つまり、むしろ(換言)例えば、特に(例示)なぜなら(補足)

展開の接続詞:さて、では(転換)このように、とにかく(結論)

「記憶」

前提:長い間記憶するには、長期記憶に知識を移さなければならない

方法:「整理整頓」と「自分ごと化」

「整理整頓」

実践例

  • グループに分ける
  • 順々に並べる
  • 階層化する
  • 図表を作る

効果:知識が増えるほど、紐付けが容易になり、記憶力が向上する

「自分ごと化」

定義:自分にとって意味のあることにする

実践例

  • 言い換える
  • 意味づけする
  • イメージ化する

「活用」

主張:

  • 「いつ」「どのように」活用するかを合わせて記憶する
  • 実践の機会を増やす

想定(いつ、どのように)以外で活用するために

主張:知識を抽象化することで、想定外の問題に適用できる

知識の理由を考える

理由:なぜを繰り返すことで抽象的な知見を得、その結果応用できるようになるから

具体的な事例をたくさん紐付ける

理由:具体的な事例の紐付けを重ねることで、抽象化が進むから

要約を作る

理由:要約は、知識の骨子を発見する作業だから

人に説明する

理由:分かりやすく伝える努力によって、一段と理解が深まるから

推奨

  • 要約をクラウドに作り、シェアする
  • 知識の抽象化が進み、互いにメリットがある

 

「サマル技術(第一章)」要約

第一章 効果的な選書法

本の選び方の種類 

「探求型」:興味の範囲を広げる
「追求型」:決まった領域に関する知識を深める
探求型の注意点

 ①売れ筋本を鵜呑みにしない

 書店が売ろうとしてるケースもある

 ②翻訳本に良書が多い

 海外で認められた本が翻訳される

 ③読んで満足しない

 「読む」とは文章を「理解」・「記憶」・「活用」すること

 ④科学的な根拠のある本を読む

 個人の経験則には再現性がない

追求型の注意点

 ①探求型との目的の違いを意識する

 目的が違うから、本の選び方も違う

 ②複数冊、読む

 情報量を増やす・複数の視点に触れる

 ③最初に学術書の入門編を読む

 入門書から読むことで、二冊目以降の理解度、読解速度が上がる

 理由

  入門書は、読書におけるボトムアップ処理とトップダウン処理を助けるから

 ボトムアップ処理

 一つひとつの単語から文を、文から文章を理解する読み方

 トップダウン処理

 事前知識を用いて、単語や文を理解する読み方

 両処理を促す条件

 →学術書の入門編には、3条件 が揃っている。

 

学術書(入門編)の見つけ方
  • ウィキペディア(ウェブ)を用いる
  • アマゾンのレコメンドを用いる
  • レーベルを用いる

 知りたいことは、基本的にどこかの学問に属している

「サマる技術(序章)」要約

序章

各章の紹介

一章 効率的な選書法

 読書は、ハイリターンだが、リスクを孕む

(リターン:著者の知見を獲得 リスク:時間の浪費)

 時間の浪費を避けるために、本の選び方を学ぶ

 

二章 知識を活用する「読み方」

 「読む」とは文章を「理解」・「記憶」・「活用」すること

 認知科学に基づき、3ステップのポイントを学ぶ

 

三章 クラウドに要約する

 要約は、「文章」でなく「箇条書き」で構造化

 クラウドで閲覧・編集を繰り返す

 

四章 複数冊を一つに要約する

 複数冊の知識を結び、理解を深める

 

 

"cudaErrorLaunchOutOfResources"について

表題のエラーで苦しめられてる。関連サイトを集めた。

 

・公式の説明

CUDA Runtime API :: CUDA Toolkit Documentation

レジスタ数の確認

カーネルが使うレジスタ数 - PukiWiki for PBCG Lab

・実行ユニットあたりの共有メモリ・レジスタ数の説明

高速演算記 第3回 「チューニング技法その1 CUDAプログラミングガイドからピックアップ」 | G-DEP

・掲示板での解決事例

https://devtalk.nvidia.com/default/topic/569648/cudaerrorlaunchoutofresources-aka-quot-too-many-resources-requested-for-launch-quot-/?offset=1

・デバイスが対応するレジスタ数の取得

デバイス情報の取得 - PukiWiki for PBCG Lab

・デバイス情報の取得での設定

https://devtalk.nvidia.com/default/topic/413403/cudadeviceprop-undeclared-first-use-in-this-function-/

カーネルで気をつけるのはスレッド数・レジスタ量・共有メモリの量

www.softek.co.jp

2chで関連ありそうだった書き込み

f:id:nozawanarain:20170801230713p:plain

・デバイス情報の表示方法

qiita.com

 

誤って編集した記事を一度削除して、絶望した。

手元のコードは、レジスタ数が上限を超えてるように思うのだが・・・

 

追記

やはりレジスタが不足していた。コンパイル時に、maxreggcountを設定して解決

d.hatena.ne.jp

smのレジスタ数をブロックあたりのスレッド数で分割し、カーネル関数の使用レジスタ数を下回っていると上記エラーが発生するよう。

 

Visual Studio Code使ってみた(デバッグ実行)

Visual Studio CodeでDebug実行してみた。

"Hello World"できてしまえば、Debug実行は簡単だった。

 

手順

まずコードの左側に適当にブレイクポイントを設置する。

f:id:nozawanarain:20170725215551p:plain

 

そして画面上部から”デバッグの開始”を選択する。

f:id:nozawanarain:20170725215555p:plain

 

コードの左側に、変数やウォッチ式が表示される。

f:id:nozawanarain:20170725215558p:plain

 

特に設定しなくても補完機能も使える。

f:id:nozawanarain:20170725215943p:plain

感想

実行できてしまえば、後は簡単ですね。

IDEより軽量で、補完機能やデバッグ実行も可能。

しばらく使ってみようかな。

 

Visual Studio Code使ってみた(インストールからHello worldまで)

Visual Studio Coe使ってみた。

何度も詰まった結果、今日はビルドして、「Hello world」まで。

環境はMacOS Sierra10.12.5。

 

インストー

下記のリンクからどうぞ。

code.visualstudio.com

参考サイトさん同様、C/C++やRunnerもインストール。

f:id:nozawanarain:20170724212234p:plain

適当なコードを書いて、ビルド(command+shift+b)を試みる。

 

詰まったところ1

f:id:nozawanarain:20170724211944p:plain

command+shift+b でエラー。ググると、

xcode-select --install

で解決できるとのこと。

xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun | Tips &Tricks

詰まったところ2

iostreamが見つからなくて、詰まった。/usr/include/c++に発見。

c_cpp_properties.jsonに反映。

f:id:nozawanarain:20170724213434p:plain

 

詰まったところ3

tasks.jsonが設定できない・・・結局、参考サイトさんの方法を丸コピ。。

 

結果

Hello, wolrdまではできました。次はデバッグ実行したい。

 

参考サイト

[Visual Studio Code][Mac] C言語をビルド(コンパイル)&ステップ実行する

http://gabekore.org/vscode-c-mac

qiita.com