本文へ移動

応用情報技術者 科目A 想定問題集

基礎理論の要点整理と想定問題

公式のシラバスの「大分類 1: 基礎理論(中分類 1〜2)」にあたる分野です。まず要点整理で全体をつかみ、下の演習で 55 問を 1 問ずつ解けます。答えると A〜D すべての解説が出ます。

この分野の小項目

  • 1.1 数値の表現・集合・論理演算(6 問) 基数とその変換、負の数や小数の表現、算術演算と精度(シフト演算、誤差)、集合と命題、論理演算と基本法則(ド・モルガンの法則、真理値表、カルノー図)を修得し、応用する。
  • 1.2 確率・統計(6 問) 確率(順列・組合せ、条件付き確率、ベイズの定理、確率分布と期待値)と統計(代表値、ばらつき、相関・回帰分析、推定、仮説検定)の計算と分析手法を修得し、応用する。
  • 1.2 数値計算・グラフ理論・待ち行列・最適化(5 問) 線形代数・行列などの数値計算、数値解析(二分法など)、数式処理、グラフ理論、待ち行列理論、最適化問題(線形計画法など)の数学的原理を修得し、応用する。
  • 1.3 情報理論・符号・オートマトン・計算量(8 問) 情報理論・符号理論、コードによる文字の表現、述語論理、形式言語、オートマトン、正当性理論、計算量、コンパイラ理論、プログラム言語論・意味論の考え方と仕組みを修得し、応用する。
  • 1.3 AI(人工知能)の技術(9 問) AI(人工知能)の考え方、仕組み、代表的なモデル(機械学習、ディープラーニングなど)を修得し、応用する。
  • 1.4〜1.5 通信・計測・制御の理論(6 問) 情報を伝送するための代表的な方式(伝送理論)、信号処理、制御の考え方と仕組み(フィードバック制御など)、代表的なセンサー・アクチュエーターの種類と動作特性を修得し、応用する。
  • 2.1〜2.2 データ構造とアルゴリズム(7 問) 代表的なデータ構造(スタック、キュー、リスト、木構造など)の種類・特徴・操作と、流れ図、代表的なアルゴリズム(整列、探索、再帰など)、アルゴリズムの設計方法を修得し、応用する。
  • 2.3〜2.5 プログラミングとプログラム言語(8 問) プログラミング作法とコーディング標準、文法の表記法、プログラム言語の種類・特徴・制御構造・記憶域・構文規則と意味規則、マークアップ言語などその他の言語を修得し、応用する。

要点整理

数値の表現・集合・論理演算

数値の表現は「変換の手順」と「誤差の名前」を対で覚える

基数の変換は、整数部は 2 で割った余りを下から、小数部は 2 を掛けた整数部を上から並べます。10 進の 0.1 のように、2 進では有限の桁で表せない小数もあります。

負の数は2 の補数で表すのが基本です。正の数の全ビットを反転して 1 を足します。8 ビットなら −128〜+127 を表せます。

シフト演算は、空いたビットに何を入れるかで区別します。論理シフトは常に 0 を入れ、算術シフトは右シフトで符号ビットと同じ値を入れます。算術右シフト 1 ビットは、2 で割る計算に当たります。

浮動小数点数の誤差は名前で問われます。値の近い数どうしの引き算で有効桁が減るのが桁落ち、大きさの違う数の足し算で小さい方が消えるのが情報落ちです。

論理演算は真理値表で確かめるのが確実です。ド・モルガンの法則は「not(A かつ B)= not A または not B」「not(A または B)= not A かつ not B」です。集合の人数の問題は、和集合=A+B−共通部分で数えます。

現象起きる場面結果
桁落ちほぼ等しい数どうしの減算有効桁が減る
情報落ち大きさが極端に違う数の加減算小さい方の値が反映されない
オーバーフロー表せる最大値を超える正しい値を表せない
アンダーフロー絶対値が小さすぎる0 に近い値を表せない
丸め誤差表せる桁数に収める端数の分だけずれる

出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)/浮動小数点演算、その問題と制限(Python ドキュメント)

確率・統計

確率は「余事象」と「条件の向き」、統計は「外れ値への強さ」に注意

「少なくとも 1 回」の確率は、すべて起きない確率を 1 から引く余事象で求めます。成功確率 0.2 を 3 回なら、1−0.8³=0.488 です。

条件付き確率は向きを取り違えやすいところです。「不良品が不良と判定される確率」と「不良と判定された品が本当に不良である確率」は別物です。後者はベイズの定理で求めます。

代表値のうち平均値は外れ値の影響を強く受け、中央値や最頻値はあまり受けません。ばらつきは分散と、その正の平方根の標準偏差で表します。

相関係数は −1〜1 の値で、比例的な関係の強さを表します。単回帰の決定係数は相関係数の 2 乗です。相関があっても因果関係があるとは限りません。

仮説検定では、p 値が有意水準以下なら帰無仮説を棄却し、対立仮説を採ります。棄却できないときも「差が無い」と証明されたわけではありません。

代表値求め方外れ値の影響
平均値合計を個数で割る強く受ける
中央値並べた真ん中の値受けにくい
最頻値最も多く現れる値ほとんど受けない

出典: 中心的な傾向を捉える(総務省統計局 なるほど統計学園)/複数の変数の関係性を見る(総務省統計局 なるほど統計学園)/統計的推定と統計的仮説検定(総務省統計局 なるほど統計学園)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

数値計算・グラフ理論・待ち行列・最適化

待ち行列は 3 つの式、グラフは辺の数と最短経路の方法を押さえる

待ち行列理論の M/M/1 は、到着がランダムで窓口が 1 つのモデルです。利用率 ρ は「平均到着率×平均サービス時間」で、1 未満でないと行列は伸び続けます。

平均待ち時間は ρ/(1−ρ)×平均サービス時間、平均応答時間はそれにサービス時間を足した 1/(1−ρ)×平均サービス時間です。「待ち」か「応答(滞在)」かを問題文で必ず確かめます。

ρ が 1 に近づくと待ち時間は急に伸びます。ρ が 0.5 なら待ちはサービス時間の 1 倍、0.75 なら 3 倍、0.9 なら 9 倍です。

グラフ理論では、n 頂点の無向完全グラフの辺の数 n(n−1)/2 がよく使われます。最短経路は、重みが 0 以上ならダイクストラ法、負の重みがあればベルマンフォード法を選びます。

二分法は解のある区間を毎回半分にする数値解析の方法で、n 回後の幅は元の 1/2ⁿ です。線形計画法は、一次式の制約の中で目的の値を最大または最小にする最適化の方法です。

指標(M/M/1)式ρ=0.8・サービス 4 分の例
利用率 ρ平均到着率×平均サービス時間0.8
平均待ち時間ρ/(1−ρ)×平均サービス時間16 分
平均応答時間1/(1−ρ)×平均サービス時間20 分

出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)/Shortest Paths(NetworkX ドキュメント)

情報理論・符号・オートマトン・計算量

情報量・符号・オートマトン・計算量は「数え方」で解く

確率 p の事象の情報量は −log₂p ビットです。8 通りが同じ確率なら 3 ビットになります。

ハフマン符号は、よく出る記号ほど短い符号を割り当てる可変長の符号です。平均符号長は「符号長×出現確率」の合計で、固定長以下になります(確率に偏りがあるほど短くなります)。

誤りの検出と訂正は方式で役割が違います。パリティは 1 ビットの誤りを検出でき、ハミング符号は 1 ビットの誤りを訂正できます。CRC は連続した誤りの検出に強い方式です。

有限オートマトンは、状態遷移表のとおりに 1 文字ずつ状態を進め、最後に受理状態にいれば受理します。逆ポーランド表記法は演算子を後ろに置く書き方で、スタックで計算できます。

計算量は入力の大きさ n に対する増え方で比べます。O(n²) の処理は n が 3 倍で時間が 9 倍、2 分探索の O(log n) は 100 万件でも約 20 回の比較で済みます。

UTF-8 は文字を 1〜4 バイトで表し、ASCII は 1 バイト、U+0800〜U+FFFF のひらがな・漢字の多くは 3 バイトです。

方式検出訂正
パリティチェック1 ビットの誤りできない
ハミング符号誤りの検出1 ビットの誤り
CRC連続した誤りの検出に強い主に検出に使う
チェックサム合計値の不一致できない

出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)/RFC 3629: UTF-8, a transformation format of ISO 10646/bisect --- 配列二分法アルゴリズム(Python ドキュメント)

AI(人工知能)の技術

AI は「学習の種類」「評価指標」「深層学習の工夫」の 3 つで整理する

機械学習は、正解付きのデータから予測を学ぶ教師あり学習、正解の無いデータから構造を見つける教師なし学習、報酬をもとに行動の方策を学ぶ強化学習に分けられます。

評価指標は、見逃しを減らしたいなら再現率、誤検知を減らしたいなら適合率を重視します。陽性が少ないデータでは、正解率だけで判断すると見誤ります。

訓練誤差は下がるのに検証誤差が上がるのは過学習の兆候です。正則化やドロップアウトで複雑さを抑え、交差検証で汎化性能を確かめます。

ディープラーニングは多層のニューラルネットワークで特徴を自ら学習します。層が深いと勾配消失問題が起きやすく、ReLU 関数が対策の一つです。

大規模言語モデルの多くは Transformer を土台にし、自己注意機構で単語どうしの関係を重み付けします。第 2 次 AI ブームのエキスパートシステムは、人が書いた知識とルールで推論する仕組みでした。

学習の種類使うデータ代表的な手法
教師あり学習正解ラベル付きのデータ線形回帰・ロジスティック回帰・決定木
教師なし学習正解ラベルの無いデータk-means 法・主成分分析
強化学習行動に対する報酬や罰Q 学習・方策勾配法

