# decoding
23-08-14 TIL
문제 프론트에서 쿠키로 사용되는 jwt 토큰에서 해당 사용자의 username을 추출해서 사용하고 싶다. 시도 우선은 현재 브라우저의 쿠키 문자열을 가져오는 기능을 구현 document.cookie; -> 이 코드 하나로 가져올 수 있음 jwt 토큰을 보면 각각의 항목들이 있는데 이를 각각 분리하여 사용해야함 cookieString.split(';'); -> 세미콜론을 기준으로 문자열을 분해 해당 쿠키의 이름을 가지고 값을 가져와야 함 trimmedItem.substr("Authorization=".length); -> Authorization이라는 Name을 가진 부분을 가져와서 value로 지정 해당 value를 디코딩하고 parse로 나눠서 sub 부분을 가져와야 함 const [, payloadBase64] = jwtToken.split('.'); -> payload가 데이터가 들어있는 부분이고 Ba

[DAY27_1] 암호화과정(Encoding, Decoding)
암호화과정(Encoding, Decoding) 검색시 '폭염' 한글로 인코딩했을때는 원본데이터 준비 
NLP_Day5
rnn 과 lstm 3! = 3 x 2 x 1 길 찾기 알고리즘 네이버 지도의 경우 중간 경유지 5개 최대 => 정답과 최대한 가깝게 max depth 원핫인코딩 : 공간 낭비, 단어의 의미를 이해할 수 없음 => 밀집벡터 : 공간낭비x, 실수로 표현 (620 -> 10 Dense) word2vec argorithm skip-gram cbow

