SPB Git forge

spb/wp14_uqo

Public
3commits 1branches 1releases
1.5 MBsize
maindefault branch
36 min agolast push
Python 52.4% TeX 47.6%
9.4 KB · 153 lines latex
Raw Blame History
1% ============================================================================2\section{Results}3\label{sec:results}4% ============================================================================56\subsection{Baseline Estimates}7\label{subsec:baseline}89Table~\ref{tab:regression} reports the two hedonic specifications estimated on the10full feature set (structural, amenity, room-detail, listing-signal, LLM text-derived,11and vision-derived attributes). Model~A, which includes living area and is estimated12on the 9{,}446 listings with a measured area, explains 75.5\% of the variation in log13prices ($R^2=0.755$, adjusted $0.748$). Model~B, the area-free specification estimated14on all 19{,}123 listings, explains 72.5\% ($R^2=0.725$, adjusted $0.721$). Adding the15machine-generated feature layers in sequence raises Model~A's $R^2$ from 0.71716(structural, amenity, room, and listing attributes only) to 0.725 with the text layer17and to 0.755 with the vision layer: 3.8 points in total, of which 0.8 come from the18text and 3.0 from the façade photograph. The text increment is small because the19fifteen keyword amenities already capture the most frequently mentioned features20(garage, pool, fireplace, air conditioning), so the LLM is credited only with what21keyword matching misses; Section~\ref{subsec:robust_leakage} shows that on22Realtor.ca, where the text contains no price, the increments are 0.65 and 2.423points.2425The estimated implicit prices are economically sensible and, with few exceptions,26statistically significant with standard errors clustered by municipality. In27Model~A, the living-area elasticity is 0.36 (a 10\% larger home commands roughly a283.6\% higher price) and the lot-area elasticity is small (0.027) but precisely29estimated. Each additional \textbf{bathroom} is associated with a 7.6\% premium and30each parking space with about 1\%. \textbf{Central air conditioning} carries a 5.5\%31premium and \textbf{public-transit} proximity 9.4\%, although the transit32coefficient---like other keyword amenities with a strong spatial component---is33estimated much less precisely once errors are allowed to correlate within34municipalities. \textbf{Waterfront} access is associated with a 6.0--6.4\% premium,35significant at conventional levels in the full-sample model. Age enters with a36negative linear term ($-0.4$\% per year) and a small positive quadratic37($2.6\times10^{-5}$), so the price--age profile bottoms out at about 70 years and38rises for older, heritage-type houses.3940\input{tables/regression}4142\subsection{Text- and Vision-Derived Attributes}43\label{subsec:ai_coeffs}4445The two AI feature layers contribute distinct signal.4647\paragraph{Text (LLM).} Beyond the keyword amenities, the structured specifications48carry independent information about finish and condition: a \textbf{renovated49kitchen} is associated with a 2.6\% premium, \textbf{hardwood flooring} with 2.4\%,50and the ordinal \textbf{condition} scale is positive and significant in both models51(1.6\% per step). Listings the model reads as \textbf{income properties} are listed52about 1.9\% below otherwise comparable houses. The \textbf{new-construction}53indicator, by contrast, is indistinguishable from zero once age, the visual54renovation level, and the condition scales are controlled for: the premium a naive55specification would attribute to the label ``new'' is absorbed by the measured56quality attributes.5758\paragraph{Vision (façade).} The image-derived attributes are jointly significant and59add the larger increment to fit. Holding all structural, amenity, and text60attributes fixed, a one-point increase in \textbf{curb appeal} (1--10) is associated61with a 2.3\% higher price, and a one-step increase in the visual \textbf{renovation62level} with 2.4\%. A visible \textbf{luxury} cue adds 5.2\%, a \textbf{visible garage}634.7\%, and each step of \textbf{landscaping} quality 1.5\%. Exterior materials price64as expected: \textbf{brick} ($+3.4$\%) and \textbf{stone} ($+3.7$\%) command premia,65while \textbf{vinyl} siding carries a 4.4\% discount; because a façade can combine66several materials, each indicator is measured relative to façades without that67material. The visual \textbf{rural} setting is associated with an 11.5\% discount68relative to the other settings even within municipalities, which indicates that the69model picks up within-municipality variation in density that the fixed effects70cannot. The visual condition score, by contrast, is not significant in Model~A once71curb appeal and the renovation level are included; the three scores are highly72collinear (the model rates condition, curb appeal and renovation level from the same73cues), and their individual coefficients should be read as a joint74``visual-quality'' block rather than as three separate prices. That these visual75measures remain significant after conditioning on the full text and structural set,76with inference clustered at the municipality level, indicates that the façade77photograph carries price-relevant information available in no other field.7879\subsection{Validation of Machine-Generated Features}80\label{subsec:validation}8182Before relying on the AI-generated attributes we assess them in two ways. First, we83check that the vision scores order prices in the expected direction.84Figure~\ref{fig:validation} plots the median list price against the vision model's85curb-appeal and condition scores among listings with a detected exterior shot. Both86relationships are monotone: median price rises from the lowest to the highest visual87scores, with no reliance on the regression to impose the pattern. Because these88scores are produced by a model that never sees the price, the monotonicity shows that89the vision layer extracts a price-correlated quality signal rather than noise; it90does not, of course, establish that the signal is \emph{quality} rather than, say,91the marketing budget of the seller (Section~\ref{subsec:limits}).9293\begin{figure}[htbp]94  \centering95  \includegraphics[width=\textwidth]{figures/fig_validation.pdf}96  \caption{Validation of the vision layer. Median list price rises monotonically with97  the model's curb-appeal (left) and condition (right) scores, among listings with a98  detected façade shot. The scores are generated without access to price.}99  \label{fig:validation}100\end{figure}101102Second, because we do not have human labels, we measure extraction error indirectly103by confronting the machine-generated attributes with independent sources104(Table~\ref{tab:agreement}). Where the LLM and the bilingual keyword rule read the105same text for the same binary feature, agreement is very high for concrete,106unambiguous amenities---garage (agreement 98\%, Cohen's $\kappa=0.96$), fireplace107($\kappa=0.91$), swimming pool ($\kappa=0.81$)---and lower for features whose108definition is fuzzy or whose keywords are ambiguous: central air conditioning109($\kappa=0.65$; the keyword rule also fires on ``air exchanger''), finished basement110($\kappa=0.56$; the keyword rule fires on any mention of ``basement''), and111waterfront ($\kappa=0.50$). For waterfront the LLM flags 22.5\% of listings against1129.2\% for the rule, with a recall of 98\% but a precision of only 40\% relative to the113rule, which suggests that the model treats water \emph{access} or \emph{views} as114waterfront; the regression includes both variables, and the keyword waterfront is the115one whose coefficient we report. Across modalities, the vision model's116visible-garage flag agrees with the text-based garage indicator for 68\% of exterior117shots ($\kappa=0.35$)---a garage need not be visible from the front---and its storey118count matches the structured storey field exactly for 60\% of listings and within119half a storey for 89\%. Two fields are clearly unreliable: the visual waterfront120setting ($\kappa=0.39$ against the keyword) and the visual building type, which121labels 12.7\% of façades as row houses when only 3.0\% of listings are townhouses122(precision 18\%) and 14.5\% as ``chalets.'' We accordingly use the visual building123type and setting only as controls and base no conclusion on them, and we read the124reported coefficients of the vision block as prices of \emph{what the model sees}125rather than of verified physical attributes.126127\input{tables/agreement}128129\subsection{Location Fixed Effects}130\label{subsec:location}131132The 195 municipality fixed effects absorb the dominant locational component of price.133Relative to the pooled group of small municipalities, the largest positive premia are134estimated for \textbf{Westmount} ($\approx+231$\%), \textbf{Hampstead} ($+173$\%),135and \textbf{Mont-Royal} ($+169$\%), followed by remote municipalities at the low end136carrying discounts of 23--30\%. Figure~\ref{fig:premia} plots the extreme effects. The137magnitude and ordering align with well-known patterns in the Quebec housing market and138lend face validity to the specification; one apparent anomaly,139Sainte-Anne-des-Plaines ($+143$\%), is an artefact of the two-part design: only two140of that municipality's 33 listings report a living area and enter Model~A, one of141them a \$5.5~million estate on a 100-acre lot, so the effect is identified from two142observations. Municipality effects estimated on a single-date cross-section with143sparse cells should not be read as permanent location premia.144145\begin{figure}[htbp]146  \centering147  \includegraphics[width=.74\textwidth]{figures/fig_premia.pdf}148  \caption{Estimated municipality fixed effects (Model~A), the twelve largest and eight149  smallest, expressed as percentage premia relative to the pooled group of150  municipalities with fewer than 20 listings.}151  \label{fig:premia}152\end{figure}153