はてなキーワード: アーキテクチャとは
大多数のITエンジニアがやってる「勉強」って「特定のフレームワークのAPIを覚える作業」とか「新しいプログラミング言語のチュートリアルをなぞる作業」とか「民間資格の過去問を覚える作業」とかだし、そんなレベルだったら他の職業の人も十分やっとる
もっと大事なのは、抽象化能力・論理的思考を鍛えることとか、既存フレームワークの車輪の再発明をしてみるとか、おいそれとは陳腐化しない低レイヤーの知識、コンピュータアーキテクチャやネットワークプロトコルスタックとか線型代数や離散数学やらの数学含めた計算機科学の知識をつけることとかだと思うんよな
最近は最前線から離れててあんまり追えてないけど、現役のときの2008年くらいから10年くらいの間で、仕事のやり方や設計の考え方が大きく変わったIT技術要素で、いまぱっと思い浮かぶのはこんな感じかな。
分野にもよるし、調査して試作した結果自分の業務には採用しなかった技術とかもある。流行ると思って使えるようになったけど流行らなかった技術を入れるとたぶんもっとある。
あと、新機種が出てOSが新しくなったり、ミドルウェアの新バージョン対応、テスト手法の進化もけっこうカロリー高いけどここには書いてない。
「自分はフロントエンド専門でReactしかやらない」みたいに分野を絞れば大分減るけど、その技術が何年持つかわからないから普通はリスクヘッジのために他の技術も齧らざるを得ないし、バックエンドとかの人と議論するのに結局他分野の知識もそれなりに必要。
NoSQL(memcached, Redis, Cassandra)
クラウドアーキテクチャ、XaaS(AWS, Google Cloud, MicrosoftAzure)
CI/CD(Travis CI, CircleCI, Jenkins)
トランスパイラ(Browserify, webpack, CoffeeScript, TypeScript)
型システム(Rust, TypeScript, Haskell)
オーケストレーション(Ansible, Kubernetes, Terraform)
機械学習(Python, MATLAB, 線形代数等数学知識)
SPA(React, AngularJS, Ember.js, Vue.js)
3Dゲームエンジン(Unreal Engine無償化、Unity5)の他分野への普及
GraphQL
機械学習ライブラリ(Tensorflow, PyTorch, Chainer)
Jupyter Notebook
NFT
そこからまた状況が進み、DATファイルへのアクセスが開放されてるので、一部専ブラが特定の処置を行うことでまた使えるようになってる。
現段階では、Jane(とそれに賛同した専ブラ開発者たち)が反旗を翻し、新サービスを立ち上げてユーザーもろとも移行させようとしたが、いま一歩及んでないという印象。
なので、Talk への完全移行はなされないのでは?と思われる。
個人的に今回の騒動で一番面白かったのは、一番対応が早かったアーキテクチャが Mac だったということ。
事実上デファクトスタンダードとなっている専ブラがプラグインによる拡張を許容する作りになっていたおかげで、騒動の翌朝にはほぼ今まで通り専ブラが使えるようになってた。
Beautiful Soup
研究やラボで遊ぶ人たちは基本的にシステムやプロダクトの下に膨大なユーザーをぶら下げて、事業を回すための道具だという認識が薄いんですよ。
スキルとかいうふわっとした単語やJAVAなのかJavaScriptなのかもわからないJavaなんて単語使っちゃうような人にはわからないのかもしれんが。
そもそもスキルってどの分野のどの深度だよって話は20年前でさえそこそこ体系化されてる。
アーキテクチャなのかコーディングなのか電話や電力みたいなファシリティ隣接領域、なんならユーザー向けヘルプデスクだって相応の専門性がある。
単に教科書を読むだけより問いかけられたほうが脳が考えようとするし能動的に学習できる。
プロンプト:「ChatGPTの仕組み」の包括的な理解が得られる文章を、クイズ番組の司会風に書いてください。クイズは5問ほど出題してください。それぞれの問題の後に答えと解説を発表してください。
出力:
皆さんこんにちは!今日は特別なクイズ番組にようこそ!私たちはあなたに、OpenAIが開発した驚くべき技術、ChatGPTの仕組みについての包括的な理解を得るためのクイズを出題します。さあ、問題を出題していきましょう!
問題1: ChatGPTの基本となるAIアーキテクチャは何でしょうか?
答え: GPT-4
解説: ChatGPTは、OpenAIが開発したGPT-4(Generative Pre-trained Transformer 4)というアーキテクチャを基盤としています。GPT-4は、自然言語処理タスクに優れた性能を発揮することで知られています。
問題2: GPT-4はどのような学習手法で訓練されていますか?
答え: 事前学習(pre-training)と事後学習(fine-tuning)
解説: GPT-4は、2段階の学習プロセスで訓練されています。最初の段階は事前学習で、大量のテキストデータから言語モデルを学習します。次の段階は事後学習で、特定のタスクに適した性能を発揮するようにモデルを微調整します。
問題3: ChatGPTが生成するテキストの品質を向上させるために用いられる技術は何でしょうか?
解説: ビームサーチは、生成されるテキストの品質を向上させるために用いられる探索アルゴリズムです。複数の候補を同時に生成し、最も尤もらしい文を選択することで、より自然で正確なテキストを生成することが可能になります。
問題4: GPT-4が生成するテキストにおいて、長い文章を生成する際に問題となる要因は何でしょうか?
答え: 文脈の長さ(Context Length)
解説: GPT-4は、一度に扱える文脈の長さに制約があります。この制約により、長い文章を生成する際に、以前の文脈が失われることがあり、それが結果として文章の一貫性や理解度に影響を与えることがあります。
問題5: ChatGPTが生成する回答が間違った情報を含む可能性がある理由は何でしょうか?
答え: 学習データに含まれる誤った情報とモデルの生成性能の限界
解説: ChatGPTが間違った情報を含む回答を生成する理由は主に2つあります。まず、学習データに含まれる誤った情報が原因となることがあります。学習データが不正確であると、モデルもそれを学習し、間違った回答を生成することがあります。また、GPT-4は生成モデルであるため、正確な情報が学習データに含まれていても、生成時に限界があり、正確性が犠牲になることがあります。
以上、5問のクイズでした!皆さんはChatGPTの仕組みについての理解を深めることができましたか?今回のクイズで学んだ知識をぜひ活用して、この驚くべき技術とその可能性についてさらに学んでいってくださいね!それでは、また次回のクイズでお会いしましょう!
どうせ官主導ではうまく行かない。だが、理想論をぶち上げる意味はあるだろう。
※計算基盤を自作するのは非常に重要で、そうしないと、GPUクラスタ内での並列化や通信ネットワーキングなど、ChatGPT を動かすためのコアの機能を獲得することができない。正直、ここを外資に握られてたらどうしようもないんじゃないか。
GPT-4はまだ開発中で、どのような仕様や性能になるかは不明です。しかし、現時点で公開されている情報に基づいて、以下にGPT-4とChatGPTの違いをまとめてみました。
1. 言語処理能力の向上
GPT-4は、より高度な自然言語処理能力を備えることが期待されています。GPT-4は、GPT-3の40倍以上のパラメータ数を持ち、さらに高度なニューラルネットワークアーキテクチャを採用することが予想されています。これにより、GPT-4は、複雑な自然言語処理タスクをより正確かつ高速に実行することができるようになる可能性があります。
2. 応答速度
GPT-4は、より高速な応答速度を実現することが期待されています。GPT-4は、より高速な処理速度を持つ可能性があり、より短い応答時間でより多くの自然言語処理タスクを処理することができます。
3. コンピュータリソース
GPT-4は、より高度な自然言語処理能力を備えるため、より多くのコンピュータリソースを必要とする可能性があります。これに対して、ChatGPTは、より少ないリソースで動作し、比較的低速な応答速度を持っています。
4. 学習データの利用
GPT-4は、より大規模なデータセットを利用することができるため、より高度な自然言語処理能力を備えることが期待されています。一方、ChatGPTは、限られたデータセットで学習しているため、限定された範囲での自然言語処理タスクに適しています。
5. 開発プロセス
GPT-4は、大規模な研究開発プロセスを経て開発されるため、より高度な自然言語処理能力を備えることが期待されています。一方、ChatGPTは、オープンソースのニューラルネットワークモデルであり、誰でも利用することができます。
続けてください
6. タスクの多様性
GPT-4は、より多様な自然言語処理タスクに対応できるように設計されています。例えば、対話、文章生成、質問応答、文書要約、機械翻訳など、幅広いタスクに対応できる可能性があります。一方、ChatGPTは、対話タスクに特化しています。
7. モデルの利用者
GPT-4は、ビジネス、政府、研究機関、大学など、幅広い分野の利用者に向けて設計されています。一方、ChatGPTは、個人の利用者が利用することが多いとされています。
8. デプロイメントの容易さ
GPT-4は、ハードウェアやソフトウェアの両面で、より効率的かつ簡単なデプロイメントを可能にすることが期待されています。一方、ChatGPTは、比較的単純な構造を持つため、デプロイメントが比較的容易であると言えます。
以上が、GPT-4とChatGPTの主な違いです。ただし、GPT-4はまだ開発中であり、公開されている情報は限られているため、今後の情報開示によっては、上記の違いに変化がある可能性があります。
「君の言っていることはすべて正しいけど、面白くない。」
何年か前に読んだ雑誌のコピーで、当時かなりの衝撃を受けたことを覚えている。
今でもたまにこのコピーを思い出してドキッとすることがある。
エンジニアという職業では特に、論理的に考えることが必須なスキルとなる。
エンジニアの仕事は、正しい方向へ向かうための判断を繰り返すことに他ならない。
ビジネスのためにどのようなシステムを作るべきか?アーキテクチャの選定はビジネス課題の解決になっているか?アプリケーションの実装はビジネスが意図した動作をするか?
職業病かどうかわからないが、日常生活でも無意識に論理的に考えることが増えたように思う。
エンジニアの仕事では論理的思考は役に立つが、日常生活ではむしろ邪魔になることがある。
日常生活で正しさが求められるシーンは限られている。
正しいことが他の何よりも優先されるのかといえば、当然そんなことはない。
正しさがある程度証明されたからといって、それが何になるんだろうか?
共感を求めている人に正論を叩きつけたり、別のコンテキストに立つ人間同士が正論を言い合ったりすることは、ほとんど無価値だし、むしろ憎悪の原因にしかならない。
エンジニアの仕事でさえも、論理的思考が邪魔になる場面があると思う。
論理的に考えることは、ある程度の時間がかかる。正しさの判断をするために時間をかける必要がない場面は、無限にある気がする。
正しい判断が求められず、速攻で理由もなく決めてしまえばいいようなトピックに関しては、論理的思考がコストにしかなっていない。
つまり、合理的でないが論理的に判断をしてしまうケースはよくある。
それでいても論理的に考えたくなってしまうのは、論理的思考がすべてを解決してくれるように見えるからだ。
もしかしたら人は根源的に、自分が正しいことの保証を求めるのかもしれない。
夢の中でさえ論理的に思考していることがある。もはや論理的思考に操られているのかもしれないと思う。
論理的思考に操られないためには、「正しさの判断が必要か」を考えることだ。
論理的思考はすべてを解決するわけじゃなく、正しさの判断にしかならない。
「感覚で考えること」と「正しくないこと」の両方を肯定する必要がある。
まず、感覚で考えることは、論理的に考えることの真逆というわけでもない。
それに、もし考えが論理的に正しくなかったとしても「別にそれでいいじゃん」と思える寛容さや「間違ってるけど面白いね」と思える柔軟さを大切にしたい。
「君の言っていることはすべて正しいけど、面白くない。」
何年か前に読んだ雑誌のコピーで、当時かなりの衝撃を受けたことを覚えている。
今でもたまにこのコピーを思い出してドキッとすることがある。
エンジニアという職業では特に、論理的に考えることが必須なスキルとなる。
エンジニアの仕事は、正しい方向へ向かうための判断を繰り返すことに他ならない。
ビジネスのためにどのようなシステムを作るべきか?アーキテクチャの選定はビジネス課題の解決になっているか?アプリケーションの実装はビジネスが意図した動作をするか?
職業病かどうかわからないが、日常生活でも無意識に論理的に考えることが増えたように思う。
エンジニアの仕事では論理的思考は役に立つが、日常生活ではむしろ邪魔になることがある。
日常生活で正しさが求められるシーンは限られている。
正しいことが他の何よりも優先されるのかといえば、当然そんなことはない。
正しさがある程度証明されたからといって、それが何になるんだろうか?
共感を求めている人に正論を叩きつけたり、別のコンテキストに立つ人間同士が正論を言い合ったりすることは、ほとんど無価値だし、むしろ憎悪の原因にしかならない。
エンジニアの仕事でさえも、論理的思考が邪魔になる場面があると思う。
論理的に考えることは、ある程度の時間がかかる。正しさの判断をするために時間をかける必要がない場面は、無限にある気がする。
正しい判断が求められず、速攻で理由もなく決めてしまえばいいようなトピックに関しては、論理的思考がコストにしかなっていない。
つまり、合理的でないが論理的に判断をしてしまうケースはよくある。
それでいても論理的に考えたくなってしまうのは、論理的思考がすべてを解決してくれるように見えるからだ。
もしかしたら人は根源的に、自分が正しいことの保証を求めるのかもしれない。
夢の中でさえ論理的に思考していることがある。もはや論理的思考に操られているのかもしれないと思う。
論理的思考に操られないためには、「正しさの判断が必要か」を考えることだ。
論理的思考はすべてを解決するわけじゃなく、正しさの判断にしかならない。
「感覚で考えること」と「正しくないこと」の両方を肯定する必要がある。
まず、感覚で考えることは、論理的に考えることの真逆というわけでもない。
それに、もし考えが論理的に正しくなかったとしても「別にそれでいいじゃん」と思える寛容さや「間違ってるけど面白いね」と思える柔軟さを大切にしたい。