コグニカルは、足りない知識を掘り下げて理解する学習サイトです。
コグニカルは、足りない知識を掘り下げて理解する学習サイトです。
お知らせ: 2022/9/1 CS50 を活用した非営利/協賛企業による「コロナ学生支援」プロジェクトを実施中 ▼ 学生の方へ:CS50 の学習(履修証明書の取得)を一緒に取り組むプロジェクト CS50日本語版の翻訳コントリビューターである CODEGYM が主催する、非営利/無償のプロジェクト「CODEGYM Academy (外部リンク)」は、昨年に続き2022年度(春/秋)も、キャリア選択を控えた学生に対し、以下の企業の協賛により無償で17週間のプログラミング教育カリキュラムを提供します。 CODEGYM Academy 協賛企業(2022年) https://codegym.jp/academy/ 今年度のエントリーは締め切りました — ようこそ! このページは、ハーバード大学 CS50 の日本語版翻訳プロジェクトのページです。当サイトのドメインに掲載されているコンテンツは、Cre
QDくん⚡️Python x 機械学習 x 金融工学 @developer_quant 東工大が無料公開しているPython解説サイト chokkan.github.io/python/index.h… 初心者の目線に合わせた丁寧な説明で、かゆいところに手が届く教材。 基本的な文法、データ構造、ファイル入出力やオブジェクト指向、NumpyとMatplotlibの使い方などをひと通り学べる。 pic.twitter.com/XyBBslyeBa 2022-10-08 22:01:21 QDくん⚡️AI関連の無料教材紹介 @developer_quant 東工大が無料公開しているPython解説サイト chokkan.github.io/python/index.h… 初心者の目線に合わせた丁寧な説明で、かゆいところに手が届く教材。 基本的な文法、データ構造、ファイル入出力やオブジェクト指向、
4年前に会社の福利厚生を使ってスタンフォードの授業を取ってみたら面白く、 働きながらでも続けられそうだなという実感を得たので、 2年後、受験を経てジョージア工科大学にリモートで通い始めた。 そして先日、ジョージア工科大学からコンピュータサイエンス修士号をいただくことができた。 画像の学位記は卒業式イベント用の非公式のもので、1~2か月すると Masterとちゃんと書いてある本物が来るらしい *1 。 After 1 year and 9 months, I graduated from Georgia Tech and got a master's degree in computer science. It was intense to be a student while working full-time, but I learned a lot. pic.twitter.com/J
計算量についてのお話です。対象は、プログラミング経験はあるが計算量のことを知らない初心者から、計算量のことを知っているつもりになっている中級者くらいです。 数式を見たくない人にとっては読むのが大変かもですが、深呼吸しつつ落ちついて読んでくれるとうれしいです。 それから、この記事が自分には合わないな〜と思ったときは、(別の記事を Qiita とかで検索するよりも)この記事の一番下の 参考文献 にある本を読むことをおすすめします。Amazon の試し読みで無料で読めます*1。 TL; DR 関数の増加度合いのことをオーダーと呼ぶよ 計算量は、入力サイズ(など)を受け取ってアルゴリズムの計算回数(など)を返す関数だよ その関数のオーダーについての議論がよく行われるよ オーダーを上から抑えるときは \(O\)、下から抑えるときは \(\Omega\) を使うよ オーダーを上下両方から抑えたいときは
This is The Entire Computer Science Curriculum in 1000 YouTube Videos In this article, we are going to create an entire Computer Science curriculum using only YouTube videos. The Computer Science curriculum is going to cover every skill essential for a Computer Science Engineer that has expertise in Artificial Intelligence and its subfields, like: Machine Learning, Deep Learning, Computer Vision,
睡眠は大切とよく言われますが、睡眠不足が開発者に与える影響をまじめに調べた面白い論文が、ソフトウェア工学のトップ論文誌 IEEE Transactions on Software Engineering に掲載されていました。ソフトウェア工学研究室助教の Raula 先生から教えてもらいました。 Need for Sleep: The Impact of a Night of Sleep Deprivation on Novice Developers’ Performance - IEEE Journals & Magazine この論文での被験者はイタリアの大学生 45人。Test-First 開発でプログラムを書かせるタスクを行ってもらっています。23人には実験前日に睡眠を控えてもらい、平均で直近20時間程度は寝てない状態になっています。対照群は、前日に平均で6.5時間、通常通り寝た
こんにちは。労働者です。とあるプログラムで学生さんの課題を添削していたら面白い話に出会いました。 僕は今、主に学部生向けのインターン研修的なプログラムでメンターなるものをやっています。メンターとしての仕事は、学生さんの課題へフィードバックを返し、Office Hourというセッションを毎週設けて質問受けやCSに関するトークを行うといった内容になっています。今回話題に取り上げるのはその中の課題の1つ、「行列積のプログラムを書いて時間を計測せよ」という何気ない話で、続く課題たちのいわば前座のようなものです。こういったところに沼は隠されているものですね。 担当している学生さんたちが細かい実験を行ってくれて以下のような疑問が提示されました。 「行列積の計算が N = 1024のときだけ N = 1023, 1025のときに比べて3倍遅いのはなぜ?」 配列のサイズが2のべき乗になるのは避けるべきとい
今年春に出願、夏に合格して秋学期からオンラインのコンピュータサイエンス修士コースで勉強している。ちょうど秋学期が終わって成績が返ってきたので、どういう感じだったか書いておく。 I've been officially admitted to Georgia Tech's OMSCS (Online Master of Computer Science). I'm excited for being a student again. I chose the online course to take it without quitting my job, but due to COVID-19 it's probably not that different from other people's experience.— k0kubun (@k0kubun) July 31, 2020 ど
本記事はドメイン駆動設計(DDD) Advent Calendar 2021 25日目の記事です。 「もっとビジネス変化に耐えられる設計を目指したい」「ただデータをやりとりするだけなのに複雑化してしまうのを防ぎたい」 様々な動機からドメイン駆動設計に入門しようとする方がいると思います。 自分もエンジニアとして働きはじめて、「どうしてすぐに変更しにくくなってしまうのか」「より柔軟な設計にするにはどうすればよいか」と悩むことが多くなり、良い設計手法を探って出会ったのがドメイン駆動設計でした。 最初はドメイン駆動設計関連の本ばかりを読んでいたのですが、途中から「これってドメイン駆動設計というよりはオブジェクト指向の話では?」とオブジェクト指向に興味を移し、さらに「より変化に強いプロダクト開発するにはチームから変化させないとまずいのでは?」とアジャイル開発に興味が移りました。 本記事では、ドメイン
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに 現代の人に名著以外の本を読むような時間はない こんにちは、Watanabe Jin (@Sicut_study)です みなさんは何か新しい技術を学ぶときにどんなコンテンツを利用するでしょうか? 最近ではUdemyなどの動画講座を利用する人が多いと思いますが、本を読んで学ぶという人もまだまだ多いのではないかと思います 今回は私がこれまで5年間読んできた150冊以上の中から厳選した30冊の本を紹介します。広く多くの人に役立つものから、特定の技術の書籍までどれを読んでもあなたの大切な一冊になるのでぜひ読んでみてください 現代人には時
こんにちは、イノベーションセンターの加藤です。この記事では、大規模言語モデル(LLM)にJSONやソースコードを正しく出力させるための生成手法であるStructured Generationについて紹介します。 Structured Generationとは パーサーを用いた制約手法 正則言語とは 正則言語のStructured Generation 文脈自由言語とは 字句解析について 正則言語+文脈自由言語のStructured Generation まとめ Structured Generationとは 大規模言語モデル(LLM)はよくチャットボットとしての活用が目立ちますが、LLMの入出力を外部のプログラムに繋ぎ込むことでより高度な自然言語処理システムを作ることができます。 例えばOpenAIのCode Interpreter1はLLMをPythonの実行環境と接続することで、ユーザ
生命の起源と人工生命の研究分野は、生命の本質とその発生過程を探求している。両分野とも、「非生命」の状態から「生命」がどのように生まれるかを問うている。生命が出現するほとんどの基質に共通する特徴の一つは、自己複製が始まると同時に、その系の動態が大きく変化することである。 しかし、自然界で自己複製体がどのように発生したかについていくつかの仮説はあるものの、自己複製体が出現するための必要条件については、まだほとんど解明されていない。 研究チームは、単純なプログラミング言語や命令セットを用いて、計算環境における自己複製能力を持つプログラム(自己複製プログラム)が自然発生する過程を詳細に観察し分析した。この研究の中心となったのは、「Brainfuck」(BF)という極めて単純な言語を拡張した「Brainfuck Family」(BFF)と呼ばれる言語環境である。BFFでは、64バイトの長さを持つ13
山下 裕毅 先端テクノロジーの研究を論文ベースで記事にするWebメディア「Seamless/シームレス」を運営。最新の研究情報をX(@shiropen2)にて更新中。 オランダのライデン大学と研究機関AMOLFに所属する研究者らが発表した論文「Controlled pathways and sequential information processing in serially coupled mechanical hysterons」は、ゴムを使った構造物を用いて、エレベーター、自動販売機、改札口、洗濯機などのデバイスに用いられる単純な電子計算タスクを実行できることを示した研究報告である。 従来の電子機器では、複雑な回路を構成する多数の要素を用いてデジタルビットによる計算が行われている。一方、研究チームは、細長いゴム素材を機械的なビットとして使用した構造体を組み立てることで、電子回路を
情報処理学会情報入試委員会は、高等学校情報科において現在までに出版された検定済教科書すべての索引に現れる用語を整理した用語集[1](論文[2]が刊行された時点のもの)を基に、用語のカテゴリづけや、要約説明文づけ等の手を加え、再構成した「情報科全教科書用語リスト」を作成しました。 ここに広く、CC 4.0 BY-SA ライセンスを利用して、公開します。 https://docs.google.com/spreadsheets/d/1FYsq1-ZmwrovR1j8_Q_M5QmSlj6NIZdy/view (2024年5月9日改定、2024年4月12日初版公開) 高等学校の情報科は2003年から実施されており、20年以上の歴史があります。しかし、他の教科と比較すると歴史は浅く、情報科についての共通認識は広まっているわけではありません。 情報科の検定済み教科書は既に100冊以上出版されており、
はじめに Computer Scienceなど情報関連の学位が取れる海外のオンライン大学・大学院を調べたので費用や入学要件などをまとめました。 大学院というとComputer Scienceまたは関連する分野の学士号を持っていることが前提のところが多いですが、筆者は現在文系(Art)の学士号しか持っていないため、入学要件としてCSの学士が必須ではないところを選んでいます。 なお、国内の大学院についてはこちらの方がまとめてくださっている記事がとてもおすすめです。 条件 情報関連の学位(学士号または修士号)が取れる できればComputer Science 授業は完全オンライン part-timeで履修できるなど、社会人学生向け 大学院はできれば情報系のbackgroundがなくても入学できるところ tl;dr CSのbackgroundがないがCSの修士号を取りたい →ヨーク大学 CSの学士
AWS Dev Day 2022 Japan で使用したスライドです。 AWS Lambda を初めとするサーバーレスコンピューティング基盤には、 * 複数の関数が同時に実行され共有リソースにアクセスしうる、本質的に並行システムである * Warm Start により関数インスタンスが内部状態を残したまま再利用されうる * 一つのリクエストに対して複数回の実行が行われうる、いわゆる At-Least-One 特性 といった特性があり、通常のプログラムと比較して実行モデルが複雑かつアンコントローラブルな要素を多く含みます。関数を実装する側はこのような「プラットフォームの都合」を考慮して冪等性など細かい挙動に気を配りつつプログラムを書くことになり、これは一般にかなりの実装コストになります。また、アンコントローラブルな要素は、関数の実装から実際の挙動を静的に検査することを難しくしています。 この
カーニハン先生が、大学1年生と未来の大統領に向けて、コンピュータのすべてを紐解くプログラマーならみんな知ってる、C言語のカーニハン先生が、プリンストン大学の文系の学生向けにコンピュータについての一般教養を教える本書は、2020年に出版された第1版が、すでにベストセラーになっている。あらゆるプログラムで最初にテストされる「hello world」を最初に言ったのはカーニハンとリッチーの書いた入門書と言われている。世界で一番有名な人の一人で、今も現役で学生向けにコンピュータとは何かを、毎年資料をアップデートしながら教えている。 まえがきのあらゆる人も、大統領も、この本の内容ぐらいは知っておくべきで、非専門家に向けて書いたという姿勢は素晴らしいし、内容はそのとおりのものだ。 当時書いた書評ブログもはてブ450と大ヒットした。この本の良さは、ブログに書いたとおりだ。↓ (おかげさまで、第2版は献本
1BitLLMは本当に実現可能なのか?そして、実現されると予告されていることに意味はあるのか? ようやく再現実装に成功した人が現れたので僕も試してみた。 ちなみに1Bit(1.58bit) LLMについての考察はこのページが面白いので一読をお勧めする。 ただし、普通のHuggingFaceのお作法とはかなり違うので注意が必要。 まず、このHuggingFaceリポジトリを丸ごとgit cloneする $ git lfs install $ git clone https://huggingface.co/1bitLLM/bitnet_b1_58-3B $ cd bitnet_b1_58-3Bこれをやらずにいつもの凡例みたいにいきなりpipelineに読み込もうとすると謎のエラーが出て悩まされることになる。海外でも悩んでる人が何人もいるみたいだ。まあ個人的には「こんな説明で誰がわかる?」と思
ZOZO研究所の清水です。弊社の社会人ドクター制度を活用しながら、「社内外に蓄積されているデータからビジネスへの活用が可能な知見を獲得するための技術」の研究開発に取り組んでいます。 弊社の社会人ドクター制度に関しては、以下の記事をご覧ください。 technote.zozo.com 私が現在取り組んでいるテーマの1つに、「機械学習が導き出した意思決定の理由の可視化」があります。この分野は「Explainable Artificial Intelligence(XAI)」と呼ばれ、近年注目を集めています。 図.XAIに関連する文献数の推移(引用:https://arxiv.org/abs/1910.10045) その中でも今回はユーザに対するアイテムの推薦問題に焦点を当て、「なぜこのユーザに対して、このアイテムが推薦されたのか?」という推薦理由の可視化が可能なモデルを紹介します。 本記事の概要
講師は慶應義塾大学の安宅和人教授、統計情報研究開発センターの小西純氏、早稲田大学の西郷浩教授など、データサイエンスに携わる専門家が務める。統計学の基礎や統計データの見方など、統計データ分析の基本的な知識を学習できる同講座は、2015年の開講からのべ約19万2000人が受講したという。 受講登録は7月29日まで。 関連記事 データ分析初心者は“童心に帰る”べき── 現役データサイエンティストが説く、失敗しないための心構え コロナ禍の事業継続の姿勢から一転し、データ活用に関心を向ける企業が増えている。こ一方、ノウハウや人材不足により、思うような成果を出せない企業もある。現役のデータサイエンティストに分析初心者が持つべき心構えを聞いた。 総務省「社会人のためのデータサイエンス演習」リニューアル開講 無料で学べる 総務省の無料オンライン講座「社会人のためのデータサイエンス演習」がリニューアル開講。
Copied from: Public/Study NLP100 2023 実践的な課題に取り組みながら,プログラミング,データ分析,研究のスキルを楽しく習得することを目指します.具体的には, Unix環境でのターミナルの操作. 研究室の実験環境の体験. Pythonプログラミングのチュートリアル. Pythonの実行環境のインストール. Pythonの基礎. Jupyter notebook, IPython, pipの使い方など. この勉強会では言語処理100本ノック 2020を教材として用います.自然言語処理に関するプログラムを実際に作ってもらい,互いにコードレビューを行います. 問題に対する答えは一つではありません.どんな方法でも構いませんので,自力で問題を解き,他人のコードを読むことで,よいプログラムとは何かを体感してください. This study group aims at
「数理最適化」とは――4つの応用事例、実問題適用への手順、機械学習との違い、使い分け方:リクルート事例で分かる数理最適化入門(1) リクルートにおける数理最適化の応用事例の紹介を通じて、数理最適化とは何か、どのようにビジネスに応用できるのかを紹介する連載。初回は、数理最適化の概要、リクルートにおける4つの応用事例、実問題適用への手順、機械学習との違い、使い分け方などについて。 近年多くの企業で、ビジネスでのデータ活用が当たり前になっています。中でも機械学習を用いた成功事例については、耳にしている読者の方も多いと思います。一方で、同じくデータ活用の技術である「数理最適化」は、さまざまな領域で成果を上げているにもかかわらず、その実態について知っている人はあまり多くないようです。 本連載ではリクルートにおける数理最適化の応用事例の紹介を通じて、数理最適化とは何か、どのようにビジネスに応用できるの
2022年1月下旬発行予定の新刊書籍、『コンピュータサイエンスにおける様相論理』のご紹介です。 同書の「まえがき」の一部を、発行に先駆けて公開します。 *** 〈 本書の目的 〉 様相論理とは、たとえば「真の可能性がある」「将来にわたってずっと偽」「それが真であることを花子は知っている」のように、単に真か偽かだけでなく状況に依存した真偽や複雑化された真偽概念を表現できる論理です。さまざまな動機から生まれたさまざまな様相論理がありますが、コンピュータサイエンスにおいてはCTL(computation tree logic)、様相ミュー計算(modal μ-calculus)、PDL(propositional dynamic logic)といった様相論理がよく研究されています。CTLは、たとえば「Aが起こればその後いつかはBが起こる」のような、時間とともに変化する真偽を細かく記述できるので、
日本の大企業が注目するリサーチツールをご存知だろうか。3億件以上の研究論文から技術の相関性を瞬時に可視化できる「Memory AI」なるもので、2023年6月にプレベータ版をリリースすると、半年でキリンホールディングスや大正製薬など大手企業約20社が顧客になった。 注目される理由は、企業の研究開発や事業開発担当者が技術調査や分析にかかる工数を最大で9割削減できるからだ。日本は特許出願件数で2022年、28.9万件で世界3位。国・地域別のGDP(国内総生産)に占める研究開発費総額の割合が3.59%と高く、ここ20年間で世界最高レベルにある(※)。科学技術においてこれだけ充実した環境にありながら、大きな問題がある。研究開発の最初の工程となる調査や分析には短くて半年、長いと1年半もの時間が必要になる。この非効率性に着眼したのが、当時、ニューヨーク州立大学の学生だった畑瀬研斗が設立したMEMORY
From the beginning… Edit on GitHub I’ve done a lot of things with computers, but I’ve always had a gap in my knowledge: what exactly happens when you run a program on your computer? I thought about this gap — I had most of the requisite low-level knowledge, but I was struggling to piece everything together. Are programs really executing directly on the CPU, or is something else going on? I’ve used
機械学習の最も基礎的な手法が最小二乗法だ。この特集では、Pythonで最小二乗法のプログラムを実装することで、その仕組みを学んでいく。 最小二乗法は機械学習の中でも、最も基礎的な手法です。基礎的でありながら実用性も十分に高いので、様々な「予測」に用いることができます。また、視覚化による理解がしやすいので、機械学習の初学者が最初に学ぶ手法として最適と言えます。 視覚的に理解する 最小二乗法は、図1の2枚のグラフで直感的にわかるでしょう。 図1の左にあるグラフには、データを表す青い点が複数あります。個々のデータは、(8, 820)や(36, 1720)といった2つの値の組み合わせです。2つの値の組み合わせなので、横軸と縦軸のグラフにデータを配置できます。 ここで、「すべてのデータの傾向をうまく反映する1本の直線を描いてみよう」というのが最も基本的な最小二乗法です。描いた直線が、図1の右にあるグ
ALAN M. TURING 23 June 1912 – 7 June 1954 F | | P(T) R P(u) R P(r) R P(i) R P(n) R P(g) R P( ) R P(M) R P(a) R P(c) R P(h) R P(i) R P(n) R P(e) R P(s) R -> B B | | L P( ) L P( ) L P( ) L P( ) L P( ) L P( ) L P( ) L P( ) L P( ) L P( ) L P( ) L P( ) L P( ) L P( ) L P( ) -> F In 1928, David Hilbert, one of the most influential mathematicians of his time, asked whether it is possible to create an algo
はじめに 昨今、Rustの登場によりプログラミング言語は複雑化しつつあります。(彼にRustを貶す意図はありません) この現状を打破するため、私は最高にシンプルで完璧な言語作りに取り組みました。(彼は冗談を言っています) 最終的に当初の目論見とはかけ離れた言語になりましたが、その過程で苦労したことなどを綴っていこうと思います。 完成品はこちらになります 一応GCCでコンパイルして実行すれば乱数生成器が動くようになっています。 https://github.com/sxclij/sxcscript 特徴 C言語かつ500行以内のソースコード。(C言語を触ったことのある人なら無茶振り度合いがわかってくれるはず...) 動的メモリ確保なし(多分)固定長配列最高! 3種類の記号で記述可能。(なんというシンプル! 使用ライブラリはfcntl.h,stdint.h,unistd.hのみ 500行で収め
実質的な廃止が決まった「うるう秒」。過去には情報通信システムのトラブルを引き起こす要因にもなってきたが、今後IT業界はうるう秒に悩まされることはないのだろうか。日本でうるう秒調整の対応を主導する情報通信研究機構(NICT)に見通しを聞いた。 そもそも、うるう秒とは何か。NICTのWebサイトではこう説明している。「時間や時刻は、以前は地球の公転・自転に基づく天文時が使われていましたが、科学の進歩に応じた高精度な時刻が必要になり、 現在使われている時刻は、原子時計をもとに決められています。規則正しい原子時計と地球の自転に基づく時刻の差が±0.9秒以内になるように、原子時計の時刻に1秒だけ調整を行った時刻を協定世界時(UTC)と呼び、 現在、この時刻が世界の標準時として一般に使われています。この1秒の調整が“うるう秒”です」。 地球の回転で決まる世界時(UT1)と原子時計ベースの協定世界時(U
Leslie Lamport may not be a household name, but he’s behind a few of them for computer scientists: the typesetting program LaTeX and the work that made cloud infrastructure at Google and Amazon possible. He’s also brought more attention to a handful of problems, giving them distinctive names like the bakery algorithm and the Byzantine Generals Problem. This is no accident. The 81-year-old computer
What can computers do? What are the limits of mathematics? And just how busy can a busy beaver be? In this course, you and I will take a practical and modern approach to answering these questions — or at least learning why some questions are unanswerable! The only prerequisite is that you’re comfortable coding. I prefer code like f(x) instead of math squiggles like Fx. Less γs, more gs. I try to
2024年4月末から生徒として参加している、コンピューターサイエンスの勉強会、 CSZAPでの活動内容をご紹介させていただきます。 はじめに この記事の目的 学習内容 全体観 ①アルゴリズムとデータ構造/①’形式言語・計算理論 ②オペレーティングシステム ③ネットワーク ④システムデザイン ⑤CSの全体感 ⑥プログラミング言語の特徴 ⑦コンピュータアーキテクチャ 取り組み前後の自身の変化 取組前 現在 CSZAPの参加をおすすめしたい人 効果的な学習方法 予習 勉強会内 復習 最後に はじめに CSZAPは、一般社団法人ソフトウェアエンジニアリング協会※1の講師の方が主催している勉強会です。 CSZAPは、数か月間の短期間で、コンピュータサイエンスの基礎のうち、実務でよく出会う部分や実学的なところを程よく学ぶ会となっています。 また、実務に出会う際に溺れないようにすること、将来的にTech
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く