出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)/機械学習とは(Google 機械学習の概要)/分類: 正解率、再現率、適合率と関連指標(Google 機械学習集中講座)/ニューラル ネットワーク: バックプロパゲーション(Google 機械学習集中講座)/LLM: Transformer(Google 機械学習集中講座)

通信・計測・制御の理論

通信と制御は計算 2 つと方式の名前を押さえる

サンプリング定理では、最高周波数の 2 倍を超える周波数で標本化すれば元の信号を復元できます。PCM の伝送速度は「標本化周波数×量子化ビット数」で、8,000 回×8 ビットなら 64 kbit/s です。

多重化は分け方で名前が変わります。周波数で分ける FDM、時間で分ける TDM、符号で分ける CDM、光の波長で分ける WDM です。

フィードバック制御は結果を測って目標との差を減らし、フィードフォワード制御は外乱を先に測って前もって打ち消します。PWM はパルスのオンの割合で平均の電圧を変える方法で、モーターの速度制御などに使います。

制御方式何を測るか向く場面
フィードバック制御制御した結果目標とのずれを確実に直したい
フィードフォワード制御外乱(入ってくる変化)影響が出る前に打ち消したい
シーケンス制御条件の成立や時間決まった手順を順に進めたい

出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

データ構造とアルゴリズム

データ構造とアルゴリズムは「性質」と「最悪の場合」をセットで覚える

スタックは後入れ先出し、キューは先入れ先出しです。ヒープは親が子以下という条件を保つ木で、配列の 0 番目を根にすると添字 k の子は 2k+1 と 2k+2 です。

2 分探索木を中間順(左→根→右)でたどると昇順に取り出せます。ハッシュ法で異なるキーが同じ位置になることをシノニムといい、チェイン法などで対処します。

整列では安定性と最悪の計算量が問われます。マージソートは安定ソートとして実装でき、クイックソートは平均 O(n log n) ですが、整列済みの入力で先頭を基準にすると O(n²) になります。

再帰で同じ部分問題を何度も解く場合は、結果を保存して使い回す動的計画法で重複を省けます。

整列法平均の計算量安定か
マージソートO(n log n)安定にできる
クイックソートO(n log n)(最悪 O(n²))一般的な実装は安定でない
ヒープソートO(n log n)安定でない
挿入ソートO(n²)安定
選択ソートO(n²)一般的な実装は安定でない

出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)/データ構造(Python チュートリアル)/heapq --- ヒープキューアルゴリズム(Python ドキュメント)/ソート HOWTO(Python ドキュメント)/functools --- 高階関数と呼び出し可能オブジェクトの操作(Python ドキュメント)

プログラミングとプログラム言語

プログラム言語は「引数の渡し方」「記憶域」「翻訳の段階」を区別する

値呼出しは値の写しを渡すので呼出し元は変わらず、参照呼出しは変数そのものを指すので変更が呼出し元に及びます。

自動変数は呼出しごとに確保され、戻ると解放されます。静的変数は実行中ずっと同じ領域に残ります。

コンパイラは字句解析、構文解析、意味解析、最適化、コード生成の順に処理します。文法は BNF などのメタ言語で定義します。

言語の分類では、事実と規則から推論する論理型言語、関数の組合せで書く関数型言語などを区別します。データ交換では、独自のタグを定義できる XML と、日付型を持たない JSON の違いが問われます。

言語・形式主な役割特徴
HTMLWeb ページの記述使う要素が仕様で定められている
XMLデータの構造化と交換要素の名前を利用者が決められる
JSONデータの交換文字列・数値・真偽値・null とオブジェクト・配列
CSS見た目の指定構造と表示形式を分ける

出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)/言語リファレンス 1. はじめに(表記法)(Python ドキュメント)/RFC 8259: The JavaScript Object Notation (JSON) Data Interchange Format/Extensible Markup Language (XML) 1.0(W3C 勧告)

演習(55 問)

結果はこのブラウザに保存され、ハブの「自分の成績」と弱点モードに使われます。

第 1 問 / 55 問

問題を読み込んでいます…

全問と解説の一覧

正解と解説は折りたたんであります。先に自分で考えてから開いてください。

全 55 問

数値の表現・集合・論理演算

  1. 基数の変換で、10 進数の 0.625 を 2 進数で表したものは?

    A. 0.011 B. 0.101 C. 0.110 D. 0.1001

    答えと解説

    正解: B 【A(不正解)】 ? 小数第 2 位と第 3 位が 1 の 2 進小数です。 0.011 は 1/4+1/8=0.375 で、0.625 とは異なる。 【B(正解)】 ? 小数第 1 位と第 3 位が 1 の 2 進小数です。 小数部に 2 を掛けて整数部を順に取る。0.625×2=1.25→1、0.25×2=0.5→0、0.5×2=1.0→1 なので 0.101 になる。 【C(不正解)】 ? 小数第 1 位と第 2 位が 1 の 2 進小数です。 0.110 は 1/2+1/4=0.75 で、0.625 とは異なる。 【D(不正解)】 ? 小数第 1 位と第 4 位が 1 の 2 進小数です。 0.1001 は 1/2+1/16=0.5625 で、0.625 とは異なる。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)/浮動小数点演算、その問題と制限(Python ドキュメント)

    この問題へのリンク
  2. 8 ビットの2 の補数で整数を表す機器に、10 進数の −100 を記録する。記録されるビット列は?

    A. 01100100 B. 10011011 C. 10011100 D. 11100100

    答えと解説

    正解: C 【A(不正解)】 ? 先頭ビットが 0 の並びです。 これは +100 の表現である。先頭ビットが 0 なので正の数になる。 【B(不正解)】 ? +100 の各ビットを反転した並びです。 反転しただけで 1 を足していない。これは 1 の補数での −100 である。 【C(正解)】 ? 先頭が 1 で、下位 2 ビットが 00 の並びです。 +100(01100100)の全ビットを反転して 10011011、それに 1 を足すと 10011100 になる。 【D(不正解)】 ? +100 の先頭ビットだけを 1 に変えた並びです。 符号ビットと絶対値で表す方式の形で、2 の補数の表現ではない。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  3. 8 ビットの2 の補数で表した 11101000 を、右へ 2 ビット算術シフトした。結果のビット列は?

    A. 11111010 B. 00111010 C. 10011010 D. 10100000

    答えと解説

    正解: A 【A(正解)】 ? 空いた上位 2 ビットに 1 が入った並びです。 算術右シフトは空いた上位に符号ビットと同じ値を入れる。11101000(−24)を 4 で割った −6 の 11111010 になる。 【B(不正解)】 ? 空いた上位 2 ビットに 0 が入った並びです。 上位に 0 を入れる論理シフトの結果である。符号が変わり、正の数 58 になってしまう。 【C(不正解)】 ? 先頭の 1 を残し、その次に 0 を 2 つ入れた並びです。 符号ビットだけ固定して 0 で埋めた形で、算術シフトの規則と違う。値も −102 になり、−24÷4 と合わない。 【D(不正解)】 ? 下位側に 0 が 2 つ入った並びです。 左へ 2 ビットずらした結果である。右シフトではない。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  4. 単精度の浮動小数点数で、1 億に 0.001 を 1 万回足す処理を作った。結果は 1 億のまま変わらなかった。この現象の名前は?

    A. 桁落ち B. オーバーフロー C. アンダーフロー D. 情報落ち

    答えと解説

    正解: D 【A(不正解)】 ? 値の近い 2 つの数の引き算で有効桁が減る誤差です。 ほぼ等しい数どうしの減算で起きる誤差で、今回の足し算とは違う。 【B(不正解)】 ? 表現できる範囲の上限を超えることです。 1 億は単精度で表せる範囲に収まっており、あふれは起きていない。 【C(不正解)】 ? 絶対値が小さすぎて表せなくなることです。 0.001 は単精度で表せる値で、表せないほど小さいわけではない。 【D(正解)】 ? 大きさが極端に違う数どうしの加減算で起こる誤差です。 仮数部の桁に収まらず、小さい方の値が結果に反映されない。小さい値どうしを先に足してから加えると防げる。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)/浮動小数点演算、その問題と制限(Python ドキュメント)

    この問題へのリンク
  5. 通販の抽出条件「在庫あり かつ 会員価格の対象」に当てはまらない商品を選びたい。ド・モルガンの法則で書き換えた条件は?

    A. 在庫なし かつ 会員価格の対象外 B. 在庫なし または 会員価格の対象外 C. 在庫あり または 会員価格の対象 D. 在庫あり かつ 会員価格の対象外

    答えと解説

    正解: B 【A(不正解)】 ? 2 つの否定を「かつ」で結んだ条件です。 両方を満たさない商品だけになり、片方だけ満たさない商品が漏れる。 【B(正解)】 ? 2 つの否定を「または」で結んだ条件です。 not(A かつ B)=(not A)または(not B)なので、元の条件の否定と一致する。 【C(不正解)】 ? 否定を付けずに「または」で結んだ条件です。 元の条件を広げただけで、否定になっていない。 【D(不正解)】 ? 片方だけを否定した条件です。 在庫なしの商品が漏れるため、元の条件の否定と一致しない。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  6. 社員 100 人のうち、資格 A を持つ人は 60 人、資格 B を持つ人は 45 人、両方を持つ人は 20 人である。どちらも持たない人は何人か?

    A. 0 人 B. 55 人 C. 15 人 D. 40 人

    答えと解説

    正解: C 【A(不正解)】 ? 全員が少なくともどちらかを持つという値です。 60+45=105 人が 100 人を超えるので全員が持つとみた値だが、両方を持つ 20 人を二重に数えている。 【B(不正解)】 ? 100 からある人数を引いた値です。 100−45=55 は B を持たない人数で、A を持つ人も含まれている。 【C(正解)】 ? 100 からある人数を引いた値です。 A または B を持つ人は 60+45−20=85 人。100−85=15 人がどちらも持たない。 【D(不正解)】 ? 100 からある人数を引いた値です。 100−60=40 は A を持たない人数で、B を持つ人も含まれている。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク

確率・統計

  1. 部品の不良率は 2% である。検査は不良品の 95% を「不良」と判定し、良品の 5% も誤って「不良」と判定する。「不良」と判定された部品が本当に不良である確率に最も近いものは?

    A. 約 28% B. 約 2% C. 約 50% D. 約 95%

    答えと解説

    正解: A 【A(正解)】 ? 判定結果を考えに入れた後の確率の候補です。 ベイズの定理で、0.02×0.95=0.019、0.98×0.05=0.049。0.019÷(0.019+0.049)=0.019÷0.068≒0.28 になる。 【B(不正解)】 ? 検査をする前の不良率と同じ値です。 検査結果の情報を使っていない。「不良」と判定されたことで、不良である確率は事前の 2% より高くなる。 【C(不正解)】 ? 半々の確率という値です。 計算の根拠がない。誤判定された良品(全体の 4.9%)が、正しく判定された不良品(1.9%)より多い点を反映していない。 【D(不正解)】 ? 不良品を「不良」と判定する確率と同じ値です。 「不良品のとき不良と判定される」確率で、問われている向きと逆の条件付き確率である。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  2. ある部署 10 人の年収データに、1 人だけ極端に高い値が入っている。この外れ値の影響を最も受けやすい代表値は?

    A. 中央値 B. 最頻値 C. 平均値 D. 第 1 四分位数

    答えと解説

    正解: C 【A(不正解)】 ? データを大きさの順に並べたときの真ん中の値です。 真ん中の位置の値なので、端の 1 件が大きくなってもほとんど動かない。 【B(不正解)】 ? 最も多く現れる値です。 出現回数で決まるため、1 件の外れ値ではほぼ変わらない。 【C(正解)】 ? すべての値の合計を個数で割った値です。 合計を個数で割るので、1 つの極端な値が全体を大きく引き上げる。 【D(不正解)】 ? 小さい方から 4 分の 1 の位置にある値です。 下側の位置の値なので、上側にある極端な値の影響はほぼ受けない。

    出典: 中心的な傾向を捉える(総務省統計局 なるほど統計学園)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  3. 広告費と売上の相関係数は 0.8 だった。単回帰の回帰直線が売上の変動をどれだけ説明できるかを表す決定係数は?

    A. 0.8 B. 0.4 C. 0.89 D. 0.64

    答えと解説

    正解: D 【A(不正解)】 ? 相関係数と同じ値です。 相関係数そのもので、決定係数ではない。 【B(不正解)】 ? 相関係数を 2 で割った値です。 2 で割る計算に根拠はない。 【C(不正解)】 ? 相関係数の平方根に近い値です。 √0.8≒0.89 で、2 乗とは逆の計算になっている。 【D(正解)】 ? 相関係数を 2 乗した値です。 単回帰の決定係数は相関係数の 2 乗で、0.8×0.8=0.64 になる。説明力は相関係数の見た目より低い。

    出典: 複数の変数の関係性を見る(総務省統計局 なるほど統計学園)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  4. 新しい画面と旧画面の購入率は同じという帰無仮説で仮説検定をした。有意水準は 5%、p 値は 0.03 だった。判断として適切なものは?

    A. 帰無仮説を採択し、差が無いことが証明されたとする B. 帰無仮説を棄却し、購入率に差があるとする C. p 値が有意水準より小さいので判断を保留する D. 結果を見てから有意水準を 1% に変えて判断する

    答えと解説

    正解: B 【A(不正解)】 ? 帰無仮説を受け入れる判断です。 p 値 0.03 は有意水準 0.05 より小さいので、帰無仮説は採択しない。仮に棄却できなくても、差が無いことの証明にはならない。 【B(正解)】 ? 帰無仮説を退け、対立仮説を採る判断です。 p 値が有意水準を下回ったので帰無仮説を棄却し、「購入率は同じではない」という対立仮説を採る。 【C(不正解)】 ? 結論を出さない判断です。 p 値が有意水準以下なら棄却するのが検定の手順で、保留する理由はない。 【D(不正解)】 ? 検定の基準を後から変える判断です。 有意水準は検定の前に決める。結果に合わせて変えると検定の意味がなくなる。

    出典: 統計的推定と統計的仮説検定(総務省統計局 なるほど統計学園)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  5. 1 回で成功する確率が 0.2 の作業を、独立に 3 回行う。少なくとも 1 回は成功する確率は?

    A. 0.488 B. 0.6 C. 0.512 D. 0.008

    答えと解説

    正解: A 【A(正解)】 ? 3 回の結果の組合せから求める候補の 1 つです。 3 回とも失敗する確率は 0.8³=0.512。少なくとも 1 回成功する確率は 1−0.512=0.488 になる。 【B(不正解)】 ? 1 回の成功確率を 3 倍した値です。 0.2×3 は、各回の成功が同時に起こりうる(排反でない)ことを無視した足し算である。 【C(不正解)】 ? 3 回とも失敗する確率です。 0.8³=0.512 は余事象の確率で、求める確率はこれを 1 から引いた値になる。 【D(不正解)】 ? 3 回とも成功する確率です。 0.2³=0.008 は全回成功の確率で、「少なくとも 1 回」ではない。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  6. 模擬試験の平均点は 60 点、標準偏差は 10 点だった。75 点の人の偏差値は?

    A. 57.5 B. 60 C. 65 D. 75

    答えと解説

    正解: C 【A(不正解)】 ? 50 を基準にした値の候補です。 根拠のない計算である。偏差値は標準化した値を 10 倍して 50 を足す。 【B(不正解)】 ? 平均点と同じ数です。 平均点そのもので、得点の位置を表していない。 【C(正解)】 ? 50 を基準にした値の候補です。 (75−60)÷10=1.5。1.5×10+50=65 になる。 【D(不正解)】 ? 得点と同じ数です。 素点そのもので、平均とばらつきを使って換算していない。

    出典: データの散らばりを見る(総務省統計局 なるほど統計学園)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク

数値計算・グラフ理論・待ち行列・最適化

  1. 窓口 1 つの受付に、客が 1 時間に平均 12 人ランダムに来る。平均サービス時間は 4 分である。M/M/1 モデルで、サービスを受けるまでの平均待ち時間は?

    A. 4 分 B. 16 分 C. 20 分 D. 3.2 分

    答えと解説

    正解: B 【A(不正解)】 ? 平均サービス時間と同じ値です。 サービスにかかる時間そのもので、待ちの長さを計算していない。 【B(正解)】 ? 利用率 0.8 から計算できる値の候補です。 待ち行列理論の M/M/1 で、利用率 ρ=12×4÷60=0.8。平均待ち時間=0.8÷0.2×4=16 分になる。 【C(不正解)】 ? 利用率 0.8 から計算できる値の候補です。 4÷0.2=20 分は、待ち時間にサービス時間を足した平均応答時間(滞在時間)である。 【D(不正解)】 ? 利用率に平均サービス時間を掛けた値です。 0.8×4=3.2 分は M/M/1 の待ち時間の式と違う。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  2. M/M/1 の窓口で、平均サービス時間は変えずに客が増え、利用率が 0.5 から 0.75 に上がった。平均待ち時間は何倍になるか?

    A. 1.5 倍 B. 2 倍 C. 2.25 倍 D. 3 倍

    答えと解説

    正解: D 【A(不正解)】 ? 利用率どうしの比と同じ値です。 0.75÷0.5=1.5 は利用率の比で、待ち時間は利用率に比例しない。 【B(不正解)】 ? 2 つの利用率から計算できる比の候補です。 (1÷0.25)÷(1÷0.5)=4÷2=2 は、サービス時間を含む平均応答時間の倍率である。 【C(不正解)】 ? 利用率の比を 2 乗した値です。 1.5²=2.25 に根拠はなく、M/M/1 の式から出てこない。 【D(正解)】 ? 2 つの利用率から計算できる比の候補です。 平均待ち時間は ρ/(1−ρ)×サービス時間。0.5 のとき 1 倍、0.75 のとき 3 倍で、3÷1=3 倍になる。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  3. 6 つの拠点のどの 2 拠点の間にも、専用回線を 1 本ずつ引く。必要な回線の本数(無向の完全グラフの辺の数)は?

    A. 15 本 B. 30 本 C. 12 本 D. 36 本

    答えと解説

    正解: A 【A(正解)】 ? 拠点の組を数えた候補です。 グラフ理論で、n 頂点の完全グラフの辺は n(n−1)/2 本。6×5÷2=15 本になる。 【B(不正解)】 ? 拠点の組を数えた候補です。 A→B と B→A を別に数えた有向の数で、無向の回線では 2 倍に数えすぎている。 【C(不正解)】 ? 6×2 で数えた値です。 各拠点から 2 本ずつという仮定に根拠はない。 【D(不正解)】 ? 6 の 2 乗の値です。 自分自身との組や向きの違いまで数えた値で、多すぎる。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  4. 物流の経路を重み付き有向グラフで表した。補助金で費用が負になる辺があるが、負の閉路は無い。始点から各地点への最小費用を求める方法として適切なものは?

    A. ダイクストラ法 B. 幅優先探索 C. ベルマンフォード法 D. 深さ優先探索

    答えと解説

    正解: C 【A(不正解)】 ? 始点から近い頂点を順に確定させていく最短経路の方法です。 重みが 0 以上であることを前提にした方法で、負の辺があると正しい答えにならないことがある。 【B(不正解)】 ? 始点から近い頂点の順にたどる探索です。 通る辺の数が少ない経路を見つける方法で、辺の重みを考えない。 【C(正解)】 ? すべての辺を使って距離の更新を繰り返す方法です。 負の重みの辺があっても最短経路を求められる。負の閉路があるかどうかも調べられる。 【D(不正解)】 ? 行けるところまで進んでから戻る探索です。 頂点をたどる順序の決め方で、最小費用の経路を求める手法ではない。

    出典: Shortest Paths(NetworkX ドキュメント)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  5. 方程式の解がある区間の幅は 1 である。二分法で区間を半分にする操作を繰り返し、幅を 0.001 以下にしたい。最低何回必要か?

    A. 9 回 B. 10 回 C. 100 回 D. 500 回

    答えと解説

    正解: B 【A(不正解)】 ? 1 回ごとに幅が半分になるとして数えた候補です。 9 回では幅が 1/512≒0.00195 で、0.001 より大きい。 【B(正解)】 ? 1 回ごとに幅が半分になるとして数えた候補です。 n 回後の幅は 1/2ⁿ。2ⁿ≧1,000 となる最小の n は 10(2¹⁰=1,024)なので 10 回になる。 【C(不正解)】 ? 幅を毎回 0.01 ずつ減らすとみた回数です。 区間は毎回半分になるので、一定量ずつ減ると考えるのは誤りである。 【D(不正解)】 ? 幅を毎回 0.002 ずつ減らすとみた回数です。 二分法は幅が指数的に縮むので、ここまで多くは要らない。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク

情報理論・符号・オートマトン・計算量

  1. 8 通りの結果が同じ確率で起こる事象がある。そのうち 1 つが起きたと知らせる情報量は何ビットか?

    A. 1 ビット B. 8 ビット C. 3 ビット D. 0.125 ビット

    答えと解説

    正解: C 【A(不正解)】 ? 2 通りを区別するのに要る量です。 1 ビットで区別できるのは 2 通りだけである。 【B(不正解)】 ? 結果の数と同じ値です。 情報量は結果の数そのものではなく、その対数で表す。 【C(正解)】 ? 結果の数から計算する候補です。 情報量は −log₂(1/8)=log₂8=3 ビットになる。 【D(不正解)】 ? 1 つの結果が起こる確率と同じ値です。 1/8 は確率そのもので、情報量ではない。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  2. 記号 A・B・C・D の出現確率は 0.5・0.25・0.125・0.125 である。ハフマン符号で符号化したとき、1 記号あたりの平均符号長は?

    A. 1.75 ビット B. 2 ビット C. 1.5 ビット D. 2.25 ビット

    答えと解説

    正解: A 【A(正解)】 ? 確率の偏りを生かした長さの候補です。 符号長は A=1、B=2、C=3、D=3。0.5×1+0.25×2+0.125×3×2=1.75 ビットになる。 【B(不正解)】 ? 4 記号をすべて同じ長さで表したときの値です。 固定長の符号の長さで、出現確率の偏りを生かしていない。 【C(不正解)】 ? 確率の偏りを生かした長さの候補です。 確率と符号長から計算すると 1.75 で、1.5 にはならない。 【D(不正解)】 ? 固定長より長い値です。 ハフマン符号の平均は固定長の 2 ビット以下になり、これより長くはならない。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  3. メモリのデータに 1 ビットの誤りが起きても、どのビットかを特定して自動で直したい。適した方式は?

    A. 偶数パリティ B. CRC C. チェックサム D. ハミング符号

    答えと解説

    正解: D 【A(不正解)】 ? 1 の個数が偶数になるよう検査ビットを 1 つ付ける方式です。 1 ビットの誤りは検出できるが、どのビットが誤ったかは分からず訂正できない。 【B(不正解)】 ? 生成多項式で割った余りを検査に使う方式です。 主に誤りの検出に使う方式で、連続した誤りに強い。ここで求める 1 ビットの位置の特定と訂正には、一般に使わない。 【C(不正解)】 ? データを足し合わせた値で検査する方式です。 合計値が合うかどうかで誤りを見つける方式で、誤りの位置は特定できない。 【D(正解)】 ? 複数の検査ビットを組み合わせて付ける方式です。 検査ビットの組合せから誤ったビットの位置が分かり、1 ビットの誤りを訂正できる。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  4. 状態 S0(開始かつ受理)と S1 からなる有限オートマトンがある。0 を読むと状態はそのまま、1 を読むと S0 と S1 が入れ替わる。受理される入力は?

    A. 1011 B. 1001 C. 0111 D. 1000

    答えと解説

    正解: B 【A(不正解)】 ? 1 を 3 個含む入力です。 1 を読むたびに状態が入れ替わるので、1 が 3 個だと S1 で終わり受理されない。 【B(正解)】 ? 1 を 2 個含む入力です。 S0→S1→S1→S1→S0 と進み、受理状態の S0 で終わる。1 の個数が偶数の入力を受理する。 【C(不正解)】 ? 1 を 3 個含み、0 で始まる入力です。 0 では状態が変わらず、1 が 3 個なので S1 で終わる。 【D(不正解)】 ? 1 を 1 個含む入力です。 最初の 1 で S1 に移り、後の 0 では変わらないので S1 で終わる。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  5. 整列済みの 100 万件の顧客番号から 1 件を探す。2 分探索法で必要な比較回数の最大値に最も近いものは?

    A. 6 回 B. 1,000 回 C. 20 回 D. 50 万回

    答えと解説

    正解: C 【A(不正解)】 ? 1 けたの回数です。 log₁₀ で数えた値で、2 つに分けていく探索の回数ではない。 【B(不正解)】 ? 千回程度の回数です。 √n に比例する探索ではないので、ここまで多くはならない。 【C(正解)】 ? 数十回程度の回数です。 2 分探索の計算量は O(log n)。2²⁰=1,048,576 なので、最大でも 20 回程度で見つかる。 【D(不正解)】 ? 件数の半分の回数です。 先頭から順に調べる線形探索の平均比較回数に近い値である。

    出典: bisect --- 配列二分法アルゴリズム(Python ドキュメント)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  6. 計算量が O(n²) の処理は、n=1,000 で 2 秒かかった。n=3,000 のときの処理時間の目安は?

    A. 6 秒 B. 9 秒 C. 54 秒 D. 18 秒

    答えと解説

    正解: D 【A(不正解)】 ? n が 3 倍になったときの時間の候補です。 O(n) と考えた計算で、n² の増え方を反映していない。 【B(不正解)】 ? n が 3 倍になったときの時間の候補です。 n が 3 倍なら時間は 3²=9 倍だが、元の 2 秒を掛けていない。 【C(不正解)】 ? n が 3 倍になったときの時間の候補です。 3³=27 倍とした O(n³) の計算である。 【D(正解)】 ? n が 3 倍になったときの時間の候補です。 n が 3 倍なので時間は 3²=9 倍。2 秒×9=18 秒になる。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  7. 文字列「AIあい」を UTF-8 で保存する。英字は ASCII の範囲、ひらがなは U+3042 と U+3044 である。合計のバイト数は?

    A. 8 バイト B. 4 バイト C. 6 バイト D. 12 バイト

    答えと解説

    正解: A 【A(正解)】 ? 文字ごとのバイト数を足した候補です。 U+0800〜U+FFFF は 3 バイトで表す。英字 2 文字×1+ひらがな 2 文字×3=8 バイトになる。 【B(不正解)】 ? 文字ごとのバイト数を足した候補です。 ASCII 以外の文字は UTF-8 で 2 バイト以上になる。 【C(不正解)】 ? 文字ごとのバイト数を足した候補です。 2 バイトで表すのは U+0080〜U+07FF の文字で、U+3042 は範囲外である。 【D(不正解)】 ? 文字ごとのバイト数を足した候補です。 ASCII の範囲の文字は UTF-8 でも 1 バイトのまま表す。

    出典: RFC 3629: UTF-8, a transformation format of ISO 10646/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  8. 式 (A+B)×(C−D) を逆ポーランド表記法で表したものは?

    A. A B + C − D × B. A B + C D − × C. A B C D + − × D. A B × C D + −

    答えと解説

    正解: B 【A(不正解)】 ? C の直後に − を置いた並びです。 A+B の結果から C を引き、それに D を掛ける式になり、元の式と違う。 【B(正解)】 ? + と − の後に × を置いた並びです。 A B + で A+B、C D − で C−D を求め、最後に × で掛ける。元の式と一致する。 【C(不正解)】 ? 4 つの変数を先に並べた並びです。 C+D を先に計算し、B からその値を引き、A を掛ける式になる。 【D(不正解)】 ? × を先に適用する並びです。 A×B−(C+D) という別の式になる。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク

AI(人工知能)の技術

  1. 健診画像から病気の疑いを見つける AI を作る。病気なのに陰性と判定する見逃しを最も減らしたい。重視する評価指標は?

    A. 再現率 B. 適合率 C. 正解率 D. 訓練誤差

    答えと解説

    正解: A 【A(正解)】 ? 実際に陽性のもののうち、陽性と当てた割合です。 見逃し(偽陰性)が多いと下がる指標で、見逃しの損失が大きいときに重視する。 【B(不正解)】 ? 陽性と判定したもののうち、本当に陽性だった割合です。 誤って陽性とする(偽陽性)ことを減らしたいときに重視する指標である。 【C(不正解)】 ? 全体のうち、判定が当たった割合です。 病気の人が少ないと、全員を陰性にしても高くなるため、見逃しの評価に向かない。 【D(不正解)】 ? 学習に使ったデータでの誤差です。 学習の進み具合を見る値で、新しいデータでの見逃しの多さは分からない。

    出典: 分類: 正解率、再現率、適合率と関連指標(Google 機械学習集中講座)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  2. 不正取引の検知モデルを 1,000 件で評価した。不正を不正と当てたのは 40 件、正常を不正と誤ったのは 10 件、不正を見逃したのは 20 件だった。適合率と再現率の組合せは?

    A. 適合率 0.67・再現率 0.80 B. 適合率 0.97・再現率 0.67 C. 適合率 0.80・再現率 0.67 D. 適合率 0.80・再現率 0.97

    答えと解説

    正解: C 【A(不正解)】 ? 40・10・20 の件数から計算した組合せの候補です。 適合率と再現率の分母を取り違えている。 【B(不正解)】 ? 40・10・20 の件数から計算した組合せの候補です。 0.97 は(40+930)÷1,000 の正解率で、適合率ではない。 【C(正解)】 ? 40・10・20 の件数から計算した組合せの候補です。 適合率=40÷(40+10)=0.80、再現率=40÷(40+20)≒0.67 になる。 【D(不正解)】 ? 40・10・20 の件数から計算した組合せの候補です。 再現率は実際の不正 60 件のうち当てた 40 件の割合で、0.97 にはならない。

    出典: 分類: 正解率、再現率、適合率と関連指標(Google 機械学習集中講座)

    この問題へのリンク
  3. 学習を進めると、訓練データの誤差は下がり続けるのに、検証データの誤差はある時点から上がった。起きていることと対策の組合せとして適切なものは?

    A. 未学習。モデルをさらに単純にする B. 勾配消失。学習率を上げる C. 過学習。訓練データを検証にも使う D. 過学習。正則化やドロップアウトを使う

    答えと解説

    正解: D 【A(不正解)】 ? 学習が足りない状態とその対策の組合せです。 訓練データの誤差は下がり続けているので、学習不足ではない。 【B(不正解)】 ? 勾配が小さくなりすぎる問題とその対策の組合せです。 勾配消失では訓練誤差が下がりにくくなる。今回の症状とは違う。 【C(不正解)】 ? 評価に使うデータの選び方の組合せです。 学習に使ったデータで評価すると、新しいデータでの性能を測れなくなる。 【D(正解)】 ? モデルの複雑さを抑える工夫の組合せです。 訓練データに合わせすぎて汎化しない状態である。複雑さを抑える正則化や、ドロップアウトが対策になる。

    出典: 過学習(Google 機械学習集中講座)/過学習: 正則化(Google 機械学習集中講座)/ニューラル ネットワーク: バックプロパゲーション(Google 機械学習集中講座)

    この問題へのリンク
  4. 購買履歴に正解ラベルは無い。似た顧客を、あらかじめ決めた 5 つのグループに自動で分けたい。適した手法は?

    A. 線形回帰 B. k-means 法 C. ロジスティック回帰 D. Q 学習

    答えと解説

    正解: B 【A(不正解)】 ? 数値を予測する直線の式を求める手法です。 正解の数値を使って予測する教師あり学習の手法で、グループ分けには使わない。 【B(正解)】 ? 各データを最も近い重心の集まりに割り当てる手法です。 教師なし学習のクラスタリングで、グループ数 k を先に決め、重心への割当てと重心の更新を繰り返す。 【C(不正解)】 ? ある分類に入る確率を求める手法です。 正解ラベルを使う分類の手法で、ラベルが無いデータには使えない。 【D(不正解)】 ? 行動の価値を学ぶ手法です。 報酬をもとに行動を学ぶ強化学習の手法で、顧客のグループ分けには使わない。

    出典: k-means の概要(Google クラスタリング講座)/機械学習とは(Google 機械学習の概要)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  5. 倉庫ロボットに、荷物を早く運べたら報酬を、ぶつかったら罰を与え、試行錯誤で動き方を学ばせたい。この学習の枠組みは?

    A. 教師あり学習 B. 教師なし学習 C. 強化学習 D. 転移学習

    答えと解説

    正解: C 【A(不正解)】 ? 答え(ラベル)付きのデータから予測を学ぶ枠組みです。 1 つ 1 つの状況に正解の行動を付けたデータが必要で、報酬で学ぶ今回の形と違う。 【B(不正解)】 ? ラベルの無いデータからパターンを見つける枠組みです。 データの構造を見つける学習で、行動と報酬の関係を学ぶものではない。 【C(正解)】 ? エージェントが環境とやり取りしながら方策を改善する枠組みです。 報酬が最も多くなる方策(行動の決め方)を、試行錯誤で学ぶ。 【D(不正解)】 ? 別の課題で学んだモデルを新しい課題に生かす方法です。 学習済みのモデルを使い回す方法で、報酬による試行錯誤の仕組みではない。

    出典: 機械学習とは(Google 機械学習の概要)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  6. 層の多いニューラルネットワークで、入力に近い層の重みがほとんど更新されない。勾配消失問題を和らげる工夫として適切なものは?

    A. 活性化関数に ReLU 関数 を使う B. 活性化関数を外して各層を線形にする C. 隠れ層をさらに増やす D. 訓練データを検証データとしても使う

    答えと解説

    正解: A 【A(正解)】 ? 入力が負なら 0、0 以上ならそのまま出す関数です。 正の入力では傾きが 1 のままで、層を重ねても勾配が小さくなりにくい。Google の機械学習講座でも勾配消失を防ぐのに役立つとされる。 【B(不正解)】 ? 各層を線形の計算だけにする変更です。 線形の演算を重ねても線形のままで、層を重ねる意味がなくなる。 【C(不正解)】 ? ネットワークをもっと深くする変更です。 層が増えると小さい値の掛け算が増え、勾配はさらに小さくなりやすい。 【D(不正解)】 ? 評価に使うデータの選び方です。 勾配の大きさとは関係がなく、汎化性能も正しく測れなくなる。

    出典: ニューラル ネットワーク: バックプロパゲーション(Google 機械学習集中講座)/ニューラル ネットワーク: 活性化関数(Google 機械学習集中講座)

    この問題へのリンク
  7. 文中の各単語が、同じ入力の他の単語からどれだけ影響を受けるかを重み付けして解釈する仕組みがある。Transformer の中心となるこの仕組みは?

    A. 畳み込み B. ドロップアウト C. k-means 法 D. 自己注意機構

    答えと解説

    正解: D 【A(不正解)】 ? 近くの値をまとめて特徴を取り出す演算です。 主に画像の局所的な特徴を取り出す演算で、単語どうしの関係の重み付けではない。 【B(不正解)】 ? 学習中に一部の出力をランダムに無効にする方法です。 過学習を抑える正則化の方法で、単語どうしの関係を表す仕組みではない。 【C(不正解)】 ? 各データを最も近い重心の集まりに割り当てる手法です。 クラスタリングの手法で、文の解釈の仕組みではない。 【D(正解)】 ? Self-Attention とも呼ばれる仕組みです。 各トークンについて、他のトークンがその解釈にどれだけ影響するかを重み付けする。Transformer の中心である。

    出典: LLM: Transformer(Google 機械学習集中講座)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  8. データが少ないため、5 つに分けて 4 つで学習し、残り 1 つで評価することを、組を替えて 5 回行い平均をとった。この評価方法は?

    A. ホールドアウト検証 B. 交差検証 C. 事前学習 D. ファインチューニング

    答えと解説

    正解: B 【A(不正解)】 ? データを学習用と評価用に 1 回だけ分ける方法です。 分け方が 1 通りなので、組を替えて繰り返す今回の方法とは違う。 【B(正解)】 ? クロスバリデーションとも呼ばれる、汎化性能の見積もり方法です。 k 分割交差検証で、k−1 個で学習し残り 1 個で評価することを k 回行い、平均を性能とする。 【C(不正解)】 ? 大量のデータで先にモデルを学習させておくことです。 モデルを作る段階の手法で、性能の評価方法ではない。 【D(不正解)】 ? 学習済みモデルを目的のデータで追加学習することです。 モデルを調整する方法で、データの分け方による評価方法ではない。

    出典: Cross-validation: evaluating estimator performance(scikit-learn)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  9. 専門家の知識をルールとして知識ベースに蓄え、推論エンジンで結論を導く仕組みがある。第 2 次 AI ブームを支えたこの仕組みは?

    A. エキスパートシステム B. ディープラーニング C. 大規模言語モデル D. 強化学習

    答えと解説

    正解: A 【A(正解)】 ? if-then 形式のルールで答えを導く AI の仕組みです。 知識ベースと推論エンジンで専門家のように判断する。知識を人が書き込む手間が課題になった。 【B(不正解)】 ? 多層のニューラルネットワークで学習する手法です。 第 3 次 AI ブームの中心となった技術で、特徴を自ら学習する。 【C(不正解)】 ? 大量の文章で学習した言語のモデルです。 近年の生成 AI を支える技術で、ルールを人が書く仕組みではない。 【D(不正解)】 ? 報酬をもとに行動を学ぶ枠組みです。 試行錯誤で方策を学ぶ学習の枠組みで、知識ベースと推論エンジンの仕組みではない。

    出典: 平成28年版 情報通信白書 人工知能(AI)研究の歴史(総務省)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク

通信・計測・制御の理論

  1. 最高 20 kHz の成分を含む音声を、元の波形に戻せるよう A/D 変換したい。サンプリング定理によると、標本化周波数は何 kHz を超える必要があるか?

    A. 10 kHz B. 20 kHz C. 40 kHz D. 80 kHz

    答えと解説

    正解: C 【A(不正解)】 ? 最高周波数の半分の値です。 最高周波数の 2 倍より低い周波数で標本化すると折り返し(エイリアシング)が起き、元の波形を再現できない。 【B(不正解)】 ? 最高周波数と同じ値です。 最高周波数と同じでは足りず、その 2 倍を超える必要がある。 【C(正解)】 ? 最高周波数の 2 倍の値です。 元の信号の最高周波数の 2 倍を超える周波数で標本化すれば、元の波形を復元できる。 【D(不正解)】 ? 最高周波数の 4 倍の値です。 この周波数でも復元はできるが、定理が示す下限ではない。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  2. 音声を 1 秒間に 8,000 回標本化し、1 回の値を 8 ビットで量子化するPCMで送る。必要な伝送速度は?

    A. 8 kbit/s B. 16 kbit/s C. 1 kbit/s D. 64 kbit/s

    答えと解説

    正解: D 【A(不正解)】 ? 8,000 と 8 から計算した候補です。 1 回あたりのビット数を掛けていない。 【B(不正解)】 ? 8,000 と 8 から計算した候補です。 量子化ビット数の 8 ではなく 2 を掛けた値になっている。 【C(不正解)】 ? 8,000 と 8 から計算した候補です。 8,000÷8 は意味のない計算である。 【D(正解)】 ? 8,000 と 8 から計算した候補です。 8,000 回/秒×8 ビット=64,000 ビット/秒=64 kbit/s になる。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  3. 空調の制御で、外気温の変化を先に測り、室温が変わる前に出力を調整して影響を打ち消したい。この制御方式は?

    A. フィードバック制御 B. フィードフォワード制御 C. シーケンス制御 D. PWM 制御

    答えと解説

    正解: B 【A(不正解)】 ? 結果を測って目標との差を減らす制御です。 室温を測ってずれを直す方式で、変化が起きた後に修正する。 【B(正解)】 ? フィードバック制御と対になる、先回りの制御です。 外気温の変化という外乱を先に測り、結果に影響が出る前に打ち消す。 【C(不正解)】 ? 決めた順序や条件に従って段階的に進める制御です。 手順を順に進める制御で、外乱を先回りして打ち消す仕組みではない。 【D(不正解)】 ? パルスの幅を変えて平均電力を調整する方法です。 出力の大きさの調整方法で、外乱を先に測る制御方式そのものではない。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  4. 12 V の電源で DC モーターを PWM 制御する。周期 1 ms のうち 0.25 ms だけ電圧をかける。平均電圧はおよそ何 V か?

    A. 3 V B. 9 V C. 0.25 V D. 12 V

    答えと解説

    正解: A 【A(正解)】 ? 0.25 という比率を使った候補です。 デューティ比は 0.25÷1=25%。平均電圧は 12 V×0.25=3 V になる。 【B(不正解)】 ? 0.75 という比率を使った候補です。 12 V×0.75 は、オフの時間の割合を使った計算である。 【C(不正解)】 ? オンの時間の数値をそのまま使った値です。 時間の値と電圧を混同している。 【D(不正解)】 ? 電源電圧と同じ値です。 常にオンのときの値で、パルス幅を絞った平均にはならない。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  5. 1 本の光ファイバーで、光の波長ごとに別々の信号を同時に送りたい。この多重化方式は?

    A. FDM B. TDM C. WDM D. CDM

    答えと解説

    正解: C 【A(不正解)】 ? 周波数の帯域を分けて多重化する方式です。 周波数の帯域で分ける方式である。光の波長ごとに分ける方式は WDM と呼んで区別する。 【B(不正解)】 ? 時間を細かく区切って順番に送る方式です。 時間で分ける方式で、波長で分けるものではない。 【C(正解)】 ? Wavelength Division Multiplexing の略です。 波長の違う光を 1 本の光ファイバーに重ねて、複数の信号を同時に送る。 【D(不正解)】 ? 符号で区別して同じ帯域を共有する方式です。 信号ごとに異なる符号を使う方式で、波長で分けるものではない。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  6. ドローンの機体がどれだけの速さで回転しているかを検出し、姿勢を保ちたい。主に使うセンサーは?

    A. サーミスタ B. ひずみゲージ C. 湿度センサー D. ジャイロセンサー

    答えと解説

    正解: D 【A(不正解)】 ? 温度で電気抵抗が変わる素子です。 温度を測る素子で、回転の速さは測れない。 【B(不正解)】 ? 物のわずかな伸び縮みを測る素子です。 変形を測るもので、機体の回転の検出には向かない。 【C(不正解)】 ? 空気中の水分の量を測るセンサーです。 湿度を測るもので、姿勢の制御には使わない。 【D(正解)】 ? 角速度センサーとも呼ばれるセンサーです。 機体の回転の速さを検出でき、姿勢の制御に使う。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク

データ構造とアルゴリズム

  1. 空のスタックに 1、2、3 の順に入れ、1 回取り出す。次に 4 を入れ、2 回取り出した。取り出された順は?

    A. 3・4・2 B. 1・2・3 C. 3・2・1 D. 3・4・1

    答えと解説

    正解: A 【A(正解)】 ? 最後に入れたものから出す順です。 後入れ先出しなので、まず 3。4 を入れた後は 4、2 の順に出る。 【B(不正解)】 ? 入れた順に出す並びです。 先入れ先出しのキューの動きで、スタックとは違う。 【C(不正解)】 ? 4 を入れなかった場合の並びです。 途中で 4 を入れているので、2 回目に出るのは 4 である。 【D(不正解)】 ? 2 回目以降に一番下のものを出した並びです。 スタックで取り出せるのは一番上だけで、一番下の 1 は出てこない。

    出典: データ構造(Python チュートリアル)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  2. 最小値をすぐ取り出すため、配列の 0 番目を根とする 2 分木のヒープを使う。添字 k の要素の子が置かれる添字は?

    A. k−1 と k+1 B. 2k と 2k+1 C. 2k+1 と 2k+2 D. k/2 と k/2+1

    答えと解説

    正解: C 【A(不正解)】 ? 隣どうしの要素の添字です。 配列で隣にある要素で、木の親子関係を表していない。 【B(不正解)】 ? 添字を 2 倍した値と、それに 1 を足した値です。 根を添字 1 にした数え方の式で、0 番目を根にすると 1 つずれる。 【C(正解)】 ? 添字を 2 倍して 1 と 2 をそれぞれ足した値です。 0 始まりのヒープでは heap[k]≦heap[2k+1] と heap[k]≦heap[2k+2] が成り立ち、最小値は heap[0] にある。 【D(不正解)】 ? 親の側に近い添字です。 k を 2 で割る計算は、子ではなく親の位置を求めるときに使う。

    出典: heapq --- ヒープキューアルゴリズム(Python ドキュメント)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  3. 入社順に並んだ社員名簿を部署コード順に並べ替える。同じ部署の中では入社順を崩したくない。適した整列方法は?

    A. クイックソート B. マージソート C. ヒープソート D. 選択ソート

    答えと解説

    正解: B 【A(不正解)】 ? 基準値で分けて再帰的に整列する方法です。 一般的な実装は安定でなく、同じ部署コードの社員の順序が入れ替わることがある。 【B(正解)】 ? 整列済みの列を併合しながら整列する方法です。 安定ソートとして実装でき、同じキーの要素の元の順序を保てる。 【C(不正解)】 ? ヒープから最小値を順に取り出す方法です。 ヒープを使う整列は安定ではなく、同じキーの順序が保たれるとは限らない。 【D(不正解)】 ? 残りの最小値を探して前と交換する方法です。 離れた位置の要素を交換するため、一般的な実装は安定ではない。

    出典: ソート HOWTO(Python ドキュメント)/heapq --- ヒープキューアルゴリズム(Python ドキュメント)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  4. 先頭の要素を基準値にするクイックソートで、比較回数が O(n²) に近づきやすい入力は?

    A. ランダムな順に並んだデータ B. 値の重複がまったく無いデータ C. 要素数が 2 のべき乗のデータ D. すでに昇順に整列済みのデータ

    答えと解説

    正解: D 【A(不正解)】 ? 並び順に偏りのないデータです。 基準値で分けたときに左右がおおむね均等になりやすく、平均では O(n log n) で済む。 【B(不正解)】 ? 同じ値が 1 つも無いデータです。 重複が無いことだけでは、分け方が偏るとは限らない。 【C(不正解)】 ? 件数が 2ⁿ のデータです。 件数の形は分割の偏りと関係しない。 【D(正解)】 ? 最初から小さい順に並んだデータです。 先頭の基準値が毎回最小値になり、分割が「0 個と残り全部」に偏る。比較が n−1、n−2… と続き O(n²) になる。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  5. ハッシュ法で、異なるキーが同じ格納位置になる衝突が起きた(このようなキーをシノニムという)。対策として適切なものは?

    A. 同じ位置のデータを連結リストでつなぐ B. キーを昇順に並べ替えてから格納する C. 2 分探索で格納位置を探す D. 衝突したデータを捨てる

    答えと解説

    正解: A 【A(正解)】 ? 同じ格納位置に複数のデータをつないで持つ方法です。 チェイン法と呼ばれる対策で、同じ位置に来たデータをリストでたどって探せる。 【B(不正解)】 ? 格納する前に整列する方法です。 格納位置はハッシュ関数で決まるため、整列しても衝突は解消しない。 【C(不正解)】 ? 整列済みデータを半分ずつ絞る探索です。 ハッシュ表の格納位置の決め方とは別の方法で、衝突の対策にならない。 【D(不正解)】 ? 後から来たデータを保存しない方法です。 データが失われるため、対策として成り立たない。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  6. 2 分探索木のすべての節を、値の小さい順に取り出したい。適した巡回の順序は?

    A. 先行順(根→左→右) B. 後行順(左→右→根) C. 中間順(左→根→右) D. 幅優先(浅い順)

    答えと解説

    正解: C 【A(不正解)】 ? 根を先に訪れる順序です。 根が最初に出るため、値の小さい順にはならない。 【B(不正解)】 ? 根を最後に訪れる順序です。 右の部分木の後に根が出るため、値の順にならない。 【C(正解)】 ? 左の部分木、根、右の部分木の順です。 左に小さい値、右に大きい値がある性質から、中間順でたどると昇順に並ぶ。 【D(不正解)】 ? 根に近い節から段ごとに訪れる順序です。 深さごとに出るため、値の大小の順にはならない。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  7. フィボナッチ数を素朴な再帰で求めると、同じ値を何度も計算して時間が急に増える。計算済みの結果を保存して再利用する方法は?

    A. 分割統治法 B. 動的計画法 C. 貪欲法 D. 線形探索

    答えと解説

    正解: B 【A(不正解)】 ? 問題を小さく分けて解き、結果をまとめる方法です。 問題を分けて解く考え方だが、同じ部分問題の結果を保存して使い回すことまでは含まない。 【B(正解)】 ? 部分問題に分けて小さい方から順に解き上げる方法です。 一度求めた値を保存して再利用するので、同じ計算の繰り返しを防げる。 【C(不正解)】 ? その時点で最もよい選択を重ねる方法です。 計算結果の保存ではなく、各段階の選び方の方針である。 【D(不正解)】 ? 先頭から順に調べる探索です。 データを探す方法で、再帰の重複計算を減らす仕組みではない。

    出典: functools --- 高階関数と呼び出し可能オブジェクトの操作(Python ドキュメント)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク

プログラミングとプログラム言語

  1. 手続 inc(x) は x に 1 を加える。変数 a に 5 を入れて inc(a) を呼んだ。呼んだ後の a の値と引数の渡し方の組合せとして適切なものは?

    A. 値呼出しなら 6、参照呼出しなら 5 B. どちらの渡し方でも 6 C. 値呼出しなら 5、参照呼出しなら 6 D. どちらの渡し方でも 5

    答えと解説

    正解: C 【A(不正解)】 ? 値呼出しのときに a が書き替わるとする組合せです。 値呼出しでは写しが変わるだけで、a は 5 のまま変わらない。 【B(不正解)】 ? 渡し方で結果が変わらないとする組合せです。 値呼出しでは呼出し元の変数は書き替わらない。 【C(正解)】 ? 渡し方によって結果が違う組合せです。 値呼出しは値の写しを渡すので a は 5 のまま。参照呼出しは a そのものを指すので 6 になる。 【D(不正解)】 ? 渡し方で結果が変わらないとする組合せです。 参照呼出しでは手続の中の変更が呼出し元の a に及ぶ。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  2. BNF で、<数字> ::= 0|1|2|3|4|5|6|7|8|9、<数字列> ::= <数字>|<数字列><数字>、<整数> ::= <数字列>|-<数字列> と定めた。<整数> に当てはまるものは?

    A. -007 B. --7 C. 7- D. +7

    答えと解説

    正解: A 【A(正解)】 ? - の後に数字が 3 つ続く文字列です。 -<数字列> の形で、<数字列> は 1 個以上の数字の並びなので 007 も当てはまる。 【B(不正解)】 ? - が 2 つ続く文字列です。 - を付けられるのは先頭に 1 つだけで、2 つは定義に無い。 【C(不正解)】 ? 数字の後に - がある文字列です。 - は <数字列> の前にしか置けない。 【D(不正解)】 ? + で始まる文字列です。 + は定義に無い記号なので当てはまらない。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)/言語リファレンス 1. はじめに(表記法)(Python ドキュメント)

    この問題へのリンク
  3. 関数が呼ばれるたびに領域が確保され、関数から戻ると解放される変数がある。再帰呼出しでも呼出しごとに別の値を持てるこの変数は?

    A. 静的変数 B. 大域変数 C. 動的に確保した領域 D. 自動変数

    答えと解説

    正解: D 【A(不正解)】 ? プログラムの実行中ずっと同じ領域に置かれる変数です。 呼出しをまたいで値が残るため、呼出しごとに別の値は持てない。 【B(不正解)】 ? プログラムのどこからでも参照できる変数です。 領域は 1 つだけで、関数の呼出しごとには作られない。 【C(不正解)】 ? プログラムが必要なときに明示的に確保する領域です。 関数から戻っても自動では解放されず、解放の操作やガベージコレクションが要る。 【D(正解)】 ? 関数の中で宣言され、スタック上に置かれることが多い変数です。 呼出しごとに新しい領域が作られるので、再帰の各段で別の値を持てる。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  4. API の応答を JSON で返す。注文日時も含めたいが、JSON の値の種類は限られている。注文日時の扱いとして適切なものは?

    A. JSON の日付型で書く B. 形式を決めた文字列として書く C. XML のタグで囲んで書く D. null として書く

    答えと解説

    正解: B 【A(不正解)】 ? 日付専用の型を使う方法です。 JSON の値は文字列・数値・真偽値・null と、オブジェクト・配列だけで、日付型は無い。 【B(正解)】 ? 日時を文字列で表す方法です。 JSON に日付型は無いので、形式を取り決めた文字列で表し、受け手が解釈する。 【C(不正解)】 ? 別の言語の書き方を混ぜる方法です。 JSON の中では XML のタグは意味を持たず、ただの文字列か構文の誤りになる。 【D(不正解)】 ? 値が無いことを表す方法です。 null では日時の情報が失われる。

    出典: RFC 8259: The JavaScript Object Notation (JSON) Data Interchange Format/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  5. 取引先とのデータ交換で、利用者が独自のタグを定義してデータの構造を表したい。適した言語は?

    A. CSS B. HTML C. XML D. SQL

    答えと解説

    正解: C 【A(不正解)】 ? 文書の見た目を指定する言語です。 表示の形式を決めるスタイルシートで、データの構造を表すものではない。 【B(不正解)】 ? Web ページを作る言語です。 Web ページの文書構造を表す言語で、使う要素は仕様で定められている。取引データの構造を独自のタグで定義する言語ではない。 【C(正解)】 ? W3C が勧告した、拡張可能なマークアップ言語です。 要素の名前を利用者が決められ、インターネットを介したデータ交換に使われる。 【D(不正解)】 ? データベースを操作する言語です。 データの検索や更新の命令で、交換用の文書の形式ではない。

    出典: Extensible Markup Language (XML) 1.0(W3C 勧告)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  6. コンパイラが原始プログラムを翻訳する主な段階を、処理の順に並べたものは?

    A. 字句解析→構文解析→意味解析→最適化→コード生成 B. 構文解析→字句解析→意味解析→最適化→コード生成 C. 字句解析→コード生成→構文解析→最適化→意味解析 D. 意味解析→字句解析→構文解析→コード生成→最適化

    答えと解説

    正解: A 【A(正解)】 ? 文字の処理から始めて目的コードで終わる順です。 文字列をトークンに分け、構文を調べ、意味を確かめ、最適化して目的コードを作る。 【B(不正解)】 ? 構文の解析から始める順です。 構文解析は字句解析が作ったトークンの列を処理するので、先にはできない。 【C(不正解)】 ? コード生成を早い段階に置いた順です。 構文や意味を調べる前にコードは作れない。 【D(不正解)】 ? 意味の解析から始める順です。 意味解析は構文の構造が分かってから行う。

    出典: 言語リファレンス 1. はじめに(表記法)(Python ドキュメント)/応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  7. 事実と規則を記述しておき、問合せに対して処理系が推論して答えを導く。このように書くプログラム言語の分類は?

    A. 手続型言語 B. 論理型言語 C. マークアップ言語 D. アセンブラ言語

    答えと解説

    正解: B 【A(不正解)】 ? 処理の手順を順に書く言語です。 命令を実行する順に書く言語で、推論で答えを導く書き方ではない。 【B(正解)】 ? Prolog に代表される、述語論理にもとづく言語です。 述語論理にもとづき、事実と規則を書いておくと処理系が推論して問合せに答える。 【C(不正解)】 ? 文書の構造をタグで表す言語です。 文書の構造や見た目を記述するもので、推論はしない。 【D(不正解)】 ? 機械語に 1 対 1 で対応する記号の言語です。 低水準の命令を書く言語で、推論の仕組みは持たない。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク
  8. 親クラスの面積計算メソッドを、子クラスで同じ名前・同じ引数のまま中身だけ書き替えた。この仕組みは?

    A. オーバーロード B. カプセル化 C. 多重継承 D. オーバーライド

    答えと解説

    正解: D 【A(不正解)】 ? 同じ名前で引数の違うメソッドを複数定義することです。 引数の型や数を変えて定義する仕組みで、同じ引数のまま書き替えるものではない。 【B(不正解)】 ? データと操作をまとめ、内部を隠すことです。 内部の隠し方の考え方で、親のメソッドの書き替えではない。 【C(不正解)】 ? 複数の親クラスから引き継ぐことです。 継承元の数の話で、メソッドの中身の書き替えではない。 【D(正解)】 ? 英語で「上書きする・優先する」という意味の言葉です。 同じ名前・同じ引数のメソッドを子クラスで定義し直し、振る舞いを変える。

    出典: 応用情報技術者試験(レベル 3)シラバス Ver.7.2(IPA)

    この問題へのリンク

この分野に出てくる用語(74 語)

2 の補数:負の数を 2 進数で表す方法の一つ。正の数の各ビットを反転して 1 を足すと、その数の負の値の表現になる。