Codable(Encoding/Decoding)
오늘은 Codable을 알아볼게요 Codable이란??? > JSON파일을 쉽게 Encoding/Decoding하게 해줍니다. 음.. 그럼 Encoding과 Decoding은 뭐죠??? Encoding부터 알아보죠! Encoding > 원하는 struct, class, enum등의 인스턴스를 JSON 형태의 Data로 만들어 주는 것 이해가 되셨나요? 코드로 보시죠 💻 Codable을 이용하여 JSON 형태의 Data로 Encoding하고 싶은 경우에는 반드시 Codable이라는 Protocol을 준수하고 있어야 합니다!!(안하면 오류나요😅) 이제 encoding 시작하겠습니다 !! 간단하죠?? 이 Data를 String으로 변환하여 출력해보면 씩 묶은 이진 데이터를 8비트씩 3개로 나눈다. 나눠진 3개의 8비트 값을 6비트로 4개씩 묶습니다. 묶은 6비트 값을 각각 Base64 문자 테이블에서 해당하는 문자로 변환합니다. > Base64 디코딩은 인코딩의 반대과정으로, Base64로 인코딩된 문자열을 이진 데이터로 디코딩하는 과정입니다. 디코딩된 이진 데이터는 원래의 이진 데이터와 같아야 한다. 만약 3바이트 미만이면? 인코딩된 문자열 끝에 하나 또는 두 개의 '=' 문자가 채워져 4자의 배수가 된다. (패딩 개념) 예를 들어 B
Decoding and GPT
디코딩(Decoding) 인코더와 디코더 트랜스포머는 Seq2Seq 모형 (입력 시퀀스 → 출력 시퀀스) 인코더 : 입력 시퀀스를 처리하는 부분(양방향 attention), 문장의 의미 이해 디코더 : 출력 시퀀스를 처리하는 부분(단방향 attention), 새로운 문장 생성 GPT : OpenAI에서 개발한 트랜스포머 기반의 (인과적) 언어 모형 트랜스포머에서 디코더만 사용 준단어(subword) 토큰화 사용 글자 조합의 통계를 이용, 자주 나오는 글자 조합을 하나의 토큰으로 사용 51,200개의 토큰 사용 디코딩 방법 결정론적 방법 : 확률이 높은 문장을 생성 (번역, 요약 등에 활용) | 탐색 방법 | 특징 | | --- | --- | | 완전 탐색(exhaustive sear
OSI 7 계층
✏️ 1 계층 - Physical Layout (물리 계층) encoding - 0 과 1 의 나열을 아날로그 신호로 바뀌어 전선으로 흘려 보내는 작업 decoding - 아날로그 신호를 0 과 1 의 나열로 해석하는 작업 module - 물리적으로 연결된 두 대의 컴퓨터가 0 과 1 의 나열을 주고받을 수 있게 해주는 모듈 Physical Layout 기술은 ‘PHT’ 라는 칩에 하드웨어적으로 구현되어 있다. 📍 두 대의 컴퓨터가 통신하기 위한 조건 컴퓨터가 통신하기 위해선 data 를 주고받을 수 있는 케이블이 연결되어 있어야 한다. 두 컴퓨터는 케이블을 통해 0 과 1 을 주고받으며 통신한다. 📍 문제점 0 과 1 의 데이터는 주파수를 통해 전달되는데, 0 을 나타내는 파동의 크기와 1 을 나타내는 파동의 크기를 제어할 수 없고, 케이블이 운반할 수 있는 최대값과 최소값이 정해저있어 현실적으로 이러한

[번역] HTML에서 이미지 최적화하기
Optimal Images in HTML를 번역한 글입니다. 피드백은 댓글로 부탁드립니다. 자 여러분은 멋진 페이지를 만들었고, 이제 배경 이미지를 넣으려 하는데... 잠깐! 이러면 여러가지 이유로 성능 최적화가 안된다는 걸 아셨나요? CSS에서 (보통) background-image를 피해야하는 이유 최적의 이미지 크기 정하기 SVG를 사용하는 경우를 제외하고, 요즘 기기들의 다양한 화면 크기와 해상도를 생각해 보면, 사이트의 방문자 모두가 동일한 이미지 파일을 받아야 하는 경우는 사실상 없습니다. 여러분 사이트는 스마트 워치에서도 작동하죠? (농담입니다… 제 생각에는요) 여러분은 "
인코딩(encoding)과 디코딩(decoding)
인코딩(encoding)과 디코딩(decoding) 파일에 저장된 정보의 형태를 다른 것으로 변경하는 것을 말한다 특정한 데이터 포맷으로 데이터를 가공하는 것 이해를 위한 예시 오디오 : PCM -> MP3 PCM(Pulse Code Modulation) : 디지털 오디오의 원형 단순히 아날로그 오디오를 샘플링해서 0과 1로 바꾼 원본 데이터 크기가 커서 보관이나 전송에 적합하지 않다 MP3 : MPEG-1 Audio Layer III or MPEG-2 Audio Layer III https://en.wikipedia.org/wiki/MP3 TODO: MPEDG-1, 2, 3가 무엇인지 알아보기 MP3파일은 원본 데이터를 압축하고 특정 헤더와 메타정보를 추가한 것 이다 압축하면서 사람이 감지하기 어려운 주파수의 데이터는 제거하면서 데이터크기를 줄인다 데이터를 가공해서 포장했으므로 이것은 MP3 포맷으로

Contrastive Decoding: Open-ended Text Generation as Optimization
1. Introduction Open-ended text generation은 prompt가 주어졌을때, 유창하고 일관성 있는 대답을 하는 것을 목적으로 한다. 하지만 likelihood가 가장 높은 sequence를 찾는 decoding은 짧고 반복적이며 유창하지 않은 문장을 생성하는 경향이 있으며, 크기가 작은 LM일수록 그 경향이 더 뚜렷하다. 이를 해결하기 위해 저자들은 위의 그림에서 보이는것처럼 크기가 큰 Expert LM의 Token 분포에서 크기가 작은 Amateur LM의 Token 분포를 빼주는 Contrastive Decoding을 제시해, 비교적 유창한 생서잉 가능한
Python - Base64 Decoder, Encoder ( import 없이 )
Base64 Convert Encoding(Text to Base64) ASCII -> Bit Pattern -> Base64 Expression 1. Text( str ) -> Ascii( List\[int\] ) Text(string)을 ascii 코드로 변환한다 [ord(s) for s in text] 2. Ascii( List\[int\] ) -> binary( List\[str\] ) Ascii code로 변환된 값들을 binary 값으로 변환한다 [bin(ord(s)) for s in text] 3. binary( List\[str\] ) -> bit pattern(str) binary를 연결해서 bit pattern으로 만들기 위해 bin 한 결과의 앞부분을 정리한다. ( ex> '0b1001' -> '1001' ) [bin(ord(s))[2:] for s in text] Base64 형식

[CS] Computer Science Part1 Day-86
How many bytes does a string take? In English, each letter occupies one byte. Every programming language has different bytes in a string. So, when you understand the bytes by the data type, you can give an answer. What is Unicode? Industry standard designed to provide a consistent representation and handling of global characters on computers. It contains character sets, encodings, databases, algorithms for manipulating characters. What is encoding? It is to turn a character or symbol
22.02.15 인코딩과 디코딩
컴퓨터는 숫자밖에 모른다. 때문에 우리가 사용하는 문자를 컴퓨터에서 사용하기 위해서는 숫자로 변환해줘야 한다. 이러한 과정을 인코딩(encoding)이라고 한다. 반대로 컴퓨터가 사용하고 있는 코드(숫자표현)을 사람이 뜯어봐야하는 경우도 생긴다. 코드를 사람이 사용하는 문자로 변환하는 과정을 디코딩(decoding)이라고 한다. 인코딩 기준 사람의 언어를 컴퓨터 언어로 바꾸는 기준은 여러가지가 있다. > 아스키코드 (ASCII) 확장 아스키 코드(Extended ASCII) 코드페이지(code page, cp) 유니코드 아스키코드 가장 기본인 코드이다. 특징은 아래와 같다. 7bit(128개)로 이루어져있으며, 처음 32개는 제어문자라 출력을 할 수 없다. 33번째 이후 문자부터 숫자와 영문자(대문자, 소문자)가 연속적으로 배치되어 있다. 이러한 배치는 프로그래밍에서 유용하게 쓸 수 있다.
그림판(canvas API)으로 그린 그림 서버와 소통 post, get(Feat: encoding, decoding 과정)
Canvas API를 이용하여 구현한 그림판으로 그림을 그린 후, 해당 그림을 서버로 post 요청했다. 이 후 mypage의 갤러리에서 저장한 그림들을 get 요청하고 서버에서 받은 데이터들을 buffer로 base64인코딩한 다음 렌더링 코드를 짰다. but 해당 그림들이 제대로 표시되지 않았다. console.log로 인코딩한 데이터들을 확인한 결과, 해당 문자열의 앞부분에 불필요한 문자열이 붙어서 렌더링되고 있었다. 해당 갤러리나 서버에서의 코드는 문제 없어 보였고, 그림판 그림을 post 할 때의 코드를 확인해야 할 것 같았다. 요청 로직을 구현할 때 구글링한 결과들을 참고하여 구현했지만, 이미지 데이터를 가공하여 서버에 보내는 과정을 100% 이해한 것은 아니었기에 이 기회에 다시 공부하며 정리해보았다. 깃헙 - 에러 핸들링 과정 정리 클라이언트에서 서버에 post 요
[JSON][Apple] Encoding and Decoding Custom Types
Reference 내용전반: Apple문서 🐯 Encoding/Decoding Custom Types ✔️ 개요 많은 프로그래밍 task들은 data를 네트워크 연결을 통해 전달하거나 disk에 저장하고 API나 서비스에 제출하는 것들을 포함합니다 이런 task들은 대게 data를 전송할 때 중간 format으로 인코딩/디코딩해야 합니다 Swift 표준 라이브러리는 data 인코딩/디코딩을 위한 표준화된 접근법을 정의합니다 당신의 custom type에 Encodable/Decodable 프로토콜을 채택하여 적용할 수 있습니다 이 프로토콜들을 채택하는 것은 Encoder/Decoder 프로포콜이 dat
2021-12-02(목) 4주차 4일 + 휴강
@RequestMapping("/lang/literal/exam5") 이 주소와 @GetMapping("/test1") 이 주소가 합쳐져서 메소드를 가리키는 경로가 된다. 메소드를 찾아가는 경로 경로는 마음대로 정할 수 있다. @RequestMapping("/lang/literal/exam5") 바로 예제를 찾을 수 있으니까 경로 이름을 저렇게 줬을 뿐 경로가 마치 패키지 이름과 같이 연결될 거라고 생각하면 안 됨 다만 예제를 찾기 쉽게 하려고 저렇게 해놨을 뿐 문자와 문자를 합쳐서 하나의 문자열을 만들어서 리턴함 리턴된 문자열은 이 요청을 한 웹 브라우저에게 보내진다 요청을 한 브라우저가 서버로부터 받는다 이 문자에 대해서 유니코드를 알고 있다면 \u0041 이렇게 적어도 된다. \u0041 ← 이 번호에 해당하는 문자 내부적으로 저장할 때는 2진수 형태로 저장하지만 표현할 때는 10진수로 표현함 16진수가 10진수로 바뀌어서 웹 브라우저 쪽으로 리턴

Django | 인증 & 인가 ①Bcrypt
인증 (Authentication) 1. 로그인 절차 유저 아이디와 비밀번호 생성 유저 비번 암호화해서 DB에 저장 유저 로그인 유저가 입력한 비밀번호를 암호화 한 후 암호화된 이 비밀번호와 DB에 저장된 유저 비밀번호와 비교 일차하면 로그인 성공 로그인 성공하면 access token을 클라이언트에게 전송 유저는 로그인 성공 후 다음 요청부터는 access token을 첨부해서 서버에 전송함으로서 매번 로그인하지 않아도 됨 2. 유저 비밀번호 암호화 유저의 비밀번호는 절대 그대로 DB에 저장하지 않는다 DB가 해킹당하면 유저 비밀번호 그대로 노출 외부 해킹이 아니더라도 내부 관계자들이 비밀번호를 볼 수도 있음 유저의 비밀번호는 꼭 암호화해서 저장하자 DB가 해킹당해도 비밀번호가 노출되지 않으며 내부 관계자들도 볼 수 없음 비밀번호 암호에는 `단방향 해쉬 함수(one-way hash f

[Swift] JSON 디코딩 작업, 어떻게 간소화 해볼까?
결론: 결국 결론은 정반합! 1 안도 2 안도 아닌 제 3안의 탄생! 제네릭 메서드로 구현하였습니다..! 프로젝트를 수행하면서 JSON 데이터의 디코딩 작업이 아래와 같이 두 단계로 이루어져 있어서 간소화하고 싶었어요. NSDataAsset 타입의 인스턴스를 생성하여 JSON 파일의 데이터를 불러온다. JSONDecoder 타입의 decode(_:from:) 메서드를 NSDataAsset 인스턴스의 데이터를 디코딩한다. 저는 1 번 작업을 생략(은닉화)해서 JSON 데이터를 디코딩하고 싶어하는 사용자들이 NSDataAsset이라는 타입을 몰라도 메서드 이용이 가능하게끔 만들고 싶었어요. 그래서 2 가지 안을 준비해봤답니다. **1 안. 제네릭 타입을

[Swift] JSON 데이터 디코딩 지원 타입 만들기
디코딩 작업을 할 때마다 매 번 JSONDecoder와 NSAssetData의 인스턴스를 생성해서 이용해야 하니 번거롭다고 느꼈습니다. 그래서 이 작업을 줄이기 위해 두 가지 방법을 고안해봤어요. 제네릭 타입이 적용된 타입을 만들어 디코딩할 타입에 맞는 인스턴스를 생성해서 JSON 파일 이름만으로 디코딩하는 방법 디코딩 메서드를 지원하는 프로토콜을 만들고 초기 구현하여 프로토콜을 채택하는 타입에서 디코딩할 타입을 정할 수 있도록 만드는 방법 코드로 보시는 것이 더 편하실 것 같네요..! 1 안. 제네릭 타입이 적용된 타입을 만들어 디코딩할 타입에 맞는 인스턴스를 생성해서 JSON 파일 이름만으로 디코딩하는 방법 아래 CustomJSONDecoder 타입은 제네릭 타

[Swift] JSON 데이터를 디코딩하는 방법
오늘은 아래 내용들에 대해 들여다 보겠습니다! JSON을 통해 데이터를 받아올 때 Swift로 디코딩하기 위한 모델 타입을 만드는 방법 UIKit의 NSDataAsset과 Foundation의 JSONDecoder를 이용하여 JSON 디코딩하는 방법 출발하시죠! 모델 타입 작성 방법 JSON 데이터의 구조 (객체, 키, 값)에 맞게 타입을 정의한다. JSON으로부터 입력을 받지 못할 수 있는 프로퍼티의 타입은 ?형 옵셔널로 정의한다. 정의한 타입이 JSON으로 표현된 데이터를 형식에 맞게 디코딩할 수 있도록 Decodable 프로토콜을 채택한다. 타입에 선언된 프로퍼티가 Decodable을 준수하는 기본 자료형(String, Int, Double 등)인 경우에는 별도 작업 없이 프로토콜 준수함 선언된 프로퍼티 중 사용자 정의 타입이 있을 경우 해당 타입 또한 Decodable 프로토콜을 준수하