ADHD, autism or complex trauma? [pdf]
hacker-news-frontpage
164 points · 135 comments · by skeptical1884
Score: 52.25Confidence: 46%
View offerLoading the catalog…
THE AI OPPORTUNITY INDEX
Find your next AI tool. Explore free access, trials, and credits — all in one place.
hacker-news-frontpage
164 points · 135 comments · by skeptical1884
Score: 52.25Confidence: 46%
View offerhacker-news-frontpage
298 points · 136 comments · by hn_acker
Score: 51.43Confidence: 46%
View offerAIタグが付けられた新着記事 - Qiita
最近、FDEという職種が急速に注目されている。 FDEは、AIの導入方針を提案するコンサルタントではない。既製のSaaSを顧客ごとに設定するための常駐エンジニアでもない。 顧客の業務へ入り込み、解くべき問題を特定し、必要なデータとシステムを接続し、現場で動くソフトウェアを...
Score: 57.36Confidence: 54%
View offervelog
전 세션에서 목록 화면의 종목 링크 prefetch를 껐다. 목록에 보이는 종목 수만큼 KIS 호출이 나가던 것을 없앤 대신, 종목 상세에 들어가면 헤더가 채워질 때까지 스켈레톤을 1초 남짓 보게 됐다. 헤더가 조회 여러 건을 차례로 기다린다는 것까지 확인하고 그 정리를 다음 작업(F121)으로 넘겼다. 초기 계획은 헤더 조회를 병렬로 바꾸고 문서를 고치는 것이었는데, 늘 그렇듯 둘 다 계획한 모양으로 끝나지 않았다. 병렬화는 대부분의 진입에서 수십 ms밖에 줄이지 못했고, README의 캐시 서술을 대조하다가 종목 페이지에 선언해 둔 revalidate가 한 번도 동작한 적이 없다는 걸 알게 됐다. 그래서 헤더에서는 KIS 호출을 따로 떼어냈고 문서는 렌더 방식부터 다시 썼다. 같이 조사한 시세 요청 중복에서는 차트의 당일 봉이 한 달 가까이 갱신되지 않던 문제가 나와 이것도 고쳤다. 헤더가 기다리는 조회 먼저 헤더가 무엇을 기다리는지와 prod에서 얼마나 걸리는지부터 쟀다. 직전 글의 1.2초는 장중 수치라, 휴장일인 이날 기준을 다시 잡았다. layout 종목 기본 정보 (DB) 헤더 가격 (DB) → 기업 코드 (DB) → 기업개황 (DART) → 시장조치 (KIS) → NXT 대상 여부 (DB) 의존 기업 코드 → 기업개황 하나. 나머지는 티커만 있으면 됨 prod, 목록 행 클릭부터 헤더가 채워질 때까지 처음 여는 종목 0.91~0.95초 이미 열어 본 종목 0.60~0.63초 의존이 하나뿐이라 병렬로 묶는 일 자체는 간단했다. 다만 줄어드는 시간이 진입 종류에 따라 달랐다. 처음 여는 종목은 DART 캐시가 비어 있어 기업개황(약 0.28초)과 KIS 호출이 겹치는 만큼 줄어들지만, 이미 열어 본 종목은 기업개황이 캐시에서 오고 DB는 같은 리전이라 원래 빠르다. 여기서 남는 대기는 사실상 KIS 시장조치 호출 하나였고, 병렬로 돌려도 헤더가 끝까지 기다려야 하는 값이라 수십 ms밖에 줄지 않는다. 동작한 적 없는 revalidate README의 캐시 서술을 코드와 맞춰 보던 중에 의문이 하나 생겼다. 헤더의 시장조치 호출은 캐시 없이( no-store ) 요청마다 나가는데, 그렇다면 같은 route에 선언한 revalidate는 적용되고 있는 걸까. 이미 열어 본 종목에서도 서버 렌더 시간이 그대로 걸린다는 위 실측과도 맞물리는 의문이라 prod 응답 헤더를 열어 봤고, 두 번 요청해 두 번 다 private, no-store 에 캐시 MISS였다. 선언 기본 정보 24시간 · 재무 12시간 · 공시·차트 1시간 실제 요청마다 서버 렌더, 페이지 캐시 없음 원인 [ticker] 세그먼트에 generateStaticParams가 없음 캐시 없는 fetch 2곳, 공시 탭의 searchParams 원인으로 먼저 본 건 #119에서 헤더에 붙인 배지 호출이었다. 그런데 커밋 이력을 확인하니 generateStaticParams 는 한 번도 있었던 적이 없어서, 종목 페이지는 배지보다 훨씬 앞선 처음부터 요청마다 렌더되고 있었다. 주기를 적어 둔 선언도 README의 캐시 표도 동작하지 않는 설정을 설명하고 있었던 것이다. 빌드 결과로 전체를 다시 분류해 보니 페이지 단위로 캐시되는 건 홈 하나였고, 지수 페이지도 searchParams를 읽어 동적이었다. 요청 시 렌더 유지와 선언 삭제 후보 판정 ISR 도입 보류. generateStaticParams 추가와 캐시 없는 fetch 제거가 함께 필요. 방문이 드물면 마지막 생성본이 먼저 서빙되어, 장외에 전날 종가가 최신처럼 보일 수 있음 요청 시 렌더 유지, 선언 삭제 채택. 동작은 지금 그대로이고 문서와 코드를 사실에 맞추는 일만 남음 ISR은 방문이 잦을수록 이득인 구조다. 종목은 2,651개인데 방문은 드문 서비스라면 캐시가 맞는 경우보다 오래된 페이지를 먼저 내보내는 경우가 더 많을 것으로 보았고, 그걸 막으려면 EOD 적재 직후에 페이지를 다시 만들게 하는 장치가 따로 있어야 한다. 다만 이 위험은 재 본 게 아니라 추론이라서, 도입 조건과 함께 backlog에 적어 두는 데서 멈췄다. 선언은 문서에 "적용되지 않는다"고 적는 대신 코드에서 지웠다. 지워도 동작이 같은지는 먼저 확인했는데, 서버 쪽 fetch 13건이 모두 캐시 옵션을 직접 지정하고 있어 선언이 기본값으로 쓰일 자리가 없었다. README의 종목 행은 "요청 시 서버 렌더, DB는 요청마다 조회, DART만 fetch revalidate"로 고쳤고, 배포 시점의 종목 목록에 고정돼 있던 sitemap에는 하루 주기를 걸었다. 페이지 캐시 : 홈 1시간, sitemap 하루 외부 응답 캐시 : DART 공시 목록 1시간 · 기업개황 24시간, 지수·순위의 KIS 응답, AI 요약(DB) DB 조회 : 시간 캐시 없이 요청 안에서의 중복 제거만 헤더에서 KIS 호출 분리 병렬화로 줄지 않는 대기를 없애려면 헤더가 KIS 응답을 기다리지 않아야 한다. 그 전에 시장조치 결과가 배지 말고 다른 데 쓰이는지부터 확인했다. 가격 표시 분기나 폴링 제어에 물려 있다면 떼어낼 수 없기 때문인데, 쓰는 곳은 배지를 그리는 두 군데뿐이었다. 배지를 별도 서버 컴포넌트로 빼서 fallback 없는 Suspense로 감쌌고, 나머지 조회는 하나가 실패해도 그 요소만 빠지도록 Promise.allSettled 로 묶었다. 측정 전 후 로컬, KIS 응답을 3초 늦췄을 때 종목명 표시 3.37초 0.31초 (배지는 3.30초) prod, 처음 여는 종목 (화면 전환 뒤 헤더까지) 0.70초 0.40~0.59초 prod, 이미 열어 본 종목 (클릭부터 헤더까지) 0.60~0.63초 0.35초 · 0.70초 prod 수치는 방향을 확인한 정도로 본다. 이미 열어 본 종목은 두 번밖에 재지 못했고, 0.70초가 나온 회차는 화면 전환부터 0.42초로 늦은 데다 응답이 끝나고 0.3초가 지나서야 헤더가 떴는데 그 원인은 아직 보지 않았다. 대가도 하나 생겼다. 시장조치 종목에서는 배지가 뒤늦게 붙으면서 옆의 홈페이지 아이콘이 65~69px 밀리고 모바일에서는 헤더가 5px 높아진다. 배지 자리를 옮기는 건 디자인 결정이라 이번에는 그대로 두었다. 갱신되지 않던 차트 당일 봉 헤더를 조사하면서 종목 상세에 들어갈 때 시세 요청이 같은 주소로 두 번 나가는 것도 같이 봤다. 요청이 한 번 더 나가는 정도로 여겨 backlog에 두었던 항목인데, 원인을 따라가 보니 차트 쪽 기능이 멈춰 있었다. 헤더 키 = 종목 · 시장 · 종가 날짜 60초 폴링 차트 키 = 종목 · 시장 구독만, 폴링 없음 → 키가 달라 캐시 항목이 둘 → 차트는 마운트 때 한 번 요청할 뿐, 헤더의 폴링 결과를 받지 못함 → 정규장 KRX 탭에서 당일 봉이 페이지를 연 시점 값에 고정 (9월 4일부터) 키에서 날짜를 빼기 전에 날짜가 들어간 이유부터 확인했다. 9월 4일 당시에는 15:30 이후가 KRX 탭의 폴링을 멈추는 구간이어서, 키를 바꿔야 장중 마지막 값 대신 확정 종가를 다시 받아 올 수 있었다. KRX 애프터마켓이 열린 9월 14일부터는 그 시간에도 폴링이 돌고 있으므로 "날짜가 바뀌면 한 번 다시 요청"으로 같은 동작이 나온다. 키 조립을 함수 하나로 모으고 날짜를 뺐다. 새로고침 하거나 페이지를 떠났다 돌아오면 갱신되어서 그동안 눈치 못 챘던 부분이다. 키 통합 뒤 헤더로 넘어온 차트 응답 키를 합치자 반대 방향의 문제가 생겼다. 장외의 NXT 종목에서 헤더는 요청을 끄고 서버가 렌더한 값을 보여 주는데, 차트는 그 시간에도 한 번은 요청을 보낸다. 둘이 같은 캐시 항목을 보게 되면서 차트의 요청 실패가 헤더에 "일시 지연" 배지로 붙었다. 지연된 값이 아닌데 지연이라고 표시한 것이다. 성공 응답 쪽도 살펴보니 #147에서 만든 개장 전 등락 초기화 판정에 차트가 받아 둔 세션 값이 끼어들 수 있었다. 그래서 헤더는 자기 요청이 꺼져 있는 동안 공유 항목을 읽지 않게 막았다. 확인 전 후 진입 시 시세 요청 2회 1회 캐시 항목 2개, 폴링은 헤더 것만 갱신 1개를 헤더와 차트가 함께 구독 휴장일이라 브라우저 시계를 정규장으로 돌려, 폴링 결과가 두 곳에 함께 들어가는 것까지만 확인했다. 실제로 봉이 움직이는지는 다음 거래일 장중에 볼 계획이다. 정리 F121 종결 — 헤더 조회 병렬화와 시장조치 배지의 Suspense 분리. KIS 응답을 3초 늦춰도 종목명은 0.31초에 표시 종목 route 렌더 방식 정정 — revalidate 선언은 처음부터 미동작. 요청 시 렌더를 유지하고 선언 삭제, 페이지 캐시는 홈과 sitemap만 시세 캐시 키 통일 — 헤더와 차트가 한 항목을 공유, 진입 시 요청 2 → 1회. 요청이 꺼진 헤더는 공유 항목을 읽지 않음. 장중 확인은 다음 거래일 G1 반영 — README 정정 10건과 렌더 방식 서술. 코드에 없던 "처리 누락을 컴파일 단에서 검출" 주장은 삭제 부수 수정 — 종목 조회 실패가 404로 보이던 것을 오류 화면으로, 사용처 없는 조회 함수 삭제 병렬화 한 건으로 끝낼 생각이었는데, 종목 상세로 들어가는 경로 하나에서 세 가지가 차례로 나왔다. 그중 revalidate는 README에 주기까지 적어 두고도 응답 헤더를 한 번도 열어 보지 않은 설정이었다. 문서를 코드와 대조하는 일을 좀 형식적인 정리로 여겼는데, 이 건은 그 대조가 아니었으면 면접에서 동작하지 않는 캐시를 설명하고 있었을 것 같다. 다음 작업 G1 — 새 세션에서 README를 처음 읽는 사람 시점으로 검토 코드 읽기(G2) — 검색부터 차트까지 핵심 경로를 따라가며 직접 설명할 수 있게 정리. 시작은 검색 경로
Score: 54.37Confidence: 49%
View offervelog
User-generated content is one of the main drivers of engagement for social platforms, marketplaces, entertainment services, and online communities. But as the number of posts, comments, images, videos, and live interactions grows, reviewing that content becomes increasingly difficult to manage internally. A single piece of harmful content can affect more than one user. Hate speech, explicit material, scams, harassment, or misleading content can damage trust, create complaints, and put additional pressure on platform operators. This is why many digital businesses consider content moderation outsourcing . Instead of building a large internal moderation operation, companies can work with specialized teams that combine trained reviewers, defined moderation policies, and technology-assisted workflows. The goal is not simply to remove inappropriate content. Effective moderation helps platforms maintain consistent community standards while allowing internal teams to focus on product growth, user engagement, and other business priorities. What Is Content Moderation Outsourcing? Content moderation outsourcing means using an external service provider to review and manage user-generated content according to a platform's policies and moderation requirements. Depending on the platform, this may include text, images, videos, comments, product reviews, live-stream content, or user reports. Moderators may identify policy violations, review flagged content, escalate complex cases, and apply community guidelines consistently across different markets. The exact scope depends on the platform's needs. A company may outsource its entire moderation operation or use an external team for specific languages, content types, markets, or periods of higher demand. The important consideration is maintaining clear operational control. The platform should still define its community standards, escalation rules, and policy requirements while the outsourcing partner provides the people and operational capacity needed to apply them. Why Is Content Moderation Becoming More Difficult? The challenge is not simply the amount of content. It is also the variety and complexity of that content. A growing platform may receive thousands or millions of interactions across multiple channels. Moderators must distinguish between acceptable and harmful content while considering context, language, cultural differences, and constantly changing platform policies. For international businesses, the challenge becomes even greater. A phrase, image, or behavior that appears acceptable in one market may have a completely different meaning in another. At the same time, users expect platforms to respond quickly when they encounter harmful or inappropriate material. Slow moderation can allow problematic content to remain visible for too long, potentially affecting user trust and brand reputation. These factors make moderation a continuous operational responsibility rather than a one-time technology project. What Does a Content Moderation Team Typically Handle? A professional moderation operation can cover several different types of work. Reviewing User-Generated Content Moderators may review text, images, videos, comments, profiles, or live content against the platform's community guidelines. The objective is not simply to identify prohibited material. Moderators also need to understand the context behind a piece of content and apply the relevant policy consistently. Managing User Reports Platforms often rely on users to report content they believe violates community standards. These reports require timely review and appropriate action. An outsourced moderation team can help process large numbers of reports while escalating cases that require additional investigation or specialized judgment. Handling Complex and Borderline Cases Automated systems can identify obvious violations, but some cases are more difficult. Satire, cultural references, ambiguous language, and context-dependent content may require human judgment. A structured escalation process allows experienced reviewers to handle these cases rather than relying entirely on automated decisions. Supporting Multiple Markets and Languages International platforms may need moderation teams that understand different languages and cultural contexts. Local knowledge can be particularly important when reviewing slang, regional references, sensitive topics, and content that may have different interpretations across markets. AI and Human Moderation: Which Approach Works Best? AI has become an important part of modern content moderation, particularly when platforms need to process large volumes of content quickly. Automated systems can help identify obvious policy violations, prioritize potentially harmful material, and reduce the amount of content that requires manual review. However, automation has limitations. A system may recognize certain patterns but struggle to understand context, irony, cultural references, or ambiguous cases. Human reviewers remain important when a moderation decision requires interpretation or judgment. For this reason, many platforms use a hybrid model in which AI handles high-volume screening while human moderators review more complex cases. The effectiveness of this model depends on how well the two layers work together. Clear escalation rules, quality monitoring, reviewer training, and regular policy updates are just as important as the underlying technology. How Content Moderation Affects the Customer Experience  Content moderation is sometimes treated as a separate function from customer experience, but the two are closely connected. When users encounter spam, harassment, inappropriate material, or fraudulent activity, their perception of the platform can change quickly. Poor moderation can make users feel that the platform is difficult or unsafe to use. This is particularly relevant for e-commerce and retail platforms. Customer interactions increasingly take place across websites, apps, social channels, messaging platforms, and other digital touchpoints. Businesses working toward an omnichannel customer experience retail model need to consider not only how customers receive service, but also how they interact with user-generated content across these environments. A consistent moderation approach can therefore support the broader digital customer experience. It helps create a more reliable environment for customers while reducing the operational burden on internal teams. When Should a Business Consider Outsourcing Content Moderation? There is no single point at which every company should outsource moderation. However, several operational situations can indicate that external support may be useful. Rapid growth is one common trigger. When content volume increases faster than an internal team can handle, response times and moderation quality may begin to suffer. International expansion is another. Supporting multiple languages and markets can require additional recruitment, training, quality assurance, and management resources. Seasonal or unpredictable demand can also create challenges. A platform may need significantly more moderation capacity during product launches, major campaigns, or periods of unusually high user activity without wanting to maintain that staffing level year-round. Outsourcing can also make sense when moderation is taking experienced employees away from higher-value responsibilities. In these situations, external operational capacity can allow internal teams to focus on policy ownership, product development, and strategic decisions. What Are the Benefits of Content Moderation Outsourcing? The biggest advantage is additional operational capacity without requiring the business to build every part of the moderation function internally. An experienced provider may already have recruitment processes, reviewer training, quality assurance procedures, multilingual teams, and moderation workflows in place. This can reduce the amount of infrastructure the business needs to establish itself. Scalability is another important benefit. External teams can potentially adjust staffing as content volumes change, which can be useful for businesses with seasonal demand or rapidly growing user communities. Outsourcing can also provide access to specialized knowledge. Moderation providers may have experience handling different content categories, languages, markets, and policy environments. The technology component can provide another advantage. When AI-assisted workflows are combined with trained human reviewers, platforms can process large volumes efficiently while retaining human judgment for more complicated decisions. What Challenges Should You Consider Before Outsourcing? Outsourcing moderation does not eliminate operational risks. It changes how those risks are managed. Data Security Moderation workflows may involve user-generated content and potentially sensitive information. Businesses should understand how content is accessed, stored, transferred, and protected by the service provider. Security requirements should be established before operations begin rather than treated as an afterthought. Quality and Consistency Different reviewers may interpret the same piece of content differently without proper training and calibration. A strong moderation operation should therefore include quality monitoring, clear decision standards, regular training, and escalation procedures for uncertain cases. Cultural Context Global platforms need more than language coverage. Moderators must understand the cultural context behind the content they review. Native-language capabilities and market-specific training can help reduce incorrect decisions caused by unfamiliar terminology or cultural references. Moderator Wellbeing Moderators may regularly encounter disturbing or highly sensitive material. Businesses evalua
velog
Microecomics 미시경제학: (1) 개별적 최적화 and (2) 균형 Individual optimization (개별적 최적화); 소비자, 기업 등이 제한된 자원을 최적으로 활용하려는 과정 개별 경제단위: 경제가 작동하는 데 있어서 일정한 역할을 담당하는 개인 또는 조직 ex. 소비자, 근로자, 토지소유자, 기업 등 Equilibrium(균형); 시장에서 공급과 수요가 만나 가격과 거래량이 결정되는 상태 거시경제학: 경제적 총량을 다루는 학문 ex. 국민총생산의 크기와 성장률, 이자율, 실업, 인플레이션 등 Theories and models 설명과 예측은 이론에 기반함 이론(Theories): 가정을 설명하기 위해 만들어짐 모형(Models): 경제 이론에 기반한 수학적 표현 이론은 항상 불완전하며 예측력에는 한계가 있음 Positive versus normative analysis 실증적 질문(Positive questions): 무엇이 실제로 일어나고 있는가? 예시 "최저임금이 고용에 어떤 영향을 미치는가?" "담배세를 인상하면 소비가 얼마나 줄어드는가?" 실증적 분석(Positive analysis): 원인과 결과 간의 관계를 분석함 규범적 질문(normative analysis): 어떻게 해야하는가? 무엇이 바람직한가? (가치판단) 예시 "정부는 최저임금을 인상해야 하는가?" "부유세는 도입되어야 하는가?" 규범적 분석(normative analysis): 어떻게 되어야 하는가를 분석 What is a market? 시장(Market): 상호작용을 통해 상품의 가격을 결정하는 구매자와 판매자의 집합 시장은 산업보다 넓은 개념 산업: 기업의 집합(시장의 공급 측면) 잠재적인 상호관계도 시장의 형성에 영향을 미친다. 완전경쟁시장(Perfectily competitive market): 많은 수의 구매자와 판매자로 구성되어서 한 구매자나 판매자가 가격에 중대한 영향을 미치지 못하는 시장 ex. 농산물 시장 (완전경쟁시장에 가까움) 일반적으로 하나의 시장가격이 형성됨 비경쟁시장(Noncompetitive market): 개별 기업이 가격에 영향을 줄 수 있는 시장 ex. monopoly(독점), oligopoly(과점)
Score: 54.36Confidence: 49%
View offervelog
The Supply Curve(공급곡선) 공급곡선은 주어진 가격에서 생산자가 팔고자 하는 재화의 양을 나타냄 공급곡선은 우상향; 가격이 오르면 공급량이 늘어나는 이유 가격이 오르면 기존 기업들은 산출량을 증가시킴 위에 보고 신생 기업이 시장에 진입함 Other variables that affect supply (가격 외 요인) 생산비용: 임금, 이자, 원자재 가격 등등 생산비용의 변화가 생기면 공급곡선은 수평이동함 (곡선의 이동) 가격 변화: 공급곡선 위의 운동 → 팔고자 하는 재화의 양(공급량)이 달라짐 ⇒ 공급량의 변화 가격 외 요인 변화: 공급곡선의 이동 생산 비용 ↓ → 공급량을 늘림 생산 비용 ↑ → 공급량을 줄임 ⇒ 공급의 변화 The Demand Curve(수요곡선) 수요곡선은 주어진 가격에서 소비자가 사고자 하는 재화의 양을 나타냄 수요곡선은 우하향; 가격이 오르면 수요량은 줄어드는 이유 가격이 낮으면 소비자들은 더 많이 사고 싶어함 비싸서 못샀던 다른 소비자들도 구매하게 됨 Other variables that affect supply (가격 외 요인) income (소득) prices of ohter goods (다른 재화의 가격) 가격 변화: 수요곡선 위의 운동 ⇒ 수요량의 변화 수요에 영향 미치는 다른 요인의 변화: 수요곡선의 이동 ⇒ 수요의 변화 Substitutes And Complements 대체재인 경우: A 가격 ↑ ⇒ A 비싸니까 안사 ⇒ B 수요 ↑ 보완재인 경우: A 가격 ↑ ⇒ A 비싸니까 안사 ⇒ B도 안살래 ⇒ B 수요 ↓ The Market Mechanism Equilibrium (균형): 공급량과 수요량이 같아지는 지점 - **균형 가격($P_0$)보다 높은 가격: $P_1$ → 공급과잉 → 가격 내려감** - **균형 가격($P_0$) 보다 낮은 가격: $P_2$ → 공급부족 → 가격 올라감** Market mechanism(시장기능) : 공급량과 수요량이 같아질 때까지(=시장이 청산될 때까지)변화하는 가격의 성향 Changes in Market Equiliubrium(시장균형의 변화) 수요곡선은 그대로이고, 공급곡선이 오른쪽으로 이동할 때: P ↓ Q ↑ 공급곡선은 그대로이고, 수요곡선이 오른쪽으로 이동할 때: P ↑ Q ↑ 공급곡선은 왼쪽으로 이동하고, 수요곡선은 오른쪽으로 이동하는 경우: P ↑, Q(?) **⇒ 얼마나 이동하냐에 따라 시장균형의 Q 달라짐** Elasticities of Supply and Demand 탄력성 : 한 변수가 1% 증가함에 따른 다른 변수의 퍼센트 변화 탄력성을 사용하는 이유 (탄력성이 단위 없는 기울기인 이유): 단위에 영향을 안 받기 때문임. → 변화율끼리 나누니까 단위가 소거됨 Price Elasticity of Demand(수요의 가력탄력성) : 가격이 1% 증가함에 따른 수요량의 퍼센트 변화 $$ E_p =(%\Delta Q) / (%\Delta P) $$ $$ E_p = \frac {\Delta Q/Q}{\Delta P/P} = \frac {P \Delta Q} {Q \Delta P} $$ 수요의 가격 탄력성은 주로 음수임 → 수요곡선은 우하향 하니까 (가격 ↑ 수요 ↓) 탄력성은 절댓값 사용 가격탄력적(price elastic): 탄력성이 1보다 클 때 가격비탄력적(price inelastic): 탄력성이 1보다 작을 때 Elastic of Demand(수요의 탄력성) $E_p = \frac {\Delta Q/Q}{\Delta P/P} = \frac {P \Delta Q} {Q \Delta P}$ 비탄력적 수요: $|E_P| < 1$ ⇒ 가격$(P)$이 변할 때 총 지출$(PQ)$ 이 증가함 $$ \frac {\Delta(PQ)} {\Delta P} \approx \frac {\Delta (P)Q}{\Delta P} + \frac {P\Delta (Q)}{\Delta Q} = Q(1+E_P) > 0 $$ $Q = Q(P)$, $\Delta$ = 미분으로 생각하면 이해 쉬움 탄력적 수요: $|E_P| > 1$⇒ 가격($P$)이 변할 때 총 지출($PQ$)이 감소함 $$ \frac {\Delta(PQ)} {\Delta P} \approx \frac {\Delta (P)Q}{\Delta P} + \frac {P\Delta (Q)}{\Delta Q} = Q(1+E_P) < 0 $$ Linear Elastic of Demand(선형수요곡선) $E_p = \frac {\Delta Q/Q}{\Delta P/P} = \frac {P \Delta Q} {Q \Delta P}$ $\frac P Q$ 는 계속 변하지만 $ \frac {\Delta P} {\Delta Q}$ 는 안 변할 수 있음 ⇒ 선형수요곡선에서 탄력성이 변하는 이유 수요의 가격탄력성은 수요곡선상 특정한 지점 ‘하나’에서 측정되어야 함. Isoelastic Demand : 어느 점에서든 탄력성이 일정한 수요 곡선 $E_p = \frac {\Delta Q/Q}{\Delta P/P} = \frac {P \Delta Q} {Q \Delta P}$ 가격이 변해도 총 지출 늘 일정함: $E_P = -1$ $$ \frac {\Delta(PQ)} {\Delta P} \approx \frac {\Delta (P)Q}{\Delta P} + \frac {P\Delta (Q)}{\Delta Q} = Q(1+E_P) = 0 $$ Extreme Cases 완전탄력적수요(Infinitely elastic demand): 단 하나의 가격에서만 수요가 존재함 $\frac {\Delta Q} {\Delta P }$ 가 무한대 → $\Delta Q$가 무한대로 커질 수 있기 때문 $E_P = -\infin$ 완전비탄력적수요(Infinitely inelastic demand): 가격이 변해도 수요량 일정함 $\Delta Q = 0$ $E_P = 0$ Other Demand Elasticities - 가격 외 변화에 따른 수요의 탄력성 수요의 소득탄력성: 수요가 소득에 영향 받는 것 $$ E_I = \frac {\Delta Q/Q}{\Delta I/I} = \frac {I \Delta Q} {Q \Delta I} $$ 수요의 교차가격탄력성: 다른 재화의 가격에 영향 받는것 B의 가격이 1% 변함에 따른 A의 수요량 퍼센트변화) $$ E_{Q_AP_B} = \frac {\Delta Q_A/Q_A}{\Delta P_B/P_B} = \frac {P_B \Delta Q_A} {Q_A \Delta P_B} $$ (+): 대체재: $\frac {\Delta Q_A} {\Delta P_B}$ 가 양수 → B의 가격 오르면 A의 수요 증가 (-): 보완재: $\frac {\Delta Q_A} {\Delta P_B}$ 가 음수 → B의 가격 오르면 A의 수요 감소 Supply Elasticites 보통 양의 값 (우상향 하기 때문)
velog
AI가 쓴 보고서를 믿을 수 있게 만드는 법 사실 · 해석 · 제안을 분리하는 워크플로 한 줄 요약 보고서에서 가장 위험한 문장은 해석이 사실의 옷을 입은 문장 이다. AI에게 보고서를 맡길 때는 한 번에 쓰게 하지 말고, 사실 → 해석 → 제안 을 단계별로 분리하고 각 단계에 검증을 붙여야 한다. i️ 이 글은 특정 회사나 서비스와 무관한 일반 방법론 입니다. 예시는 모두 가상 이고, 숫자는 설명을 위한 가정 값입니다. 들어가며 보고서를 만들 때 오래 걸리는 부분은 문장을 쓰는 일이 아닙니다. 자료를 모으고, 숫자를 확인하고, 확인된 것과 추정한 것을 구분하는 일입니다. 생성 AI는 문장을 매끄럽게 쓰는 데 뛰어납니다. 그래서 오히려 위험합니다. 사실, 추정, 제안이 한 문단 안에서 자연스럽게 섞여 읽히기 때문입니다. 이 글은 AI를 보고 자료 제작에 쓸 때 믿을 수 있는 구조 를 만드는 방법을 다룹니다. 1. 무엇이 문제인가 같은 상황을 세 가지 문장으로 써 보겠습니다. 문장 성격 "5월 신규 가입자는 전월보다 15% 늘었다." 확인 가능한 사실 "프로모션 덕분에 가입자가 늘었다." 원인을 추정한 해석 "프로모션을 연장해야 한다." 다음 행동을 권하는 제안 세 문장은 필요한 근거도, 틀렸을 때의 파장도 다릅니다. 그런데 AI가 쓴 보고서에서는 이 구분이 자주 사라집니다. 생성 AI의 대표 위험 설명 숫자 오류·지어내기 계산을 틀리거나 없는 수치를 그럴듯하게 만든다 원인 단정 상관관계를 "때문에", "덕분에"로 바꿔 쓴다 출처 불명 어디서 나온 값인지 추적할 수 없다 일반론 채우기 데이터에 없는 업계 상식으로 문단을 메운다 과신 어조 불확실한 내용도 확신하는 말투로 쓴다 ⚠️ 사내 데이터를 외부 AI 서비스에 입력해도 되는지는 회사의 정보 보안 정책 을 먼저 확인하세요. 허용되지 않는 데이터는 요약·익명화한 형태로만 쓰거나 사내 승인된 도구를 사용해야 합니다. 2. 세 층을 정의한다 사실 해석 제안 무엇인가 데이터로 확인되는 것 사실에서 끌어낸 의미·원인 추정 해석에 기반한 다음 행동 반드시 붙일 것 값 · 기간 · 정의 · 출처 · 비교 기준 대안 설명 · 확신도 · 한계 어떤 결정에 답하는가 · 전제 · 위험 · 우선순위 금지 근거 없는 수치, 평가 어휘 사실처럼 단정 결정과 무관한 일반론 검증 방법 원데이터로 재계산 반대 가설이 있는지 점검 결정권자가 판단할 수 있는지 확인 틀렸을 때 신뢰가 무너진다 잘못된 방향으로 간다 잘못된 자원이 투입된다 핵심은 위층이 아래층을 근거로 삼는다 는 것입니다. 해석은 사실 없이 존재할 수 없고, 제안은 해석 없이 존재할 수 없습니다. 3. 다섯 가지 원칙 1 숫자는 AI가 계산하지 않는다 수치는 쿼리·스프레드시트·스크립트에서 나온 값을 입력으로 주고, AI는 서술만 맡깁니다. 언어 모델은 산술을 틀릴 수 있고, 틀려도 자신 있게 씁니다. 2 모든 사실에 근거를 붙인다 값만 쓰지 않고 기간, 정의, 출처, 비교 기준 을 함께 둡니다. 정의를 안 쓰면 "가입자"가 가입 시도인지 완료인지 알 수 없습니다. 3 해석은 후보 가설로 쓴다 원인은 하나로 단정하지 않고 둘 이상의 설명과 확신도 를 함께 씁니다. "가능성이 있다", "배제할 수 없다" 같은 표현이 오히려 정확합니다. 4 제안은 결정 사항에서 거꾸로 쓴다 "이 보고서로 누가 무엇을 결정하는가"를 먼저 적고, 그 결정에 답하는 제안만 씁니다. 읽는 사람이 판단할 수 없는 제안은 소음입니다. 5 모른다고 말하게 한다 데이터에 없으면 "데이터로 확인되지 않음" 이라고 쓰게 합니다. 빈칸을 그럴듯한 문장으로 메우는 것보다 낫습니다. 4. 워크플로: 한 번에 쓰지 않는다 단계 하는 일 누가 0. 정의 보고 목적 · 독자 · 결정 사항을 적는다 사람 1. 팩트 시트 데이터에서 사실을 표로 정리한다 사람 + 스크립트 2. 사실 검증 값을 원데이터로 재계산한다 사람 / 스크립트 3. 해석 초안 팩트 시트만 근거로 해석 후보를 쓴다 AI 4. 해석 검토 동시 이벤트, 대안 설명을 보강한다 사람 5. 제안 초안 결정 사항에 답하는 제안을 쓴다 AI 6. 조립 독자에 맞는 구조로 구성하고 숫자를 대조한다 사람 + AI 7. 최종 검토 책임자가 확인하고 승인한다 사람 AI는 3·5·6단계의 초안 작성과 구성 을 돕고, 값의 확정(1~2)과 판단의 책임(4·7)은 사람이 집니다. 팩트 시트 예시 (가상) ID 항목 값 기간 정의 · 기준 출처 비교 기준 F1 신규 가입자 수 1,380명 5월 가입 완료 기준, 테스트 계정 제외 가입 테이블 전월 1,200명 (+15%) F2 설치 후 가입 전환율 24% 5월 설치 후 7일 내 가입 ÷ 설치 수 이벤트 로그 전월 22% F3 진행한 프로모션 있음 5/10~5/20 신규 가입 대상 혜택 내부 일정표 — AI에게 줄 지시문 예시 역할: 보고 초안 작성 보조 입력: [팩트 시트] 와 [결정 사항] 규칙 1. 팩트 시트에 없는 숫자나 사실은 쓰지 않는다. 2. 모든 문장 앞에 [사실] [해석] [제안] 라벨을 붙인다. 3. [사실]에는 팩트 시트의 ID를 근거로 표시한다. 4. [해석]은 가능한 설명을 2개 이상 쓰고, 각각 확신도(높음/중간/낮음)를 표시한다. 5. 근거가 부족하면 "데이터로 확인되지 않음"이라고 쓴다. 6. [제안]은 [결정 사항]에 답하는 것만 쓴다. 결과 예시 [사실] 5월 신규 가입자는 1,380명으로 전월(1,200명) 대비 15% 증가했다. (F1) [해석] 증가 시점이 프로모션 기간(5/10~5/20)과 겹쳐 프로모션 영향 가능성이 있다. (확신도: 중간) 다만 설치 후 가입 전환율도 22%에서 24%로 함께 올라, 유입 품질 개선 같은 다른 설명도 배제할 수 없다. (F1, F2, F3) [제안] 프로모션 종료 후 2주간 가입자 추이를 확인한 뒤 연장 여부를 결정한다. (결정 사항: 프로모션 연장 여부) 5. 독자에 따라 같은 팩트 시트로 구조만 바꾼다 독자 구조 강조 의사결정자 결론·제안 → 핵심 사실 → 해석과 한계 한 장 요약, 결정이 필요한 항목 실무 담당자 사실 상세 → 해석 가설 → 실행 단계 정의, 출처, 후속 확인 방법 같은 팩트 시트에서 두 버전을 만들면 숫자가 어긋나는 일이 줄어듭니다. 팩트 시트가 단일한 사실의 원천 이 되기 때문입니다. 6. 검증 방법 점검 방법 숫자 대조 보고서의 모든 숫자가 팩트 시트에 있는지 확인한다. 없는 숫자는 삭제하거나 근거를 추가한다 단정 어휘 탐지 "때문에", "덕분에", "확실히", "분명히"가 있는 문장은 해석인지 사실인지 다시 본다 출처 추적 사실마다 출처 ID를 따라가 실제 값과 맞는지 본다 일관성 요약, 본문, 표, 차트의 숫자가 같은지 본다 대안 설명 해석마다 "다른 이유로도 설명되는가?"를 물어본다 시각 점검 차트 축, 단위, 범례, 잘린 글씨를 눈으로 확인한다 7. 흔한 안티패턴 안티패턴 문제 처방 한 번에 보고서를 생성시킨다 근거 확인이 불가능하다 단계를 나누고 단계마다 산출물을 남긴다 AI에게 계산을 맡긴다 오류가 자신 있게 섞인다 계산은 스크립트에서, AI는 서술만 원인을 하나로 단정한다 잘못된 방향의 제안으로 이어진다 대안 설명과 확신도를 함께 쓴다 출처를 안 붙인다 검증이 불가능하다 팩트 시트 ID로 연결한다 일반론으로 분량을 채운다 핵심이 묻힌다 팩트 시트 밖 내용은 쓰지 않게 한다 검토를 AI에게 시킨다 같은 실수를 반복한다 최종 검토는 사람이 한다 8. 체크리스트 보고 목적, 독자, 결정 사항을 먼저 적었는가 사실은 값 · 기간 · 정의 · 출처 · 비교 기준과 함께 팩트 시트에 있는가 모든 수치를 원데이터나 스크립트로 재계산했는가 AI에게 팩트 시트 밖의 사실을 쓰지 말라고 지시했는가 해석에 대안 설명과 확신도를 붙였는가 제안이 결정 사항에 직접 답하는가 보고서 속 숫자가 모두 팩트 시트와 일치하는가 단정 어휘를 점검했는가 사내 데이터 입력이 보안 정책에 맞는지 확인했는가 최종 검토와 책임을 사람이 지고 있는가 마무리 AI를 보고서에 쓸 때 중요한 것은 결과물을 빨리 만드는 것이 아닙니다. 무엇이 확인된 것이고, 무엇이 추정이며, 무엇이 권고인지를 읽는 사람이 구분할 수 있게 하는 것 입니다. 구조를 먼저 만들면 AI는 그 안에서 훨씬 믿을 만한 조수가 됩니다.
velog
왜 만들었나 2026-09-24 비트겟 해킹($387.5M)을 분석하다가, 실제 거래소 백엔드(매칭엔진·출금 방어)가 어떻게 뚫렸고 어떻게 막아야 했는지 코드로 직접 확인해보고 싶었습니다. 비트겟 해킹은 개인키 유출이 아니라, 서드파티 소프트웨어 취약점으로 관리자 백엔드 크리덴셜을 탈취한 뒤, 위조 인출 명령을 전송한 공급망 공격이었습니다. 소액 테스트 인출 후 대량 인출로 확대하는 패턴이었죠. 뭘 만들었나 1) 가격-시간 우선순위 매칭엔진 시스템설계 인터뷰에서 자주 나오는 주제라, 실제 체결 로직을 구현하면서 공부도 겸했습니다. 2) 위조인출 방어 시스템 비트겟이 뚫렸던 패턴을 막도록 3중 방어로 설계했습니다. 속도체크(Velocity Check) : 짧은 시간 내 요청 폭증 감지 다단계승인 : 큰 금액은 한 명의 권한만으로 처리 불가 타임락(Timelock) : 대량 인출은 즉시 실행 대신 지연 같은 방식으로 Tectonic 해킹(오라클 가격조작)도 재현해서 TWAP 오라클 방어 데모도 만들었습니다. 데모 브라우저에서 바로 공격 시뮬레이션을 돌려볼 수 있습니다. 가짜 데이터 기반이고, 실제 작동하는 익스플로잇 코드는 아닙니다. 데모: https://breachlab-5xg.pages.dev/ GitHub: https://github.com/goalsgo1/breachlab 다음 계획 사고가 발생할 때마다 같은 방식(공격 메커니즘 분석 → 안전한 재현 → 방어 코드 공개)으로 계속 쌓아갈 예정입니다. 피드백 환영합니다.
Score: 54.36Confidence: 49%
View offervelog
1. 운영체제의 역할 운영체제의 역할은 크게 네 가지가 있다. CPU 스케줄링과 프로세스 관리: CPU 소유권을 어떤 프로세스에 할당할지, 프로세스의 생성과 삭제, 자원 할당 및 반환을 관리 메모리 관리: 한정된 메모리를 어떤 프로세스에 얼마큼 할당해야 하는지 관리 디스크 파일 관리: 디스크 파일을 어떠한 방법으로 보관할지 관리 I/O 디바이스 관리: I/O 디바이스들인 마우스, 키보드와 컴퓨터 간에 데이터를 주고받는 것을 관리 간단하게 정리하자면 운영체제는 CPU라는 연산 일꾼에게 어떤 작업을 어떤 순서로 맡길지 정하고, 연산 일꾼에게 작업을 줄 때 뇌용량을 얼마나 쓸지 정해주며, 작업한 결과 같은 것들은 어떻게 보관할지, 작업한 걸로 어떻게 팔다리를 쓸지 같은 것들을 제어해주는 느낌이라고 보면 된다. 비유가 좀 이상하긴 하다 2. 운영체제의 구조 (그림 3-1) 위 그림과 같이 6개의 구조에서 양 끝인 유저 프로그램과 하드웨어를 제외한 GUI, 시스템콜, 커널, 드라이버의 구조를 운영체제로 지칭한다. GUI는 사용자가 전자장치와 상호작용 할 수 있게 해주는 그래픽 기반 사용자 인터페이스이고, 드라이버는 하드웨어를 제어하기 위한 소프트웨어이다. 시스템콜 (그림 3-2) 시스템콜은 OS가 커널에 접근하기 위한 인터페이스이자, 유저 프로그램이 OS의 서비스를 받기 위해 커널 함수를 실행할 때 쓰인다. 예를 들어 I/O요청인 fs.readfile() 을 쓴다고 했을 때 유저 모드에서 바로 파일을 읽는게 아닌 커널 모드에 들어가서 파일을 읽고 다시 유저모드로 돌아가 임무를 수행하는 방식으로 컴퓨터 자원에 대한 직접적인 접근을 차단할 수 있다. modebit modebit는 시스템콜이 작동될 때 유저 모드와 커널 모드를 그 값이 0과 1로 구분하기 위한 플래그 변수이다. (그림 3-4) 위 그림과 같이 반드시 운영체제가 관리해야 하는 프로그램인 카메라와 같은 하드웨어를 제어할 때 modebit를 통해 유저모드와 커널모드를 변경해가며 구분하는 것을 볼 수 있다. 3. 컴퓨터의 요소 컴퓨터는 CPU, DMA 컨트롤러, 메모리, 타이머, 디바이스 컨트롤러 등으로 이루어져 있다. (그림 3-5) CPU 산술논리연산장치, 제어장치, 레지스터로 구성되어 있는 컴퓨터 장치. OS의 커널이 프로그램을 메모리에 올려 프로세스로 만들면 일꾼인 CPU가 처리하는 방식이다. 산술논리연산장치는 산술 연산과 논리 연산을 계산하는 디지털 회로, 제어장치는 입출력 간 통신제어와 명령어를 읽고 해석하며 데이터 처리 순서를 결정하는 부품, 레지스터는 CPU 안에 있는 매우 빠른 임시기억장치이다. (그림 3-7) CPU는 다음과 같은 순서로 연산을 처리한다. 제어장치가 계산할 값을 메모리와 레지스터에 로드. 제어장치가 레지스터 값을 계산하라고 산술논리연산장치에 명령 제어장치가 계산된 값을 레지스터에서 메모리로 저장. 인터럽트 는 어떤 신호가 들어왔을 때 CPU를 잠깐 정지시키는 것을 말한다. 인터럽트가 발생되면 인터럽트 벡터에 모여있는 인터럽트 핸들러 함수 중 하나를 실행한다. 인터럽트 간 우선순위가 있으며, 하드웨어 인터럽트와 소프트웨어 인터럽트로 나눌 수 있다. 하드웨어 인터럽트는 I/O 디바이스 연결과 같은 인터럽트를 말하고, 소프트웨어 인터럽트는 트랩이라고도 불리며 프로세스가 시스템콜을 호출할 때 발동된다. DMA 컨트롤러 I/O 디바이스가 메모리에 직접 접근할 수 있도록 하는 하드웨어 장치. CPU의 인터럽트 부담을 줄여주며 하나의 작업을 할 때 CPU와 동시에 작업하는 것을 금함. 메모리 데이터나 상태, 명령어 등을 기록하는 장치를 말하며 CPU가 계산이라면 메모리는 작업공간과도 같다. 크면 클수록 많은 일을 동시에 할 수 있다. 타이머 작업이 끝나야 한다는 것을 정하고 특정 프로그램에 시간 제한을 다는 역할을 한다. 디바이스 컨트롤러 컴퓨터와 연결되어 있는 IO 디바이스들의 작은 CPU
Score: 54.36Confidence: 49%
View offervelog
Summary The test loss of a language model follows a power law with respect to each of model size $N$, dataset size $D$, and training compute $C$, when the other two are not the bottleneck. In contrast, architecture shape such as depth, width, and the number of heads has almost no effect on loss as long as the non-embedding parameter count $N$ is the same. When $N$ and $D$ are scaled together, the degree of overfitting is determined by a single ratio, $N^{0.74}/D$. In other words, if the model is made 8 times larger, the data only needs to be increased by about 5 times. Under a fixed compute budget, the optimal strategy is to make the model much larger ($N \propto C^{0.73}$) and stop training well before convergence. 1. Introduction The performance of language modeling depends on the model architecture, the number of parameters, the amount of compute, the amount of available data, and so on. This paper targets Transformer language modeling and experimentally measures which of these factors are the main ones that actually determine performance. According to the results of several experiments conducted under varying conditions, performance scales as a power law with respect to training time, context length, dataset size, model size, and compute budget. Since the paper compares results across many conditions, it defines and uses several notations. $L$: Cross-entropy loss $N$: Number of model parameters $D$: Dataset size $C$: Total non-embedding training compute $C_{min}$: Estimate of minimum amount of non-embedding compute to reach a given loss 2. Background & Methods 2.1. Parameter and Compute Scaling of Transformers The hyperparameters of the Transformer architecture are set as follows. $n_{layer}$: number of layers $d_{model}$: dimension of the residual stream $d_{ff}$: intermediate dimension of the feed-forward layer $d_{attn}$: dimension of the attention output $n_{head}$: number of attention heads per layer 1 Model size $N$ A single layer consists of the following parameters. Q, K, V projections and output projection of attention: $4 \times d_{model} \times d_{attn}$ Two linear layers of the FFN: $2 \times d_{model} \times d_{ff}$ Therefore, the total number of parameters excluding embeddings and biases is $$ N \approx 2, d_{model}, n_{layer} \left(2 d_{attn} + d_{ff}\right) = 12, n_{layer}, d_{model}^2 \qquad (d_{attn} = d_{model} = d_{ff}/4) $$ 2 Compute The amount of computation (FLOPs) for the forward pass of a single token is $$ C_{forward} \approx 2N + 2, n_{layer}, n_{ctx}, d_{attn} $$ Here, the second term is a context-length-dependent term arising from the attention score computation, and when $d_{model} \gg n_{ctx}/12$ it becomes much smaller than $N$, so it can be ignored. In addition, since the compute of the backward pass is about twice that of the forward pass, the total training compute per token can be approximated as follows. $$ C \approx 6N $$ 3. Empirical Results and Basic Power Laws 3.1. Transformer Shape and Hyperparameter Independence To check the effect of the Transformer's shape on performance, the loss was measured while fixing the non-embedding parameter count $N$ and changing one of $n_{layer}$, $n_{head}$, and $d_{ff}$ at a time. The resulting loss is as follows. Even when the feed-forward ratio, aspect ratio ($d_{model}/n_{layer}$), and head dimension are varied over a wide range, the change in loss stays within a few percent, and even architectures whose aspect ratios differ by a factor of 40 achieve similar performance. In other words, once $N$ is fixed, the performance of the Transformer does not depend much on its shape. 3.2. Performance with Non-Embedding Parameter Count $N$ The value used to represent the size of a model is the number of parameters in the model. Here, parameters can be viewed from two main perspectives, depending on whether only the parameters trained for the actual objective function are counted, or whether embedding parameters are also included. Therefore, to express the relationship between parameter count and model performance more accurately, it must be decided which of the two values to use as the parameter count, and the following experiment was conducted as the verification process. Left: When embedding parameters are included in the count, the loss appears to depend not only on the number of parameters but also on $n_{layer}$. Right: When embedding parameters are excluded from the count, models with different depths converge onto a single line (power law). Only models with just one layer or with extreme depth/width ratios were exceptions. The reason it looks like the left plot is that the smaller the model, the larger the share of embedding in the total parameters. The parameter count looks large, but the part actually used for computation is small, so the loss comes out poor. For this reason, the paper uses the non-embedding parameter count as $N$ in all subsequent analyses. With this definition, the loss can be written as a function of $N$. $$ L(N) \approx \left(\frac{N_c}{N}\right)^{\alpha_N}, \qquad \alpha_N \approx 0.076,\quad N_c \approx 8.8 \times 10^{13} $$ 3.3. Performance with Dataset Size and Compute Dataset size $D$ To make the amount of data the bottleneck of the model, a large model ($n_{layer}=36$, $d_{model}=1280$) is trained on subsets of WebText2, and the lowest loss reachable with a given amount of data is measured. To compare the lowest losses, training is stopped once the test loss no longer decreases. The resulting relationship between loss and dataset size is as follows. $$ L(D) \approx \left(\frac{D_c}{D}\right)^{\alpha_D}, \qquad \alpha_D \approx 0.095,\quad D_c \approx 5.4 \times 10^{13} $$ Compute $C$ The training compute is $C = 6NBS$. With $C$ fixed, $N$ is varied to find the model that achieves the lowest loss within that compute. Connecting these optimal points gives the following relationship. $$ L(C) \approx \left(\frac{C_c}{C}\right)^{\alpha_C} $$ The values written as $X_c$ in each equation are obtained through fitting to express the relationship on a log-log graph. The relationships of loss with respect to parameters, dataset, and compute are summarized as follows. All three graphs are linear on log-log axes. The light blue curves in the left graph are the learning curves of models of different sizes, and their lower envelope (black line) forms the power law with respect to compute, $L = (C_{\min}/2.3 \cdot 10^8)^{-0.050}$. However, this power law holds only when the other two factors are not the bottleneck. 4. Charting the Infinite Data Limit and Overfitting Up to this point, only one variable was made the bottleneck at a time in order to check the independent effect of each variable. This section deals with how the loss behaves when the two values $N$ and $D$ are changed simultaneously, and in particular with the overfitting that occurs when data is insufficient. 4.1. Proposed $L(N, D)$ Equation $$ L(N, D) = \left[\left(\frac{N_c}{N}\right)^{\frac{\alpha_N}{\alpha_D}} + \frac{D_c}{D}\right]^{\alpha_D} $$ This loss as a function of $N$ and $D$ was chosen to satisfy the following principles. Rescaling : If the vocabulary size or tokenization changes, the overall loss is expected to change by a constant factor, so the equation should naturally allow for such rescaling. A limit imposed by the other variable even when one variable grows infinitely : If $D$ is fixed and $N \to \infty$, the loss should converge to $L(D)$, and if $N$ is fixed and $D \to \infty$, it should converge to $L(N)$. $L(N, D)$ is analytic at $D = \infty$ : It should be expandable as a series in integer powers of $1/D$. 4.2. Results Training was performed while varying $N$ and $D$, stopped once the test loss no longer decreased, and then the parameters of the above equation were fitted. Parameter $\alpha_N$ $\alpha_D$ $N_c$ $D_c$ Value 0.076 0.103 $6.4 \times 10^{13}$ $1.8 \times 10^{13}$ Overfitting How much is lost compared to the loss with infinite data, $L(N, \infty)$, is defined as $\delta L$. $$ \delta L \equiv \frac{L(N, D)}{L(N, \infty)} - 1 \approx \left(1 + \left(\frac{N}{N_c}\right)^{\frac{\alpha_N}{\alpha_D}} \frac{D_c}{D}\right)^{\alpha_D} - 1 $$ The larger $\delta L$ is, the more severe the overfitting. From the equation, $\delta L$ depends only on $N^{\alpha_N/\alpha_D}/D \approx N^{0.74}/D$ . Since the variation in loss due to the random seed is about 0.02, there is considered to be no overfitting when $\delta L < 0.02$. The condition that satisfies this is $$ D \gtrsim (5 \times 10^3), N^{0.74} $$ In other words, when increasing model size, overfitting can be avoided by increasing data only sub-linearly. In this way, not only can the loss equation be fitted with data $D$ and parameters $N$, but the relationship between $N$ and $D$ needed to prevent overfitting can also be identified. 5. Scaling Laws with Model Size and Training Time Now, the number of training steps $S$ is also taken into account, and the loss as a function of $N$ and training time is combined into a single equation. Before that, the critical batch size is introduced to correct for the step count and compute that vary with batch size. 5.1 Critical Batch Size $B_{crit}(L)$ Training time (number of steps) and compute vary with batch size $B$. $B \ll B_{crit}$: Increasing the batch reduces the number of steps almost proportionally. Compute efficiency is good. $B \gg B_{crit}$: Increasing the batch further barely reduces the number of steps. The number of steps is close to the minimum, but compute is wasted. The number of steps $S$ needed to reach a target loss and the amount of data processed $E = BS$ have the following relationship. Here, $E$ is the number of tokens actually processed, which differs from the dataset size $D$. $$ \left(\frac{S}{S_{\min}} - 1\right)\left(\frac{E}{E_{\min}} - 1\right) = 1 $$ $S_{\min}$: minimum number of steps needed to reach the target loss (when $B \to \infty$) $E_{\min}$: minimum amount of data needed to reach the target loss (wh
velog
자동화는 코드가 아니라 업무 관찰에서 시작한다 자동화할 업무를 고르는 법 한 줄 요약 "코드로 만들 수 있을까?"보다 먼저 "이 업무에서 사람이 반복해서 내리는 판단은 무엇인가?" 를 물어야 한다. 게이트 3문항으로 걸러내고, 4가지 기준으로 평가한 뒤, 오류 비용에 맞춰 자동화 수준 을 정하면 만들고도 안 쓰이는 도구를 줄일 수 있다. i️ 이 글은 특정 회사나 서비스와 무관한 일반 방법론 입니다. 예시 업무는 모두 가상 이고, 숫자는 설명을 위한 가정 값입니다. 들어가며 반복 업무를 보면 자동화 욕심이 생깁니다. 그런데 막상 만들고 나면 이런 일이 자주 생깁니다. 만들었는데 아무도 쓰지 않는다 예외가 계속 나와서 수정에 더 많은 시간 이 든다 절감한 시간보다 만드는 데 쓴 시간 이 더 길다 만든 사람이 자리를 비우자 아무도 고치지 못한다 원인은 대부분 기술이 아니라 대상 선정 입니다. 어떤 업무를 자동화할지, 어느 수준까지 자동화할지를 먼저 정하지 않았기 때문입니다. 1. 먼저 손익을 계산해 본다 자동화에는 비용이 듭니다. 감이 아니라 대략이라도 계산해 보세요. 주당 절감 시간 = 1회 소요 시간 × 주당 횟수 × 사용자 수 손익분기(주) = 개발 시간 ÷ 주당 절감 시간 가정 예시입니다. 1회 40분 걸리는 업무를 주 2회, 한 명이 한다면 주당 80분을 절약합니다. 개발에 12시간(720분)이 들면 손익분기는 약 9주 입니다. 여기에 숨은 비용을 더하면 더 길어집니다. 숨은 비용 내용 예외 처리 규칙에 안 맞는 건을 따로 다루는 시간 유지보수 입력 형식·규칙이 바뀔 때마다 수정 권한·보안 접근 권한 관리, 키 관리, 점검 문서화·인수인계 만든 사람 외에도 쓸 수 있게 하는 시간 반대로 시간 외의 가치도 있습니다. 오류 감소 , 지연 감소 , 특정 사람에 대한 의존 감소 가 그 예입니다. 이런 가치는 숫자로 환산하기 어려우니 별도 항목으로 적어 두세요. 2. 업무를 먼저 관찰하고 분해한다 코드를 쓰기 전에 업무를 네 칸으로 나눕니다. 칸 질문 입력 어디서 오는가? 형식이 정해져 있는가? 처리 어떤 규칙으로 변환·계산하는가? 사람이 판단하는 부분은 어디인가? 출력 결과물은 무엇이고 누가 받는가? 후속 행동 결과를 받은 사람이 무엇을 하는가? 처리 상태는 어디에 남는가? 그리고 두 가지를 실제로 해봅니다. 한 번 직접 수행하며 단계를 기록 합니다. 머릿속 절차와 실제 절차는 다릅니다. 최근 20건 정도를 모아 예외가 몇 건인지 셉니다. 예외 비율이 규칙성의 가장 솔직한 지표입니다. 3. 선정 방법: 게이트 → 평가 → 판정 1 게이트 3문항 (하나라도 No면 보류) 질문 No라면 도구를 유지할 오너 가 있는가? 만든 사람이 떠나면 방치된다. 오너부터 정한다 프로세스가 한동안 안정적 인가? 곧 바뀔 업무를 자동화하면 폐기물이 된다. 안정화 후에 한다 결과를 검증할 방법 이 있는가? 틀려도 모르는 자동화는 위험하다. 검증 기준부터 만든다 2 4가지 기준으로 평가 기준 상 중 하 빈도 주 1회 이상 월 1~3회 분기에 1회 이하 소요 시간 1회 1시간 이상 20분~1시간 20분 미만 규칙성 기준이 명문화되고 예외가 적다 기준은 있으나 예외가 꽤 있다 사람마다 판단이 다르다 입력 정형성 표·폼처럼 구조화되어 있다 일부 정리가 필요하다 자유 서술, 이미지, 스캔본 여기에 오류 비용 (틀리면 얼마나 아픈가)을 따로 봅니다. 이 항목은 점수가 아니라 자동화 수준 을 정하는 데 씁니다. (4장에서 설명합니다) 3 판정 평가 결과 판정 빈도·소요 시간 높음 + 규칙성·입력 정형성 높음 규칙 기반 자동화 빈도·소요 시간 높음 + 입력이 비정형 (규칙으로 쓰기 어려움) AI 보조 + 사람 확인 빈도·소요 시간 높음 + 판단 기준이 사람마다 다름 기준·프로세스 정리가 먼저 빈도가 낮거나 소요 시간이 짧음 자동화하지 않고 체크리스트로 가상의 업무 네 가지에 적용해 보면 이렇습니다. 업무 (가상) 빈도 소요 규칙성 입력 오류 비용 판정 주간 실적 취합·리포트 작성 상 상 상 상 중 규칙 기반 자동화 문의 메일 1차 분류 상 중 하 하 하 AI 보조 + 사람 확인 담당자마다 방식이 다른 월간 보고 중 상 하 중 중 기준 정리가 먼저 연 1회 감사 대응 자료 정리 하 상 중 중 상 체크리스트로 충분 💡 세 번째 업무가 중요한 사례입니다. 기준이 사람마다 다른 업무를 자동화하면, 그 혼란이 그대로 빠르게 반복됩니다. 자동화는 나쁜 프로세스를 고쳐 주지 않고 더 빠르게 만들 뿐입니다. 4. 자동화 수준을 정한다 "자동화할 것인가 말 것인가"의 이분법이 아니라 어디까지 맡길 것인가 를 정합니다. 수준 설명 사람의 역할 L0 수동 전부 사람이 한다 전부 L1 문서화 절차를 체크리스트·템플릿으로 정리한다 실행과 판단 L2 반자동 도구가 집계·초안을 만들고 사람이 확인·승인한다 확인과 승인 L3 자동 + 예외 알림 도구가 실행하고 예외만 사람에게 넘긴다 예외 처리 L4 완전 자동 사람 개입 없이 실행하고 로그만 남긴다 주기적 점검 오류 비용이 수준을 결정합니다. 오류 비용 권장 수준 낮음 (틀려도 쉽게 고침) L3 이상 중간 L2~L3 (결과를 확인하는 단계 유지) 높음 (금전·신뢰·법적 문제) L2 이하. 최종 승인은 사람이 한다 대부분의 업무에서 L2~L3이 가장 현실적 입니다. 처음부터 L4를 목표로 하면 예외 처리 때문에 끝나지 않는 프로젝트가 됩니다. AI는 어디에 쓰는가 작업 규칙으로 AI로 정해진 형식의 표 계산·변환 ✅ ❌ (결정적이고 싸고 검증이 쉽다) 자유 서술 분류·요약·정보 추출 ❌ (규칙으로 쓰기 어렵다) ✅ (단, 사람 확인 포함) 금액·수량 같은 정확도가 필수인 계산 ✅ ❌ (결과가 매번 다를 수 있다) 초안 작성 △ ✅ (사실 확인은 사람이) 규칙으로 되는 일에 AI를 쓰면 비용이 늘고 결과를 재현하기 어려워집니다. AI는 규칙으로 못 푸는 비정형 입력에 쓰고, 그 결과는 반드시 검증 단계를 거치게 하세요. 5. 만들 때 지킬 설계 원칙 원본을 보존하고 로그를 남깁니다. 결과가 이상할 때 되짚을 수 있어야 합니다. 입력을 구조화합니다. 자유 메시지 대신 정해진 양식으로 받으면 오류의 절반이 사라집니다. 예외를 숨기지 않고 사람에게 넘깁니다. 처리 못 한 건을 조용히 버리는 자동화가 가장 위험합니다. 가장 흔한 케이스부터 만듭니다. 전체의 70~80%를 덮고, 나머지는 예외 큐로 보냅니다. 규칙과 코드를 분리합니다. 기준이 바뀔 때 코드가 아니라 설정 파일이나 표만 고치게 합니다. 되돌릴 수 있게 만듭니다. 실행 전 미리보기, 중복 실행해도 문제없는 구조를 선호합니다. 권한은 최소로, 키는 코드 밖에 둡니다. 접근 정보를 코드에 직접 넣지 않습니다. 오너와 문서를 지정합니다. 개인 PC에서만 도는 스크립트는 자동화가 아니라 개인 습관입니다. 6. 도입 후에 할 일 전후를 측정합니다. 소요 시간, 오류 발생 건수, 예외 비율, 실제 사용 횟수를 기록하세요. 추정치와 실측치를 구분해서 말합니다. "약 N분 줄 것으로 추정"과 "실측 N분 감소"는 다른 말입니다. 범위로 말하고, 업무 조건에 따라 달라진다는 점을 함께 적으세요. 2~4주 뒤 사용 현황을 점검합니다. 쓰이지 않는다면 이유를 묻고, 개선하거나 폐기합니다. 규칙이 바뀔 때의 대응 절차를 정합니다. 누가 언제 수정하는지 미리 정해 두세요. 7. 흔한 안티패턴 안티패턴 문제 처방 사용자 없이 만든다 만들고 나서 안 쓴다 업무 담당자와 함께 관찰하고, 초기 버전을 같이 써 본다 일회성 업무를 자동화한다 손익분기가 오지 않는다 빈도 기준을 먼저 본다 예외를 무시한다 자동화가 오히려 오류를 늘린다 예외 비율을 측정하고 예외 큐를 만든다 블랙박스로 만든다 결과를 검증할 수 없다 중간 산출물과 로그를 남긴다 AI를 과하게 쓴다 비용·비재현성·오류가 늘어난다 규칙으로 되는 곳은 규칙으로 절감 시간을 과장한다 신뢰를 잃는다 실측과 추정을 구분한다 프로세스를 안 고치고 자동화한다 나쁜 방식이 굳는다 기준 정리를 먼저 한다 8. 체크리스트 도구를 유지할 오너가 있는가 프로세스가 당분간 안정적인가 결과를 검증할 방법이 있는가 직접 한 번 수행하며 단계를 기록했는가 최근 건을 모아 예외 비율을 확인했는가 빈도 · 소요 시간 · 규칙성 · 입력 정형성을 평가했는가 손익분기(개발 시간 ÷ 주당 절감 시간)를 대략 계산했는가 오류 비용에 맞는 자동화 수준(L2~L3 등)을 정했는가 규칙으로 되는 곳과 AI가 필요한 곳을 구분했는가 원본 보존, 로그, 예외 큐, 설정 분리를 설계에 넣었는가 도입 전후 측정 방법과 점검 날짜를 정했는가 마무리 좋은 자동화는 사람이 하던 일을 없애는 것이 아니라, 반복적인 조회와 전달을 줄이고 사람이 판단과 처리에 집중할 수 있게 만드는 일입니다. 그러려면 만들기 전에 두 가지를 먼저 답해야 합니다. "이 업무는 자동화할 가치가 있는가?" 그리고 "어디까지 맡길 것인가?"
Score: 54.36Confidence: 49%
Score: 54.36Confidence: 49%
Score: 54.36Confidence: 49%
Score: 54.35Confidence: 49%
Score: 54.35Confidence: 49%