2 分探索木:各節で、左の子孫の値は節の値より小さく、右の子孫の値は大きくなるように並べた 2 分木。

BNF:プログラム言語などの文法(構文規則)を書き表すための記法。

CRC:データを生成多項式で割った余りを検査用に付け、伝送中の誤りを検出する方式。

JSON:文字列・数値・真偽値・null と、オブジェクト・配列でデータを表すテキスト形式。システム間で交換するときは UTF-8 で符号化する。

k-means 法:データを指定した k 個のクラスタに分ける手法。各点を最も近い重心に割り当て、重心を更新する操作を繰り返す。

PCM:アナログ信号を標本化・量子化・符号化してデジタルデータに変える方式。

PWM:パルス幅変調。一定周期のパルスのオンの時間の割合(デューティ比)を変えて、平均の電圧や電力を調整する方式。

ReLU 関数:入力が 0 未満なら 0、0 以上なら入力をそのまま出す活性化関数。勾配消失を防ぐのに役立つ。

Transformer:自己注意機構を中心にした言語モデルの構造。入力を中間表現にするエンコーダと、出力を作るデコーダからなる。

UTF-8:Unicode の文字を 1〜4 バイトで表す符号化方式。ASCII の文字は 1 バイトのまま表せる。

WDM:波長分割多重。波長の違う光を 1 本の光ファイバーに重ね、複数の信号を同時に送る多重化方式。

XML:SGML の部分集合として定められたマークアップ言語。利用者が要素(タグ)の名前を決められ、データ交換に使われる。

エキスパートシステム:専門家の知識を知識ベースに蓄え、推論エンジンで専門家のように判断する AI のシステム。第 2 次 AI ブームの中心。

キュー:最初に入れたデータを最初に取り出す(先入れ先出し)データ構造。

クイックソート:基準値より小さい要素と大きい要素に分ける操作を繰り返して並べ替える整列アルゴリズム。

グラフ理論:頂点と辺の結び付きで表した構造(グラフ)の性質を扱う数学。最短経路問題などに使う。

コンパイラ:高水準言語で書いたソースプログラムを、まとめて機械語などの目的プログラムに変換する言語処理プログラム。

サンプリング定理:信号の最高周波数の 2 倍を超える周波数で標本化すれば、元のアナログ信号を復元できるという定理。

スタック:最後に入れたデータを最初に取り出す(後入れ先出し)データ構造。

ダイクストラ法:辺の重みが 0 以上のグラフで、始点から各頂点への最短経路を求める方法。

ディープラーニング:多層のニューラルネットワークを使う機械学習の手法。画像認識や自然言語処理などで使われる。

ド・モルガンの法則:「A かつ B」の否定は「A でない または B でない」に等しい、という論理演算の基本法則(逆も成り立つ)。

ドロップアウト:ニューラルネットワークの学習中に、一部のユニットの出力をランダムに無効にする正則化の手法。

ニューラルネットワーク:人の脳の神経細胞のつながりをまねて、入力から出力を計算する層状のモデル。

ハッシュ法:キーから計算した値(ハッシュ値)を格納位置として、データを直接探す方法。

ハフマン符号:出現頻度の高い記号に短い符号を割り当てて、全体のデータ量を減らす可変長の符号化方式。

ハミング符号:データに検査ビットを加え、1 ビットの誤りを検出して訂正できる誤り訂正符号。

ヒープ:親の値が常に子の値以上(または以下)になる 2 分木。最大値や最小値を素早く取り出せる。

フィードバック制御:出力の結果を測って目標値と比べ、その差を減らすように操作量を調整する制御方式。

フィードフォワード制御:外乱を前もって検出し、制御結果に影響が出る前に操作量を変えて打ち消す制御。

ベイズの定理:条件付き確率の関係式。結果が観測されたときに、その原因である確率を求めるのに使う。

ベルマンフォード法:辺の重みに負の値があっても最短経路を求められる方法。負の閉路があるかどうかも調べられる。

マージソート:データを分割して整列し、整列済みの列どうしを併合していく整列法。安定な整列として実装できる。

安定ソート:同じキーを持つ要素どうしの元の順序が、整列後も保たれる整列。

仮説検定:帰無仮説を立て、得られたデータからそれを棄却できるかを確率で判断する統計手法。

過学習:学習データに合わせ過ぎて、未知のデータに対する予測精度が下がる状態。

基数:数を表すときに 1 桁で使える数字の種類の数。2 進数なら 2、16 進数なら 16。

機械学習:データから規則やパターンをコンピュータに学習させ、予測や判断に使う AI の手法。

逆ポーランド表記法:演算子を演算対象の後ろに書く式の表記法。スタックを使うと括弧なしで計算できる。

強化学習:行動の結果として得られる報酬を手がかりに、より良い行動の選び方を学習する機械学習の方式。

教師あり学習:正解のラベル付きデータを使って、入力から正解を予測するモデルを学習させる機械学習の方式。

教師なし学習:正解ラベルの無いデータから、意味のあるパターンや構造を見つける機械学習。クラスタリングなどがある。

計算量:アルゴリズムが処理にかかる時間や記憶域が、入力の大きさに応じてどう増えるかを表す尺度。

桁落ち:値がほぼ等しい 2 数の引き算で有効桁数が大きく減り、誤差が目立つようになる現象。

決定係数:回帰直線がデータをどれだけ説明できるかを表す 0〜1 の値。単回帰では相関係数を 2 乗した値になる。

交差検証:データを k 個に分け、k−1 個で学習して残り 1 個で評価することを k 回繰り返し、平均で性能を測る方法。

勾配消失問題:層の多いニューラルネットワークで、入力に近い層の勾配が極めて小さくなり、学習が進まなくなる問題。

構文解析:字句解析で得たトークンの列が文法に合うかを調べ、プログラムの構造を組み立てる段階。

再帰:処理の中で自分自身を呼び出す手法。問題を同じ形の小さな問題に分けて解く。

再現率:実際に陽性のもののうち、モデルが陽性と当てた割合。TP÷(TP+FN)で、見逃しが多いと下がる。

参照呼出し:引数の変数の場所(参照)を手続に渡す方式。手続の中での変更が呼出し元の変数に及ぶ。

算術シフト:符号ビットを保ったままビット列をずらす操作。右シフトでは空いたビットに符号ビットと同じ値を入れる。

字句解析:原始プログラムの文字の並びを、名前・数値・記号などのトークンに分けるコンパイルの最初の段階。

自己注意機構:入力の各トークンについて、同じ入力の他のトークンがその解釈にどれだけ影響するかを重み付けする仕組み。

自動変数:関数が呼ばれるたびに領域が確保され、関数から戻ると解放される変数。再帰の各段で別の値を持てる。

情報落ち:絶対値が大きく異なる 2 数の足し算・引き算で、小さい方の値の一部が結果に反映されなくなる現象。

情報量:ある事象が起きたと知ったときに得られる情報の大きさ。確率 p の事象では −log₂p ビットで、起こりにくいほど大きい。

条件付き確率:ある事象が起きたと分かっているときに、別の事象が起きる確率。

正則化:モデルの複雑さに罰則を加えるなどして、訓練データへの合わせすぎ(過学習)を抑える手法。

線形計画法:一次式で表した制約条件の下で、目的の値を最大または最小にする解を求める手法。

相関係数:2 つの変数の直線的な関係の強さを -1〜1 で表す指標。

待ち行列理論:窓口やサーバに処理要求が並ぶ状況を確率モデルで表し、待ち時間などを求める理論。

大規模言語モデル:大量の文章で学習し、文章の生成や要約などを行う大規模なニューラルネットワークのモデル。

値呼出し:引数の値の写しを手続に渡す方式。手続の中で仮引数を変えても、呼出し元の変数は変わらない。

中央値:データを大きさの順に並べたとき、真ん中に来る値。外れ値があっても大きく動きにくい。

適合率:モデルが陽性と判定したもののうち、本当に陽性だった割合。TP÷(TP+FP)で、誤検知が多いと下がる。

動的計画法:問題を部分問題に分け、一度求めた部分問題の答えを保存して使い回すことで計算の重複を省く方法。

二分法:解が含まれる区間を半分に分け、解のある側を残す操作を繰り返して近似解を求める数値解析の方法。

標準偏差:データのばらつきの大きさを表す値。分散の正の平方根。

浮動小数点数:数を仮数と指数の組で表す形式。広い範囲の値を一定の有効桁数で表せる。

有限オートマトン:有限個の状態をもち、入力に応じて状態が移り変わる計算モデル。文字列の受理判定などに使う。

論理シフト:ビット列を左右にずらし、空いたビットに 0 を入れる操作。符号を考えない。

論理型言語:事実と規則を記述し、問合せに対して処理系が推論して答えを導くプログラム言語の分類。

用語集で全部の用語を見る →

独学の次に、講座で体系立てて学びたい人へ

この問題集は独学用です。IT の基礎から講師つきで体系立てて学びたい人には、資格や IT の講座がそろうスクールも選択肢になります。

本ページは広告・アフィリエイトプログラムを利用しており、リンク経由でのお申し込み・購入により当サイトに収益が発生することがあります。ただし、ランキング・評価・掲載内容は広告費や報酬の有無に関わらず編集部の独自基準で決定しており、広告主からの指示により内容を変更することはありません。

ヒューマンアカデミー(資格・IT/Webスクール)PR

IT・Webデザイン・資格まで幅広い講座。生成AI/DX講座はリスキリング補助金の対象

ヒューマンアカデミー(資格・IT/Webスクール)の広告無料で講座資料を探す →

まずは無料ではじめられます。リンク先は公式サイトです。

このサービスの解説記事を読む →